8 #include "libmesh/rb_construction.h"     9 #include "libmesh/rb_evaluation.h"    12 #include "libmesh/fe_base.h"    13 #include "libmesh/dof_map.h"    17 #ifdef LIBMESH_ENABLE_DIRICHLET    29     set_rb_theta_expansion(elasticity_theta_expansion);
    51                             const std::string & name_in,
    52                             const unsigned int number_in) :
    53     Parent(es, name_in, number_in),
    54     u_var(0), v_var(0), w_var(0), var_order(
FIRST),
    55     elasticity_assembly_expansion(*this),
    79     unsigned int n_components = this->get_mesh().mesh_dimension();
    81     libmesh_assert_less_equal(n_components, 3);
    83     u_var = this->add_variable(
"u", var_order);
    85       v_var = this->add_variable(
"v", var_order);
    87       w_var = this->add_variable(
"w", var_order);
    90     dirichlet_bc = build_zero_dirichlet_boundary_object();
    93     dirichlet_bc->b.insert(BOUNDARY_ID_MIN_X); 
    94     dirichlet_bc->variables.push_back(u_var);
    96       dirichlet_bc->variables.push_back(v_var);
    98       dirichlet_bc->variables.push_back(w_var);
   101     get_dof_map().add_dirichlet_boundary(*dirichlet_bc);
   106     set_rb_assembly_expansion(elasticity_assembly_expansion);
   109     set_inner_product_assembly(ip_assembly);
   120     FEBase * elem_fe = 
nullptr;
   127     FEBase * side_fe = 
nullptr;
   157 #endif // LIBMESH_ENABLE_DIRICHLET This is the EquationSystems class. 
Order
defines an enum for polynomial orders. 
ElasticityRBConstruction(EquationSystems &es, const std::string &name_in, const unsigned int number_in)
void get_side_fe(unsigned int var, FEGenericBase< OutputShape > *&fe) const
Accessor for edge/face (2D/3D) finite element object for variable var for the largest dimension in th...
virtual Real get_stability_lower_bound()
Return a "dummy" lower bound for the coercivity constant. 
ElasticityThetaExpansion elasticity_theta_expansion
The object that stores the "theta" expansion of the parameter dependent PDE, i.e. ...
unsigned int u_var
Variable numbers and approximation order. 
InnerProductAssembly ip_assembly
Object to assemble the inner product matrix. 
The libMesh namespace provides an interface to certain functionality in the library. 
virtual void init_data()
Initialize data structures. 
ElasticityRBConstruction sys_type
The type of system. 
const std::vector< std::vector< OutputGradient > > & get_dphi() const
virtual_for_inffe const std::vector< Real > & get_JxW() const
This class provides all data required for a physics package (e.g. 
RBConstruction Parent
The type of the parent. 
virtual void init_context(FEMContext &c)
Pre-request all relevant element data. 
std::unique_ptr< DirichletBoundary > dirichlet_bc
The object that defines which degrees of freedom are on a Dirichlet boundary. 
This class is part of the rbOOmit framework. 
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
void get_element_fe(unsigned int var, FEGenericBase< OutputShape > *&fe) const
Accessor for interior finite element object for variable var for the largest dimension in the mesh...
This class is part of the rbOOmit framework. 
ElasticityRBEvaluation(const Parallel::Communicator &comm)
Constructor. 
ElasticityAssemblyExpansion elasticity_assembly_expansion
The object that stores the "assembly" expansion of the parameter dependent PDE. 
This class forms the foundation from which generic finite elements may be derived. 
const std::vector< std::vector< OutputShape > > & get_phi() const