46const double pi = 3.1415926535897932384626;
50const int maxNProp = 20;
52const int maxOutput = 5;
55const int int_inf = std::numeric_limits<int>::infinity();
56const double double_inf = std::numeric_limits<double>::infinity();
61 return static_cast<int>(value);
68 return (value != std::numeric_limits<T>::infinity());
74enum class BodyForceType
107enum class BoundaryConditionType
137constexpr auto BC_CMM = BoundaryConditionType::bType_CMM;
138constexpr auto iBC_CMM =
static_cast<int>(BoundaryConditionType::bType_CMM);
140constexpr auto BC_cpl = BoundaryConditionType::bType_cpl;
141constexpr auto iBC_cpl =
static_cast<int>(BoundaryConditionType::bType_cpl);
143constexpr auto BC_Dir = BoundaryConditionType::bType_Dir;
144constexpr auto iBC_Dir =
static_cast<int>(BoundaryConditionType::bType_Dir);
146constexpr auto BC_fix = BoundaryConditionType::bType_fix;
147constexpr auto iBC_fix =
static_cast<int>(BoundaryConditionType::bType_fix);
149constexpr auto BC_flat = BoundaryConditionType::bType_flat;
150constexpr auto iBC_flat =
static_cast<int>(BoundaryConditionType::bType_flat);
152constexpr auto BC_free = BoundaryConditionType::bType_free;
153constexpr auto iBC_free =
static_cast<int>(BoundaryConditionType::bType_free);
155constexpr auto BC_gen = BoundaryConditionType::bType_gen;
156constexpr auto iBC_gen =
static_cast<int>(BoundaryConditionType::bType_gen);
158constexpr auto BC_hing = BoundaryConditionType::bType_hing;
159constexpr auto iBC_hing =
static_cast<int>(BoundaryConditionType::bType_hing);
161constexpr auto BC_impD = BoundaryConditionType::bType_impD;
162constexpr auto iBC_impD =
static_cast<int>(BoundaryConditionType::bType_impD);
164constexpr auto BC_Neu = BoundaryConditionType::bType_Neu;
165constexpr auto iBC_Neu =
static_cast<int>(BoundaryConditionType::bType_Neu);
167constexpr auto BC_para = BoundaryConditionType::bType_para;
168constexpr auto iBC_para =
static_cast<int>(BoundaryConditionType::bType_para);
170constexpr auto BC_RCR = BoundaryConditionType::bType_RCR;
171constexpr auto iBC_RCR =
static_cast<int>(BoundaryConditionType::bType_RCR);
173constexpr auto BC_res = BoundaryConditionType::bType_res;
174constexpr auto iBC_res =
static_cast<int>(BoundaryConditionType::bType_res);
176constexpr auto BC_Robin = BoundaryConditionType::bType_Robin;
177constexpr auto iBC_Robin =
static_cast<int>(BoundaryConditionType::bType_Robin);
179constexpr auto BC_std = BoundaryConditionType::bType_std;
180constexpr auto iBC_std =
static_cast<int>(BoundaryConditionType::bType_std);
182constexpr auto BC_symm = BoundaryConditionType::bType_symm;
183constexpr auto iBC_symm =
static_cast<int>(BoundaryConditionType::bType_symm);
185constexpr auto BC_trac = BoundaryConditionType::bType_trac;
186constexpr auto iBC_trac =
static_cast<int>(BoundaryConditionType::bType_trac);
188constexpr auto BC_undefNeu = BoundaryConditionType::bType_undefNeu;
189constexpr auto iBC_undefNeu =
static_cast<int>(BoundaryConditionType::bType_undefNeu);
191constexpr auto BC_ustd = BoundaryConditionType::bType_ustd;
192constexpr auto iBC_ustd =
static_cast<int>(BoundaryConditionType::bType_ustd);
194constexpr auto BC_Ris0D = BoundaryConditionType::bType_Ris0D;
195constexpr auto iBC_Ris0D =
static_cast<int>(BoundaryConditionType::bType_Ris0D);
202enum class ConstitutiveModelType
219 stArtificialNeuralNet = 654
223extern const std::map<std::string,ConstitutiveModelType> constitutive_model_name_to_type;
225enum class ContactModelType
228 cntctM_penalty = 801,
229 cntctM_potential = 802
233extern const std::map<std::string,ContactModelType> contact_model_name_to_type;
255extern const std::map<std::string,CplBCType> cplbc_name_to_type;
259enum class ElementType
279extern const std::map<ElementType,std::string> element_type_to_string;
280extern const std::map<ElementType,int> element_type_to_elem_nonb;
281extern const std::map<ElementType,int> element_dimension;
300enum class EquationType
317constexpr auto Equation_CMM = EquationType::phys_CMM;
318constexpr auto Equation_CEP = EquationType::phys_CEP;
319constexpr auto Equation_fluid = EquationType::phys_fluid;
320constexpr auto Equation_FSI = EquationType::phys_FSI;
321constexpr auto Equation_heatF = EquationType::phys_heatF;
322constexpr auto Equation_heatS = EquationType::phys_heatS;
323constexpr auto Equation_lElas = EquationType::phys_lElas;
324constexpr auto Equation_mesh = EquationType::phys_mesh;
325constexpr auto Equation_shell = EquationType::phys_shell;
326constexpr auto Equation_stokes = EquationType::phys_stokes;
327constexpr auto Equation_struct = EquationType::phys_struct;
328constexpr auto Equation_ustruct = EquationType::phys_ustruct;
330extern const std::map<std::string,EquationType> equation_name_to_type;
332enum class MeshGeneratorType
339extern const std::map<std::string,MeshGeneratorType> mesh_generator_name_to_type;
341enum class OutputNameType
372 out_temperature = 597,
374 out_acceleration = 595,
375 out_displacement = 594,
382 out_energyFlux = 587,
384 out_absVelocity = 585,
393 out_divergence = 576,
409extern const std::map<std::string,OutputType> output_type_name_to_type;
413enum class PhysicalProperyType
418 elasticity_modulus = 3,
427 shell_thickness = 12,
430 inverse_darcy_permeability = 15
433enum class PreconditionerType
437 PREC_TRILINOS_DIAGONAL = 702,
438 PREC_TRILINOS_BLOCK_JACOBI = 703,
439 PREC_TRILINOS_ILU = 704,
440 PREC_TRILINOS_ILUT = 705,
441 PREC_TRILINOS_IC = 706,
442 PREC_TRILINOS_ICT = 707,
443 PREC_TRILINOS_ML = 708,
445 PREC_PETSC_JACOBI = 710,
449extern const std::set<PreconditionerType> fsils_preconditioners;
450extern const std::set<PreconditionerType> petsc_preconditioners;
451extern const std::set<PreconditionerType> trilinos_preconditioners;
452extern const std::map<PreconditionerType, std::string> preconditioner_type_to_name;
455extern const std::map<std::string,PreconditionerType> preconditioner_name_to_type;
467extern const std::map<std::string,SolverType> solver_name_to_type;
469enum class FluidViscosityModelType
473 viscType_Const = 698,
478extern const std::map<std::string,FluidViscosityModelType> fluid_viscosity_model_name_to_type;
480enum class SolidViscosityModelType
483 viscType_Newtonian = 694,
484 viscType_Potential = 693
488extern const std::map<std::string,SolidViscosityModelType> solid_viscosity_model_name_to_type;
492std::ostream& operator<<(
typename std::enable_if<std::is_enum<T>::value, std::ostream>::type& stream,
const T& e)
494 return stream << static_cast<typename std::underlying_type<T>::type>(e);
498enum class MechanicalConfigurationType
510enum class LinearAlgebraType {