CArl
Code Arlequin / C++ implementation
carl::libMesh_fe_addresses_3 Class Reference

#include <assemble_coupling.h>

Public Member Functions

 libMesh_fe_addresses_3 (libMesh::System &input_system, const std::string u_var_name="u", const std::string v_var_name="v", const std::string w_var_name="w")
 
void set_DoFs (int idx=0)
 

Public Attributes

libMesh::System & eq_system
 
const libMesh::MeshBase & mesh
 
const unsigned int dim
 
const unsigned int u_var
 
const unsigned int v_var
 
const unsigned int w_var
 
const libMesh::DofMap & dof_map
 
libMesh::FEType fe_type
 
libMesh::UniquePtr< libMesh::FEBase > fe_unique_ptr
 
libMesh::QGauss qrule
 
const libMesh::Elem * elem
 
std::vector< libMesh::dof_id_type > dof_indices
 
std::vector< libMesh::dof_id_type > dof_indices_u
 
std::vector< libMesh::dof_id_type > dof_indices_v
 
std::vector< libMesh::dof_id_type > dof_indices_w
 
unsigned int n_dofs
 
unsigned int n_dofs_u
 
unsigned int n_dofs_v
 
unsigned int n_dofs_w
 

Detailed Description

Definition at line 23 of file assemble_coupling.h.

Constructor & Destructor Documentation

carl::libMesh_fe_addresses_3::libMesh_fe_addresses_3 ( libMesh::System &  input_system,
const std::string  u_var_name = "u",
const std::string  v_var_name = "v",
const std::string  w_var_name = "w" 
)
inline

Definition at line 32 of file assemble_coupling.h.

34  :
35  eq_system { input_system },
36  mesh { eq_system.get_mesh() },
37  dim { mesh.mesh_dimension() },
38  u_var { input_system.variable_number(u_var_name) },
39  v_var { input_system.variable_number(v_var_name) },
40  w_var { input_system.variable_number(w_var_name) },
41  dof_map { input_system.get_dof_map() },
42  fe_type { dof_map.variable_type(u_var) },
43  fe_unique_ptr { libMesh::FEBase::build(dim, fe_type) },
44  qrule { dim, fe_type.default_quadrature_order() },
45  n_dofs { 0 },
46  n_dofs_u { 0 },
47  n_dofs_v { 0 },
48  n_dofs_w { 0 }
49 
50  {
51  fe_unique_ptr->attach_quadrature_rule(&qrule);
52  };
const libMesh::DofMap & dof_map
const libMesh::MeshBase & mesh
libMesh::UniquePtr< libMesh::FEBase > fe_unique_ptr

Member Function Documentation

void carl::libMesh_fe_addresses_3::set_DoFs ( int  idx = 0)
inline

Definition at line 78 of file assemble_coupling.h.

79  {
80  const libMesh::Elem* elem_dummy = mesh.elem(idx);
81  elem = mesh.elem(idx);
82  dof_map.dof_indices(elem_dummy, dof_indices);
83  dof_map.dof_indices(elem_dummy, dof_indices_u, u_var);
84  dof_map.dof_indices(elem_dummy, dof_indices_v, v_var);
85  dof_map.dof_indices(elem_dummy, dof_indices_w, w_var);
86  n_dofs = dof_indices.size();
87  n_dofs_u = dof_indices_u.size();
88  n_dofs_v = dof_indices_v.size();
89  n_dofs_w = dof_indices_w.size();
90  };
std::vector< libMesh::dof_id_type > dof_indices_v
const libMesh::DofMap & dof_map
const libMesh::MeshBase & mesh
std::vector< libMesh::dof_id_type > dof_indices
std::vector< libMesh::dof_id_type > dof_indices_w
std::vector< libMesh::dof_id_type > dof_indices_u
const libMesh::Elem * elem

Member Data Documentation

const unsigned int carl::libMesh_fe_addresses_3::dim

Definition at line 57 of file assemble_coupling.h.

std::vector<libMesh::dof_id_type> carl::libMesh_fe_addresses_3::dof_indices

Definition at line 68 of file assemble_coupling.h.

std::vector<libMesh::dof_id_type> carl::libMesh_fe_addresses_3::dof_indices_u

Definition at line 69 of file assemble_coupling.h.

std::vector<libMesh::dof_id_type> carl::libMesh_fe_addresses_3::dof_indices_v

Definition at line 70 of file assemble_coupling.h.

std::vector<libMesh::dof_id_type> carl::libMesh_fe_addresses_3::dof_indices_w

Definition at line 71 of file assemble_coupling.h.

const libMesh::DofMap& carl::libMesh_fe_addresses_3::dof_map

Definition at line 61 of file assemble_coupling.h.

const libMesh::Elem* carl::libMesh_fe_addresses_3::elem

Definition at line 65 of file assemble_coupling.h.

libMesh::System& carl::libMesh_fe_addresses_3::eq_system

Definition at line 52 of file assemble_coupling.h.

libMesh::FEType carl::libMesh_fe_addresses_3::fe_type

Definition at line 62 of file assemble_coupling.h.

libMesh::UniquePtr<libMesh::FEBase> carl::libMesh_fe_addresses_3::fe_unique_ptr

Definition at line 63 of file assemble_coupling.h.

const libMesh::MeshBase& carl::libMesh_fe_addresses_3::mesh

Definition at line 56 of file assemble_coupling.h.

unsigned int carl::libMesh_fe_addresses_3::n_dofs

Definition at line 73 of file assemble_coupling.h.

unsigned int carl::libMesh_fe_addresses_3::n_dofs_u

Definition at line 74 of file assemble_coupling.h.

unsigned int carl::libMesh_fe_addresses_3::n_dofs_v

Definition at line 75 of file assemble_coupling.h.

unsigned int carl::libMesh_fe_addresses_3::n_dofs_w

Definition at line 76 of file assemble_coupling.h.

libMesh::QGauss carl::libMesh_fe_addresses_3::qrule

Definition at line 64 of file assemble_coupling.h.

const unsigned int carl::libMesh_fe_addresses_3::u_var

Definition at line 58 of file assemble_coupling.h.

const unsigned int carl::libMesh_fe_addresses_3::v_var

Definition at line 59 of file assemble_coupling.h.

const unsigned int carl::libMesh_fe_addresses_3::w_var

Definition at line 60 of file assemble_coupling.h.


The documentation for this class was generated from the following file: