Classes | |
| class | getfem::mdbrick_Coulomb_friction< MODEL_STATE > |
| Unilateral contact and Coulomb friction condition brick. More... | |
| class | getfem::mdbrick_bilaplacian< MODEL_STATE > |
Bilaplacian brick . More... | |
| class | getfem::mdbrick_normal_derivative_source_term< MODEL_STATE > |
Normal derivative source term brick ( ). More... | |
| class | getfem::mdbrick_neumann_KL_term< MODEL_STATE > |
| Brick for Special boundary condition for Kirchhoff-Love model. More... | |
| class | getfem::mdbrick_normal_derivative_Dirichlet< MODEL_STATE > |
| Normal derivative Dirichlet condition brick. More... | |
| class | getfem::mdbrick_isotropic_linearized_plate< MODEL_STATE > |
| Linear plate model brick (for moderately thick plates, using the Reissner-Mindlin model). More... | |
| class | getfem::mdbrick_mixed_isotropic_linearized_plate< MODEL_STATE > |
| Mixed linear plate model brick (for thin plates, using Kirchhoff-Love model). More... | |
| class | getfem::mdbrick_plate_simple_support< MODEL_STATE > |
Simple support condition for plate model brick (Dirichlet condition on and , free rotation). More... | |
| class | getfem::mdbrick_plate_clamped_support< MODEL_STATE > |
| Clamped condition for plate model brick (Dirichlet condition on the displacement and the rotation). More... | |
| class | getfem::mdbrick_plate_closing< MODEL_STATE > |
| Free edges condition for mixed plate model brick. More... | |
| class | getfem::model_state< T_MATRIX, C_MATRIX, VECTOR > |
| Model State : contains all storage needed by the bricks (. More... | |
| class | getfem::mdbrick_abstract_common_base |
| Common base class for real and complex model bricks. More... | |
| class | getfem::mdbrick_abstract< MODEL_STATE > |
| Abstract model brick. More... | |
| class | getfem::mdbrick_abstract_linear_pde< MODEL_STATE > |
| Abstract brick for linear PDE problems (such as Helmholtz, Laplacian, etc). More... | |
| class | getfem::mdbrick_isotropic_linearized_elasticity< MODEL_STATE > |
Linear elasticity brick ( ). More... | |
| class | getfem::mdbrick_mass_matrix< MODEL_STATE > |
Mass-matrix brick ( ). More... | |
| class | getfem::mdbrick_Helmholtz< MODEL_STATE > |
Helmholtz brick ( ). More... | |
| class | getfem::mdbrick_generic_elliptic< MODEL_STATE > |
General elliptic brick ( ). More... | |
| class | getfem::mdbrick_source_term< MODEL_STATE > |
Source term brick ( ). More... | |
| class | getfem::mdbrick_normal_source_term< MODEL_STATE > |
Normal source term brick ( ). More... | |
| class | getfem::mdbrick_QU_term< MODEL_STATE > |
Q.U term brick ( ) with a matrix field (assuming N = mf_u.get_qdim();). More... | |
| class | getfem::mdbrick_linear_incomp< MODEL_STATE > |
| Mixed linear incompressible condition brick. More... | |
| class | getfem::mdbrick_Dirichlet< MODEL_STATE > |
| Standard Dirichlet condition brick. More... | |
| class | getfem::mdbrick_normal_component_Dirichlet< MODEL_STATE > |
| normal component Dirichlet condition brick. More... | |
| class | getfem::mdbrick_generalized_Dirichlet< MODEL_STATE > |
| Generalized Dirichlet condition brick. More... | |
| class | getfem::mdbrick_navier_stokes< MODEL_STATE > |
| Incompressible Navier-Stokes brick. More... | |
| class | getfem::mdbrick_nonlinear_elasticity< MODEL_STATE > |
Non-linear elasticity brick ( ). More... | |
| class | getfem::mdbrick_nonlinear_incomp< MODEL_STATE > |
| Incompressible non-linear elasticity brick. More... | |
| class | getfem::mdbrick_plasticity< MODEL_STATE > |
| Plasticity brick (small deformations, quasi-static). More... | |
Typedefs | |
|
typedef gmm::rsvector < scalar_type > | getfem::modeling_standard_sparse_vector |
| Default real sparse vector type for bricks. | |
|
typedef gmm::col_matrix < modeling_standard_sparse_vector > | getfem::modeling_standard_sparse_matrix |
| Default real sparse matrix type for bricks. | |
| typedef std::vector< scalar_type > | getfem::modeling_standard_plain_vector |
| Default real dense vector type for bricks. | |
|
typedef gmm::rsvector < complex_type > | getfem::modeling_standard_complex_sparse_vector |
| Default complex sparse vector type for bricks. | |
|
typedef gmm::col_matrix < modeling_standard_complex_sparse_vector > | getfem::modeling_standard_complex_sparse_matrix |
| Default complex sparse matrix type for bricks. | |
| typedef std::vector< complex_type > | getfem::modeling_standard_complex_plain_vector |
| Default complex dense vector type for bricks. | |
|
typedef model_state < modeling_standard_sparse_matrix, modeling_standard_sparse_matrix, modeling_standard_plain_vector > | getfem::standard_model_state |
| Default real model_state for bricks. | |
|
typedef model_state < modeling_standard_complex_sparse_matrix, modeling_standard_complex_sparse_matrix, modeling_standard_complex_plain_vector > | getfem::standard_complex_model_state |
| Default complex model_state for bricks. | |
Enumerations | |
| enum | getfem::constraints_type |
Insert a constraint | |
Functions | |
| void | getfem::standard_solve (model &md, gmm::iteration &iter, rmodel_plsolver_type lsolver, gmm::abstract_newton_line_search &ls) |
| A default solver for the model brick system. | |
| template<typename MODEL_STATE > | |
| void | getfem::standard_solve (MODEL_STATE &MS, mdbrick_abstract< MODEL_STATE > &problem, gmm::iteration &iter, typename useful_types< MODEL_STATE >::plsolver_type lsolver, gmm::abstract_newton_line_search &ls) |
| A default solver for the old model brick system. | |
Insert a constraint B*U=R into the problem.
B is a nc * mf_u.nb_dof() constraint matrix (nc is the number of constraints to be added by this brick).
This brick is in particular a base class of mdbrick_Dirichlet. It can also be used on its own to add a constraint to make the linear system well-posed for instance when one of the unknown is defined modulo a constant (typically a pressure term).
Definition at line 1524 of file getfem_modeling.h.
| void getfem::standard_solve | ( | model & | md, | |
| gmm::iteration & | iter, | |||
| rmodel_plsolver_type | lsolver, | |||
| gmm::abstract_newton_line_search & | ls | |||
| ) |
A default solver for the model brick system.
Of course it could be not very well suited for a particular problem, so it could be copied and adapted to change solvers, add a special traitement on the problem, etc ... This is in fact a model for your own solver.
For small problems, a direct solver is used (getfem::SuperLU_solve), for larger problems, a conjugate gradient gmm::cg (if the problem is coercive) or a gmm::gmres is used (preconditionned with an incomplete factorization).
When MPI/METIS is enabled, a partition is done via METIS, and a parallel solver can be used.
Definition at line 125 of file getfem_model_solvers.cc.
| void getfem::standard_solve | ( | MODEL_STATE & | MS, | |
| mdbrick_abstract< MODEL_STATE > & | problem, | |||
| gmm::iteration & | iter, | |||
| typename useful_types< MODEL_STATE >::plsolver_type | lsolver, | |||
| gmm::abstract_newton_line_search & | ls | |||
| ) | [inline] |
A default solver for the old model brick system.
Of course it could be not very well suited for a particular problem, so it could be copied and adapted to change solvers, add a special traitement on the problem, etc ... This is in fact a model for your own solver.
For small problems, a direct solver is used (getfem::SuperLU_solve), for larger problems, a conjugate gradient gmm::cg (if the problem is coercive) or a gmm::gmres is used (preconditionned with an incomplete factorization).
When MPI/METIS is enabled, a partition is done via METIS, and a parallel solver can be used.
Definition at line 682 of file getfem_model_solvers.h.
1.6.1