libMesh::FEComputeData Class Reference
#include <fe_compute_data.h>
Public Member Functions | |
| FEComputeData (const EquationSystems &es, const Point &pin) | |
| void | clear () |
| void | init () |
Public Attributes | |
| const EquationSystems & | equation_systems |
| const Point & | p |
| std::vector< Number > | shape |
| Real | phase |
| Real | speed |
| Real | frequency |
Detailed Description
class FEComputeData hides arbitrary data to be passed to and from children of FEBase through the FEInterface::compute_data() method. This enables the efficient computation of data on the finite element level, while maintaining library integrity. -- With special finite elements disabled (like infinite elements), this class wraps the return values of all shape functions from FEInterface::shape() in a std::vector<Number>. -- With enabled infinite elements, this class returns a vector of physically correct shape functions, both for finite and infinite elements.
Definition at line 46 of file fe_compute_data.h.
Constructor & Destructor Documentation
| libMesh::FEComputeData::FEComputeData | ( | const EquationSystems & | es, | |
| const Point & | pin | |||
| ) | [inline] |
Constructor. Takes the required input data and clears the output data using clear().
Definition at line 57 of file fe_compute_data.h.
References clear().
00058 : 00059 equation_systems(es), 00060 p(pin) 00061 { 00062 this->clear(); 00063 }
Member Function Documentation
| void libMesh::FEComputeData::clear | ( | ) |
Clears the output data completely.
Definition at line 26 of file fe_compute_data.C.
References frequency, phase, shape, and speed.
Referenced by FEComputeData().
00027 { 00028 this->shape.clear(); 00029 #if defined(LIBMESH_ENABLE_INFINITE_ELEMENTS) && !defined(LIBMESH_USE_COMPLEX_NUMBERS) 00030 this->phase = 0.; 00031 this->speed = 0.; 00032 #endif 00033 00034 #if defined (LIBMESH_ENABLE_INFINITE_ELEMENTS) && defined(LIBMESH_USE_COMPLEX_NUMBERS) 00035 this->speed = 0.; 00036 this->frequency = 0.; 00037 00038 #endif 00039 }
| void libMesh::FEComputeData::init | ( | ) |
Inits the output data to default values, provided the fields are correctly resized.
Definition at line 43 of file fe_compute_data.C.
References equation_systems, frequency, libMesh::Parameters::get(), libMesh::Parameters::have_parameter(), libMesh::EquationSystems::parameters, phase, libMesh::Real, shape, and speed.
Referenced by libMesh::FEInterface::compute_data().
00044 { 00045 if (!(this->shape.empty())) 00046 std::fill (this->shape.begin(), this->shape.end(), 0.); 00047 00048 #if defined(LIBMESH_ENABLE_INFINITE_ELEMENTS) && !defined(LIBMESH_USE_COMPLEX_NUMBERS) 00049 this->phase = 0.; 00050 00051 if (equation_systems.parameters.have_parameter<Real>("speed")) 00052 this->speed = this->equation_systems.parameters.get<Real>("speed"); 00053 #endif 00054 00055 #if defined (LIBMESH_ENABLE_INFINITE_ELEMENTS) && defined(LIBMESH_USE_COMPLEX_NUMBERS) 00056 if (equation_systems.parameters.have_parameter<Real>("speed")) 00057 this->speed = this->equation_systems.parameters.get<Real>("speed"); 00058 00059 if (equation_systems.parameters.have_parameter<Real>("current frequency")) 00060 this->frequency = this->equation_systems.parameters.get<Real>("current frequency"); 00061 00062 #endif 00063 }
Member Data Documentation
Const reference to the EquationSystems object that contains simulation-specific data.
Definition at line 72 of file fe_compute_data.h.
Referenced by init().
The frequency to evaluate shape functions including the wave number depending terms
Definition at line 109 of file fe_compute_data.h.
Referenced by clear(), libMesh::InfFE< Dim, T_radial, T_map >::compute_data(), and init().
| const Point& libMesh::FEComputeData::p |
Holds the point where the data are to be computed
Definition at line 76 of file fe_compute_data.h.
Referenced by libMesh::InfFE< Dim, T_radial, T_map >::compute_data(), and libMesh::FEInterface::compute_data().
Storage for the computed phase lag
Definition at line 92 of file fe_compute_data.h.
Referenced by clear(), libMesh::InfFE< Dim, T_radial, T_map >::compute_data(), and init().
| std::vector<Number> libMesh::FEComputeData::shape |
Storage for the computed shape function values.
Definition at line 85 of file fe_compute_data.h.
Referenced by clear(), libMesh::InfFE< Dim, T_radial, T_map >::compute_data(), libMesh::FEInterface::compute_data(), init(), and libMesh::MeshFunction::operator()().
The wave speed.
Definition at line 100 of file fe_compute_data.h.
Referenced by clear(), libMesh::InfFE< Dim, T_radial, T_map >::compute_data(), and init().
The documentation for this class was generated from the following files:
Site Created By: libMesh Developers
Last modified: February 05 2013 19:55:24 UTC
Hosted By: