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
136constexpr auto BC_CMM = BoundaryConditionType::bType_CMM;
137constexpr auto iBC_CMM =
static_cast<int>(BoundaryConditionType::bType_CMM);
139constexpr auto BC_cpl = BoundaryConditionType::bType_cpl;
140constexpr auto iBC_cpl =
static_cast<int>(BoundaryConditionType::bType_cpl);
142constexpr auto BC_Dir = BoundaryConditionType::bType_Dir;
143constexpr auto iBC_Dir =
static_cast<int>(BoundaryConditionType::bType_Dir);
145constexpr auto BC_fix = BoundaryConditionType::bType_fix;
146constexpr auto iBC_fix =
static_cast<int>(BoundaryConditionType::bType_fix);
148constexpr auto BC_flat = BoundaryConditionType::bType_flat;
149constexpr auto iBC_flat =
static_cast<int>(BoundaryConditionType::bType_flat);
151constexpr auto BC_free = BoundaryConditionType::bType_free;
152constexpr auto iBC_free =
static_cast<int>(BoundaryConditionType::bType_free);
154constexpr auto BC_gen = BoundaryConditionType::bType_gen;
155constexpr auto iBC_gen =
static_cast<int>(BoundaryConditionType::bType_gen);
157constexpr auto BC_hing = BoundaryConditionType::bType_hing;
158constexpr auto iBC_hing =
static_cast<int>(BoundaryConditionType::bType_hing);
160constexpr auto BC_impD = BoundaryConditionType::bType_impD;
161constexpr auto iBC_impD =
static_cast<int>(BoundaryConditionType::bType_impD);
163constexpr auto BC_Neu = BoundaryConditionType::bType_Neu;
164constexpr auto iBC_Neu =
static_cast<int>(BoundaryConditionType::bType_Neu);
166constexpr auto BC_para = BoundaryConditionType::bType_para;
167constexpr auto iBC_para =
static_cast<int>(BoundaryConditionType::bType_para);
169constexpr auto BC_RCR = BoundaryConditionType::bType_RCR;
170constexpr auto iBC_RCR =
static_cast<int>(BoundaryConditionType::bType_RCR);
172constexpr auto BC_res = BoundaryConditionType::bType_res;
173constexpr auto iBC_res =
static_cast<int>(BoundaryConditionType::bType_res);
175constexpr auto BC_Robin = BoundaryConditionType::bType_Robin;
176constexpr auto iBC_Robin =
static_cast<int>(BoundaryConditionType::bType_Robin);
178constexpr auto BC_std = BoundaryConditionType::bType_std;
179constexpr auto iBC_std =
static_cast<int>(BoundaryConditionType::bType_std);
181constexpr auto BC_symm = BoundaryConditionType::bType_symm;
182constexpr auto iBC_symm =
static_cast<int>(BoundaryConditionType::bType_symm);
184constexpr auto BC_trac = BoundaryConditionType::bType_trac;
185constexpr auto iBC_trac =
static_cast<int>(BoundaryConditionType::bType_trac);
187constexpr auto BC_undefNeu = BoundaryConditionType::bType_undefNeu;
188constexpr auto iBC_undefNeu =
static_cast<int>(BoundaryConditionType::bType_undefNeu);
190constexpr auto BC_ustd = BoundaryConditionType::bType_ustd;
191constexpr auto iBC_ustd =
static_cast<int>(BoundaryConditionType::bType_ustd);
198enum class ConstitutiveModelType
218extern const std::map<std::string,ConstitutiveModelType> constitutive_model_name_to_type;
220enum class ContactModelType
223 cntctM_penalty = 801,
224 cntctM_potential = 802
228extern const std::map<std::string,ContactModelType> contact_model_name_to_type;
250extern const std::map<std::string,CplBCType> cplbc_name_to_type;
254enum class ElementType
274extern const std::map<ElementType,std::string> element_type_to_string;
275extern const std::map<ElementType,int> element_type_to_elem_nonb;
276extern const std::map<ElementType,int> element_dimension;
295enum class EquationType
312constexpr auto Equation_CMM = EquationType::phys_CMM;
313constexpr auto Equation_CEP = EquationType::phys_CEP;
314constexpr auto Equation_fluid = EquationType::phys_fluid;
315constexpr auto Equation_FSI = EquationType::phys_FSI;
316constexpr auto Equation_heatF = EquationType::phys_heatF;
317constexpr auto Equation_heatS = EquationType::phys_heatS;
318constexpr auto Equation_lElas = EquationType::phys_lElas;
319constexpr auto Equation_mesh = EquationType::phys_mesh;
320constexpr auto Equation_shell = EquationType::phys_shell;
321constexpr auto Equation_stokes = EquationType::phys_stokes;
322constexpr auto Equation_struct = EquationType::phys_struct;
323constexpr auto Equation_ustruct = EquationType::phys_ustruct;
325extern const std::map<std::string,EquationType> equation_name_to_type;
327enum class MeshGeneratorType
334extern const std::map<std::string,MeshGeneratorType> mesh_generator_name_to_type;
336enum class OutputNameType
367 out_temperature = 597,
369 out_acceleration = 595,
370 out_displacement = 594,
377 out_energyFlux = 587,
379 out_absVelocity = 585,
388 out_divergence = 576,
404extern const std::map<std::string,OutputType> output_type_name_to_type;
408enum class PhysicalProperyType
413 elasticity_modulus = 3,
422 shell_thickness = 12,
425 inverse_darcy_permeability = 15
428enum class PreconditionerType
432 PREC_TRILINOS_DIAGONAL = 702,
433 PREC_TRILINOS_BLOCK_JACOBI = 703,
434 PREC_TRILINOS_ILU = 704,
435 PREC_TRILINOS_ILUT = 705,
436 PREC_TRILINOS_IC = 706,
437 PREC_TRILINOS_ICT = 707,
438 PREC_TRILINOS_ML = 708,
440 PREC_PETSC_JACOBI = 710,
444extern const std::set<PreconditionerType> fsils_preconditioners;
445extern const std::set<PreconditionerType> petsc_preconditioners;
446extern const std::set<PreconditionerType> trilinos_preconditioners;
447extern const std::map<PreconditionerType, std::string> preconditioner_type_to_name;
450extern const std::map<std::string,PreconditionerType> preconditioner_name_to_type;
462extern const std::map<std::string,SolverType> solver_name_to_type;
464enum class FluidViscosityModelType
468 viscType_Const = 698,
473extern const std::map<std::string,FluidViscosityModelType> fluid_viscosity_model_name_to_type;
475enum class SolidViscosityModelType
478 viscType_Newtonian = 694,
479 viscType_Potential = 693
483extern const std::map<std::string,SolidViscosityModelType> solid_viscosity_model_name_to_type;
487std::ostream& operator<<(
typename std::enable_if<std::is_enum<T>::value, std::ostream>::type& stream,
const T& e)
489 return stream << static_cast<typename std::underlying_type<T>::type>(e);
493enum class MechanicalConfigurationType
505enum class LinearAlgebraType {