|
TECA
The Toolkit for Extreme Climate Analysis
|
Computes moisture flux from IVT over a geographic region. More...
#include <teca_regional_moisture_flux.h>
Public Member Functions | |
| std::shared_ptr< teca_regional_moisture_flux > | shared_from_this () |
| std::shared_ptr< teca_regional_moisture_flux const > | shared_from_this () const |
| teca_regional_moisture_flux (const teca_regional_moisture_flux &src)=delete | |
| teca_regional_moisture_flux (teca_regional_moisture_flux &&src)=delete | |
| teca_regional_moisture_flux & | operator= (const teca_regional_moisture_flux &src)=delete |
| teca_regional_moisture_flux & | operator= (teca_regional_moisture_flux &&src)=delete |
| const char * | get_class_name () const override |
ivt_u_variable | |
Set the name of the variable containing the longitudinal component of IVT. | |
| void | set_ivt_u_variable (const std::string &v) |
| const std::string & | get_ivt_u_variable () const |
ivt_v_variable | |
Set the name of the variable containing the latitudinal component of IVT. | |
| void | set_ivt_v_variable (const std::string &v) |
| const std::string & | get_ivt_v_variable () const |
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 |
regional_moisture_flux_variable | |
Set the name of the array to store the result in. the default is "regional_moisture_flux" | |
| void | set_moisture_flux_variable (const std::string &v) |
| const std::string & | get_moisture_flux_variable () 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_regional_moisture_flux | 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 |
Computes moisture flux from IVT over a geographic region.
Computes moisture flux from IVT over a geographic region.
The net transport of water vapor \(F\) into/out of the atmosphere above a region enclosed by the closed curve \(C\) is given by:
\[ F = - r_e \iint\limits_{C} \left( \frac{\partial}{\partial\phi} \left[ IVT_{\phi} \; sin \phi \right] + \frac{\partial}{\partial\theta} [ IVT_{\theta} ] \right) \; d\theta \, d\phi \]
where:
\(IVT_{\theta}\) : longitudinal component of the IVT vector in units of \(kg\, m^{-1} \, s^{-1}\)
\(IVT_{\phi}\) : latitudinal component of the IVT vector in units of \(kg \, m^{-1} \, s^{-1}\)
\(\phi\) : \((90 - \)degrees latitude \() \frac{\pi}{180}\) radians
\(\theta\) : \((\)degrees longitude \() \frac{\pi}{180}\) radians
\(C\) : a curve enclosing a region on the surface of the Earth
\(r_e\) : the radius of the Earth (6378100) \(m\)
Note: the minus sign out front is because we flip the limits of integration when going from latitude to \(\phi\) coordinates.
Requires:
Produces: A table with a column for the net moisture flux over the region as well as collumns for time and time step.
|
inlineoverridevirtual |
returns the name of the class
Implements teca_algorithm.
|
inline |
Get the value of the ivt_u_variable algorithm property
|
inline |
Get the value of the ivt_v_variable algorithm property
|
inline |
Get the value of the moisture_flux_variable algorithm property
|
inline |
Get the value of the region_mask_variable algorithm property
|
inlinestatic |
Returns an instance of teca_regional_moisture_flux
|
inline |
Set the value of the ivt_u_variable algorithm property
|
inline |
Set the value of the ivt_v_variable algorithm property
|
inline |
Set the value of the moisture_flux_variable algorithm property
|
inline |
Set the value of the region_mask_variable algorithm property
|
inline |
Enables the static constructor
|
inline |
Enables the static constructor