|
bool | getfem::is_old (const std::string &name) |
| Does the variable have Old_ prefix.
|
|
std::string | getfem::no_old_prefix_name (const std::string &name) |
| Strip the variable name from prefix Old_ if it has one.
|
|
void APIDECL | getfem::add_theta_method_dispatcher (model &md, dal::bit_vector ibricks, const std::string &THETA) |
| Add a theta-method time dispatcher to a list of bricks. More...
|
|
void APIDECL | getfem::velocity_update_for_order_two_theta_method (model &md, const std::string &U, const std::string &V, const std::string &pdt, const std::string &ptheta) |
| Function which udpate the velocity $v^{n+1}$ after the computation of the displacement $u^{n+1}$ and before the next iteration. More...
|
|
void APIDECL | getfem::add_midpoint_dispatcher (model &md, dal::bit_vector ibricks) |
| Add a midpoint time dispatcher to a list of bricks. More...
|
|
void APIDECL | getfem::velocity_update_for_Newmark_scheme (model &md, size_type id2dt2b, const std::string &U, const std::string &V, const std::string &pdt, const std::string &ptwobeta, const std::string &pgamma) |
| Function which udpate the velocity $v^{n+1}$ after the computation of the displacement $u^{n+1}$ and before the next iteration. More...
|
|
size_type APIDECL | getfem::add_linear_term (model &md, const mesh_im &mim, const std::string &expr, size_type region=size_type(-1), bool is_sym=false, bool is_coercive=false, const std::string &brickname="", bool return_if_nonlin=false) |
| Add a term given by the weak form language expression expr which will be assembled in region region and with the integration method mim . More...
|
|
size_type APIDECL | getfem::add_nonlinear_term (model &md, const mesh_im &mim, const std::string &expr, size_type region=size_type(-1), bool is_sym=false, bool is_coercive=false, const std::string &brickname="") |
| Add a nonlinear term given by the weak form language expression expr which will be assembled in region region and with the integration method mim . More...
|
|
size_type APIDECL | getfem::add_source_term (model &md, const mesh_im &mim, const std::string &expr, size_type region=size_type(-1), const std::string &brickname=std::string(), const std::string &directvarname=std::string(), const std::string &directdataname=std::string(), bool return_if_nonlin=false) |
| Add a source term given by the assembly string expr which will be assembled in region region and with the integration method mim . More...
|
|
size_type APIDECL | getfem::add_linear_twodomain_term (model &md, const mesh_im &mim, const std::string &expr, size_type region, const std::string &secondary_domain, bool is_sym=false, bool is_coercive=false, const std::string &brickname="", bool return_if_nonlin=false) |
| Adds a linear term given by a weak form language expression like add_linear_term function but for an integration on a direct product of two domains, a first specfied by mim and region and a second one by secondary_domain which has to be declared first into the model.
|
|
size_type APIDECL | getfem::add_nonlinear_twodomain_term (model &md, const mesh_im &mim, const std::string &expr, size_type region, const std::string &secondary_domain, bool is_sym=false, bool is_coercive=false, const std::string &brickname="") |
| Adds a nonlinear term given by a weak form language expression like add_nonlinear_term function but for an integration on a direct product of two domains, a first specfied by mim and region and a second one by secondary_domain which has to be declared first into the model.
|
|
size_type APIDECL | getfem::add_twodomain_source_term (model &md, const mesh_im &mim, const std::string &expr, size_type region, const std::string &secondary_domain, const std::string &brickname=std::string(), const std::string &directvarname=std::string(), const std::string &directdataname=std::string(), bool return_if_nonlin=false) |
| Adds a source term given by a weak form language expression like add_source_term function but for an integration on a direct product of two domains, a first specfied by mim and region and a second one by secondary_domain which has to be declared first into the model.
|
|
size_type APIDECL | getfem::add_Laplacian_brick (model &md, const mesh_im &mim, const std::string &varname, size_type region=size_type(-1)) |
| Add a Laplacian term on the variable varname (in fact with a minus : :math:-\text{div}(\nabla u) ). More...
|
|
size_type APIDECL | getfem::add_generic_elliptic_brick (model &md, const mesh_im &mim, const std::string &varname, const std::string &dataexpr, size_type region=size_type(-1)) |
| Add an elliptic term on the variable varname . More...
|
|
size_type APIDECL | getfem::add_source_term_brick (model &md, const mesh_im &mim, const std::string &varname, const std::string &dataexpr, size_type region=size_type(-1), const std::string &directdataname=std::string()) |
| Add a source term on the variable varname . More...
|
|
size_type APIDECL | getfem::add_normal_source_term_brick (model &md, const mesh_im &mim, const std::string &varname, const std::string &dataexpr, size_type region) |
| Add a source term on the variable varname on a boundary region . More...
|
|
size_type APIDECL | getfem::add_Dirichlet_condition_with_simplification (model &md, const std::string &varname, size_type region, const std::string &dataname=std::string()) |
| Add a (simple) Dirichlet condition on the variable varname and the mesh region region . More...
|
|
size_type APIDECL | getfem::add_Dirichlet_condition_with_multipliers (model &md, const mesh_im &mim, const std::string &varname, const std::string &multname, size_type region, const std::string &dataname=std::string()) |
| Add a Dirichlet condition on the variable varname and the mesh region region . More...
|
|
size_type APIDECL | getfem::add_Dirichlet_condition_with_multipliers (model &md, const mesh_im &mim, const std::string &varname, const mesh_fem &mf_mult, size_type region, const std::string &dataname=std::string()) |
| Same function as the previous one but the multipliers variable will be declared to the brick by the function. More...
|
|
size_type APIDECL | getfem::add_Dirichlet_condition_with_multipliers (model &md, const mesh_im &mim, const std::string &varname, dim_type degree, size_type region, const std::string &dataname=std::string()) |
| Same function as the previous one but the mf_mult parameter is replaced by degree . More...
|
|
const APIDECL std::string & | getfem::mult_varname_Dirichlet (model &md, size_type ind_brick) |
| When ind_brick is the index of a Dirichlet brick with multiplier on the model md , the function return the name of the multiplier variable. More...
|
|
size_type APIDECL | getfem::add_Dirichlet_condition_with_penalization (model &md, const mesh_im &mim, const std::string &varname, scalar_type penalization_coeff, size_type region, const std::string &dataname=std::string(), const mesh_fem *mf_mult=0) |
| Add a Dirichlet condition on the variable varname and the mesh region region . More...
|
|
size_type APIDECL | getfem::add_Dirichlet_condition_with_Nitsche_method (model &md, const mesh_im &mim, const std::string &varname, const std::string &Neumannterm, const std::string &datagamma0, size_type region, scalar_type theta=scalar_type(0), const std::string &datag=std::string()) |
| Add a Dirichlet condition on the variable varname and the mesh region region . More...
|
|
size_type APIDECL | getfem::add_normal_Dirichlet_condition_with_multipliers (model &md, const mesh_im &mim, const std::string &varname, const std::string &multname, size_type region, const std::string &dataname=std::string()) |
| Add a Dirichlet condition to the normal component of the vector (or tensor) valued variable varname and the mesh region region . More...
|
|
size_type APIDECL | getfem::add_normal_Dirichlet_condition_with_multipliers (model &md, const mesh_im &mim, const std::string &varname, const mesh_fem &mf_mult, size_type region, const std::string &dataname=std::string()) |
| Same function as the previous one but the multipliers variable will be declared to the brick by the function. More...
|
|
size_type APIDECL | getfem::add_normal_Dirichlet_condition_with_multipliers (model &md, const mesh_im &mim, const std::string &varname, dim_type degree, size_type region, const std::string &dataname=std::string()) |
| Same function as the previous one but the mf_mult parameter is replaced by degree . More...
|
|
size_type APIDECL | getfem::add_normal_Dirichlet_condition_with_penalization (model &md, const mesh_im &mim, const std::string &varname, scalar_type penalization_coeff, size_type region, const std::string &dataname=std::string(), const mesh_fem *mf_mult=0) |
| Add a Dirichlet condition to the normal component of the vector (or tensor) valued variable varname and the mesh region region . More...
|
|
size_type APIDECL | getfem::add_normal_Dirichlet_condition_with_Nitsche_method (model &md, const mesh_im &mim, const std::string &varname, const std::string &Neumannterm, const std::string &datagamma0, size_type region, scalar_type theta=scalar_type(0), const std::string &datag=std::string()) |
| Add a Dirichlet condition on the normal component of the variable varname and the mesh region region . More...
|
|
size_type APIDECL | getfem::add_pointwise_constraints_with_penalization (model &md, const std::string &varname, scalar_type penalisation_coeff, const std::string &dataname_pt, const std::string &dataname_unitv=std::string(), const std::string &dataname_val=std::string()) |
| Add some pointwise constraints on the variable varname thanks to a penalization. More...
|
|
size_type APIDECL | getfem::add_pointwise_constraints_with_given_multipliers (model &md, const std::string &varname, const std::string &multname, const std::string &dataname_pt, const std::string &dataname_unitv=std::string(), const std::string &dataname_val=std::string()) |
| Add some pointwise constraints on the variable varname using a given multiplier multname . More...
|
|
size_type APIDECL | getfem::add_pointwise_constraints_with_multipliers (model &md, const std::string &varname, const std::string &dataname_pt, const std::string &dataname_unitv=std::string(), const std::string &dataname_val=std::string()) |
| Add some pointwise constraints on the variable varname using multiplier. More...
|
|
void APIDECL | getfem::change_penalization_coeff (model &md, size_type ind_brick, scalar_type penalisation_coeff) |
| Change the penalization coefficient of a Dirichlet condition with penalization brick. More...
|
|
size_type APIDECL | getfem::add_generalized_Dirichlet_condition_with_multipliers (model &md, const mesh_im &mim, const std::string &varname, const std::string &multname, size_type region, const std::string &dataname, const std::string &Hname) |
| Add a generalized Dirichlet condition on the variable varname and the mesh region region . More...
|
|
size_type APIDECL | getfem::add_generalized_Dirichlet_condition_with_multipliers (model &md, const mesh_im &mim, const std::string &varname, const mesh_fem &mf_mult, size_type region, const std::string &dataname, const std::string &Hname) |
| Same function as the preceeding one but the multipliers variable will be declared to the brick by the function. More...
|
|
size_type APIDECL | getfem::add_generalized_Dirichlet_condition_with_multipliers (model &md, const mesh_im &mim, const std::string &varname, dim_type degree, size_type region, const std::string &dataname, const std::string &Hname) |
| Same function as the preceeding one but the mf_mult parameter is replaced by degree . More...
|
|
size_type APIDECL | getfem::add_generalized_Dirichlet_condition_with_penalization (model &md, const mesh_im &mim, const std::string &varname, scalar_type penalization_coeff, size_type region, const std::string &dataname, const std::string &Hname, const mesh_fem *mf_mult=0) |
| Add a Dirichlet condition on the variable varname and the mesh region region . More...
|
|
size_type APIDECL | getfem::add_generalized_Dirichlet_condition_with_Nitsche_method (model &md, const mesh_im &mim, const std::string &varname, const std::string &Neumannterm, const std::string &datagamma0, size_type region, scalar_type theta, const std::string &datag, const std::string &dataH) |
| Add a Dirichlet condition on the variable varname and the mesh region region . More...
|
|
size_type APIDECL | getfem::add_Helmholtz_brick (model &md, const mesh_im &mim, const std::string &varname, const std::string &dataexpr, size_type region=size_type(-1)) |
| Add a Helmoltz brick to the model. More...
|
|
size_type APIDECL | getfem::add_Fourier_Robin_brick (model &md, const mesh_im &mim, const std::string &varname, const std::string &dataexpr, size_type region) |
| Add a Fourier-Robin brick to the model. More...
|
|
template<typename VECT > |
void | getfem::set_private_data_rhs (model &md, size_type indbrick, const VECT &L) |
| For some specific bricks having an internal right hand side vector (explicit bricks: 'constraint brick' and 'explicit rhs brick'), set this rhs.
|
|
template<typename MAT > |
void | getfem::set_private_data_matrix (model &md, size_type indbrick, const MAT &B) |
| For some specific bricks having an internal sparse matrix (explicit bricks: 'constraint brick' and 'explicit matrix brick'), set this matrix. More...
|
|
template<typename MAT , typename VECT > |
size_type | getfem::add_constraint_with_penalization (model &md, const std::string &varname, scalar_type penalisation_coeff, const MAT &B, const VECT &L) |
| Add an additional explicit penalized constraint on the variable varname . More...
|
|
template<typename MAT , typename VECT > |
size_type | getfem::add_constraint_with_multipliers (model &md, const std::string &varname, const std::string &multname, const MAT &B, const VECT &L) |
| Add an additional explicit constraint on the variable varname thank to a multiplier multname peviously added to the model (should be a fixed size variable). More...
|
|
template<typename MAT > |
size_type | getfem::add_explicit_matrix (model &md, const std::string &varname1, const std::string &varname2, const MAT &B, bool issymmetric=false, bool iscoercive=false) |
| Add a brick reprenting an explicit matrix to be added to the tangent linear system relatively to the variables 'varname1' and 'varname2'. More...
|
|
template<typename VECT > |
size_type | getfem::add_explicit_rhs (model &md, const std::string &varname, const VECT &L) |
| Add a brick representing an explicit right hand side to be added to the right hand side of the tangent linear system relatively to the variable 'varname'. More...
|
|
size_type APIDECL | getfem::add_isotropic_linearized_elasticity_brick (model &md, const mesh_im &mim, const std::string &varname, const std::string &dataname_lambda, const std::string &dataname_mu, size_type region=size_type(-1), const std::string &dataname_preconstraint=std::string()) |
| Linear elasticity brick ( ). More...
|
|
size_type APIDECL | getfem::add_isotropic_linearized_elasticity_pstrain_brick (model &md, const mesh_im &mim, const std::string &varname, const std::string &data_E, const std::string &data_nu, size_type region) |
| Linear elasticity brick ( ). More...
|
|
size_type APIDECL | getfem::add_isotropic_linearized_elasticity_pstress_brick (model &md, const mesh_im &mim, const std::string &varname, const std::string &data_E, const std::string &data_nu, size_type region) |
| Linear elasticity brick ( ). More...
|
|
template<class VECTVM > |
void | getfem::compute_isotropic_linearized_Von_Mises_or_Tresca (model &md, const std::string &varname, const std::string &dataname_lambda, const std::string &dataname_mu, const mesh_fem &mf_vm, VECTVM &VM, bool tresca) |
| Compute the Von-Mises stress or the Tresca stress of a field (only valid for isotropic linearized elasticity in 3D) Parametrized by Lame coefficients.
|
|
void APIDECL | getfem::compute_isotropic_linearized_Von_Mises_pstrain (model &md, const std::string &varname, const std::string &data_E, const std::string &data_nu, const mesh_fem &mf_vm, model_real_plain_vector &VM) |
| Compute the Von-Mises stress of a displacement field for isotropic linearized elasticity in 3D or in 2D with plane strain assumption. More...
|
|
void APIDECL | getfem::compute_isotropic_linearized_Von_Mises_pstress (model &md, const std::string &varname, const std::string &data_E, const std::string &data_nu, const mesh_fem &mf_vm, model_real_plain_vector &VM) |
| Compute the Von-Mises stress of a displacement field for isotropic linearized elasticity in 3D or in 2D with plane stress assumption. More...
|
|
size_type APIDECL | getfem::add_linear_incompressibility (model &md, const mesh_im &mim, const std::string &varname, const std::string &multname_pressure, size_type region=size_type(-1), const std::string &dataexpr_penal_coeff=std::string()) |
| Mixed linear incompressibility condition brick. More...
|
|
size_type APIDECL | getfem::add_mass_brick (model &md, const mesh_im &mim, const std::string &varname, const std::string &dataexpr_rho=std::string(), size_type region=size_type(-1)) |
| Mass brick ( ). More...
|
|
size_type APIDECL | getfem::add_lumped_mass_for_first_order_brick (model &md, const mesh_im &mim, const std::string &varname, const std::string &dataexpr_rho=std::string(), size_type region=size_type(-1)) |
| Lumped mass brick for first order. More...
|
|
size_type APIDECL | getfem::add_basic_d_on_dt_brick (model &md, const mesh_im &mim, const std::string &varname, const std::string &dataname_dt, const std::string &dataname_rho=std::string(), size_type region=size_type(-1)) |
| Basic d/dt brick ( ). More...
|
|
size_type APIDECL | getfem::add_basic_d2_on_dt2_brick (model &md, const mesh_im &mim, const std::string &varnameU, const std::string &datanameV, const std::string &dataname_dt, const std::string &dataname_alpha, const std::string &dataname_rho=std::string(), size_type region=size_type(-1)) |
| Basic d2/dt2 brick ( ). More...
|
|