Go to the documentation of this file.
18 #ifndef COUPLED_SYSTEM_H
19 #define COUPLED_SYSTEM_H
22 #include "libmesh/fem_function_base.h"
23 #include "libmesh/fem_system.h"
24 #include "libmesh/libmesh_common.h"
25 #include "libmesh/parameter_pointer.h"
26 #include "libmesh/parameter_vector.h"
27 #include "libmesh/auto_ptr.h"
39 const std::string & name_in,
40 const unsigned int number_in)
41 :
FEMSystem(es, name_in, number_in), Peclet(1.) {qoi.resize(1);}
52 return parameters[parameter_index];
57 if (!parameter_vector.size())
58 for (std::size_t i = 0; i != parameters.size(); ++i)
61 return parameter_vector;
72 virtual void init_data ();
79 virtual bool element_time_derivative (
bool request_jacobian,
83 virtual bool element_constraint (
bool request_jacobian,
87 virtual void postprocess ();
93 unsigned int p_var, u_var,
v_var, C_var;
112 unsigned int var_number)
118 virtual std::unique_ptr<FEMFunctionBase<Number>>
clone ()
const
120 return libmesh_make_unique<CoupledFEMFunctionsx>(*
this);
127 { libmesh_not_implemented(); }
131 const Real time = 0.);
143 unsigned int var_number)
144 { var = var_number; }
149 virtual std::unique_ptr<FEMFunctionBase<Number>>
clone ()
const
151 return libmesh_make_unique<CoupledFEMFunctionsy>(*
this);
158 { libmesh_not_implemented(); }
162 const Real time = 0.);
168 #endif // COUPLED_SYSTEM_H
Manages consistently variables, degrees of freedom, and coefficient vectors.
virtual ~CoupledFEMFunctionsx()
void push_back(std::unique_ptr< ParameterAccessor< Number >> new_accessor)
Adds an additional parameter accessor to the end of the vector.
virtual std::unique_ptr< FEMFunctionBase< Number > > clone() const
FEMFunctionBase is a base class from which users can derive in order to define "function-like" object...
Number & get_parameter_value(unsigned int parameter_index)
std::vector< Number > parameters
The libMesh namespace provides an interface to certain functionality in the library.
This class provides a specific system class.
virtual ~CoupledFEMFunctionsy()
A Point defines a location in LIBMESH_DIM dimensional Real space.
Data structure for specifying which Parameters should be independent variables in a parameter sensiti...
CoupledFEMFunctionsy(System &, unsigned int var_number)
CoupledSystem(EquationSystems &es, const std::string &name_in, const unsigned int number_in)
virtual std::unique_ptr< FEMFunctionBase< Number > > clone() const
This class provides all data required for a physics package (e.g.
This is the EquationSystems class.
Accessor object allowing reading and modification of the independent variables in a parameter sensiti...
ParameterVector parameter_vector
ParameterVector & get_parameter_vector()
CoupledFEMFunctionsx(System &, unsigned int var_number)
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
This class provides all data required for a physics package (e.g.