TECA
The Toolkit for Extreme Climate Analysis
teca_tc_wind_radii Class Reference

computes wind radius at the specified coordinates More...

#include <teca_tc_wind_radii.h>

Inheritance diagram for teca_tc_wind_radii:
[legend]
Collaboration diagram for teca_tc_wind_radii:
[legend]

Public Member Functions

std::shared_ptr< teca_tc_wind_radiishared_from_this ()
 
std::shared_ptr< teca_tc_wind_radii const > shared_from_this () const
 
 teca_tc_wind_radii (const teca_tc_wind_radii &src)=delete
 
 teca_tc_wind_radii (teca_tc_wind_radii &&src)=delete
 
teca_tc_wind_radiioperator= (const teca_tc_wind_radii &src)=delete
 
teca_tc_wind_radiioperator= (teca_tc_wind_radii &&src)=delete
 
const char * get_class_name () const override
 
void set_input_connection (unsigned int id, const teca_algorithm_output_port &port) override
 
storm_id_column

set the name of the column that defines the track ids if set the specified column is coppied into the output metadata and accessed with the key event_id

void set_storm_id_column (const std::string &v)
 
const std::string & get_storm_id_column () const
 
storm_x_coordinate_column

set the name of the columns that define the event position if set the columns are coppied into the output metadata and accessed with the keys storm_x_coordinate, storm_y_coordinate

void set_storm_x_coordinate_column (const std::string &v)
 
const std::string & get_storm_x_coordinate_column () const
 
storm_y_coordinate_column

set the name of the columns that define the event position if set the columns are coppied into the output metadata and accessed with the keys storm_x_coordinate, storm_y_coordinate

void set_storm_y_coordinate_column (const std::string &v)
 
const std::string & get_storm_y_coordinate_column () const
 
storm_wind_speed_column

set the name of the column containing peak instantanious surface wind speed

void set_storm_wind_speed_column (const std::string &v)
 
const std::string & get_storm_wind_speed_column () const
 
storm_time_column

set the name of the column that defines the event time if set the specified column is coppied into the output metadata and accessed with the key event_time

void set_storm_time_column (const std::string &v)
 
const std::string & get_storm_time_column () const
 
wind_u_variable
void set_wind_u_variable (const std::string &v)
 
const std::string & get_wind_u_variable () const
 
wind_v_variable
void set_wind_v_variable (const std::string &v)
 
const std::string & get_wind_v_variable () const
 
search_radius

set the radius in degrees of latitude to sample the wind field

void set_search_radius (const double &v)
 
const double & get_search_radius () const
 
core_radius

set the radius in degrees of latitude beyond which to terminate the search for peak wind speed. if the peak lies beyond this distance search is terminated and a warning is displayed.

void set_core_radius (const double &v)
 
const double & get_core_radius () const
 
number_of_radial_bins

number of bins to discetize by in the radial direction

void set_number_of_radial_bins (const int &v)
 
const int & get_number_of_radial_bins () const
 
critical_wind_speed

set the wind speeds (in m/s) to find the radius of. the defualt values are the transition speeds of the Saffir-Simpson scale.

size_t get_number_of_critical_wind_speeds ()
 
void append_critical_wind_speed (const double &v)
 
void set_critical_wind_speed (const double &v)
 
void set_critical_wind_speed (size_t i, const double &v)
 
void set_critical_wind_speeds (const std::vector< double > &v)
 
void set_critical_wind_speeds (const std::initializer_list< double > &&l)
 
const double & get_critical_wind_speed (size_t i) const
 
const std::vector< double > & get_critical_wind_speeds () const
 
void clear_critical_wind_speeds ()
 
- Public Member Functions inherited from teca_algorithm
 teca_algorithm (const teca_algorithm &src)=delete
 
 teca_algorithm (teca_algorithm &&src)=delete
 
teca_algorithmoperator= (const teca_algorithm &src)=delete
 
teca_algorithmoperator= (teca_algorithm &&src)=delete
 
void set_communicator (MPI_Comm comm)
 
MPI_Comm get_communicator ()
 get the active communicator More...
 
virtual teca_algorithm_output_port get_output_port (unsigned int port=0)
 
void set_input_connection (const teca_algorithm_output_port &port)
 set an input to this algorithm More...
 
virtual void remove_input_connection (unsigned int id)
 remove input connections More...
 
void clear_input_connections ()
 remove all input connections More...
 
const_p_teca_dataset get_output_data (unsigned int port=0)
 
void pop_cache (unsigned int port=0, int top=0)
 
void set_cache_size (unsigned int n)
 set the cache size. the default is 1. (threadsafe) More...
 
virtual int update ()
 execute the pipeline from this instance up. More...
 
virtual int update (unsigned int port)
 execute the pipeline from this instance up. More...
 
virtual teca_metadata update_metadata (unsigned int port=0)
 get meta data considering this instance up. More...
 
void set_executive (p_teca_algorithm_executive exe)
 set the executive More...
 
p_teca_algorithm_executive get_executive ()
 get the executive More...
 
virtual void to_stream (std::ostream &s) const
 
virtual void from_stream (std::istream &s)
 deserialize from the stream. More...
 
void set_verbose (const int &v)
 
const int & get_verbose () const
 

Static Public Member Functions

static p_teca_tc_wind_radii New ()
 

profile_type

Set the profile type. PROFILE_MAX uses the maximum wind speed on each interval of the discretization, while PROFILE_AVERAGE uses the average on each interval

enum  { PROFILE_MAX = 0 , PROFILE_AVERAGE = 1 }
 
void set_profile_type (const int &v)
 
const int & get_profile_type () const
 

Additional Inherited Members

- Protected Member Functions inherited from teca_algorithm
void set_number_of_input_connections (unsigned int n)
 
void set_number_of_output_ports (unsigned int n)
 
void set_modified (unsigned int port)
 an overload to set_modified by port More...
 
virtual teca_metadata get_cache_key (unsigned int port, const teca_metadata &request) const
 
virtual teca_metadata get_output_metadata (teca_algorithm_output_port &current)
 
virtual const_p_teca_dataset request_data (teca_algorithm_output_port &port, const teca_metadata &request)
 
virtual int validate_cache (teca_algorithm_output_port &current)
 
virtual void clear_modified (teca_algorithm_output_port current)
 
const_p_teca_dataset get_output_data (unsigned int port, const teca_metadata &request)
 
int cache_output_data (unsigned int port, const teca_metadata &request, const_p_teca_dataset &data)
 
void clear_cache (unsigned int port)
 clear the cache on the given output port More...
 
unsigned int get_number_of_input_connections ()
 get the number of input connections More...
 
teca_algorithm_output_portget_input_connection (unsigned int i)
 
void clear_modified (unsigned int port)
 clear the modified flag on the i'th output More...
 
int get_modified (unsigned int port) const
 return the output port's modified flag value More...
 
- Protected Attributes inherited from teca_algorithm
int verbose
 

Detailed Description

computes wind radius at the specified coordinates

Compute storm size and adds it to the table. There are two inputs, the first serves up tables of storms to compute the storm radius for. One must set the names of the columns that contain storm ids, x-coordnates, y-coordinates, and time coordinate. For each event the wind radius is computed. Computations are parallelized over storm id. The second input serves up wind velocity data most likely this will be from a NetCDF CF2 simulation dataset. By default radius is computed at the transitions on the Saffir-Simpson scale.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum

Profile types

Member Function Documentation

◆ append_critical_wind_speed()

void teca_tc_wind_radii::append_critical_wind_speed ( const double &  v)
inline

append to the critical_wind_speed algorithm vector property

◆ clear_critical_wind_speeds()

void teca_tc_wind_radii::clear_critical_wind_speeds ( )
inline

clear the critical_wind_speed algorithm vector property

◆ get_class_name()

const char* teca_tc_wind_radii::get_class_name ( ) const
inlineoverridevirtual

returns the name of the class

Implements teca_algorithm.

◆ get_core_radius()

const double& teca_tc_wind_radii::get_core_radius ( ) const
inline

Get the value of the core_radius algorithm property

◆ get_critical_wind_speed()

const double& teca_tc_wind_radii::get_critical_wind_speed ( size_t  i) const
inline

get the i-th element of the critical_wind_speed algorithm vector property

◆ get_critical_wind_speeds()

const std::vector< double >& teca_tc_wind_radii::get_critical_wind_speeds ( ) const
inline

get the critical_wind_speed algorithm vector property

◆ get_number_of_critical_wind_speeds()

size_t teca_tc_wind_radii::get_number_of_critical_wind_speeds ( )
inline

get the size of the critical_wind_speed algorithm vector property

◆ get_number_of_radial_bins()

const int& teca_tc_wind_radii::get_number_of_radial_bins ( ) const
inline

Get the value of the number_of_radial_bins algorithm property

◆ get_profile_type()

const int& teca_tc_wind_radii::get_profile_type ( ) const
inline

Get the value of the profile_type algorithm property

◆ get_search_radius()

const double& teca_tc_wind_radii::get_search_radius ( ) const
inline

Get the value of the search_radius algorithm property

◆ get_storm_id_column()

const std::string& teca_tc_wind_radii::get_storm_id_column ( ) const
inline

Get the value of the storm_id_column algorithm property

◆ get_storm_time_column()

const std::string& teca_tc_wind_radii::get_storm_time_column ( ) const
inline

Get the value of the storm_time_column algorithm property

◆ get_storm_wind_speed_column()

const std::string& teca_tc_wind_radii::get_storm_wind_speed_column ( ) const
inline

Get the value of the storm_wind_speed_column algorithm property

◆ get_storm_x_coordinate_column()

const std::string& teca_tc_wind_radii::get_storm_x_coordinate_column ( ) const
inline

Get the value of the storm_x_coordinate_column algorithm property

◆ get_storm_y_coordinate_column()

const std::string& teca_tc_wind_radii::get_storm_y_coordinate_column ( ) const
inline

Get the value of the storm_y_coordinate_column algorithm property

◆ get_wind_u_variable()

const std::string& teca_tc_wind_radii::get_wind_u_variable ( ) const
inline

Get the value of the wind_u_variable algorithm property

◆ get_wind_v_variable()

const std::string& teca_tc_wind_radii::get_wind_v_variable ( ) const
inline

Get the value of the wind_v_variable algorithm property

◆ New()

static p_teca_tc_wind_radii teca_tc_wind_radii::New ( )
inlinestatic

Returns an instance of teca_tc_wind_radii

◆ set_core_radius()

void teca_tc_wind_radii::set_core_radius ( const double &  v)
inline

Set the value of the core_radius algorithm property

◆ set_critical_wind_speed() [1/2]

void teca_tc_wind_radii::set_critical_wind_speed ( const double &  v)
inline

set the critical_wind_speed algorithm vector property to a single value

◆ set_critical_wind_speed() [2/2]

void teca_tc_wind_radii::set_critical_wind_speed ( size_t  i,
const double &  v 
)
inline

set the i-th element of the critical_wind_speed algorithm vector property

◆ set_critical_wind_speeds() [1/2]

void teca_tc_wind_radii::set_critical_wind_speeds ( const std::initializer_list< double > &&  l)
inline

set the critical_wind_speed algorithm vector property

◆ set_critical_wind_speeds() [2/2]

void teca_tc_wind_radii::set_critical_wind_speeds ( const std::vector< double > &  v)
inline

set the critical_wind_speed algorithm vector property

◆ set_input_connection()

void teca_tc_wind_radii::set_input_connection ( unsigned int  id,
const teca_algorithm_output_port port 
)
overridevirtual

override the input connections because we are going to take the first input and use it to generate metadata. the second input then becomes the only one the pipeline knows about.

Reimplemented from teca_algorithm.

◆ set_number_of_radial_bins()

void teca_tc_wind_radii::set_number_of_radial_bins ( const int &  v)
inline

Set the value of the number_of_radial_bins algorithm property

◆ set_profile_type()

void teca_tc_wind_radii::set_profile_type ( const int &  v)
inline

Set the value of the profile_type algorithm property

◆ set_search_radius()

void teca_tc_wind_radii::set_search_radius ( const double &  v)
inline

Set the value of the search_radius algorithm property

◆ set_storm_id_column()

void teca_tc_wind_radii::set_storm_id_column ( const std::string &  v)
inline

Set the value of the storm_id_column algorithm property

◆ set_storm_time_column()

void teca_tc_wind_radii::set_storm_time_column ( const std::string &  v)
inline

Set the value of the storm_time_column algorithm property

◆ set_storm_wind_speed_column()

void teca_tc_wind_radii::set_storm_wind_speed_column ( const std::string &  v)
inline

Set the value of the storm_wind_speed_column algorithm property

◆ set_storm_x_coordinate_column()

void teca_tc_wind_radii::set_storm_x_coordinate_column ( const std::string &  v)
inline

Set the value of the storm_x_coordinate_column algorithm property

◆ set_storm_y_coordinate_column()

void teca_tc_wind_radii::set_storm_y_coordinate_column ( const std::string &  v)
inline

Set the value of the storm_y_coordinate_column algorithm property

◆ set_wind_u_variable()

void teca_tc_wind_radii::set_wind_u_variable ( const std::string &  v)
inline

Set the value of the wind_u_variable algorithm property

◆ set_wind_v_variable()

void teca_tc_wind_radii::set_wind_v_variable ( const std::string &  v)
inline

Set the value of the wind_v_variable algorithm property

◆ shared_from_this() [1/2]

std::shared_ptr< teca_tc_wind_radii > teca_tc_wind_radii::shared_from_this ( )
inline

Enables the static constructor

◆ shared_from_this() [2/2]

std::shared_ptr< teca_tc_wind_radii const> teca_tc_wind_radii::shared_from_this ( ) const
inline

Enables the static constructor


The documentation for this class was generated from the following file: