|
TECA
The Toolkit for Extreme Climate Analysis
|
Compute the integral over a geographic region on the surface of the Earth. More...
#include <teca_surface_integral.h>
Public Member Functions | |
| std::shared_ptr< teca_surface_integral > | shared_from_this () |
| std::shared_ptr< teca_surface_integral const > | shared_from_this () const |
| teca_surface_integral (const teca_surface_integral &src)=delete | |
| teca_surface_integral (teca_surface_integral &&src)=delete | |
| teca_surface_integral & | operator= (const teca_surface_integral &src)=delete |
| teca_surface_integral & | operator= (teca_surface_integral &&src)=delete |
| const char * | get_class_name () const override |
input_variables | |
Set the name of the variables to integrate. | |
| size_t | get_number_of_input_variables () |
| void | append_input_variable (const std::string &v) |
| void | set_input_variable (const std::string &v) |
| void | set_input_variable (size_t i, const std::string &v) |
| void | set_input_variables (const std::vector< std::string > &v) |
| void | set_input_variables (const std::initializer_list< std::string > &&l) |
| const std::string & | get_input_variable (size_t i) const |
| const std::vector< std::string > & | get_input_variables () const |
| void | clear_input_variables () |
output_variables | |
Set the name of variables storing the results. | |
| size_t | get_number_of_output_variables () |
| void | append_output_variable (const std::string &v) |
| void | set_output_variable (const std::string &v) |
| void | set_output_variable (size_t i, const std::string &v) |
| void | set_output_variables (const std::vector< std::string > &v) |
| void | set_output_variables (const std::initializer_list< std::string > &&l) |
| const std::string & | get_output_variable (size_t i) const |
| const std::vector< std::string > & | get_output_variables () const |
| void | clear_output_variables () |
region_mask_variable | |
Set the name of the variable containing the mask defining the region of interest. | |
| void | set_region_mask_variable (const std::string &v) |
| const std::string & | get_region_mask_variable () const |
output_prefix | |
Set a string to prepend to the output variable name | |
| void | set_output_prefix (const std::string &v) |
| const std::string & | get_output_prefix () const |
Public Member Functions inherited from teca_algorithm | |
| teca_algorithm (const teca_algorithm &src)=delete | |
| teca_algorithm (teca_algorithm &&src)=delete | |
| teca_algorithm & | operator= (const teca_algorithm &src)=delete |
| teca_algorithm & | operator= (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 | set_input_connection (unsigned int id, 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_surface_integral | New () |
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) |
| virtual void | set_modified () |
| 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 ¤t) |
| virtual const_p_teca_dataset | request_data (teca_algorithm_output_port &port, const teca_metadata &request) |
| virtual int | validate_cache (teca_algorithm_output_port ¤t) |
| 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_port & | get_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 |
Compute the integral over a geographic region on the surface of the Earth.
Compute the integral over a geographic region on the surface of the Earth. This is esepcially useful for calculating net flux normal to the surface over the specified region and may be useful for integrating other variables which have units of something over square meters.
The surface inetgral of a variable \(F\) over a region enclosed by curve \(C\) is given by:
\[ F_{net} = -r_e^2 \iint\limits_{C} F \; sin \phi \; d \theta d \phi \]
where:
F : a 2D field in units of something per square meter
\(C\) : A curve enclosing a region on the surface of the Earth
\(\phi\) : \((90 - \)degrees latitude \() \frac{\pi}{180}\) radians
\(\theta\) : \((\)degrees longitude \() \frac{\pi}{180}\) radians
Note: the minus sign out front is because we flip the limits of integration when going from latitude to \(phi\) coordinates.
Requirements:
Produces a table with one column for each calculation made and columns for time step and time.
|
inline |
append to the input_variable algorithm vector property
|
inline |
append to the output_variable algorithm vector property
|
inline |
clear the input_variable algorithm vector property
|
inline |
clear the output_variable algorithm vector property
|
inlineoverridevirtual |
returns the name of the class
Implements teca_algorithm.
|
inline |
get the i-th element of the input_variable algorithm vector property
|
inline |
get the input_variable algorithm vector property
|
inline |
get the size of the input_variable algorithm vector property
|
inline |
get the size of the output_variable algorithm vector property
|
inline |
Get the value of the output_prefix algorithm property
|
inline |
get the i-th element of the output_variable algorithm vector property
|
inline |
get the output_variable algorithm vector property
|
inline |
Get the value of the region_mask_variable algorithm property
|
inlinestatic |
Returns an instance of teca_surface_integral
|
inline |
set the input_variable algorithm vector property to a single value
|
inline |
set the i-th element of the input_variable algorithm vector property
|
inline |
set the input_variable algorithm vector property
|
inline |
set the input_variable algorithm vector property
|
inline |
Set the value of the output_prefix algorithm property
|
inline |
set the output_variable algorithm vector property to a single value
|
inline |
set the i-th element of the output_variable algorithm vector property
|
inline |
set the output_variable algorithm vector property
|
inline |
set the output_variable algorithm vector property
|
inline |
Set the value of the region_mask_variable algorithm property
|
inline |
Enables the static constructor
|
inline |
Enables the static constructor