#include <fe_compute_data.h>
FEComputeData (const EquationSystems &es, const Point &pin)
void clear ()
void init ()
const EquationSystems & equation_systems
const Point & p
std::vector< Number > shape
Real phase
Real speed
Real frequency
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.
Definition at line 57 of file fe_compute_data.h.
References clear().
:
equation_systems(es),
p(pin)
{
this->clear();
}
Definition at line 25 of file fe_compute_data.C.
References frequency, phase, shape, and speed.
Referenced by FEComputeData().
{
this->shape.clear();
#if defined(LIBMESH_ENABLE_INFINITE_ELEMENTS) && !defined(LIBMESH_USE_COMPLEX_NUMBERS)
this->phase = 0.;
this->speed = 0.;
#endif
#if defined (LIBMESH_ENABLE_INFINITE_ELEMENTS) && defined(LIBMESH_USE_COMPLEX_NUMBERS)
this->speed = 0.;
this->frequency = 0.;
#endif
}
Definition at line 42 of file fe_compute_data.C.
References equation_systems, frequency, Parameters::get(), Parameters::have_parameter(), EquationSystems::parameters, phase, shape, and speed.
Referenced by FEInterface::compute_data().
{
if (!(this->shape.empty()))
std::fill (this->shape.begin(), this->shape.end(), 0.);
#if defined(LIBMESH_ENABLE_INFINITE_ELEMENTS) && !defined(LIBMESH_USE_COMPLEX_NUMBERS)
this->phase = 0.;
if (equation_systems.parameters.have_parameter<Real>('speed'))
this->speed = this->equation_systems.parameters.get<Real>('speed');
#endif
#if defined (LIBMESH_ENABLE_INFINITE_ELEMENTS) && defined(LIBMESH_USE_COMPLEX_NUMBERS)
if (equation_systems.parameters.have_parameter<Real>('speed'))
this->speed = this->equation_systems.parameters.get<Real>('speed');
if (equation_systems.parameters.have_parameter<Real>('current frequency'))
this->frequency = this->equation_systems.parameters.get<Real>('current frequency');
#endif
}
Definition at line 72 of file fe_compute_data.h.
Definition at line 109 of file fe_compute_data.h.
Referenced by clear(), InfFE< Dim, T_radial, T_map >::compute_data(), and init().
Definition at line 76 of file fe_compute_data.h.
Referenced by InfFE< Dim, T_radial, T_map >::compute_data(), and FEInterface::compute_data().
Definition at line 92 of file fe_compute_data.h.
Referenced by clear(), InfFE< Dim, T_radial, T_map >::compute_data(), and init().
Definition at line 85 of file fe_compute_data.h.
Referenced by clear(), InfFE< Dim, T_radial, T_map >::compute_data(), FEInterface::compute_data(), init(), and MeshFunction::operator()().
Definition at line 100 of file fe_compute_data.h.
Referenced by clear(), InfFE< Dim, T_radial, T_map >::compute_data(), and init().
Generated automatically by Doxygen for libMesh from the source code.