20 #ifndef LIBMESH_DIRICHLET_BOUNDARIES_H
21 #define LIBMESH_DIRICHLET_BOUNDARIES_H
23 #include "libmesh/libmesh_config.h"
25 #ifdef LIBMESH_ENABLE_DIRICHLET
28 #include "libmesh/id_types.h"
29 #include "libmesh/vector_value.h"
97 std::vector<unsigned int> variables_in,
108 std::vector<unsigned int> variables_in,
120 std::vector<unsigned int> variables_in,
130 std::vector<unsigned int> variables_in,
131 const System & f_sys_in,
143 std::vector<unsigned int> variables_in,
144 const System & f_sys_in,
156 std::vector<unsigned int> variables_in,
157 const System & f_sys_in,
180 std::set<boundary_id_type>
b;
183 std::unique_ptr<FunctionBase<Number>>
f;
184 std::unique_ptr<FunctionBase<Gradient>>
g;
186 std::unique_ptr<FEMFunctionBase<Number>>
f_fem;
187 std::unique_ptr<FEMFunctionBase<Gradient>>
g_fem;
223 #endif // LIBMESH_ENABLE_DIRICHLET
225 #endif // LIBMESH_DIRICHLET_BOUNDARIES_H
std::unique_ptr< FEMFunctionBase< Gradient > > g_fem
std::unique_ptr< FunctionBase< Number > > f
Real jacobian_tolerance
Defaults to zero, but can be set to a custom small negative value to try and avoid spurious zero (or ...
~DirichletBoundary()
Standard destructor.
This class allows one to associate Dirichlet boundary values with a given set of mesh boundary ids an...
std::vector< unsigned int > variables
DirichletBoundary(std::set< boundary_id_type > b_in, std::vector< unsigned int > variables_in, const FunctionBase< Number > *f_in, const FunctionBase< Gradient > *g_in=nullptr)
Constructor for a system-variable-order boundary using pointers-to-functors.
~DirichletBoundaries()=default
DirichletBoundaries()=default
std::unique_ptr< FEMFunctionBase< Number > > f_fem
VariableIndexing
Dirichlet functions may be indexed either by "system variable order" or "local variable order"...
We're using a class instead of a typedef to allow forward declarations and future flexibility...
DirichletBoundary & operator=(const DirichletBoundary &)
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
std::unique_ptr< FunctionBase< Gradient > > g
std::set< boundary_id_type > b
FunctionBase是一个函数对象的基类,可以在某一点(可选地包括时间)进行评估。
FEMFunctionBase是一个基类,用户可以从中派生出“函数样式”的对象,以在FEMSystem中使用。