LShape Solver using continuous approximation spaces solve \( -\Delta u = f\) on \(\Omega\) and \(u= g\) on \(\Gamma\)
Dim | the geometric dimension of the problem (e.g. Dim=1, 2 or 3) |
Inherits Simget.
Public Types | |
typedef bases< Lagrange< Order, Scalar > > | basis_type |
the basis type of our approximation space | |
typedef Simplex< Dim > | convex_type |
geometry entities type composing the mesh, here Simplex in Dimension Dim of Order 1 | |
typedef space_type::element_type | element_type |
an element type of the approximation function space | |
typedef boost::shared_ptr < export_type > | export_ptrtype |
the exporter factory (shared_ptr<> type) | |
typedef Exporter< mesh_type > | export_type |
the exporter factory type | |
typedef boost::shared_ptr < mesh_type > | mesh_ptrtype |
mesh shared_ptr<> type | |
typedef Mesh< convex_type > | mesh_type |
mesh type | |
typedef MeshAdaptation< Dim, Order, GOrder > | MeshAdapt |
typedef bases< Lagrange < 0, Scalar, Discontinuous > > | p0_basis_type |
Scalar P0 space. | |
typedef p0_space_type::element_type | p0_element_type |
typedef boost::shared_ptr < p0_space_type > | p0_space_ptrtype |
typedef FunctionSpace < mesh_type, p0_basis_type > | p0_space_type |
typedef bases< Lagrange < 1, Vectorial > > | p1vec_basis_type |
Vectorial P1 space. | |
typedef boost::shared_ptr < p1vec_space_type > | p1vec_space_ptrtype |
typedef FunctionSpace < mesh_type, p1vec_basis_type > | p1vec_space_type |
typedef boost::shared_ptr < space_type > | space_ptrtype |
the approximation function space type (shared_ptr<> type) | |
typedef FunctionSpace < mesh_type, basis_type > | space_type |
the approximation function space type | |
typedef double | value_type |
numerical type is double | |
Public Member Functions | |
gmsh_ptrtype | createLShapeGeo (double meshSize, double Lx, double Ly, double Lz) |
LShape () | |
void | run () |
void | run (const double *X, unsigned long P, double *Y, unsigned long N) |
boost::tuple< double, double, p0_element_type > | zz_estimator (const element_type &U, const mesh_ptrtype &mesh) |
Static Public Attributes | |
static const uint16_type | GOrder = 1 |
Geometrical order. | |
static const uint16_type | Order = 2 |
Polynomial order \(P_2\). | |
void LShape< Dim >::run | ( | const double * | X, |
unsigned long | P, | ||
double * | Y, | ||
unsigned long | N | ||
) |
Set dimensions of Lshape geometry
Resolve - u = 1 on , with u = 0 on
Define right hand side :
Weak Dirichlet boundary conditions treatment :
Define left hand side
Weak Dirichlet boundary conditions treatment :
Solve the system
Exportation of results
Make a pause between two adaptations : testing purpose
update mesh_eps