TECA
The Toolkit for Extreme Climate Analysis
teca_geography Namespace Reference

Codes for dealing with geography. More...

Functions

unsigned long get_number_of_cyclone_basins ()
 
void get_cyclone_basin_names (std::vector< std::string > &names, std::vector< std::string > &long_names)
 
void get_cyclone_basins (std::vector< unsigned long > &sizes, std::vector< unsigned long > &starts, std::vector< double > &x_coordinates, std::vector< double > &y_coordinates, std::vector< int > &ids, std::vector< std::string > &names, std::vector< std::string > &long_names)
 
int get_cyclone_basin (const std::string &rname, std::vector< unsigned long > &sizes, std::vector< unsigned long > &starts, std::vector< double > &x_coordinates, std::vector< double > &y_coordinates, std::vector< int > &ids, std::vector< std::string > &names, std::vector< std::string > &long_names)
 
int get_cyclone_basin (unsigned int rid, std::vector< unsigned long > &sizes, std::vector< unsigned long > &starts, std::vector< double > &x_coordinates, std::vector< double > &y_coordinates, std::vector< int > &ids, std::vector< std::string > &names, std::vector< std::string > &long_names)
 

Detailed Description

Codes for dealing with geography.

Function Documentation

◆ get_cyclone_basin() [1/2]

int teca_geography::get_cyclone_basin ( const std::string &  rname,
std::vector< unsigned long > &  sizes,
std::vector< unsigned long > &  starts,
std::vector< double > &  x_coordinates,
std::vector< double > &  y_coordinates,
std::vector< int > &  ids,
std::vector< std::string > &  names,
std::vector< std::string > &  long_names 
)

load a cyclone basin by name. Either the short or long name can be used. see get_cyclone_basin_names.

◆ get_cyclone_basin() [2/2]

int teca_geography::get_cyclone_basin ( unsigned int  rid,
std::vector< unsigned long > &  sizes,
std::vector< unsigned long > &  starts,
std::vector< double > &  x_coordinates,
std::vector< double > &  y_coordinates,
std::vector< int > &  ids,
std::vector< std::string > &  names,
std::vector< std::string > &  long_names 
)

load a cyclone basin by it's region id. region ids must be in the range of 0 to get_number_of_cyclone_basins() - 1.

◆ get_cyclone_basin_names()

void teca_geography::get_cyclone_basin_names ( std::vector< std::string > &  names,
std::vector< std::string > &  long_names 
)

get the unique list of names describing available cyclone basins. the list can be indexed by the ids returned by the get_cyclone_basin/s functions.

◆ get_cyclone_basins()

void teca_geography::get_cyclone_basins ( std::vector< unsigned long > &  sizes,
std::vector< unsigned long > &  starts,
std::vector< double > &  x_coordinates,
std::vector< double > &  y_coordinates,
std::vector< int > &  ids,
std::vector< std::string > &  names,
std::vector< std::string > &  long_names 
)

load polygons describing the cyclone basins used by TECA

upon return:

sizes array has been appended with the size of each basin
starts array has been appended with the starting index of
each basin's coordinates
x/y_coordinates have been appended with the coordinates
ids array has been appended with the basin id

some basins are comprised of multiple polygons because they split over the periodic boundary. hence the ids array is used to identify a basin.

◆ get_number_of_cyclone_basins()

unsigned long teca_geography::get_number_of_cyclone_basins ( )

get the number of cyclone basins. cyclone basin ids are in the range 0 to number of basins - 1.