19const double pi = 3.1415926535897932384626;
23const int maxNProp = 20;
25const int maxOutput = 5;
28const int int_inf = std::numeric_limits<int>::infinity();
29const double double_inf = std::numeric_limits<double>::infinity();
34 return static_cast<int>(value);
41 return (value != std::numeric_limits<T>::infinity());
47enum class BodyForceType
80enum class BoundaryConditionType
110constexpr auto BC_CMM = BoundaryConditionType::bType_CMM;
111constexpr auto iBC_CMM =
static_cast<int>(BoundaryConditionType::bType_CMM);
113constexpr auto BC_cpl = BoundaryConditionType::bType_cpl;
114constexpr auto iBC_cpl =
static_cast<int>(BoundaryConditionType::bType_cpl);
116constexpr auto BC_Dir = BoundaryConditionType::bType_Dir;
117constexpr auto iBC_Dir =
static_cast<int>(BoundaryConditionType::bType_Dir);
119constexpr auto BC_fix = BoundaryConditionType::bType_fix;
120constexpr auto iBC_fix =
static_cast<int>(BoundaryConditionType::bType_fix);
122constexpr auto BC_flat = BoundaryConditionType::bType_flat;
123constexpr auto iBC_flat =
static_cast<int>(BoundaryConditionType::bType_flat);
125constexpr auto BC_free = BoundaryConditionType::bType_free;
126constexpr auto iBC_free =
static_cast<int>(BoundaryConditionType::bType_free);
128constexpr auto BC_gen = BoundaryConditionType::bType_gen;
129constexpr auto iBC_gen =
static_cast<int>(BoundaryConditionType::bType_gen);
131constexpr auto BC_hing = BoundaryConditionType::bType_hing;
132constexpr auto iBC_hing =
static_cast<int>(BoundaryConditionType::bType_hing);
134constexpr auto BC_impD = BoundaryConditionType::bType_impD;
135constexpr auto iBC_impD =
static_cast<int>(BoundaryConditionType::bType_impD);
137constexpr auto BC_Neu = BoundaryConditionType::bType_Neu;
138constexpr auto iBC_Neu =
static_cast<int>(BoundaryConditionType::bType_Neu);
140constexpr auto BC_para = BoundaryConditionType::bType_para;
141constexpr auto iBC_para =
static_cast<int>(BoundaryConditionType::bType_para);
143constexpr auto BC_RCR = BoundaryConditionType::bType_RCR;
144constexpr auto iBC_RCR =
static_cast<int>(BoundaryConditionType::bType_RCR);
146constexpr auto BC_res = BoundaryConditionType::bType_res;
147constexpr auto iBC_res =
static_cast<int>(BoundaryConditionType::bType_res);
149constexpr auto BC_Robin = BoundaryConditionType::bType_Robin;
150constexpr auto iBC_Robin =
static_cast<int>(BoundaryConditionType::bType_Robin);
152constexpr auto BC_std = BoundaryConditionType::bType_std;
153constexpr auto iBC_std =
static_cast<int>(BoundaryConditionType::bType_std);
155constexpr auto BC_symm = BoundaryConditionType::bType_symm;
156constexpr auto iBC_symm =
static_cast<int>(BoundaryConditionType::bType_symm);
158constexpr auto BC_trac = BoundaryConditionType::bType_trac;
159constexpr auto iBC_trac =
static_cast<int>(BoundaryConditionType::bType_trac);
161constexpr auto BC_undefNeu = BoundaryConditionType::bType_undefNeu;
162constexpr auto iBC_undefNeu =
static_cast<int>(BoundaryConditionType::bType_undefNeu);
164constexpr auto BC_ustd = BoundaryConditionType::bType_ustd;
165constexpr auto iBC_ustd =
static_cast<int>(BoundaryConditionType::bType_ustd);
167constexpr auto BC_Ris0D = BoundaryConditionType::bType_Ris0D;
168constexpr auto iBC_Ris0D =
static_cast<int>(BoundaryConditionType::bType_Ris0D);
175enum class ConstitutiveModelType
192 stArtificialNeuralNet = 654
196extern const std::map<std::string,ConstitutiveModelType> constitutive_model_name_to_type;
198enum class ContactModelType
201 cntctM_penalty = 801,
202 cntctM_potential = 802
206extern const std::map<std::string,ContactModelType> contact_model_name_to_type;
228extern const std::map<std::string,CplBCType> cplbc_name_to_type;
232enum class ElementType
252extern const std::map<ElementType,std::string> element_type_to_string;
253extern const std::map<ElementType,int> element_type_to_elem_nonb;
254extern const std::map<ElementType,int> element_dimension;
273enum class EquationType
290constexpr auto Equation_CMM = EquationType::phys_CMM;
291constexpr auto Equation_CEP = EquationType::phys_CEP;
292constexpr auto Equation_fluid = EquationType::phys_fluid;
293constexpr auto Equation_FSI = EquationType::phys_FSI;
294constexpr auto Equation_heatF = EquationType::phys_heatF;
295constexpr auto Equation_heatS = EquationType::phys_heatS;
296constexpr auto Equation_lElas = EquationType::phys_lElas;
297constexpr auto Equation_mesh = EquationType::phys_mesh;
298constexpr auto Equation_shell = EquationType::phys_shell;
299constexpr auto Equation_stokes = EquationType::phys_stokes;
300constexpr auto Equation_struct = EquationType::phys_struct;
301constexpr auto Equation_ustruct = EquationType::phys_ustruct;
303extern const std::map<std::string,EquationType> equation_name_to_type;
305enum class MeshGeneratorType
312extern const std::map<std::string,MeshGeneratorType> mesh_generator_name_to_type;
314enum class OutputNameType
345 out_temperature = 597,
347 out_acceleration = 595,
348 out_displacement = 594,
355 out_energyFlux = 587,
357 out_absVelocity = 585,
366 out_divergence = 576,
382extern const std::map<std::string,OutputType> output_type_name_to_type;
386enum class PhysicalProperyType
391 elasticity_modulus = 3,
400 shell_thickness = 12,
403 inverse_darcy_permeability = 15
406enum class PreconditionerType
410 PREC_TRILINOS_DIAGONAL = 702,
411 PREC_TRILINOS_BLOCK_JACOBI = 703,
412 PREC_TRILINOS_ILU = 704,
413 PREC_TRILINOS_ILUT = 705,
414 PREC_TRILINOS_IC = 706,
415 PREC_TRILINOS_ICT = 707,
416 PREC_TRILINOS_ML = 708,
418 PREC_PETSC_JACOBI = 710,
422extern const std::set<PreconditionerType> fsils_preconditioners;
423extern const std::set<PreconditionerType> petsc_preconditioners;
424extern const std::set<PreconditionerType> trilinos_preconditioners;
425extern const std::map<PreconditionerType, std::string> preconditioner_type_to_name;
428extern const std::map<std::string,PreconditionerType> preconditioner_name_to_type;
440extern const std::map<std::string,SolverType> solver_name_to_type;
442enum class FluidViscosityModelType
446 viscType_Const = 698,
451extern const std::map<std::string,FluidViscosityModelType> fluid_viscosity_model_name_to_type;
453enum class SolidViscosityModelType
456 viscType_Newtonian = 694,
457 viscType_Potential = 693
461extern const std::map<std::string,SolidViscosityModelType> solid_viscosity_model_name_to_type;
465std::ostream& operator<<(
typename std::enable_if<std::is_enum<T>::value, std::ostream>::type& stream,
const T& e)
467 return stream << static_cast<typename std::underlying_type<T>::type>(e);
471enum class MechanicalConfigurationType
483enum class LinearAlgebraType {