diff --git a/apps/global_full/4C_global_full_main.cpp b/apps/global_full/4C_global_full_main.cpp index 48a2121b6e8..07355fbea7c 100644 --- a/apps/global_full/4C_global_full_main.cpp +++ b/apps/global_full/4C_global_full_main.cpp @@ -374,7 +374,7 @@ int main(int argc, char* argv[]) using namespace Core::IO::InputSpecBuilders; auto all_materials = all_of({ - entry("MAT"), + parameter("MAT"), one_of(possible_materials), }); diff --git a/apps/pre_exodus/4C_pre_exodus.cpp b/apps/pre_exodus/4C_pre_exodus.cpp index 05f6ef07067..010efea72b1 100644 --- a/apps/pre_exodus/4C_pre_exodus.cpp +++ b/apps/pre_exodus/4C_pre_exodus.cpp @@ -336,7 +336,7 @@ int main(int argc, char** argv) using namespace Core::IO::InputSpecBuilders; auto all_materials = all_of({ - entry("MAT"), + parameter("MAT"), one_of(possible_materials), }); diff --git a/src/ale/4C_ale_ale2.cpp b/src/ale/4C_ale_ale2.cpp index 87db489908c..158180d7756 100644 --- a/src/ale/4C_ale_ale2.cpp +++ b/src/ale/4C_ale_ale2.cpp @@ -85,28 +85,28 @@ void Discret::Elements::Ale2Type::setup_element_definition( using namespace Core::IO::InputSpecBuilders; defs["QUAD4"] = all_of({ - entry>("QUAD4", {.size = 4}), - entry("MAT"), + parameter>("QUAD4", {.size = 4}), + parameter("MAT"), }); defs["QUAD8"] = all_of({ - entry>("QUAD8", {.size = 8}), - entry("MAT"), + parameter>("QUAD8", {.size = 8}), + parameter("MAT"), }); defs["QUAD9"] = all_of({ - entry>("QUAD9", {.size = 9}), - entry("MAT"), + parameter>("QUAD9", {.size = 9}), + parameter("MAT"), }); defs["TRI3"] = all_of({ - entry>("TRI3", {.size = 3}), - entry("MAT"), + parameter>("TRI3", {.size = 3}), + parameter("MAT"), }); defs["TRI6"] = all_of({ - entry>("TRI6", {.size = 6}), - entry("MAT"), + parameter>("TRI6", {.size = 6}), + parameter("MAT"), }); } diff --git a/src/ale/4C_ale_ale3.cpp b/src/ale/4C_ale_ale3.cpp index ef4a16a3c58..0f563c31f78 100644 --- a/src/ale/4C_ale_ale3.cpp +++ b/src/ale/4C_ale_ale3.cpp @@ -84,43 +84,43 @@ void Discret::Elements::Ale3Type::setup_element_definition( using namespace Core::IO::InputSpecBuilders; defs["HEX8"] = all_of({ - entry>("HEX8", {.size = 8}), - entry("MAT"), + parameter>("HEX8", {.size = 8}), + parameter("MAT"), }); defs["HEX20"] = all_of({ - entry>("HEX20", {.size = 20}), - entry("MAT"), + parameter>("HEX20", {.size = 20}), + parameter("MAT"), }); defs["HEX27"] = all_of({ - entry>("HEX27", {.size = 27}), - entry("MAT"), + parameter>("HEX27", {.size = 27}), + parameter("MAT"), }); defs["TET4"] = all_of({ - entry>("TET4", {.size = 4}), - entry("MAT"), + parameter>("TET4", {.size = 4}), + parameter("MAT"), }); defs["TET10"] = all_of({ - entry>("TET10", {.size = 10}), - entry("MAT"), + parameter>("TET10", {.size = 10}), + parameter("MAT"), }); defs["WEDGE6"] = all_of({ - entry>("WEDGE6", {.size = 6}), - entry("MAT"), + parameter>("WEDGE6", {.size = 6}), + parameter("MAT"), }); defs["WEDGE15"] = all_of({ - entry>("WEDGE15", {.size = 15}), - entry("MAT"), + parameter>("WEDGE15", {.size = 15}), + parameter("MAT"), }); defs["PYRAMID5"] = all_of({ - entry>("PYRAMID5", {.size = 5}), - entry("MAT"), + parameter>("PYRAMID5", {.size = 5}), + parameter("MAT"), }); } diff --git a/src/ale/4C_ale_input.cpp b/src/ale/4C_ale_input.cpp index 2765f98b086..6c41d2ad546 100644 --- a/src/ale/4C_ale_input.cpp +++ b/src/ale/4C_ale_input.cpp @@ -96,8 +96,8 @@ void ALE::set_valid_conditions(std::vector("VAL")); - cond.add_component(entry("NODENORMALFUNCT")); + cond.add_component(parameter("VAL")); + cond.add_component(parameter("NODENORMALFUNCT")); condlist.emplace_back(cond); }; diff --git a/src/art_net/4C_art_net_artery.cpp b/src/art_net/4C_art_net_artery.cpp index 299c8dd5b7e..e13bf85c642 100644 --- a/src/art_net/4C_art_net_artery.cpp +++ b/src/art_net/4C_art_net_artery.cpp @@ -59,11 +59,11 @@ void Discret::Elements::ArteryType::setup_element_definition( using namespace Core::IO::InputSpecBuilders; defs["LINE2"] = all_of({ - entry>("LINE2", {.size = 2}), - entry("MAT"), - entry("GP"), - entry("TYPE"), - entry("DIAM"), + parameter>("LINE2", {.size = 2}), + parameter("MAT"), + parameter("GP"), + parameter("TYPE"), + parameter("DIAM"), }); } diff --git a/src/beam3/4C_beam3_euler_bernoulli.cpp b/src/beam3/4C_beam3_euler_bernoulli.cpp index 97ebb179726..eb31a2cc1b4 100644 --- a/src/beam3/4C_beam3_euler_bernoulli.cpp +++ b/src/beam3/4C_beam3_euler_bernoulli.cpp @@ -212,8 +212,8 @@ void Discret::Elements::Beam3ebType::setup_element_definition( using namespace Core::IO::InputSpecBuilders; defs["LINE2"] = all_of({ - entry>("LINE2", {.size = 2}), - entry("MAT"), + parameter>("LINE2", {.size = 2}), + parameter("MAT"), }); } diff --git a/src/beam3/4C_beam3_kirchhoff.cpp b/src/beam3/4C_beam3_kirchhoff.cpp index 002da879455..f753a4830ea 100644 --- a/src/beam3/4C_beam3_kirchhoff.cpp +++ b/src/beam3/4C_beam3_kirchhoff.cpp @@ -99,30 +99,30 @@ void Discret::Elements::Beam3kType::setup_element_definition( using namespace Core::IO::InputSpecBuilders; defs["LINE2"] = all_of({ - entry>("LINE2", {.size = 2}), - entry("WK"), - entry("ROTVEC"), - entry("MAT"), - entry>("TRIADS", {.size = 6}), - entry("USE_FAD", {.default_value = false}), + parameter>("LINE2", {.size = 2}), + parameter("WK"), + parameter("ROTVEC"), + parameter("MAT"), + parameter>("TRIADS", {.size = 6}), + parameter("USE_FAD", {.default_value = false}), }); defs["LINE3"] = all_of({ - entry>("LINE3", {.size = 3}), - entry("WK"), - entry("ROTVEC"), - entry("MAT"), - entry>("TRIADS", {.size = 9}), - entry("USE_FAD", {.default_value = false}), + parameter>("LINE3", {.size = 3}), + parameter("WK"), + parameter("ROTVEC"), + parameter("MAT"), + parameter>("TRIADS", {.size = 9}), + parameter("USE_FAD", {.default_value = false}), }); defs["LINE4"] = all_of({ - entry>("LINE4", {.size = 4}), - entry("WK"), - entry("ROTVEC"), - entry("MAT"), - entry>("TRIADS", {.size = 12}), - entry("USE_FAD", {.default_value = false}), + parameter>("LINE4", {.size = 4}), + parameter("WK"), + parameter("ROTVEC"), + parameter("MAT"), + parameter>("TRIADS", {.size = 12}), + parameter("USE_FAD", {.default_value = false}), }); } diff --git a/src/beam3/4C_beam3_reissner.cpp b/src/beam3/4C_beam3_reissner.cpp index e1127bf0483..b814ce8551c 100644 --- a/src/beam3/4C_beam3_reissner.cpp +++ b/src/beam3/4C_beam3_reissner.cpp @@ -111,70 +111,70 @@ void Discret::Elements::Beam3rType::setup_element_definition( // note: LINE2 refers to linear Lagrange interpolation of centerline AND triad field defs["LINE2"] = all_of({ - entry>("LINE2", {.size = 2}), - entry("MAT"), - entry>("TRIADS", {.size = 6}), - entry("USE_FAD", {.default_value = false}), + parameter>("LINE2", {.size = 2}), + parameter("MAT"), + parameter>("TRIADS", {.size = 6}), + parameter("USE_FAD", {.default_value = false}), }); // note: LINE3 refers to quadratic Lagrange interpolation of centerline AND triad field defs["LINE3"] = all_of({ - entry>("LINE3", {.size = 3}), - entry("MAT"), - entry>("TRIADS", {.size = 9}), - entry("USE_FAD", {.default_value = false}), + parameter>("LINE3", {.size = 3}), + parameter("MAT"), + parameter>("TRIADS", {.size = 9}), + parameter("USE_FAD", {.default_value = false}), }); // note: LINE4 refers to cubic Lagrange interpolation of centerline AND triad field defs["LINE4"] = all_of({ - entry>("LINE4", {.size = 4}), - entry("MAT"), - entry>("TRIADS", {.size = 12}), - entry("USE_FAD", {.default_value = false}), + parameter>("LINE4", {.size = 4}), + parameter("MAT"), + parameter>("TRIADS", {.size = 12}), + parameter("USE_FAD", {.default_value = false}), }); // note: LINE5 refers to quartic Lagrange interpolation of centerline AND triad field defs["LINE5"] = all_of({ - entry>("LINE5", {.size = 5}), - entry("MAT"), - entry>("TRIADS", {.size = 15}), - entry("USE_FAD", {.default_value = false}), + parameter>("LINE5", {.size = 5}), + parameter("MAT"), + parameter>("TRIADS", {.size = 15}), + parameter("USE_FAD", {.default_value = false}), }); /* note: HERM2 refers to cubic Hermite interpolation of centerline (2 nodes) * LINE2 refers to linear Lagrange interpolation of the triad field*/ defs["HERM2LINE2"] = all_of({ - entry>("HERM2LINE2", {.size = 2}), - entry("MAT"), - entry>("TRIADS", {.size = 6}), - entry("USE_FAD", {.default_value = false}), + parameter>("HERM2LINE2", {.size = 2}), + parameter("MAT"), + parameter>("TRIADS", {.size = 6}), + parameter("USE_FAD", {.default_value = false}), }); /* note: HERM2 refers to cubic order Hermite interpolation of centerline (2 nodes) * LINE3 refers to quadratic Lagrange interpolation of the triad field*/ defs["HERM2LINE3"] = all_of({ - entry>("HERM2LINE3", {.size = 3}), - entry("MAT"), - entry>("TRIADS", {.size = 9}), - entry("USE_FAD", {.default_value = false}), + parameter>("HERM2LINE3", {.size = 3}), + parameter("MAT"), + parameter>("TRIADS", {.size = 9}), + parameter("USE_FAD", {.default_value = false}), }); /* note: HERM2 refers to cubic Hermite interpolation of centerline (2 nodes) * LINE4 refers to cubic Lagrange interpolation of the triad field*/ defs["HERM2LINE4"] = all_of({ - entry>("HERM2LINE4", {.size = 4}), - entry("MAT"), - entry>("TRIADS", {.size = 12}), - entry("USE_FAD", {.default_value = false}), + parameter>("HERM2LINE4", {.size = 4}), + parameter("MAT"), + parameter>("TRIADS", {.size = 12}), + parameter("USE_FAD", {.default_value = false}), }); /* note: HERM2 refers to cubic Hermite interpolation of centerline (2 nodes) * LINE5 refers to quartic Lagrange interpolation of the triad field*/ defs["HERM2LINE5"] = all_of({ - entry>("HERM2LINE5", {.size = 5}), - entry("MAT"), - entry>("TRIADS", {.size = 15}), - entry("USE_FAD", {.default_value = false}), + parameter>("HERM2LINE5", {.size = 5}), + parameter("MAT"), + parameter>("TRIADS", {.size = 15}), + parameter("USE_FAD", {.default_value = false}), }); } diff --git a/src/beamcontact/4C_beamcontact_input.cpp b/src/beamcontact/4C_beamcontact_input.cpp index 3566d5d3da7..ef62f182d43 100644 --- a/src/beamcontact/4C_beamcontact_input.cpp +++ b/src/beamcontact/4C_beamcontact_input.cpp @@ -185,7 +185,7 @@ void BeamContact::set_valid_conditions(std::vector("COUPLING_ID")); + beam_to_beam_contact_condition.add_component(parameter("COUPLING_ID")); condlist.push_back(beam_to_beam_contact_condition); } } diff --git a/src/bele/4C_bele_bele3.cpp b/src/bele/4C_bele_bele3.cpp index b50713150fa..974154d10bf 100644 --- a/src/bele/4C_bele_bele3.cpp +++ b/src/bele/4C_bele_bele3.cpp @@ -96,28 +96,28 @@ void Discret::Elements::Bele3Type::setup_element_definition( using namespace Core::IO::InputSpecBuilders; defs3["TRI3"] = all_of({ - entry>("TRI3", {.size = 3}), - entry("MAT", {.required = false}), + parameter>("TRI3", {.size = 3}), + parameter("MAT", {.required = false}), }); defs3["TRI6"] = all_of({ - entry>("TRI6", {.size = 6}), - entry("MAT", {.required = false}), + parameter>("TRI6", {.size = 6}), + parameter("MAT", {.required = false}), }); defs3["QUAD4"] = all_of({ - entry>("QUAD4", {.size = 4}), - entry("MAT", {.required = false}), + parameter>("QUAD4", {.size = 4}), + parameter("MAT", {.required = false}), }); defs3["QUAD8"] = all_of({ - entry>("QUAD8", {.size = 8}), - entry("MAT", {.required = false}), + parameter>("QUAD8", {.size = 8}), + parameter("MAT", {.required = false}), }); defs3["QUAD9"] = all_of({ - entry>("QUAD9", {.size = 9}), - entry("MAT", {.required = false}), + parameter>("QUAD9", {.size = 9}), + parameter("MAT", {.required = false}), }); } diff --git a/src/bele/4C_bele_vele3.cpp b/src/bele/4C_bele_vele3.cpp index c643e91761d..e2903764778 100644 --- a/src/bele/4C_bele_vele3.cpp +++ b/src/bele/4C_bele_vele3.cpp @@ -71,7 +71,7 @@ void Discret::Elements::Vele3Type::setup_element_definition( using namespace Core::IO::InputSpecBuilders; defs["HEX8"] = all_of({ - entry>("HEX8", {.size = 8}), + parameter>("HEX8", {.size = 8}), }); } diff --git a/src/contact_constitutivelaw/4C_contact_constitutivelaw_valid_laws.cpp b/src/contact_constitutivelaw/4C_contact_constitutivelaw_valid_laws.cpp index d6ee64bff60..3024c0196bd 100644 --- a/src/contact_constitutivelaw/4C_contact_constitutivelaw_valid_laws.cpp +++ b/src/contact_constitutivelaw/4C_contact_constitutivelaw_valid_laws.cpp @@ -29,10 +29,10 @@ Core::IO::InputSpec CONTACT::CONSTITUTIVELAW::valid_contact_constitutive_laws() { specs.emplace_back(group("CoConstLaw_brokenrational", { - entry("A", {.description = "scaling factor"}), - entry("B", {.description = "asymptote"}), - entry("C", {.description = "y intercept"}), - entry( + parameter("A", {.description = "scaling factor"}), + parameter("B", {.description = "asymptote"}), + parameter("C", {.description = "y intercept"}), + parameter( "Offset", {.description = "offset for contact to start", .default_value = 0.0}), }, { @@ -44,9 +44,9 @@ Core::IO::InputSpec CONTACT::CONSTITUTIVELAW::valid_contact_constitutive_laws() { specs.emplace_back(group("CoConstLaw_power", { - entry("A", {.description = "scaling factor"}), - entry("B", {.description = "power coefficient"}), - entry( + parameter("A", {.description = "scaling factor"}), + parameter("B", {.description = "power coefficient"}), + parameter( "Offset", {.description = "offset for contact to start", .default_value = 0.0}), }, { @@ -59,11 +59,11 @@ Core::IO::InputSpec CONTACT::CONSTITUTIVELAW::valid_contact_constitutive_laws() { specs.emplace_back(group("CoConstLaw_cubic", { - entry("A", {.description = "A"}), - entry("B", {.description = "B"}), - entry("C", {.description = "C"}), - entry("D", {.description = "D"}), - entry( + parameter("A", {.description = "A"}), + parameter("B", {.description = "B"}), + parameter("C", {.description = "C"}), + parameter("D", {.description = "D"}), + parameter( "Offset", {.description = "offset for contact to start", .default_value = 0.0}), }, { @@ -76,9 +76,9 @@ Core::IO::InputSpec CONTACT::CONSTITUTIVELAW::valid_contact_constitutive_laws() { specs.emplace_back(group("CoConstLaw_linear", { - entry("A", {.description = "slope"}), - entry("B", {.description = "y intercept"}), - entry( + parameter("A", {.description = "slope"}), + parameter("B", {.description = "y intercept"}), + parameter( "Offset", {.description = "offset for contact to start", .default_value = 0.0}), }, { @@ -91,41 +91,41 @@ Core::IO::InputSpec CONTACT::CONSTITUTIVELAW::valid_contact_constitutive_laws() { specs.emplace_back(group("CoConstLaw_mirco", { - entry("FirstMatID", {.description = "First material ID"}), - entry("SecondMatID", {.description = "Second material ID"}), - entry( + parameter("FirstMatID", {.description = "First material ID"}), + parameter("SecondMatID", {.description = "Second material ID"}), + parameter( "LateralLength", {.description = "length of lateral side of the BEM patch"}), - entry("Resolution", {.description = "resolution of the surface"}), - entry("PressureGreenFunFlag", + parameter("Resolution", {.description = "resolution of the surface"}), + parameter("PressureGreenFunFlag", {.description = "Use pressure-based Green function instead of a point-force-based", .default_value = true}), - entry("InitialTopologyStdDeviationFunct", + parameter("InitialTopologyStdDeviationFunct", {.description = "Function id for Initial Standard deviation for the " "random-midpoint generator", .default_value = 100}), - entry( + parameter( "HurstExponentFunct", {.description = "Function for Hurst exponent of the surface", .default_value = 100}), - entry("RandomTopologyFlag", + parameter("RandomTopologyFlag", {.description = "Use random midpoint generator flag", .default_value = true}), - entry( + parameter( "RandomSeedFlag", {.description = "Random seed flag", .default_value = false}), - entry("RandomGeneratorSeed", + parameter("RandomGeneratorSeed", {.description = "Use random seed to reproduce results", .default_value = 95}), - entry("Tolerance", + parameter("Tolerance", {.description = "Tolerance for the convergence of force", .default_value = 0.01}), - entry("MaxIteration", + parameter("MaxIteration", {.description = "Maximum iteration of NNLS", .default_value = 1000}), - entry("WarmStartingFlag", + parameter("WarmStartingFlag", {.description = "Warm-starting flag, solution accelerator", .default_value = true}), - entry( + parameter( "Offset", {.description = "offset for contact to start", .default_value = 0.0}), - entry("FiniteDifferenceFraction", + parameter("FiniteDifferenceFraction", {.description = "Fraction of perturbation difference compared to the actual gap", .default_value = 0.001}), - entry("ActiveGapTolerance", + parameter("ActiveGapTolerance", {.description = "Minimum gap to consider a node as active", .default_value = 1e-6}), - entry("TopologyFilePath", + parameter("TopologyFilePath", {.description = "Path to file with micro-topology data", .default_value = ""}), }, { @@ -135,7 +135,7 @@ Core::IO::InputSpec CONTACT::CONSTITUTIVELAW::valid_contact_constitutive_laws() } auto valid_law = all_of({ - entry("LAW"), + parameter("LAW"), one_of(specs, store_index_as("LAW_TYPE", group_index_to_type)), }); diff --git a/src/core/fem/src/condition/4C_fem_condition_definition.cpp b/src/core/fem/src/condition/4C_fem_condition_definition.cpp index 678dc8210d5..2c9b00af828 100644 --- a/src/core/fem/src/condition/4C_fem_condition_definition.cpp +++ b/src/core/fem/src/condition/4C_fem_condition_definition.cpp @@ -59,8 +59,8 @@ void Core::Conditions::ConditionDefinition::read(Core::IO::InputFile& input, { using namespace Core::IO::InputSpecBuilders; auto condition_spec = all_of({ - entry("E", {.description = "ID of the condition. This ID refers to the respective " - "topological entity of the condition."}), + parameter("E", {.description = "ID of the condition. This ID refers to the respective " + "topological entity of the condition."}), all_of(specs_), }); @@ -103,7 +103,7 @@ std::ostream& Core::Conditions::ConditionDefinition::print(std::ostream& stream) using namespace Core::IO::InputSpecBuilders; auto condition_spec = all_of({ - entry("E"), + parameter("E"), all_of(specs_), }); diff --git a/src/core/fem/src/general/utils/4C_fem_general_utils_createdis.cpp b/src/core/fem/src/general/utils/4C_fem_general_utils_createdis.cpp index c85e89f761b..f66fb7a628c 100644 --- a/src/core/fem/src/general/utils/4C_fem_general_utils_createdis.cpp +++ b/src/core/fem/src/general/utils/4C_fem_general_utils_createdis.cpp @@ -253,10 +253,10 @@ Core::IO::InputSpec Core::FE::valid_cloning_material_map() { using namespace Core::IO::InputSpecBuilders; return all_of({ - entry("SRC_FIELD"), - entry("SRC_MAT"), - entry("TAR_FIELD"), - entry("TAR_MAT"), + parameter("SRC_FIELD"), + parameter("SRC_MAT"), + parameter("TAR_FIELD"), + parameter("TAR_MAT"), }); } diff --git a/src/core/io/src/4C_io_input_file.cpp b/src/core/io/src/4C_io_input_file.cpp index 5280ce05fc7..30aad8b60e5 100644 --- a/src/core/io/src/4C_io_input_file.cpp +++ b/src/core/io/src/4C_io_input_file.cpp @@ -599,7 +599,7 @@ namespace Core::IO "Section 'INCLUDES' is a reserved section name with special meaning. Please choose a " "different name."); pimpl_->valid_sections_["INCLUDES"] = - InputSpecBuilders::entry>("INCLUDES", + InputSpecBuilders::parameter>("INCLUDES", { .description = "Path to files that should be included into this file. " "The paths can be either absolute or relative to the file.", diff --git a/src/core/io/src/4C_io_input_spec_builders.cpp b/src/core/io/src/4C_io_input_spec_builders.cpp index 8d266c40900..0c97f59543c 100644 --- a/src/core/io/src/4C_io_input_spec_builders.cpp +++ b/src/core/io/src/4C_io_input_spec_builders.cpp @@ -263,10 +263,10 @@ namespace switch (entry.type) { - case MatchEntry::Type::entry: + case MatchEntry::Type::parameter: { out << indent; - out << std::format("{} {} entry '{}'", state_symbol[static_cast(entry.state)], + out << std::format("{} {} parameter '{}'", state_symbol[static_cast(entry.state)], state_phrase[static_cast(entry.state)], entry.spec->impl().name()); if (entry.state == MatchEntry::State::partial) { @@ -454,7 +454,7 @@ namespace { switch (entry.type) { - case MatchEntry::Type::entry: + case MatchEntry::Type::parameter: { if (entry.state == MatchEntry::State::matched) { diff --git a/src/core/io/src/4C_io_input_spec_builders.hpp b/src/core/io/src/4C_io_input_spec_builders.hpp index 519df42a1c8..27e06313049 100644 --- a/src/core/io/src/4C_io_input_spec_builders.hpp +++ b/src/core/io/src/4C_io_input_spec_builders.hpp @@ -236,7 +236,7 @@ namespace Core::IO enum class Type : std::uint8_t { unknown, - entry, + parameter, group, all_of, one_of, @@ -511,8 +511,8 @@ namespace Core::IO * @code * auto input = group("params", * { - * entry("a", {.description = "An integer value", .required = true}), - * entry>("b", {.description = "A vector of doubles", .required = false, + * parameter("a", {.description = "An integer value", .required = true}), + * parameter>("b", {.description = "A vector of doubles", .required = false, * .size = 4}), * } * ); @@ -526,7 +526,7 @@ namespace Core::IO /** * This constant signifies that a size is dynamic and will be determined at runtime. Pass this - * value to the size parameter of a vector-valued entry() or the list() function. + * value to the size parameter of a vector-valued parameter() or the list() function. * * @note Dynamic sizes do not work for the legacy dat file format and will throw a runtime * error. @@ -545,16 +545,14 @@ namespace Core::IO */ using Size = std::variant; - - /** - * Callback function that may be attached to entry(). + * Callback function that may be attached to parameter(). */ - using EntryCallback = std::function; + using ParameterCallback = std::function; - //! Additional parameters for an entry(). + //! Additional parameters for a parameter(). template - struct EntryData + struct ParameterData { using StoredType = T; /** @@ -577,12 +575,12 @@ namespace Core::IO * An optional callback that is called after the value has been parsed. This can be used to * set additional values in the container. */ - EntryCallback on_parse_callback{nullptr}; + ParameterCallback on_parse_callback{nullptr}; }; template requires(rank() == 1) - struct EntryData + struct ParameterData { using StoredType = T; @@ -592,7 +590,7 @@ namespace Core::IO std::optional default_value{}; - EntryCallback on_parse_callback{nullptr}; + ParameterCallback on_parse_callback{nullptr}; /** * The size of the vector. This can be a fixed size, #dynamic_size, or a callback that @@ -603,7 +601,7 @@ namespace Core::IO template requires(rank() > 1) - struct EntryData + struct ParameterData { using StoredType = T; @@ -613,7 +611,7 @@ namespace Core::IO std::optional default_value{}; - EntryCallback on_parse_callback{nullptr}; + ParameterCallback on_parse_callback{nullptr}; std::array()> size; }; @@ -687,7 +685,7 @@ namespace Core::IO { std::string name; using StoredType = T; - EntryData data; + ParameterData data; void parse(ValueParser& parser, InputParameterContainer& container) const; bool match(ConstYamlNodeRef node, InputParameterContainer& container, IO::Internal::MatchEntry& match_entry) const; @@ -707,7 +705,7 @@ namespace Core::IO { std::string name; using StoredType = T; - EntryData data; + ParameterData data; std::vector> choices; void parse(ValueParser& parser, InputParameterContainer& container) const; bool match(ConstYamlNodeRef node, InputParameterContainer& container, @@ -798,8 +796,8 @@ namespace Core::IO //! Helper to create selection() specs. //! Note that the type can be anything since we never read or write values of this type. template - [[nodiscard]] InputSpec selection_internal( - std::string name, std::vector> choices, EntryData data = {}); + [[nodiscard]] InputSpec selection_internal(std::string name, + std::vector> choices, ParameterData data = {}); struct SizeChecker @@ -825,41 +823,42 @@ namespace Core::IO } // namespace Internal /** - * Create a normal entry with given @p name. All entries are parameterized by a struct which - * contains the optional `description`, `required` and `default_value` fields. The following - * examples demonstrate how entries can be created: + * Create a normal parameter with given @p name. All parameters are parameterized by a struct + * which contains the optional `description`, `required` and `default_value` fields. The + * following examples demonstrate how parameters can be created: * * @code - * // An entry with name and description. By default, the entry is required. - * entry("my_string", {.description = "A string value."}); + * // A parameter with name and description. By default, the parameter is required. + * parameter("my_string", {.description = "A string value."}); * - * // An entry with a default value. This entry is implicitly optional because a default value - * // is given. - * entry("my_double", {.default_value = 3.14}); + * // A parameter with a default value. This parameter is implicitly optional because a default + * // value is given. + * parameter("my_double", {.default_value = 3.14}); * // This is equivalent to: - * entry("my_double", {.required = false, .default_value = 3.14}); + * parameter("my_double", {.required = false, .default_value = 3.14}); * - * // An optional entry. This value does not have a default value. - * entry("my_int", {.required = false}); + * // An optional parameter. This value does not have a default value. + * parameter("my_int", {.required = false}); * - * // An alternative way to create this optional int entry is achieved with the Noneable type. - * // This value is optional and by default has an empty value represented by "none" in the + * // An alternative way to create this optional int parameter is achieved with the Noneable + * // type. This value is optional and by default has an empty value represented by "none" in + * the * // input file. - * entry>("my_int", .default_value = none); + * parameter>("my_int", .default_value = none); * - * // A vector entry with a fixed size of 3. - * entry>("my_vector", {.size = 3}); + * // A vector parameter with a fixed size of 3. + * parameter>("my_vector", {.size = 3}); * * // A vector may also contain Noneable values. - * entry>>("my_vector", {.size = 3}); + * parameter>>("my_vector", {.size = 3}); * - * // A vector entry with a size that is determined by the value of another parameter. The + * // A vector parameter with a size that is determined by the value of another parameter. The * // size is given as a callback. - * entry("N"); - * entry>("my_vector", {.size = from_parameter("N")}); + * parameter("N"); + * parameter>("my_vector", {.size = from_parameter("N")}); * - * // A vector entry which performs an additional action after parsing. - * entry("data_file", {.description = "A path to a file.", + * // A vector parameter which performs an additional action after parsing. + * parameter("data_file", {.description = "A path to a file.", * .on_parse_callback = [](InputParameterContainer& container) { * // Perform an action with the parsed path. * std::filesystem::path path = container.get("my_path"); @@ -869,8 +868,9 @@ namespace Core::IO * }}); * @endcode * - * After parsing an InputSpec with fully_parse(), the value of the entry can be retrieved from - * an InputParameterContainer. The details depend on the `required` and `default_value` fields: + * After parsing an InputSpec with fully_parse(), the value of the parameter can be retrieved + * from an InputParameterContainer. The details depend on the `required` and `default_value` + * fields: * * - `required` is used to determine whether the parameter is required in the input file. Note * that by default, if `required` is not set, the parameter is implicitly required. Failing @@ -926,12 +926,12 @@ namespace Core::IO * InputParameterContainer::get(). If the parameter is not present in the input file or set * to "none", the Noneable value will be empty. * - * @tparam T The data type of the entry. Must be a SupportedType. + * @tparam T The data type of the parameter. Must be a SupportedType. * * @relatedalso InputSpec */ template - [[nodiscard]] InputSpec entry(std::string name, EntryData&& data = {}); + [[nodiscard]] InputSpec parameter(std::string name, ParameterData&& data = {}); /** * Create a callback that returns the value of the parameter with the given @p name. Such a @@ -941,8 +941,8 @@ namespace Core::IO * * @code * auto input_spec = group({ - * entry("N"), - * entry>("data", {.size = read_from_parameter("N")}), + * parameter("N"), + * parameter>("data", {.size = read_from_parameter("N")}), * }); * @endcode * @@ -954,7 +954,7 @@ namespace Core::IO [[nodiscard]] auto from_parameter(const std::string& name); /** - * An entry whose value is a a selection from a list of choices. For example: + * A parameter whose value is a a selection from a list of choices. For example: * * @code * selection("my_selection", {{"a", 1}, {"b", 2}, {"c", 3}}); @@ -965,7 +965,7 @@ namespace Core::IO * any type. This function is for convenience, as you do not need to convert parsed string * values to another type yourself. A frequent use case is to map strings to enum constants. * - * The remaining parameterization options follow the same rules as for the entry() function. + * The remaining parameterization options follow the same rules as for the parameter() function. * * @note If you want to store the choices as strings and not map them to another type, use the * other selection() function. @@ -974,8 +974,8 @@ namespace Core::IO */ template requires(!std::same_as) - [[nodiscard]] InputSpec selection( - std::string name, std::vector> choices, EntryData data = {}); + [[nodiscard]] InputSpec selection(std::string name, + std::vector> choices, ParameterData data = {}); /** @@ -989,7 +989,7 @@ namespace Core::IO */ template T> [[nodiscard]] InputSpec selection( - std::string name, std::vector choices, EntryData data = {}); + std::string name, std::vector choices, ParameterData data = {}); /** * A group of InputSpecs. This groups one or more InputSpecs under a name. A group can be @@ -1000,17 +1000,17 @@ namespace Core::IO * // A required group. * group("group", * { - * entry("a"), - * entry("b"), + * parameter("a"), + * parameter("b"), * }); * - * // An optional group. If the group is not present in the input, none of the entries are + * // An optional group. If the group is not present in the input, none of the parameters are * // required. This is useful to require a group of parameters together. * group("GenAlpha", * { - * entry("alpha_f"), - * entry("alpha_m"), - * entry("gamma"), + * parameter("alpha_f"), + * parameter("alpha_m"), + * parameter("gamma"), * }, * {.required = false} * ); @@ -1018,11 +1018,11 @@ namespace Core::IO * //Groups may be nested * group("outer", * { - * entry("a"), + * parameter("a"), * group("inner", * { - * entry("b"), - * entry("c"), + * parameter("b"), + * parameter("c"), * } * ), * }); @@ -1032,19 +1032,19 @@ namespace Core::IO * A group introduces a new scope in the input. This group scope is not only useful for * structuring the input file, but also to selectively activate a set of parameters, as * demonstrated in the second example. If an optional group is not present in the input, none of - * the entries are required. If the group is present, all entries are required. This is often + * its children are required. If the group is present, all children are required. This is often * exactly what you need: a group activates a feature which requires certain parameters to * be present. * - * Whether a group can have a default value is determined by the default values of its entries. - * If all of its entries have default values, the group can have a default value. In this case, - * you may set the `defaultable` option to guarantee that the default values of the entries are + * Whether a group can have a default value is determined by the default values of its children. + * If all of its children have default values, the group can have a default value. In this case, + * you may set the `defaultable` option to guarantee that the default values of the children are * stored under the group name in the container, even if the group is not present in the input. * Obviously, this only makes sense if the group is not required. - * This behavior is analogous to the behavior of the entry() function. While entries with + * This behavior is analogous to the behavior of the parameter() function. While parameters with * default values are often a good idea (if the default value is meaningful), groups with * default values are less common. If you follow the advice to use groups to activate features, - * you will usually have required entries in the group and, consequently, the group cannot be + * you will usually have required parameters in the group and, consequently, the group cannot be * `defaultable`. Put differently, if you have a group with many default values, you are likely * not using the InputSpecs to their full potential. Consider splitting the group into multiple * smaller groups or use the one_of() function to select between different groups. @@ -1062,13 +1062,13 @@ namespace Core::IO * * @code * all_of({ - * entry("a"), - * entry("b"), - * entry("c"), + * parameter("a"), + * parameter("b"), + * parameter("c"), * }); * @endcode * - * will require all three entries to be present in the input. + * will require all three parameters to be present in the input. * * The main application of this function is to gather multiple InputSpecs on the same level and * treat them as a single InputSpec. Nesting multiple all_of() specs is possible but does not @@ -1079,20 +1079,20 @@ namespace Core::IO * group("outer", * { * all_of({ - * entry("a"), + * parameter("a"), * all_of({ - * entry("b"), + * parameter("b"), * }), * }), - * entry("c"), + * parameter("c"), * }); * * // version 2 * group("outer", * { - * entry("a"), - * entry("b"), - * entry("c"), + * parameter("a"), + * parameter("b"), + * parameter("c"), * }); * @endcode * @@ -1115,14 +1115,14 @@ namespace Core::IO * one_of({ * group("OneStepTheta", * { - * entry("theta"), + * parameter("theta"), * }), * group("GenAlpha", * { - * entry("alpha_f"), - * entry("alpha_m"), - * entry("gamma"), - * entry("do_logging", {.default_value = false}), + * parameter("alpha_f"), + * parameter("alpha_m"), + * parameter("gamma"), + * parameter("do_logging", {.default_value = false}), * }), * }); * @endcode @@ -1132,8 +1132,9 @@ namespace Core::IO * all InputSpecs handed to one_of() need to be `required = true`. While this could silently be * changed internally, you will encounter an error if any InputSpec is not required to avoid * confusion and stop you from constructing difficult to understand InputSpecs. You can use - * entries that are `required = false` nested inside other InputSpecs, see e.g. the `do_logging` - * entry in the example code. The return one_of() InputSpec is always treated as required. + * parameters that are `required = false` nested inside other InputSpecs, see e.g. the + * `do_logging` parameter in the example code. The return one_of() InputSpec is always treated + * as required. * * The optional @p on_parse_callback may be used to perform additional actions after parsing one * of the specs. The index of the parsed spec inside the @p specs vector is passed as an @@ -1167,13 +1168,13 @@ namespace Core::IO * one_of({ * group("OneStepTheta", * { - * entry("theta"), + * parameter("theta"), * }), * group("GenAlpha", * { - * entry("alpha_f"), - * entry("alpha_m"), - * entry("gamma"), + * parameter("alpha_f"), + * parameter("alpha_m"), + * parameter("gamma"), * }), * }, * store_index_as("index", @@ -1198,7 +1199,7 @@ namespace Core::IO * or dynamic_size (the default). For example, * * @code - * list("my_list", entry("a"), {.size = 3}); + * list("my_list", parameter("a"), {.size = 3}); * @endcode * * will match the following yaml input: @@ -1211,7 +1212,7 @@ namespace Core::IO * @endcode * * @note The list() function is not intended to specify an array of primitive values of type T. - * Use the `entry>()` function for this purpose. As a developer of a new + * Use the `parameter>()` function for this purpose. As a developer of a new * InputSpec, you should rarely need the list() function. */ [[nodiscard]] InputSpec list(std::string name, InputSpec spec, ListData data = {}); @@ -1282,7 +1283,7 @@ template bool Core::IO::InputSpecBuilders::Internal::EntrySpec::match(ConstYamlNodeRef node, InputParameterContainer& container, IO::Internal::MatchEntry& match_entry) const { - match_entry.type = IO::Internal::MatchEntry::Type::entry; + match_entry.type = IO::Internal::MatchEntry::Type::parameter; auto spec_name = ryml::to_csubstr(name); // If we are not even in a map, we refuse to do anything and let the MatchTree handle this case. @@ -1292,7 +1293,7 @@ bool Core::IO::InputSpecBuilders::Internal::EntrySpec::match(ConstYamlNodeRef if (!node.node.has_child(spec_name)) { - // It is OK to not encounter an optional entry + // It is OK to not encounter an optional parameter if (data.default_value.has_value()) { container.add(name, data.default_value.value()); @@ -1478,7 +1479,7 @@ template bool Core::IO::InputSpecBuilders::Internal::SelectionSpec::match(ConstYamlNodeRef node, InputParameterContainer& container, IO::Internal::MatchEntry& match_entry) const { - match_entry.type = IO::Internal::MatchEntry::Type::entry; + match_entry.type = IO::Internal::MatchEntry::Type::parameter; auto spec_name = ryml::to_csubstr(name); // If we are not even in a map, we refuse to do anything and let the MatchTree handle this case. @@ -1488,7 +1489,7 @@ bool Core::IO::InputSpecBuilders::Internal::SelectionSpec::match(ConstYamlNod if (!node.node.has_child(spec_name)) { - // It is OK to not encounter an optional entry + // It is OK to not encounter an optional parameter if (data.default_value.has_value()) { container.add(name, data.default_value.value()); @@ -1654,7 +1655,8 @@ auto Core::IO::InputSpecBuilders::from_parameter(const std::string& name) template -Core::IO::InputSpec Core::IO::InputSpecBuilders::entry(std::string name, EntryData&& data) +Core::IO::InputSpec Core::IO::InputSpecBuilders::parameter( + std::string name, ParameterData&& data) { Internal::sanitize_required_default(data); @@ -1671,7 +1673,7 @@ Core::IO::InputSpec Core::IO::InputSpecBuilders::entry(std::string name, EntryDa template Core::IO::InputSpec Core::IO::InputSpecBuilders::Internal::selection_internal( - std::string name, std::vector> choices, EntryData data) + std::string name, std::vector> choices, ParameterData data) { FOUR_C_ASSERT_ALWAYS(!choices.empty(), "Selection must have at least one choice."); Internal::sanitize_required_default(data); @@ -1718,7 +1720,7 @@ Core::IO::InputSpec Core::IO::InputSpecBuilders::Internal::selection_internal( template requires(!std::same_as) Core::IO::InputSpec Core::IO::InputSpecBuilders::selection( - std::string name, std::vector> choices, EntryData data) + std::string name, std::vector> choices, ParameterData data) { return Internal::selection_internal(name, choices, data); } @@ -1726,7 +1728,7 @@ Core::IO::InputSpec Core::IO::InputSpecBuilders::selection( template T> Core::IO::InputSpec Core::IO::InputSpecBuilders::selection( - std::string name, std::vector choices, EntryData data) + std::string name, std::vector choices, ParameterData data) { std::vector> choices_with_strings; for (const auto& choice : choices) diff --git a/src/core/io/tests/4C_io_input_file_test.cpp b/src/core/io/tests/4C_io_input_file_test.cpp index bf8ddbc26ea..85b687cbc44 100644 --- a/src/core/io/tests/4C_io_input_file_test.cpp +++ b/src/core/io/tests/4C_io_input_file_test.cpp @@ -133,9 +133,9 @@ namespace MPI_Comm comm(MPI_COMM_WORLD); Core::IO::InputFile input{{{"INCLUDED SECTION 2", all_of({ - entry("a"), - entry("b"), - entry("c"), + parameter("a"), + parameter("b"), + parameter("c"), })}}, { "MAIN SECTION", @@ -152,9 +152,9 @@ namespace EXPECT_EQ(input.file_for_section("INCLUDED SECTION 2").filename(), "included.yaml"); auto spec = Core::IO::InputSpecBuilders::all_of({ - Core::IO::InputSpecBuilders::entry("a"), - Core::IO::InputSpecBuilders::entry("b"), - Core::IO::InputSpecBuilders::entry("c"), + Core::IO::InputSpecBuilders::parameter("a"), + Core::IO::InputSpecBuilders::parameter("b"), + Core::IO::InputSpecBuilders::parameter("c"), }); Core::IO::InputParameterContainer container; diff --git a/src/core/io/tests/4C_io_input_spec_test.cpp b/src/core/io/tests/4C_io_input_spec_test.cpp index 4e83ae638c9..b054a66ad6f 100644 --- a/src/core/io/tests/4C_io_input_spec_test.cpp +++ b/src/core/io/tests/4C_io_input_spec_test.cpp @@ -21,10 +21,10 @@ namespace TEST(InputSpecTest, Simple) { auto spec = all_of({ - entry("a", {.description = "An integer", .default_value = 1}), - entry("b", {.required = true}), - entry("c", {.required = false}), - entry("d"), + parameter("a", {.description = "An integer", .default_value = 1}), + parameter("b", {.required = true}), + parameter("c", {.required = false}), + parameter("d"), }); InputParameterContainer container; std::string stream("b 2.0 d true // trailing comment"); @@ -39,9 +39,9 @@ namespace TEST(InputSpecTest, OptionalLeftOut) { auto spec = all_of({ - entry("a"), - entry("b"), - entry("c", {.default_value = "default"}), + parameter("a"), + parameter("b"), + parameter("c", {.default_value = "default"}), }); { @@ -58,9 +58,9 @@ namespace TEST(InputSpecTest, RequiredLeftOut) { auto spec = all_of({ - entry("a"), - entry("b"), - entry("c"), + parameter("a"), + parameter("b"), + parameter("c"), }); { @@ -103,7 +103,7 @@ namespace { // This used to be a bug where a single default dat parameter was not accepted. auto spec = all_of({ - entry("a", {.default_value = 1.0}), + parameter("a", {.default_value = 1.0}), }); { @@ -135,8 +135,8 @@ namespace TEST(InputSpecTest, Vector) { auto spec = all_of({ - entry>>("a", {.size = {2, 2}}), - entry>("b", {.size = 3}), + parameter>>("a", {.size = {2, 2}}), + parameter>("b", {.size = 3}), }); { @@ -171,12 +171,12 @@ namespace TEST(InputSpecTest, Noneable) { auto spec = all_of({ - entry("size"), - entry>>("a", {.size = from_parameter("size")}), - entry>("b", {.description = "b"}), - entry>("c", {.default_value = 1.0}), - entry>("d", {.required = false}), - entry>("e", {.default_value = none}), + parameter("size"), + parameter>>("a", {.size = from_parameter("size")}), + parameter>("b", {.description = "b"}), + parameter>("c", {.default_value = 1.0}), + parameter>("d", {.required = false}), + parameter>("e", {.default_value = none}), }); { @@ -257,9 +257,9 @@ namespace TEST(InputSpecTest, VectorWithParsedLength) { auto spec = all_of({ - entry("a"), - entry>("b", {.size = from_parameter("a")}), - entry("c"), + parameter("a"), + parameter>("b", {.size = from_parameter("a")}), + parameter("c"), }); { @@ -288,16 +288,16 @@ namespace TEST(InputSpecTest, EntryWithCallback) { auto spec = all_of({ - entry("a"), - entry("b"), - entry("c", + parameter("a"), + parameter("b"), + parameter("c", { .description = "A string", .default_value = "Not found", .on_parse_callback = [](InputParameterContainer& container) { container.add("c_as_int", std::stoi(container.get("c"))); }, }), - entry("s"), + parameter("s"), }); { @@ -324,10 +324,10 @@ namespace TEST(InputSpecTest, Selection) { auto spec = all_of({ - entry("a"), + parameter("a"), selection("b", {{"b1", 1}, {"b2", 2}}, {.default_value = 1}), selection("c", {"c1", "c2"}, {.default_value = "c2"}), - entry("d"), + parameter("d"), }); { @@ -353,10 +353,10 @@ namespace TEST(InputSpecTest, Unparsed) { auto spec = all_of({ - entry("a"), - entry("optional", {.default_value = 42}), - entry("b"), - entry("c"), + parameter("a"), + parameter("optional", {.default_value = 42}), + parameter("b"), + parameter("c"), }); InputParameterContainer container; std::string stream("a 1 b 2.0 c string unparsed unparsed"); @@ -369,28 +369,28 @@ namespace TEST(InputSpecTest, Groups) { auto spec = all_of({ - entry("a"), + parameter("a"), group("group1", { - entry("b"), + parameter("b"), }), group("group2", { - entry("b", {.default_value = 3.0}), - entry("c"), + parameter("b", {.default_value = 3.0}), + parameter("c"), }, { .required = false, }), group("group3", { - entry("c", {.default_value = "default"}), + parameter("c", {.default_value = "default"}), }, { .required = false, .defaultable = true, }), - entry("c"), + parameter("c"), }); { @@ -435,10 +435,10 @@ namespace TEST(InputSpecTest, NestedAllOf) { auto spec = all_of({ - entry("a"), + parameter("a"), all_of({ all_of({ - entry("b"), + parameter("b"), }), // Not useful but might happen in practice, so ensure this can be handled. all_of({}), @@ -459,13 +459,13 @@ namespace TEST(InputSpecTest, OneOf) { auto spec = all_of({ - entry("a", {.default_value = 42}), + parameter("a", {.default_value = 42}), one_of({ - entry("b"), + parameter("b"), group("group", { - entry("c"), - entry("d"), + parameter("c"), + parameter("d"), }), }), }); @@ -522,12 +522,12 @@ namespace auto spec = one_of( { all_of({ - entry("a"), - entry("b"), + parameter("a"), + parameter("b"), }), all_of({ - entry("c"), - entry("d"), + parameter("c"), + parameter("d"), }), }, // Additionally store the index of the parsed group but map it to a different value. @@ -574,15 +574,15 @@ namespace { auto spec = one_of({ one_of({ - entry("a"), - entry("b"), + parameter("a"), + parameter("b"), }), one_of({ - entry("c"), - entry("d"), + parameter("c"), + parameter("d"), one_of({ - entry("e"), - entry("f"), + parameter("e"), + parameter("f"), }), }), }); @@ -606,20 +606,20 @@ namespace { auto spec = one_of({ one_of({ - entry("a"), - entry("b"), + parameter("a"), + parameter("b"), }), // This one_of has a callback and should not be flattened into the parent one_of. one_of( { - entry("c"), + parameter("c"), // This one_of will not be flattened into the parent that has a callback. one_of({ - entry("d"), + parameter("d"), // This one_of can be flattened into the parent one_of. one_of({ - entry("e"), - entry("f"), + parameter("e"), + parameter("f"), }), }), }, @@ -667,16 +667,16 @@ description: 'one_of {a, b, one_of {c, one_of {d, e, f}}}' TEST(InputSpecTest, PrintAsDat) { - auto spec = - group("g", { - // Note: the all_of entries will be pulled into the parent group. - all_of({ - entry("a", {.description = "An integer"}), - selection("c", {{"c1", 1}, {"c2", 2}}, - {.description = "Selection", .default_value = 1}), - }), - entry("d", {.description = "Another\n integer ", .default_value = 42}), - }); + auto spec = group( + "g", { + // Note: the all_of entries will be pulled into the parent group. + all_of({ + parameter("a", {.description = "An integer"}), + selection("c", {{"c1", 1}, {"c2", 2}}, + {.description = "Selection", .default_value = 1}), + }), + parameter("d", {.description = "Another\n integer ", .default_value = 42}), + }); { std::ostringstream out; @@ -692,35 +692,35 @@ description: 'one_of {a, b, one_of {c, one_of {d, e, f}}}' TEST(InputSpecTest, EmitMetadata) { auto spec = all_of({ - entry("a", {.default_value = 42}), - entry>>( + parameter("a", {.default_value = 42}), + parameter>>( "b", {.default_value = std::vector>{1., none, 3.}, .size = 3}), one_of({ all_of({ - entry>( + parameter>( "b", {.default_value = std::map{{"key", "abc"}}, .size = 1}), - entry("c"), + parameter("c"), }), - entry>>>( + parameter>>>( "triple_vector", {.size = {dynamic_size, 2, from_parameter("a")}}), group("group", { - entry("c", {.description = "A string"}), - entry("d"), + parameter("c", {.description = "A string"}), + parameter("d"), }, {.description = "A group"}), }), selection("e", {{"e1", 1}, {"e2", 2}}, {.default_value = 1}), group("group2", { - entry("g"), + parameter("g"), }, {.required = false}), list("list", all_of({ - entry("l1"), - entry("l2"), + parameter("l1"), + parameter("l2"), }), {.size = 2}), }); @@ -832,14 +832,14 @@ required: true InputSpec spec; { auto tmp = all_of({ - entry("a"), - entry("b"), + parameter("a"), + parameter("b"), selection("c", {{"c1", 1}, {"c2", 2}}, {.default_value = 1}), }); spec = all_of({ tmp, - entry("d"), + parameter("d"), }); } @@ -857,7 +857,7 @@ required: true TEST(InputSpecTest, MatchYamlEntry) { - auto spec = entry("a"); + auto spec = parameter("a"); { ryml::Tree tree = init_yaml_tree_with_exceptions(); @@ -883,7 +883,7 @@ required: true InputParameterContainer container; FOUR_C_EXPECT_THROW_WITH_MESSAGE( - spec.match(node, container), Core::Exception, "Expected entry 'a'"); + spec.match(node, container), Core::Exception, "Expected parameter 'a'"); } { @@ -896,15 +896,15 @@ required: true InputParameterContainer container; FOUR_C_EXPECT_THROW_WITH_MESSAGE( - spec.match(node, container), Core::Exception, "Expected entry 'a'"); + spec.match(node, container), Core::Exception, "Expected parameter 'a'"); } } TEST(InputSpecTest, MatchYamlGroup) { auto spec = group("group", { - entry("a"), - entry("b"), + parameter("a"), + parameter("b"), }); { @@ -940,12 +940,12 @@ required: true TEST(InputSpecTest, MatchYamlAllOf) { auto spec = all_of({ - entry("a"), - entry>("b"), + parameter("a"), + parameter>("b"), selection("c", {{"c1", 1}, {"c2", 2}}, {.default_value = 1}), group("group", { - entry("d"), + parameter("d"), }, {.required = false}), }); @@ -1006,7 +1006,7 @@ required: true InputParameterContainer container; FOUR_C_EXPECT_THROW_WITH_MESSAGE( - spec.match(node, container), Core::Exception, "Expected entry 'b'"); + spec.match(node, container), Core::Exception, "Expected parameter 'b'"); } // too much input @@ -1034,12 +1034,12 @@ required: true { auto spec = one_of({ all_of({ - entry("a"), - entry("b"), + parameter("a"), + parameter("b"), }), all_of({ - entry("a"), - entry("d"), + parameter("a"), + parameter("d"), }), }); @@ -1088,13 +1088,13 @@ required: true "[X] Expected exactly one but matched multiple:\n" " [!] Possible match:\n" " {\n" - " [ ] Fully matched entry 'a'\n" - " [ ] Fully matched entry 'b'\n" + " [ ] Fully matched parameter 'a'\n" + " [ ] Fully matched parameter 'b'\n" " }\n" " [!] Possible match:\n" " {\n" - " [ ] Fully matched entry 'a'\n" - " [ ] Fully matched entry 'd'\n" + " [ ] Fully matched parameter 'a'\n" + " [ ] Fully matched parameter 'd'\n" " }"); } } @@ -1103,8 +1103,8 @@ required: true { auto spec = list("list", all_of({ - entry("a"), - entry("b"), + parameter("a"), + parameter("b"), }), {.size = 1}); @@ -1208,7 +1208,7 @@ required: true TEST(InputSpecTest, MatchYamlPath) { auto spec = all_of({ - entry("a"), + parameter("a"), }); { @@ -1254,9 +1254,9 @@ required: true TEST(InputSpecTest, MatchYamlNoneable) { auto spec = all_of({ - entry>("i", {.default_value = none}), - entry>("s"), - entry>>("v", {.size = 3}), + parameter>("i", {.default_value = none}), + parameter>("s"), + parameter>>("v", {.size = 3}), }); { @@ -1306,8 +1306,8 @@ v: [Null, NULL, ~] # all the other spellings that YAML supports { using ComplicatedType = std::vector>>; auto spec = all_of({ - entry("num"), - entry("v", {.size = {2, dynamic_size, from_parameter("num")}}), + parameter("num"), + parameter("v", {.size = {2, dynamic_size, from_parameter("num")}}), }); { @@ -1358,22 +1358,22 @@ v: [Null, NULL, ~] # all the other spellings that YAML supports InputParameterContainer container; FOUR_C_EXPECT_THROW_WITH_MESSAGE( - spec.match(node, container), Core::Exception, "Partially matched entry 'v'"); + spec.match(node, container), Core::Exception, "Partially matched parameter 'v'"); } } TEST(InputSpecTest, MaterialExample) { auto mat_spec = all_of({ - entry("MAT"), + parameter("MAT"), one_of({ group("MAT_A", { - entry("a"), + parameter("a"), }), group("MAT_B", { - entry("b"), + parameter("b"), }), }), }); @@ -1398,9 +1398,9 @@ v: [Null, NULL, ~] # all the other spellings that YAML supports TEST(InputSpecTest, EmptyMatchesAllDefaulted) { - // This was a bug where a single defaulted entry was incorrectly reported as not matching. + // This was a bug where a single defaulted parameter was incorrectly reported as not matching. auto spec = all_of({ - entry("a", {.default_value = 42}), + parameter("a", {.default_value = 42}), }); { @@ -1421,29 +1421,29 @@ v: [Null, NULL, ~] # all the other spellings that YAML supports // awkward one_of where the first choice partially matches one_of({ all_of({ - entry("a"), - entry("b"), + parameter("a"), + parameter("b"), }), all_of({ - entry("a"), - entry("d"), + parameter("a"), + parameter("d"), }), }), // group with all defaulted entries group("group", { - entry("c", {.default_value = 1.0}), + parameter("c", {.default_value = 1.0}), selection("d", {{"d1", 1}, {"d2", 2}}, {.default_value = 2}), }, {.required = false}), list("list", all_of({ - entry("l1"), - entry("l2"), + parameter("l1"), + parameter("l2"), }), {.size = 2}), - entry("i", {.default_value = 0}), - entry>("v", {.size = 3}), + parameter("i", {.default_value = 0}), + parameter>("v", {.size = 3}), }); std::string dat = "a 1 d 3.0 group c 1 d d2 i 42 v 1.0 2.0 3.0 list l1 1 l2 2.0 l1 3 l2 4.0"; diff --git a/src/core/utils/src/functions/4C_utils_function_library.cpp b/src/core/utils/src/functions/4C_utils_function_library.cpp index 8fc4a3a702a..7f97b246378 100644 --- a/src/core/utils/src/functions/4C_utils_function_library.cpp +++ b/src/core/utils/src/functions/4C_utils_function_library.cpp @@ -66,12 +66,12 @@ void Core::Utils::add_valid_library_functions(Core::Utils::FunctionManager& func auto spec = one_of({ group("FASTPOLYNOMIAL", { - entry("NUMCOEFF"), - entry>("COEFF", {.size = from_parameter("NUMCOEFF")}), + parameter("NUMCOEFF"), + parameter>("COEFF", {.size = from_parameter("NUMCOEFF")}), }), group("CUBIC_SPLINE_FROM_CSV", { - entry("CSV"), + parameter("CSV"), }), }); diff --git a/src/core/utils/src/functions/4C_utils_function_manager.cpp b/src/core/utils/src/functions/4C_utils_function_manager.cpp index 9c4159e84d2..1dbfb6b83d7 100644 --- a/src/core/utils/src/functions/4C_utils_function_manager.cpp +++ b/src/core/utils/src/functions/4C_utils_function_manager.cpp @@ -70,58 +70,59 @@ void Core::Utils::add_valid_builtin_functions(Core::Utils::FunctionManager& func using namespace IO::InputSpecBuilders; auto time_info = all_of({ - entry("NUMPOINTS"), + parameter("NUMPOINTS"), one_of({ group("BYNUM", { - entry>("TIMERANGE", {.size = 2}), + parameter>("TIMERANGE", {.size = 2}), }, {.description = "Linearly distribute NUMPOINTS time points in the TIMERANGE."}), - entry>("TIMES", {.size = from_parameter("NUMPOINTS")}), + parameter>("TIMES", {.size = from_parameter("NUMPOINTS")}), }), }); auto spec = one_of({ all_of({ - entry("COMPONENT", {.required = false}), - entry("SYMBOLIC_FUNCTION_OF_SPACE_TIME"), + parameter("COMPONENT", {.required = false}), + parameter("SYMBOLIC_FUNCTION_OF_SPACE_TIME"), }), - entry("SYMBOLIC_FUNCTION_OF_TIME"), + parameter("SYMBOLIC_FUNCTION_OF_TIME"), all_of({ - entry("VARIABLE"), - entry("NAME"), + parameter("VARIABLE"), + parameter("NAME"), one_of({ all_of({ selection("TYPE", {"expression"}), - entry("DESCRIPTION"), + parameter("DESCRIPTION"), }), all_of({ selection("TYPE", {"linearinterpolation", "fourierinterpolation"}), time_info, - entry>("VALUES", {.size = from_parameter("NUMPOINTS")}), + parameter>( + "VALUES", {.size = from_parameter("NUMPOINTS")}), }), all_of({ selection("TYPE", {"multifunction"}), time_info, - entry>( + parameter>( "DESCRIPTION", {.size = [](const IO::InputParameterContainer& container) { return container.get("NUMPOINTS") - 1; }}), }), }), group("PERIODIC", { - entry("T1"), - entry("T2"), + parameter("T1"), + parameter("T2"), }, {.required = false}), }), all_of({ - entry("VARFUNCTION"), - entry("NUMCONSTANTS", {.required = false}), - entry>( + parameter("VARFUNCTION"), + parameter("NUMCONSTANTS", {.required = false}), + parameter>( "CONSTANTS", {.required = false, .size = from_parameter("NUMCONSTANTS")}), }), }); diff --git a/src/core/utils/src/parameters/4C_utils_parameter_list.cpp b/src/core/utils/src/parameters/4C_utils_parameter_list.cpp index eeb95f7f129..b4c2f84de30 100644 --- a/src/core/utils/src/parameters/4C_utils_parameter_list.cpp +++ b/src/core/utils/src/parameters/4C_utils_parameter_list.cpp @@ -23,14 +23,14 @@ namespace Core::Utils void bool_parameter(std::string const& paramName, bool default_value, std::string const& docString, SectionSpecs& section_specs) { - section_specs.specs.emplace_back(Core::IO::InputSpecBuilders::entry( + section_specs.specs.emplace_back(Core::IO::InputSpecBuilders::parameter( paramName, {.description = docString, .default_value = default_value})); } void int_parameter(std::string const& paramName, int const value, std::string const& docString, SectionSpecs& section_specs) { - section_specs.specs.emplace_back(Core::IO::InputSpecBuilders::entry( + section_specs.specs.emplace_back(Core::IO::InputSpecBuilders::parameter( paramName, {.description = docString, .default_value = value})); } @@ -38,7 +38,7 @@ namespace Core::Utils void double_parameter(std::string const& paramName, double const& value, std::string const& docString, SectionSpecs& section_specs) { - section_specs.specs.emplace_back(Core::IO::InputSpecBuilders::entry( + section_specs.specs.emplace_back(Core::IO::InputSpecBuilders::parameter( paramName, {.description = docString, .default_value = value})); } @@ -49,7 +49,7 @@ namespace Core::Utils { if (validParams.empty()) { - section_specs.specs.emplace_back(Core::IO::InputSpecBuilders::entry( + section_specs.specs.emplace_back(Core::IO::InputSpecBuilders::parameter( paramName, {.description = docString, .default_value = value})); } else diff --git a/src/core/utils/src/parameters/4C_utils_parameter_list.hpp b/src/core/utils/src/parameters/4C_utils_parameter_list.hpp index 19825e271be..6be92ef6c9c 100644 --- a/src/core/utils/src/parameters/4C_utils_parameter_list.hpp +++ b/src/core/utils/src/parameters/4C_utils_parameter_list.hpp @@ -60,7 +60,7 @@ namespace Core Teuchos::tuple(value_name), Teuchos::tuple(value), &list); } - /// temporary helper around InputSpecBuilders::entry + /// temporary helper around InputSpecBuilders::parameter void bool_parameter(std::string const& paramName, bool default_value, std::string const& docString, SectionSpecs& section_specs); // fail if users provide a string literal as default value diff --git a/src/elemag/4C_elemag_diff_ele.cpp b/src/elemag/4C_elemag_diff_ele.cpp index 5fcb8849e46..701dd06855a 100644 --- a/src/elemag/4C_elemag_diff_ele.cpp +++ b/src/elemag/4C_elemag_diff_ele.cpp @@ -100,39 +100,39 @@ void Discret::Elements::ElemagDiffType::setup_element_definition( // 3D elements defs["HEX8"] = all_of({ - entry>("HEX8", {.size = 8}), - entry("MAT"), - entry("DEG"), - entry("SPC"), + parameter>("HEX8", {.size = 8}), + parameter("MAT"), + parameter("DEG"), + parameter("SPC"), }); defs["TET4"] = all_of({ - entry>("TET4", {.size = 4}), - entry("MAT"), - entry("DEG"), - entry("SPC"), + parameter>("TET4", {.size = 4}), + parameter("MAT"), + parameter("DEG"), + parameter("SPC"), }); // 2D elements defs["QUAD4"] = all_of({ - entry>("QUAD4", {.size = 4}), - entry("MAT"), - entry("DEG"), - entry("SPC"), + parameter>("QUAD4", {.size = 4}), + parameter("MAT"), + parameter("DEG"), + parameter("SPC"), }); defs["QUAD9"] = all_of({ - entry>("QUAD9", {.size = 9}), - entry("MAT"), - entry("DEG"), - entry("SPC"), + parameter>("QUAD9", {.size = 9}), + parameter("MAT"), + parameter("DEG"), + parameter("SPC"), }); defs["TRI3"] = all_of({ - entry>("TRI3", {.size = 3}), - entry("MAT"), - entry("DEG"), - entry("SPC"), + parameter>("TRI3", {.size = 3}), + parameter("MAT"), + parameter("DEG"), + parameter("SPC"), }); } diff --git a/src/elemag/4C_elemag_ele.cpp b/src/elemag/4C_elemag_ele.cpp index 2e6310247b8..a9cd0250cb3 100644 --- a/src/elemag/4C_elemag_ele.cpp +++ b/src/elemag/4C_elemag_ele.cpp @@ -94,39 +94,39 @@ void Discret::Elements::ElemagType::setup_element_definition( // 3D elements defs["HEX8"] = all_of({ - entry>("HEX8", {.size = 8}), - entry("MAT"), - entry("DEG"), - entry("SPC"), + parameter>("HEX8", {.size = 8}), + parameter("MAT"), + parameter("DEG"), + parameter("SPC"), }); defs["TET4"] = all_of({ - entry>("TET4", {.size = 4}), - entry("MAT"), - entry("DEG"), - entry("SPC"), + parameter>("TET4", {.size = 4}), + parameter("MAT"), + parameter("DEG"), + parameter("SPC"), }); // 2D elements defs["QUAD4"] = all_of({ - entry>("QUAD4", {.size = 4}), - entry("MAT"), - entry("DEG"), - entry("SPC"), + parameter>("QUAD4", {.size = 4}), + parameter("MAT"), + parameter("DEG"), + parameter("SPC"), }); defs["QUAD9"] = all_of({ - entry>("QUAD9", {.size = 9}), - entry("MAT"), - entry("DEG"), - entry("SPC"), + parameter>("QUAD9", {.size = 9}), + parameter("MAT"), + parameter("DEG"), + parameter("SPC"), }); defs["TRI3"] = all_of({ - entry>("TRI3", {.size = 3}), - entry("MAT"), - entry("DEG"), - entry("SPC"), + parameter>("TRI3", {.size = 3}), + parameter("MAT"), + parameter("DEG"), + parameter("SPC"), }); } diff --git a/src/fluid/4C_fluid_functions.cpp b/src/fluid/4C_fluid_functions.cpp index 1d39a5437ed..ea3744544ff 100644 --- a/src/fluid/4C_fluid_functions.cpp +++ b/src/fluid/4C_fluid_functions.cpp @@ -338,49 +338,49 @@ void FLD::add_valid_fluid_functions(Core::Utils::FunctionManager& function_manag auto spec = one_of({ all_of({ selection("FLUID_FUNCTION", {"BELTRAMI"}), - entry("c1"), + parameter("c1"), }), selection("FLUID_FUNCTION", {"CHANNELWEAKLYCOMPRESSIBLE", "CORRECTIONTERMCHANNELWEAKLYCOMPRESSIBLE"}), all_of({ selection("FLUID_FUNCTION", {"WEAKLYCOMPRESSIBLE_POISEUILLE", "WEAKLYCOMPRESSIBLE_POISEUILLE_FORCE"}), - entry("MAT"), - entry("L"), - entry("R"), - entry("U"), + parameter("MAT"), + parameter("L"), + parameter("R"), + parameter("U"), }), all_of({ selection("FLUID_FUNCTION", {"WEAKLYCOMPRESSIBLE_MANUFACTUREDFLOW", "WEAKLYCOMPRESSIBLE_MANUFACTUREDFLOW_FORCE", "WEAKLYCOMPRESSIBLE_ETIENNE_CFD", "WEAKLYCOMPRESSIBLE_ETIENNE_CFD_FORCE", "WEAKLYCOMPRESSIBLE_ETIENNE_CFD_VISCOSITY"}), - entry("MAT"), + parameter("MAT"), }), all_of({ selection("FLUID_FUNCTION", {"WEAKLYCOMPRESSIBLE_ETIENNE_FSI_FLUID", "WEAKLYCOMPRESSIBLE_ETIENNE_FSI_FLUID_FORCE", "WEAKLYCOMPRESSIBLE_ETIENNE_FSI_FLUID_VISCOSITY"}), - entry("MAT_FLUID"), - entry("MAT_STRUCT"), + parameter("MAT_FLUID"), + parameter("MAT_STRUCT"), }), all_of({ selection( "FLUID_FUNCTION", {"BELTRAMI-UP", "BELTRAMI-GRADU", "KIMMOIN-UP", "KIMMOIN-GRADU"}), - entry("MAT"), - entry("ISSTAT"), + parameter("MAT"), + parameter("ISSTAT"), }), all_of({ selection("FLUID_FUNCTION", {"BELTRAMI-RHS", "KIMMOIN-RHS"}), - entry("MAT"), - entry("ISSTAT"), - entry("ISSTOKES"), + parameter("MAT"), + parameter("ISSTAT"), + parameter("ISSTOKES"), }), all_of({ selection("FLUID_FUNCTION", {"KIMMOIN-STRESS"}), - entry("MAT"), - entry("ISSTAT"), - entry("AMPLITUDE"), + parameter("MAT"), + parameter("ISSTAT"), + parameter("AMPLITUDE"), }), }); diff --git a/src/fluid_ele/4C_fluid_ele.cpp b/src/fluid_ele/4C_fluid_ele.cpp index ffcfd2fc840..c87c7f31473 100644 --- a/src/fluid_ele/4C_fluid_ele.cpp +++ b/src/fluid_ele/4C_fluid_ele.cpp @@ -76,106 +76,106 @@ void Discret::Elements::FluidType::setup_element_definition( using namespace Core::IO::InputSpecBuilders; defsgeneral["HEX8"] = all_of({ - entry>("HEX8", {.size = 8}), - entry("MAT"), - entry("NA"), + parameter>("HEX8", {.size = 8}), + parameter("MAT"), + parameter("NA"), }); defsgeneral["HEX20"] = all_of({ - entry>("HEX20", {.size = 20}), - entry("MAT"), - entry("NA"), + parameter>("HEX20", {.size = 20}), + parameter("MAT"), + parameter("NA"), }); defsgeneral["HEX27"] = all_of({ - entry>("HEX27", {.size = 27}), - entry("MAT"), - entry("NA"), + parameter>("HEX27", {.size = 27}), + parameter("MAT"), + parameter("NA"), }); defsgeneral["TET4"] = all_of({ - entry>("TET4", {.size = 4}), - entry("MAT"), - entry("NA"), + parameter>("TET4", {.size = 4}), + parameter("MAT"), + parameter("NA"), }); defsgeneral["TET10"] = all_of({ - entry>("TET10", {.size = 10}), - entry("MAT"), - entry("NA"), + parameter>("TET10", {.size = 10}), + parameter("MAT"), + parameter("NA"), }); defsgeneral["WEDGE6"] = all_of({ - entry>("WEDGE6", {.size = 6}), - entry("MAT"), - entry("NA"), + parameter>("WEDGE6", {.size = 6}), + parameter("MAT"), + parameter("NA"), }); defsgeneral["WEDGE15"] = all_of({ - entry>("WEDGE15", {.size = 15}), - entry("MAT"), - entry("NA"), + parameter>("WEDGE15", {.size = 15}), + parameter("MAT"), + parameter("NA"), }); defsgeneral["PYRAMID5"] = all_of({ - entry>("PYRAMID5", {.size = 5}), - entry("MAT"), - entry("NA"), + parameter>("PYRAMID5", {.size = 5}), + parameter("MAT"), + parameter("NA"), }); defsgeneral["NURBS8"] = all_of({ - entry>("NURBS8", {.size = 8}), - entry("MAT"), - entry("NA"), + parameter>("NURBS8", {.size = 8}), + parameter("MAT"), + parameter("NA"), }); defsgeneral["NURBS27"] = all_of({ - entry>("NURBS27", {.size = 27}), - entry("MAT"), - entry("NA"), + parameter>("NURBS27", {.size = 27}), + parameter("MAT"), + parameter("NA"), }); // 2D elements defsgeneral["QUAD4"] = all_of({ - entry>("QUAD4", {.size = 4}), - entry("MAT"), - entry("NA"), + parameter>("QUAD4", {.size = 4}), + parameter("MAT"), + parameter("NA"), }); defsgeneral["QUAD8"] = all_of({ - entry>("QUAD8", {.size = 8}), - entry("MAT"), - entry("NA"), + parameter>("QUAD8", {.size = 8}), + parameter("MAT"), + parameter("NA"), }); defsgeneral["QUAD9"] = all_of({ - entry>("QUAD9", {.size = 9}), - entry("MAT"), - entry("NA"), + parameter>("QUAD9", {.size = 9}), + parameter("MAT"), + parameter("NA"), }); defsgeneral["TRI3"] = all_of({ - entry>("TRI3", {.size = 3}), - entry("MAT"), - entry("NA"), + parameter>("TRI3", {.size = 3}), + parameter("MAT"), + parameter("NA"), }); defsgeneral["TRI6"] = all_of({ - entry>("TRI6", {.size = 6}), - entry("MAT"), - entry("NA"), + parameter>("TRI6", {.size = 6}), + parameter("MAT"), + parameter("NA"), }); defsgeneral["NURBS4"] = all_of({ - entry>("NURBS4", {.size = 4}), - entry("MAT"), - entry("NA"), + parameter>("NURBS4", {.size = 4}), + parameter("MAT"), + parameter("NA"), }); defsgeneral["NURBS9"] = all_of({ - entry>("NURBS9", {.size = 9}), - entry("MAT"), - entry("NA"), + parameter>("NURBS9", {.size = 9}), + parameter("MAT"), + parameter("NA"), }); } diff --git a/src/fluid_ele/4C_fluid_ele_hdg.cpp b/src/fluid_ele/4C_fluid_ele_hdg.cpp index c4c07884cf9..7e891f1050e 100644 --- a/src/fluid_ele/4C_fluid_ele_hdg.cpp +++ b/src/fluid_ele/4C_fluid_ele_hdg.cpp @@ -136,8 +136,8 @@ void Discret::Elements::FluidHDGType ::setup_element_definition( { defs_hdg[key] = all_of({ fluid_line_def, - entry("DEG"), - entry("SPC", {.required = false}), + parameter("DEG"), + parameter("SPC", {.required = false}), }); } } diff --git a/src/fluid_ele/4C_fluid_ele_hdg_weak_comp.cpp b/src/fluid_ele/4C_fluid_ele_hdg_weak_comp.cpp index 3c67ba1273d..4c753215da3 100644 --- a/src/fluid_ele/4C_fluid_ele_hdg_weak_comp.cpp +++ b/src/fluid_ele/4C_fluid_ele_hdg_weak_comp.cpp @@ -98,8 +98,8 @@ void Discret::Elements::FluidHDGWeakCompType ::setup_element_definition( { defs_hdg[key] = all_of({ fluid_line_def, - entry("DEG"), - entry("SPC", {.required = false}), + parameter("DEG"), + parameter("SPC", {.required = false}), }); } } diff --git a/src/fluid_ele/4C_fluid_ele_xwall.cpp b/src/fluid_ele/4C_fluid_ele_xwall.cpp index 22298aa5c1a..795489daa82 100644 --- a/src/fluid_ele/4C_fluid_ele_xwall.cpp +++ b/src/fluid_ele/4C_fluid_ele_xwall.cpp @@ -71,14 +71,14 @@ void Discret::Elements::FluidXWallType::setup_element_definition( using namespace Core::IO::InputSpecBuilders; defsxwall["HEX8"] = all_of({ - entry>("HEX8", {.size = 8}), - entry("MAT"), - entry("NA"), + parameter>("HEX8", {.size = 8}), + parameter("MAT"), + parameter("NA"), }); defsxwall["TET4"] = all_of({ - entry>("TET4", {.size = 4}), - entry("MAT"), - entry("NA"), + parameter>("TET4", {.size = 4}), + parameter("MAT"), + parameter("NA"), }); } diff --git a/src/fluid_xfluid/4C_fluid_xfluid_functions.cpp b/src/fluid_xfluid/4C_fluid_xfluid_functions.cpp index 37983292eef..5279f7520fe 100644 --- a/src/fluid_xfluid/4C_fluid_xfluid_functions.cpp +++ b/src/fluid_xfluid/4C_fluid_xfluid_functions.cpp @@ -197,62 +197,62 @@ void Discret::Utils::add_valid_xfluid_functions(Core::Utils::FunctionManager& fu selection("XFLUID_FUNCTION", {"FORWARDFACINGSTEP"}), all_of({ selection("XFLUID_FUNCTION", {"MOVINGLEVELSETCYLINDER"}), - entry>("ORIGIN", {.size = 3}), - entry("RADIUS"), - entry>("DIRECTION", {.size = 3}), - entry("DISTANCE"), - entry("MAXSPEED"), + parameter>("ORIGIN", {.size = 3}), + parameter("RADIUS"), + parameter>("DIRECTION", {.size = 3}), + parameter("DISTANCE"), + parameter("MAXSPEED"), }), all_of({ selection( "XFLUID_FUNCTION", {"MOVINGLEVELSETTORUS", "MOVINGLEVELSETTORUSVELOCITY"}), - entry>("ORIGIN", {.size = 3}), - entry>("ORIENTVEC_TORUS", {.size = 3}), - entry("RADIUS"), - entry("RADIUS_TUBE"), - entry>("DIRECTION", {.size = 3}), - entry("DISTANCE"), - entry("MAXSPEED"), - entry>("ROTATION_VEC", {.size = 3}), - entry("ROTATION_SPEED"), - entry("ROTATION_RAMPTIME"), + parameter>("ORIGIN", {.size = 3}), + parameter>("ORIENTVEC_TORUS", {.size = 3}), + parameter("RADIUS"), + parameter("RADIUS_TUBE"), + parameter>("DIRECTION", {.size = 3}), + parameter("DISTANCE"), + parameter("MAXSPEED"), + parameter>("ROTATION_VEC", {.size = 3}), + parameter("ROTATION_SPEED"), + parameter("ROTATION_RAMPTIME"), }), all_of({ selection("XFLUID_FUNCTION", {"MOVINGLEVELSETTORUSSLIPLENGTH"}), - entry>("ORIGIN", {.size = 3}), - entry>("ORIENTVEC_TORUS", {.size = 3}), - entry("RADIUS"), - entry("RADIUS_TUBE"), - entry>("DIRECTION", {.size = 3}), - entry("DISTANCE"), - entry("MAXSPEED"), - entry>("ROTATION_VEC", {.size = 3}), - entry("ROTATION_SPEED"), - entry("ROTATION_RAMPTIME"), - entry("SLIP_FUNCT"), + parameter>("ORIGIN", {.size = 3}), + parameter>("ORIENTVEC_TORUS", {.size = 3}), + parameter("RADIUS"), + parameter("RADIUS_TUBE"), + parameter>("DIRECTION", {.size = 3}), + parameter("DISTANCE"), + parameter("MAXSPEED"), + parameter>("ROTATION_VEC", {.size = 3}), + parameter("ROTATION_SPEED"), + parameter("ROTATION_RAMPTIME"), + parameter("SLIP_FUNCT"), }), all_of({ selection("XFLUID_FUNCTION", {"TAYLORCOUETTEFLOW"}), - entry("RADIUS_I"), - entry("RADIUS_O"), - entry("VEL_THETA_I"), - entry("VEL_THETA_O"), - entry("SLIPLENGTH_I"), - entry("SLIPLENGTH_O"), - entry("TRACTION_THETA_I"), - entry("TRACTION_THETA_O"), - entry("VISCOSITY"), + parameter("RADIUS_I"), + parameter("RADIUS_O"), + parameter("VEL_THETA_I"), + parameter("VEL_THETA_O"), + parameter("SLIPLENGTH_I"), + parameter("SLIPLENGTH_O"), + parameter("TRACTION_THETA_I"), + parameter("TRACTION_THETA_O"), + parameter("VISCOSITY"), }), all_of({ selection("XFLUID_FUNCTION", {"URQUIZABOXFLOW", "URQUIZABOXFLOW_TRACTION", "URQUIZABOXFLOW_FORCE"}), - entry("LENGTHX"), - entry("LENGTHY"), - entry("ROTATION"), - entry("VISCOSITY"), - entry("DENSITY"), - entry("CASE"), - entry>("COMBINATION", {.size = 2}), + parameter("LENGTHX"), + parameter("LENGTHY"), + parameter("ROTATION"), + parameter("VISCOSITY"), + parameter("DENSITY"), + parameter("CASE"), + parameter>("COMBINATION", {.size = 2}), }), }); diff --git a/src/global_data/4C_global_data_read.cpp b/src/global_data/4C_global_data_read.cpp index c58ced5d5f8..5f9bba9addb 100644 --- a/src/global_data/4C_global_data_read.cpp +++ b/src/global_data/4C_global_data_read.cpp @@ -70,7 +70,7 @@ namespace } auto all_materials = all_of({ - entry("MAT"), + parameter("MAT"), one_of(possible_materials), }); section_specs["MATERIALS"] = all_materials; @@ -94,8 +94,9 @@ namespace for (const auto& cond : valid_conditions) { auto condition_spec = all_of({ - entry("E", {.description = "ID of the condition. This ID refers to the respective " - "topological entity of the condition."}), + parameter( + "E", {.description = "ID of the condition. This ID refers to the respective " + "topological entity of the condition."}), all_of(cond.specs()), }); section_specs.emplace(cond.section_name(), std::move(condition_spec)); @@ -1954,7 +1955,8 @@ void Global::read_materials(Global::Problem& problem, Core::IO::InputFile& input using namespace Core::IO::InputSpecBuilders; auto all_materials = all_of({ - entry("MAT", {.description = "Material ID that may be used to refer to this material."}), + parameter( + "MAT", {.description = "Material ID that may be used to refer to this material."}), one_of(all_specs, [¤t_index](Core::IO::InputParameterContainer& container, std::size_t index) { current_index = index; }), }); diff --git a/src/global_legacy_module/4C_global_legacy_module.cpp b/src/global_legacy_module/4C_global_legacy_module.cpp index 0a872eb2db5..ab26264bad2 100644 --- a/src/global_legacy_module/4C_global_legacy_module.cpp +++ b/src/global_legacy_module/4C_global_legacy_module.cpp @@ -334,201 +334,201 @@ namespace { one_of({ all_of({ - entry("DIS"), + parameter("DIS"), one_of({ - entry("NODE"), - entry("LINE"), - entry("SURFACE"), - entry("VOLUME"), + parameter("NODE"), + parameter("LINE"), + parameter("SURFACE"), + parameter("VOLUME"), }), }), - entry("SPECIAL"), + parameter("SPECIAL"), }), - entry("OP", {.required = false}), - entry("QUANTITY"), - entry("VALUE"), - entry("TOLERANCE"), - entry("NAME", {.required = false}), + parameter("OP", {.required = false}), + parameter("QUANTITY"), + parameter("VALUE"), + parameter("TOLERANCE"), + parameter("NAME", {.required = false}), }), group("FLUID", { - entry("DIS"), + parameter("DIS"), one_of({ - entry("NODE"), - entry("ELEMENT"), + parameter("NODE"), + parameter("ELEMENT"), }), - entry("QUANTITY"), - entry("VALUE"), - entry("TOLERANCE"), - entry("NAME", {.required = false}), + parameter("QUANTITY"), + parameter("VALUE"), + parameter("TOLERANCE"), + parameter("NAME", {.required = false}), }), group("XFLUID", { - entry("DIS"), - entry("NODE"), - entry("QUANTITY"), - entry("VALUE"), - entry("TOLERANCE"), - entry("NAME", {.required = false}), + parameter("DIS"), + parameter("NODE"), + parameter("QUANTITY"), + parameter("VALUE"), + parameter("TOLERANCE"), + parameter("NAME", {.required = false}), }), group("ALE", { - entry("DIS"), - entry("NODE"), - entry("QUANTITY"), - entry("VALUE"), - entry("TOLERANCE"), - entry("NAME", {.required = false}), + parameter("DIS"), + parameter("NODE"), + parameter("QUANTITY"), + parameter("VALUE"), + parameter("TOLERANCE"), + parameter("NAME", {.required = false}), }), group("THERMAL", { - entry("DIS"), - entry("NODE"), - entry("QUANTITY"), - entry("VALUE"), - entry("TOLERANCE"), - entry("NAME", {.required = false}), + parameter("DIS"), + parameter("NODE"), + parameter("QUANTITY"), + parameter("VALUE"), + parameter("TOLERANCE"), + parameter("NAME", {.required = false}), }), group("LUBRICATION", { - entry("DIS"), - entry("NODE"), - entry("QUANTITY"), - entry("VALUE"), - entry("TOLERANCE"), - entry("NAME", {.required = false}), + parameter("DIS"), + parameter("NODE"), + parameter("QUANTITY"), + parameter("VALUE"), + parameter("TOLERANCE"), + parameter("NAME", {.required = false}), }), group("POROFLUIDMULTIPHASE", { - entry("DIS"), + parameter("DIS"), one_of({ - entry("NODE"), - entry("ELEMENT"), - entry("SPECIAL"), + parameter("NODE"), + parameter("ELEMENT"), + parameter("SPECIAL"), }), - entry("QUANTITY"), - entry("VALUE"), - entry("TOLERANCE"), - entry("NAME", {.required = false}), + parameter("QUANTITY"), + parameter("VALUE"), + parameter("TOLERANCE"), + parameter("NAME", {.required = false}), }), group("SCATRA", { - entry("DIS"), + parameter("DIS"), one_of({ - entry("NODE"), - entry("SPECIAL"), + parameter("NODE"), + parameter("SPECIAL"), }), - entry("QUANTITY"), - entry("VALUE"), - entry("TOLERANCE"), - entry("NAME", {.required = false}), + parameter("QUANTITY"), + parameter("VALUE"), + parameter("TOLERANCE"), + parameter("NAME", {.required = false}), }), group("SSI", { one_of({ all_of({ - entry("DIS"), - entry("NODE"), + parameter("DIS"), + parameter("NODE"), }), - entry("SPECIAL"), + parameter("SPECIAL"), }), - entry("QUANTITY"), - entry("VALUE"), - entry("TOLERANCE"), - entry("NAME", {.required = false}), + parameter("QUANTITY"), + parameter("VALUE"), + parameter("TOLERANCE"), + parameter("NAME", {.required = false}), }), group("SSTI", { - entry("SPECIAL"), - entry("QUANTITY"), - entry("VALUE"), - entry("TOLERANCE"), + parameter("SPECIAL"), + parameter("QUANTITY"), + parameter("VALUE"), + parameter("TOLERANCE"), }), group("STI", { - entry("SPECIAL"), - entry("QUANTITY"), - entry("VALUE"), - entry("TOLERANCE"), + parameter("SPECIAL"), + parameter("QUANTITY"), + parameter("VALUE"), + parameter("TOLERANCE"), }), group("RED_AIRWAY", { - entry("DIS"), + parameter("DIS"), one_of({ - entry("NODE"), - entry("ELEMENT"), + parameter("NODE"), + parameter("ELEMENT"), }), - entry("QUANTITY"), - entry("VALUE"), - entry("TOLERANCE"), - entry("NAME", {.required = false}), + parameter("QUANTITY"), + parameter("VALUE"), + parameter("TOLERANCE"), + parameter("NAME", {.required = false}), }), group("ARTNET", { - entry("DIS"), + parameter("DIS"), one_of({ - entry("NODE"), - entry("ELEMENT"), + parameter("NODE"), + parameter("ELEMENT"), }), - entry("QUANTITY"), - entry("VALUE"), - entry("TOLERANCE"), - entry("NAME", {.required = false}), + parameter("QUANTITY"), + parameter("VALUE"), + parameter("TOLERANCE"), + parameter("NAME", {.required = false}), }), group("FSI", { one_of({ - entry("NODE"), - entry("SPECIAL"), + parameter("NODE"), + parameter("SPECIAL"), }), - entry("QUANTITY"), - entry("VALUE"), - entry("TOLERANCE"), - entry("NAME", {.required = false}), + parameter("QUANTITY"), + parameter("VALUE"), + parameter("TOLERANCE"), + parameter("NAME", {.required = false}), }), group("PARTICLE", { - entry("ID"), - entry("QUANTITY"), - entry("VALUE"), - entry("TOLERANCE"), + parameter("ID"), + parameter("QUANTITY"), + parameter("VALUE"), + parameter("TOLERANCE"), }), group("PARTICLEWALL", { - entry("DIS"), + parameter("DIS"), one_of({ - entry("NODE"), - entry("SPECIAL"), + parameter("NODE"), + parameter("SPECIAL"), }), - entry("QUANTITY"), - entry("VALUE"), - entry("TOLERANCE"), - entry("NAME", {.required = false}), + parameter("QUANTITY"), + parameter("VALUE"), + parameter("TOLERANCE"), + parameter("NAME", {.required = false}), }), group("RIGIDBODY", { - entry("ID"), - entry("QUANTITY"), - entry("VALUE"), - entry("TOLERANCE"), + parameter("ID"), + parameter("QUANTITY"), + parameter("VALUE"), + parameter("TOLERANCE"), }), group("ELECTROMAGNETIC", { - entry("DIS"), - entry("NODE"), - entry("QUANTITY"), - entry("VALUE"), - entry("TOLERANCE"), - entry("NAME", {.required = false}), + parameter("DIS"), + parameter("NODE"), + parameter("QUANTITY"), + parameter("VALUE"), + parameter("TOLERANCE"), + parameter("NAME", {.required = false}), }), group("CARDIOVASCULAR0D", { - entry("DIS"), - entry("SPECIAL"), - entry("QUANTITY"), - entry("VALUE"), - entry("TOLERANCE"), - entry("NAME", {.required = false}), + parameter("DIS"), + parameter("SPECIAL"), + parameter("QUANTITY"), + parameter("VALUE"), + parameter("TOLERANCE"), + parameter("NAME", {.required = false}), }), }); } diff --git a/src/global_legacy_module/4C_global_legacy_module_validmaterials.cpp b/src/global_legacy_module/4C_global_legacy_module_validmaterials.cpp index 6b63f916659..496ca9e2ea9 100644 --- a/src/global_legacy_module/4C_global_legacy_module_validmaterials.cpp +++ b/src/global_legacy_module/4C_global_legacy_module_validmaterials.cpp @@ -41,9 +41,9 @@ std::shared_ptr>> Global::v auto m = std::make_shared( "MAT_fluid", "Newtonian fluid", Core::Materials::m_fluid); - m->add_component(entry("DYNVISCOSITY", {.description = "dynamic viscosity"})); - m->add_component(entry("DENSITY", {.description = "spatial mass density"})); - m->add_component(entry( + m->add_component(parameter("DYNVISCOSITY", {.description = "dynamic viscosity"})); + m->add_component(parameter("DENSITY", {.description = "spatial mass density"})); + m->add_component(parameter( "GAMMA", {.description = "surface tension coefficient", .default_value = 0.0})); Mat::append_material_definition(matlist, m); @@ -56,14 +56,15 @@ std::shared_ptr>> Global::v "Weakly compressible fluid according to Murnaghan-Tait", Core::Materials::m_fluid_murnaghantait); - m->add_component(entry("DYNVISCOSITY", {.description = "dynamic viscosity"})); + m->add_component(parameter("DYNVISCOSITY", {.description = "dynamic viscosity"})); m->add_component( - entry("REFDENSITY", {.description = "reference spatial mass density"})); - m->add_component(entry("REFPRESSURE", {.description = "reference pressure"})); - m->add_component(entry("REFBULKMODULUS", {.description = "reference bulk modulus"})); - m->add_component(entry( + parameter("REFDENSITY", {.description = "reference spatial mass density"})); + m->add_component(parameter("REFPRESSURE", {.description = "reference pressure"})); + m->add_component( + parameter("REFBULKMODULUS", {.description = "reference bulk modulus"})); + m->add_component(parameter( "MATPARAMETER", {.description = "material parameter according to Murnaghan-Tait"})); - m->add_component(entry( + m->add_component(parameter( "GAMMA", {.description = "surface tension coefficient", .default_value = 0.0})); Mat::append_material_definition(matlist, m); @@ -76,14 +77,14 @@ std::shared_ptr>> Global::v "Linear law (pressure-dependent) for the density and the viscosity", Core::Materials::m_fluid_linear_density_viscosity); - m->add_component(entry("REFDENSITY", {.description = "reference density"})); - m->add_component(entry("REFVISCOSITY", {.description = "reference viscosity"})); - m->add_component(entry("REFPRESSURE", {.description = "reference pressure"})); + m->add_component(parameter("REFDENSITY", {.description = "reference density"})); + m->add_component(parameter("REFVISCOSITY", {.description = "reference viscosity"})); + m->add_component(parameter("REFPRESSURE", {.description = "reference pressure"})); m->add_component( - entry("COEFFDENSITY", {.description = "density-pressure coefficient"})); + parameter("COEFFDENSITY", {.description = "density-pressure coefficient"})); m->add_component( - entry("COEFFVISCOSITY", {.description = "viscosity-pressure coefficient"})); - m->add_component(entry( + parameter("COEFFVISCOSITY", {.description = "viscosity-pressure coefficient"})); + m->add_component(parameter( "GAMMA", {.description = "surface tension coefficient", .default_value = 0.0})); Mat::append_material_definition(matlist, m); @@ -95,10 +96,11 @@ std::shared_ptr>> Global::v auto m = std::make_shared("MAT_fluid_weakly_compressible", "Weakly compressible fluid", Core::Materials::m_fluid_weakly_compressible); - m->add_component(entry("VISCOSITY", {.description = "viscosity"})); - m->add_component(entry("REFDENSITY", {.description = "reference density"})); - m->add_component(entry("REFPRESSURE", {.description = "reference pressure"})); - m->add_component(entry("COMPRCOEFF", {.description = "compressibility coefficient"})); + m->add_component(parameter("VISCOSITY", {.description = "viscosity"})); + m->add_component(parameter("REFDENSITY", {.description = "reference density"})); + m->add_component(parameter("REFPRESSURE", {.description = "reference pressure"})); + m->add_component( + parameter("COMPRCOEFF", {.description = "compressibility coefficient"})); Mat::append_material_definition(matlist, m); } @@ -110,12 +112,12 @@ std::shared_ptr>> Global::v "fluid with non-linear viscosity according to Carreau-Yasuda", Core::Materials::m_carreauyasuda); - m->add_component(entry("NU_0", {.description = "zero-shear viscosity"})); - m->add_component(entry("NU_INF", {.description = "infinite-shear viscosity"})); - m->add_component(entry("LAMBDA", {.description = "characteristic time"})); - m->add_component(entry("APARAM", {.description = "constant parameter"})); - m->add_component(entry("BPARAM", {.description = "constant parameter"})); - m->add_component(entry("DENSITY", {.description = "density"})); + m->add_component(parameter("NU_0", {.description = "zero-shear viscosity"})); + m->add_component(parameter("NU_INF", {.description = "infinite-shear viscosity"})); + m->add_component(parameter("LAMBDA", {.description = "characteristic time"})); + m->add_component(parameter("APARAM", {.description = "constant parameter"})); + m->add_component(parameter("BPARAM", {.description = "constant parameter"})); + m->add_component(parameter("DENSITY", {.description = "density"})); Mat::append_material_definition(matlist, m); } @@ -127,10 +129,10 @@ std::shared_ptr>> Global::v "fluid with nonlinear viscosity according to a modified power law", Core::Materials::m_modpowerlaw); - m->add_component(entry("MCONS", {.description = "consistency"})); - m->add_component(entry("DELTA", {.description = "safety factor"})); - m->add_component(entry("AEXP", {.description = "exponent"})); - m->add_component(entry("DENSITY", {.description = "density"})); + m->add_component(parameter("MCONS", {.description = "consistency"})); + m->add_component(parameter("DELTA", {.description = "safety factor"})); + m->add_component(parameter("AEXP", {.description = "exponent"})); + m->add_component(parameter("DENSITY", {.description = "density"})); Mat::append_material_definition(matlist, m); } @@ -142,13 +144,15 @@ std::shared_ptr>> Global::v "fluid with non-linear viscosity according to Herschel-Bulkley", Core::Materials::m_herschelbulkley); - m->add_component(entry("TAU_0", {.description = "yield stress"})); - m->add_component(entry("KFAC", {.description = "constant factor"})); - m->add_component(entry("NEXP", {.description = "exponent"})); - m->add_component(entry("MEXP", {.description = "exponent"})); - m->add_component(entry("LOLIMSHEARRATE", {.description = "lower limit of shear rate"})); - m->add_component(entry("UPLIMSHEARRATE", {.description = "upper limit of shear rate"})); - m->add_component(entry("DENSITY", {.description = "density"})); + m->add_component(parameter("TAU_0", {.description = "yield stress"})); + m->add_component(parameter("KFAC", {.description = "constant factor"})); + m->add_component(parameter("NEXP", {.description = "exponent"})); + m->add_component(parameter("MEXP", {.description = "exponent"})); + m->add_component( + parameter("LOLIMSHEARRATE", {.description = "lower limit of shear rate"})); + m->add_component( + parameter("UPLIMSHEARRATE", {.description = "upper limit of shear rate"})); + m->add_component(parameter("DENSITY", {.description = "density"})); Mat::append_material_definition(matlist, m); } @@ -159,8 +163,8 @@ std::shared_ptr>> Global::v auto m = std::make_shared( "MAT_lubrication", "lubrication material", Core::Materials::m_lubrication); - m->add_component(entry("LUBRICATIONLAWID", {.description = "lubrication law id"})); - m->add_component(entry("DENSITY", {.description = "lubricant density"})); + m->add_component(parameter("LUBRICATIONLAWID", {.description = "lubrication law id"})); + m->add_component(parameter("DENSITY", {.description = "lubricant density"})); Mat::append_material_definition(matlist, m); } @@ -172,7 +176,7 @@ std::shared_ptr>> Global::v auto m = std::make_shared("MAT_lubrication_law_constant", "constant lubrication material law", Core::Materials::m_lubrication_law_constant); - m->add_component(entry("VISCOSITY", {.description = "lubricant viscosity"})); + m->add_component(parameter("VISCOSITY", {.description = "lubricant viscosity"})); Mat::append_material_definition(matlist, m); } @@ -184,9 +188,9 @@ std::shared_ptr>> Global::v "barus lubrication material law", Core::Materials::m_lubrication_law_barus); m->add_component( - entry("ABSViscosity", {.description = "absolute lubricant viscosity"})); + parameter("ABSViscosity", {.description = "absolute lubricant viscosity"})); m->add_component( - entry("PreVisCoeff", {.description = "pressure viscosity coefficient"})); + parameter("PreVisCoeff", {.description = "pressure viscosity coefficient"})); Mat::append_material_definition(matlist, m); } @@ -198,11 +202,11 @@ std::shared_ptr>> Global::v "roeland lubrication material law", Core::Materials::m_lubrication_law_roeland); m->add_component( - entry("ABSViscosity", {.description = "absolute lubricant viscosity"})); + parameter("ABSViscosity", {.description = "absolute lubricant viscosity"})); m->add_component( - entry("PreVisCoeff", {.description = "pressure viscosity coefficient"})); - m->add_component(entry("RefVisc", {.description = "reference viscosity"})); - m->add_component(entry("RefPress", {.description = "reference Pressure"})); + parameter("PreVisCoeff", {.description = "pressure viscosity coefficient"})); + m->add_component(parameter("RefVisc", {.description = "reference viscosity"})); + m->add_component(parameter("RefPress", {.description = "reference Pressure"})); Mat::append_material_definition(matlist, m); } @@ -213,14 +217,14 @@ std::shared_ptr>> Global::v auto m = std::make_shared( "MAT_scatra", "scalar transport material", Core::Materials::m_scatra); - m->add_component(entry("DIFFUSIVITY", {.description = "kinematic diffusivity"})); - m->add_component( - entry("REACOEFF", {.description = "reaction coefficient", .default_value = 0.0})); + m->add_component(parameter("DIFFUSIVITY", {.description = "kinematic diffusivity"})); + m->add_component(parameter( + "REACOEFF", {.description = "reaction coefficient", .default_value = 0.0})); m->add_component( - entry("SCNUM", {.description = "schmidt number", .default_value = 0.0})); - m->add_component(entry( + parameter("SCNUM", {.description = "schmidt number", .default_value = 0.0})); + m->add_component(parameter( "DENSIFICATION", {.description = "densification coefficient", .default_value = 0.0})); - m->add_component(entry("REACTS_TO_EXTERNAL_FORCE", + m->add_component(parameter("REACTS_TO_EXTERNAL_FORCE", {.description = "reacts to external force", .default_value = false})); Mat::append_material_definition(matlist, m); @@ -234,26 +238,26 @@ std::shared_ptr>> Global::v "scalar transport material", Core::Materials::m_scatra_reaction_poroECM); m->add_component( - entry("NUMSCAL", {.description = "number of scalars for these elements"})); - m->add_component(entry>("STOICH", + parameter("NUMSCAL", {.description = "number of scalars for these elements"})); + m->add_component(parameter>("STOICH", {.description = "reaction stoichometrie list", .size = from_parameter("NUMSCAL")})); - m->add_component(entry("REACCOEFF", {.description = "reaction coefficient"})); + m->add_component(parameter("REACCOEFF", {.description = "reaction coefficient"})); m->add_component( - entry("REACSCALE", {.description = "scaling for reaction coefficient"})); + parameter("REACSCALE", {.description = "scaling for reaction coefficient"})); // reacscale could now be done by constant distribution function - m->add_component(entry("DISTRFUNCT", + m->add_component(parameter("DISTRFUNCT", {.description = "spatial distribution of reaction coefficient", .default_value = 0})); - m->add_component(entry("COUPLING", + m->add_component(parameter("COUPLING", {.description = "type of coupling: simple_multiplicative, power_multiplicative, " "constant, michaelis_menten, by_function, no_coupling (default)", .default_value = "no_coupling"})); - m->add_component(entry>( + m->add_component(parameter>( "ROLE", {.description = "role in michaelis-menten like reactions", .size = from_parameter("NUMSCAL")})); m->add_component( - entry>("REACSTART", {.description = "starting point of reaction", - .required = false, - .size = from_parameter("NUMSCAL")})); + parameter>("REACSTART", {.description = "starting point of reaction", + .required = false, + .size = from_parameter("NUMSCAL")})); Mat::append_material_definition(matlist, m); } @@ -264,23 +268,23 @@ std::shared_ptr>> Global::v "MAT_scatra_reaction", "advanced reaction material", Core::Materials::m_scatra_reaction); m->add_component( - entry("NUMSCAL", {.description = "number of scalars for these elements"})); - m->add_component(entry>("STOICH", + parameter("NUMSCAL", {.description = "number of scalars for these elements"})); + m->add_component(parameter>("STOICH", {.description = "reaction stoichometrie list", .size = from_parameter("NUMSCAL")})); - m->add_component(entry("REACCOEFF", {.description = "reaction coefficient"})); - m->add_component(entry("DISTRFUNCT", + m->add_component(parameter("REACCOEFF", {.description = "reaction coefficient"})); + m->add_component(parameter("DISTRFUNCT", {.description = "spatial distribution of reaction coefficient", .default_value = 0})); - m->add_component(entry("COUPLING", + m->add_component(parameter("COUPLING", {.description = "type of coupling: simple_multiplicative, power_multiplicative, " "constant, michaelis_menten, by_function, no_coupling (default)", .default_value = "no_coupling"})); - m->add_component(entry>( + m->add_component(parameter>( "ROLE", {.description = "role in michaelis-menten like reactions", .size = from_parameter("NUMSCAL")})); m->add_component( - entry>("REACSTART", {.description = "starting point of reaction", - .required = false, - .size = from_parameter("NUMSCAL")})); + parameter>("REACSTART", {.description = "starting point of reaction", + .required = false, + .size = from_parameter("NUMSCAL")})); Mat::append_material_definition(matlist, m); } @@ -292,23 +296,23 @@ std::shared_ptr>> Global::v "advanced reaction material for multiphase porous flow (species in fluid)", Core::Materials::m_scatra_multiporo_fluid); - m->add_component(entry("DIFFUSIVITY", {.description = "kinematic diffusivity"})); + m->add_component(parameter("DIFFUSIVITY", {.description = "kinematic diffusivity"})); + m->add_component(parameter( + "PHASEID", {.description = "ID of fluid phase the scalar is associated with"})); + m->add_component(parameter( + "REACOEFF", {.description = "reaction coefficient", .default_value = 0.0})); m->add_component( - entry("PHASEID", {.description = "ID of fluid phase the scalar is associated with"})); - m->add_component( - entry("REACOEFF", {.description = "reaction coefficient", .default_value = 0.0})); - m->add_component( - entry("SCNUM", {.description = "schmidt number", .default_value = 0.0})); - m->add_component(entry( + parameter("SCNUM", {.description = "schmidt number", .default_value = 0.0})); + m->add_component(parameter( "DENSIFICATION", {.description = "densification coefficient", .default_value = 0.0})); - m->add_component(entry("DELTA", {.description = "delta", .default_value = 0.0})); - m->add_component(entry("MIN_SAT", + m->add_component(parameter("DELTA", {.description = "delta", .default_value = 0.0})); + m->add_component(parameter("MIN_SAT", {.description = "minimum saturation under which also corresponding mass fraction is equal to zero", .default_value = 1.0e-9})); - m->add_component(entry("REACTS_TO_EXTERNAL_FORCE", + m->add_component(parameter("REACTS_TO_EXTERNAL_FORCE", {.description = "reacts to external force", .default_value = false})); - m->add_component(entry("RELATIVE_MOBILITY_FUNCTION_ID", + m->add_component(parameter("RELATIVE_MOBILITY_FUNCTION_ID", {.description = "relative mobility function ID", .default_value = 0})); Mat::append_material_definition(matlist, m); @@ -321,19 +325,19 @@ std::shared_ptr>> Global::v "advanced reaction material for multiphase porous flow (species in volfrac)", Core::Materials::m_scatra_multiporo_volfrac); - m->add_component(entry("DIFFUSIVITY", {.description = "kinematic diffusivity"})); - m->add_component( - entry("PHASEID", {.description = "ID of fluid phase the scalar is associated with"})); + m->add_component(parameter("DIFFUSIVITY", {.description = "kinematic diffusivity"})); + m->add_component(parameter( + "PHASEID", {.description = "ID of fluid phase the scalar is associated with"})); + m->add_component(parameter( + "REACOEFF", {.description = "reaction coefficient", .default_value = 0.0})); m->add_component( - entry("REACOEFF", {.description = "reaction coefficient", .default_value = 0.0})); - m->add_component( - entry("SCNUM", {.description = "schmidt number", .default_value = 0.0})); - m->add_component(entry( + parameter("SCNUM", {.description = "schmidt number", .default_value = 0.0})); + m->add_component(parameter( "DENSIFICATION", {.description = "densification coefficient", .default_value = 0.0})); - m->add_component(entry("DELTA", {.description = "delta", .default_value = 0.0})); - m->add_component(entry("REACTS_TO_EXTERNAL_FORCE", + m->add_component(parameter("DELTA", {.description = "delta", .default_value = 0.0})); + m->add_component(parameter("REACTS_TO_EXTERNAL_FORCE", {.description = "reacts to external force", .default_value = false})); - m->add_component(entry("RELATIVE_MOBILITY_FUNCTION_ID", + m->add_component(parameter("RELATIVE_MOBILITY_FUNCTION_ID", {.description = "relative mobility function ID", .default_value = 0})); Mat::append_material_definition(matlist, m); @@ -347,16 +351,16 @@ std::shared_ptr>> Global::v "porous flow (species in solid)", Core::Materials::m_scatra_multiporo_solid); - m->add_component(entry("DIFFUSIVITY", {.description = "kinematic diffusivity"})); + m->add_component(parameter("DIFFUSIVITY", {.description = "kinematic diffusivity"})); // no phaseID because only one solid phase + m->add_component(parameter( + "REACOEFF", {.description = "reaction coefficient", .default_value = 0.0})); m->add_component( - entry("REACOEFF", {.description = "reaction coefficient", .default_value = 0.0})); - m->add_component( - entry("SCNUM", {.description = "schmidt number", .default_value = 0.0})); - m->add_component(entry( + parameter("SCNUM", {.description = "schmidt number", .default_value = 0.0})); + m->add_component(parameter( "DENSIFICATION", {.description = "densification coefficient", .default_value = 0.0})); - m->add_component(entry("DELTA", {.description = "delta", .default_value = 0.0})); - m->add_component(entry("REACTS_TO_EXTERNAL_FORCE", + m->add_component(parameter("DELTA", {.description = "delta", .default_value = 0.0})); + m->add_component(parameter("REACTS_TO_EXTERNAL_FORCE", {.description = "reacts to external force", .default_value = false})); Mat::append_material_definition(matlist, m); @@ -369,30 +373,30 @@ std::shared_ptr>> Global::v "advanced reaction material for multiphase porous flow (temperature)", Core::Materials::m_scatra_multiporo_temperature); - m->add_component(entry( + m->add_component(parameter( "NUMFLUIDPHASES_IN_MULTIPHASEPORESPACE", {.description = "number of fluid dofs"})); - m->add_component(entry>( + m->add_component(parameter>( "CP_FLUID", {.description = "heat capacity fluid phases", .size = from_parameter("NUMFLUIDPHASES_IN_MULTIPHASEPORESPACE")})); - m->add_component(entry("NUMVOLFRAC", {.description = "number of volfrac dofs"})); - m->add_component(entry>("CP_VOLFRAC", + m->add_component(parameter("NUMVOLFRAC", {.description = "number of volfrac dofs"})); + m->add_component(parameter>("CP_VOLFRAC", {.description = "heat capacity volfrac", .size = from_parameter("NUMVOLFRAC")})); - m->add_component(entry("CP_SOLID", {.description = "heat capacity solid"})); - m->add_component(entry>( + m->add_component(parameter("CP_SOLID", {.description = "heat capacity solid"})); + m->add_component(parameter>( "KAPPA_FLUID", {.description = "thermal diffusivity fluid phases", .size = from_parameter("NUMFLUIDPHASES_IN_MULTIPHASEPORESPACE")})); - m->add_component(entry>("KAPPA_VOLFRAC", + m->add_component(parameter>("KAPPA_VOLFRAC", {.description = "thermal diffusivity volfrac", .size = from_parameter("NUMVOLFRAC")})); - m->add_component(entry("KAPPA_SOLID", {.description = "heat capacity solid"})); - m->add_component(entry( + m->add_component(parameter("KAPPA_SOLID", {.description = "heat capacity solid"})); + m->add_component(parameter( "DIFFUSIVITY", {.description = "kinematic diffusivity", .default_value = 1.0})); + m->add_component(parameter( + "REACOEFF", {.description = "reaction coefficient", .default_value = 0.0})); m->add_component( - entry("REACOEFF", {.description = "reaction coefficient", .default_value = 0.0})); - m->add_component( - entry("SCNUM", {.description = "schmidt number", .default_value = 0.0})); - m->add_component(entry( + parameter("SCNUM", {.description = "schmidt number", .default_value = 0.0})); + m->add_component(parameter( "DENSIFICATION", {.description = "densification coefficient", .default_value = 0.0})); - m->add_component(entry("REACTS_TO_EXTERNAL_FORCE", + m->add_component(parameter("REACTS_TO_EXTERNAL_FORCE", {.description = "reacts to external force", .default_value = false})); Mat::append_material_definition(matlist, m); @@ -404,11 +408,11 @@ std::shared_ptr>> Global::v auto m = std::make_shared( "MAT_scatra_chemotaxis", "chemotaxis material", Core::Materials::m_scatra_chemotaxis); - m->add_component( - entry("NUMSCAL", {.description = "number of chemotactic pairs for these elements"})); - m->add_component(entry>( + m->add_component(parameter( + "NUMSCAL", {.description = "number of chemotactic pairs for these elements"})); + m->add_component(parameter>( "PAIR", {.description = "chemotaxis pairing", .size = from_parameter("NUMSCAL")})); - m->add_component(entry("CHEMOCOEFF", {.description = "chemotaxis coefficient"})); + m->add_component(parameter("CHEMOCOEFF", {.description = "chemotaxis coefficient"})); Mat::append_material_definition(matlist, m); } @@ -419,21 +423,22 @@ std::shared_ptr>> Global::v auto m = std::make_shared("MAT_scatra_multiscale", "scalar transport material for multi-scale approach", Core::Materials::m_scatra_multiscale); - m->add_component(entry("MICROFILE", + m->add_component(parameter("MICROFILE", {.description = "input file for micro scale", .default_value = "filename.dat"})); m->add_component( - entry("MICRODIS_NUM", {.description = "number of micro-scale discretization"})); - m->add_component(entry("POROSITY", {.description = "porosity"})); - m->add_component(entry("TORTUOSITY", {.description = "tortuosity"})); - m->add_component(entry("A_s", {.description = "specific micro-scale surface area"})); - m->add_component(entry("DIFFUSIVITY", {.description = "kinematic diffusivity"})); + parameter("MICRODIS_NUM", {.description = "number of micro-scale discretization"})); + m->add_component(parameter("POROSITY", {.description = "porosity"})); + m->add_component(parameter("TORTUOSITY", {.description = "tortuosity"})); m->add_component( - entry("REACOEFF", {.description = "reaction coefficient", .default_value = 0.0})); + parameter("A_s", {.description = "specific micro-scale surface area"})); + m->add_component(parameter("DIFFUSIVITY", {.description = "kinematic diffusivity"})); + m->add_component(parameter( + "REACOEFF", {.description = "reaction coefficient", .default_value = 0.0})); m->add_component( - entry("SCNUM", {.description = "Schmidt number", .default_value = 0.0})); - m->add_component(entry( + parameter("SCNUM", {.description = "Schmidt number", .default_value = 0.0})); + m->add_component(parameter( "DENSIFICATION", {.description = "densification coefficient", .default_value = 0.0})); - m->add_component(entry("REACTS_TO_EXTERNAL_FORCE", + m->add_component(parameter("REACTS_TO_EXTERNAL_FORCE", {.description = "reacts to external force", .default_value = false})); Mat::append_material_definition(matlist, m); @@ -446,60 +451,61 @@ std::shared_ptr>> Global::v "Weickenmeier muscle material", Core::Materials::m_muscle_weickenmeier); m->add_component( - entry("ALPHA", {.description = "experimentally fitted material parameter"})); + parameter("ALPHA", {.description = "experimentally fitted material parameter"})); m->add_component( - entry("BETA", {.description = "experimentally fitted material parameter"})); + parameter("BETA", {.description = "experimentally fitted material parameter"})); m->add_component( - entry("GAMMA", {.description = "experimentally fitted material parameter"})); - m->add_component(entry( + parameter("GAMMA", {.description = "experimentally fitted material parameter"})); + m->add_component(parameter( "KAPPA", {.description = "material parameter for coupled volumetric contribution"})); - m->add_component(entry( + m->add_component(parameter( "OMEGA0", {.description = "weighting factor for isotropic tissue constituents"})); - m->add_component(entry("ACTMUNUM", + m->add_component(parameter("ACTMUNUM", {.description = "number of active motor units per undeformed muscle cross-sectional area"})); - m->add_component(entry("MUTYPESNUM", {.description = "number of motor unit types"})); - m->add_component(entry>("INTERSTIM", + m->add_component(parameter("MUTYPESNUM", {.description = "number of motor unit types"})); + m->add_component(parameter>("INTERSTIM", {.description = "interstimulus interval", .size = from_parameter("MUTYPESNUM")})); - m->add_component(entry>("FRACACTMU", + m->add_component(parameter>("FRACACTMU", {.description = "fraction of motor unit type", .size = from_parameter("MUTYPESNUM")})); m->add_component( - entry>("FTWITCH", {.description = "twitch force of motor unit type", - .size = from_parameter("MUTYPESNUM")})); - m->add_component(entry>( + parameter>("FTWITCH", {.description = "twitch force of motor unit type", + .size = from_parameter("MUTYPESNUM")})); + m->add_component(parameter>( "TTWITCH", {.description = "twitch contraction time of motor unit type", .size = from_parameter("MUTYPESNUM")})); - m->add_component(entry("LAMBDAMIN", {.description = "minimal active fiber stretch"})); - m->add_component(entry("LAMBDAOPT", - {.description = "optimal active fiber stretch related to active nominal stress maximum"})); - m->add_component(entry("DOTLAMBDAMIN", {.description = "minimal stretch rate"})); - m->add_component( - entry("KE", {.description = "parameter controlling the curvature of the velocity " - "dependent activation function in the " - "eccentric case"})); - m->add_component( - entry("KC", {.description = "parameter controlling the curvature of the velocity " - "dependent activation function in the " - "concentric case"})); m->add_component( - entry("DE", {.description = "parameter controlling the amplitude of the velocity " - "dependent activation function in the " - "eccentric case"})); - m->add_component( - entry("DC", {.description = "parameter controlling the amplitude of the velocity " - "dependent activation function in the " - "concentric case"})); - m->add_component(entry( + parameter("LAMBDAMIN", {.description = "minimal active fiber stretch"})); + m->add_component(parameter("LAMBDAOPT", + {.description = "optimal active fiber stretch related to active nominal stress maximum"})); + m->add_component(parameter("DOTLAMBDAMIN", {.description = "minimal stretch rate"})); + m->add_component(parameter( + "KE", {.description = "parameter controlling the curvature of the velocity " + "dependent activation function in the " + "eccentric case"})); + m->add_component(parameter( + "KC", {.description = "parameter controlling the curvature of the velocity " + "dependent activation function in the " + "concentric case"})); + m->add_component(parameter( + "DE", {.description = "parameter controlling the amplitude of the velocity " + "dependent activation function in the " + "eccentric case"})); + m->add_component(parameter( + "DC", {.description = "parameter controlling the amplitude of the velocity " + "dependent activation function in the " + "concentric case"})); + m->add_component(parameter( "ACTTIMESNUM", {.description = "number of time boundaries to prescribe activation"})); - m->add_component( - entry>("ACTTIMES", {.description = "time boundaries between intervals", - .size = from_parameter("ACTTIMESNUM")})); - m->add_component(entry( + m->add_component(parameter>( + "ACTTIMES", {.description = "time boundaries between intervals", + .size = from_parameter("ACTTIMESNUM")})); + m->add_component(parameter( "ACTINTERVALSNUM", {.description = "number of time intervals to prescribe activation"})); - m->add_component(entry>("ACTVALUES", + m->add_component(parameter>("ACTVALUES", {.description = "scaling factor in intervals (1=full activation, 0=no activation)", .size = from_parameter("ACTINTERVALSNUM")})); - m->add_component(entry("DENS", {.description = "density"})); + m->add_component(parameter("DENS", {.description = "density"})); Mat::append_material_definition(matlist, m); } @@ -511,19 +517,20 @@ std::shared_ptr>> Global::v "MAT_Muscle_Combo", "Combo muscle material", Core::Materials::m_muscle_combo); m->add_component( - entry("ALPHA", {.description = "experimentally fitted material parameter"})); + parameter("ALPHA", {.description = "experimentally fitted material parameter"})); m->add_component( - entry("BETA", {.description = "experimentally fitted material parameter"})); + parameter("BETA", {.description = "experimentally fitted material parameter"})); m->add_component( - entry("GAMMA", {.description = "experimentally fitted material parameter"})); - m->add_component(entry( + parameter("GAMMA", {.description = "experimentally fitted material parameter"})); + m->add_component(parameter( "KAPPA", {.description = "material parameter for coupled volumetric contribution"})); - m->add_component(entry( + m->add_component(parameter( "OMEGA0", {.description = "weighting factor for isotropic tissue constituents"})); m->add_component( - entry("POPT", {.description = "tetanised optimal (maximal) active stress"})); - m->add_component(entry("LAMBDAMIN", {.description = "minimal active fiber stretch"})); - m->add_component(entry("LAMBDAOPT", + parameter("POPT", {.description = "tetanised optimal (maximal) active stress"})); + m->add_component( + parameter("LAMBDAMIN", {.description = "minimal active fiber stretch"})); + m->add_component(parameter("LAMBDAOPT", {.description = "optimal active fiber stretch related to active nominal stress maximum"})); m->add_component(selection("ACTEVALTYPE", @@ -554,16 +561,16 @@ std::shared_ptr>> Global::v }; auto activation = one_of({ - entry("FUNCTID", + parameter("FUNCTID", {.description = "function id for time- and space-dependency of muscle activation"}), - entry("MAPFILE", + parameter("MAPFILE", {.description = "pattern file containing a map of elementwise-defined discrete values " "for time- and space-dependency of muscle activation", .on_parse_callback = on_parse}), }); m->add_component(std::move(activation)); - m->add_component(entry("DENS", {.description = "density"})); + m->add_component(parameter("DENS", {.description = "density"})); Mat::append_material_definition(matlist, m); } @@ -575,60 +582,61 @@ std::shared_ptr>> Global::v "Giantesio active strain muscle material", Core::Materials::m_muscle_giantesio); m->add_component( - entry("ALPHA", {.description = "experimentally fitted material parameter"})); + parameter("ALPHA", {.description = "experimentally fitted material parameter"})); m->add_component( - entry("BETA", {.description = "experimentally fitted material parameter"})); + parameter("BETA", {.description = "experimentally fitted material parameter"})); m->add_component( - entry("GAMMA", {.description = "experimentally fitted material parameter"})); - m->add_component(entry( + parameter("GAMMA", {.description = "experimentally fitted material parameter"})); + m->add_component(parameter( "KAPPA", {.description = "material parameter for coupled volumetric contribution"})); - m->add_component(entry( + m->add_component(parameter( "OMEGA0", {.description = "weighting factor for isotropic tissue constituents"})); - m->add_component(entry("ACTMUNUM", + m->add_component(parameter("ACTMUNUM", {.description = "number of active motor units per undeformed muscle cross-sectional area"})); - m->add_component(entry("MUTYPESNUM", {.description = "number of motor unit types"})); - m->add_component(entry>("INTERSTIM", + m->add_component(parameter("MUTYPESNUM", {.description = "number of motor unit types"})); + m->add_component(parameter>("INTERSTIM", {.description = "interstimulus interval", .size = from_parameter("MUTYPESNUM")})); - m->add_component(entry>("FRACACTMU", + m->add_component(parameter>("FRACACTMU", {.description = "fraction of motor unit type", .size = from_parameter("MUTYPESNUM")})); m->add_component( - entry>("FTWITCH", {.description = "twitch force of motor unit type", - .size = from_parameter("MUTYPESNUM")})); - m->add_component(entry>( + parameter>("FTWITCH", {.description = "twitch force of motor unit type", + .size = from_parameter("MUTYPESNUM")})); + m->add_component(parameter>( "TTWITCH", {.description = "twitch contraction time of motor unit type", .size = from_parameter("MUTYPESNUM")})); - m->add_component(entry("LAMBDAMIN", {.description = "minimal active fiber stretch"})); - m->add_component(entry("LAMBDAOPT", - {.description = "optimal active fiber stretch related to active nominal stress maximum"})); - m->add_component(entry("DOTLAMBDAMIN", {.description = "minimal stretch rate"})); - m->add_component( - entry("KE", {.description = "parameter controlling the curvature of the velocity " - "dependent activation function in the " - "eccentric case"})); - m->add_component( - entry("KC", {.description = "parameter controlling the curvature of the velocity " - "dependent activation function in the " - "concentric case"})); m->add_component( - entry("DE", {.description = "parameter controlling the amplitude of the velocity " - "dependent activation function in the " - "eccentric case"})); - m->add_component( - entry("DC", {.description = "parameter controlling the amplitude of the velocity " - "dependent activation function in the " - "concentric case"})); - m->add_component(entry( + parameter("LAMBDAMIN", {.description = "minimal active fiber stretch"})); + m->add_component(parameter("LAMBDAOPT", + {.description = "optimal active fiber stretch related to active nominal stress maximum"})); + m->add_component(parameter("DOTLAMBDAMIN", {.description = "minimal stretch rate"})); + m->add_component(parameter( + "KE", {.description = "parameter controlling the curvature of the velocity " + "dependent activation function in the " + "eccentric case"})); + m->add_component(parameter( + "KC", {.description = "parameter controlling the curvature of the velocity " + "dependent activation function in the " + "concentric case"})); + m->add_component(parameter( + "DE", {.description = "parameter controlling the amplitude of the velocity " + "dependent activation function in the " + "eccentric case"})); + m->add_component(parameter( + "DC", {.description = "parameter controlling the amplitude of the velocity " + "dependent activation function in the " + "concentric case"})); + m->add_component(parameter( "ACTTIMESNUM", {.description = "number of time boundaries to prescribe activation"})); - m->add_component( - entry>("ACTTIMES", {.description = "time boundaries between intervals", - .size = from_parameter("ACTTIMESNUM")})); - m->add_component(entry( + m->add_component(parameter>( + "ACTTIMES", {.description = "time boundaries between intervals", + .size = from_parameter("ACTTIMESNUM")})); + m->add_component(parameter( "ACTINTERVALSNUM", {.description = "number of time intervals to prescribe activation"})); - m->add_component(entry>("ACTVALUES", + m->add_component(parameter>("ACTVALUES", {.description = "scaling factor in intervals (1=full activation, 0=no activation)", .size = from_parameter("ACTINTERVALSNUM")})); - m->add_component(entry("DENS", {.description = "density"})); + m->add_component(parameter("DENS", {.description = "density"})); Mat::append_material_definition(matlist, m); } @@ -639,20 +647,21 @@ std::shared_ptr>> Global::v auto m = std::make_shared( "MAT_myocard", "Myocard muscle material", Core::Materials::m_myocard); - m->add_component(entry("DIFF1", {.description = "conductivity in fiber direction"})); - m->add_component( - entry("DIFF2", {.description = "conductivity perpendicular to fiber direction"})); m->add_component( - entry("DIFF3", {.description = "conductivity perpendicular to fiber direction"})); - m->add_component(entry("PERTURBATION_DERIV", + parameter("DIFF1", {.description = "conductivity in fiber direction"})); + m->add_component(parameter( + "DIFF2", {.description = "conductivity perpendicular to fiber direction"})); + m->add_component(parameter( + "DIFF3", {.description = "conductivity perpendicular to fiber direction"})); + m->add_component(parameter("PERTURBATION_DERIV", {.description = "perturbation for calculation of reaction coefficient derivative"})); - m->add_component(entry( + m->add_component(parameter( "MODEL", {.description = "Model type: MV (default), FHN, TNNP, SAN or INADA", .default_value = "MV"})); - m->add_component(entry("TISSUE", + m->add_component(parameter("TISSUE", {.description = "Tissue type: M (default), ENDO, EPI, AN, N or NH", .default_value = "M"})); m->add_component( - entry("TIME_SCALE", {.description = "Scale factor for time units of Model"})); + parameter("TIME_SCALE", {.description = "Scale factor for time units of Model"})); Mat::append_material_definition(matlist, m); } @@ -664,16 +673,16 @@ std::shared_ptr>> Global::v "MAT_sutherland", "material according to Sutherland law", Core::Materials::m_sutherland); m->add_component( - entry("REFVISC", {.description = "reference dynamic viscosity (kg/(m*s))"})); - m->add_component(entry("REFTEMP", {.description = "reference temperature (K)"})); - m->add_component(entry("SUTHTEMP", {.description = "Sutherland temperature (K)"})); - m->add_component(entry( + parameter("REFVISC", {.description = "reference dynamic viscosity (kg/(m*s))"})); + m->add_component(parameter("REFTEMP", {.description = "reference temperature (K)"})); + m->add_component(parameter("SUTHTEMP", {.description = "Sutherland temperature (K)"})); + m->add_component(parameter( "SHC", {.description = "specific heat capacity at constant pressure (J/(kg*K))"})); - m->add_component(entry("PRANUM", {.description = "Prandtl number"})); + m->add_component(parameter("PRANUM", {.description = "Prandtl number"})); + m->add_component(parameter( + "THERMPRESS", {.description = "(initial) thermodynamic pressure (J/m^3)"})); m->add_component( - entry("THERMPRESS", {.description = "(initial) thermodynamic pressure (J/m^3)"})); - m->add_component( - entry("GASCON", {.description = "specific gas constant R (J/(kg*K))"})); + parameter("GASCON", {.description = "specific gas constant R (J/(kg*K))"})); Mat::append_material_definition(matlist, m); } @@ -685,15 +694,15 @@ std::shared_ptr>> Global::v auto m = std::make_shared("MAT_ion", "material parameters for ion species in electrolyte solution", Core::Materials::m_ion); - m->add_component(entry("DIFFUSIVITY", {.description = "kinematic diffusivity"})); - m->add_component(entry("VALENCE", {.description = "valence (= charge number)"})); - m->add_component(entry( + m->add_component(parameter("DIFFUSIVITY", {.description = "kinematic diffusivity"})); + m->add_component(parameter("VALENCE", {.description = "valence (= charge number)"})); + m->add_component(parameter( "DENSIFICATION", {.description = "densification coefficient", .default_value = 0.0})); // via these two optional parameters we can bring the material parameters // of one eliminated ionic species into 4C if needed - m->add_component(entry("ELIM_DIFFUSIVITY", + m->add_component(parameter("ELIM_DIFFUSIVITY", {.description = "kinematic diffusivity of elim. species", .default_value = 0.0})); - m->add_component(entry( + m->add_component(parameter( "ELIM_VALENCE", {.description = "valence of elim. species", .default_value = 0.0})); Mat::append_material_definition(matlist, m); @@ -705,60 +714,60 @@ std::shared_ptr>> Global::v auto m = std::make_shared("MAT_newman", "material parameters for ion species in electrolyte solution", Core::Materials::m_newman); - m->add_component(entry("VALENCE", {.description = "valence (= charge number)"})); - m->add_component(entry("DIFF_COEF_CONC_DEP_FUNCT", + m->add_component(parameter("VALENCE", {.description = "valence (= charge number)"})); + m->add_component(parameter("DIFF_COEF_CONC_DEP_FUNCT", {.description = "function number of function describing concentration dependence of " "diffusion coefficient"})); - m->add_component(entry("DIFF_COEF_TEMP_SCALE_FUNCT", + m->add_component(parameter("DIFF_COEF_TEMP_SCALE_FUNCT", {.description = "FUNCT number describing temperature scaling of diffusion coefficient"})); m->add_component( - entry("TRANSNR", {.description = "curve number for transference number"})); + parameter("TRANSNR", {.description = "curve number for transference number"})); m->add_component( - entry("THERMFAC", {.description = "curve number for thermodynamic factor"})); - m->add_component(entry( + parameter("THERMFAC", {.description = "curve number for thermodynamic factor"})); + m->add_component(parameter( "COND_CONC_DEP_FUNCT", {.description = "function number of function describing " "concentration dependence of conductivity"})); - m->add_component(entry("COND_TEMP_SCALE_FUNCT", + m->add_component(parameter("COND_TEMP_SCALE_FUNCT", {.description = "FUNCT number describing temperature scaling of conductivity"})); // optional parameter for implemented concentration depending function - m->add_component(entry("DIFF_PARA_NUM", + m->add_component(parameter("DIFF_PARA_NUM", {.description = "number of parameters for diffusion coefficient", .default_value = 0})); - m->add_component(entry>( + m->add_component(parameter>( "DIFF_PARA", {.description = "parameters for diffusion coefficient", .default_value = std::vector{}, .size = from_parameter("DIFF_PARA_NUM")})); - m->add_component(entry("DIFF_COEF_TEMP_SCALE_FUNCT_PARA_NUM", + m->add_component(parameter("DIFF_COEF_TEMP_SCALE_FUNCT_PARA_NUM", {.description = "number of parameters for scaling function describing temperature " "dependence of diffusion " "coefficient", .default_value = 0})); - m->add_component(entry>("DIFF_COEF_TEMP_SCALE_FUNCT_PARA", + m->add_component(parameter>("DIFF_COEF_TEMP_SCALE_FUNCT_PARA", {.description = "parameters for function describing temperature dependence of diffusion " "coefficient", .default_value = std::vector{}, .size = from_parameter("DIFF_COEF_TEMP_SCALE_FUNCT_PARA_NUM")})); - m->add_component(entry("TRANS_PARA_NUM", + m->add_component(parameter("TRANS_PARA_NUM", {.description = "number of parameters for transference number", .default_value = 0})); - m->add_component(entry>( + m->add_component(parameter>( "TRANS_PARA", {.description = "parameters for transference number", .default_value = std::vector{}, .size = from_parameter("TRANS_PARA_NUM")})); - m->add_component(entry("THERM_PARA_NUM", + m->add_component(parameter("THERM_PARA_NUM", {.description = "number of parameters for thermodynamic factor", .default_value = 0})); - m->add_component(entry>( + m->add_component(parameter>( "THERM_PARA", {.description = "parameters for thermodynamic factor", .default_value = std::vector{}, .size = from_parameter("THERM_PARA_NUM")})); - m->add_component(entry("COND_PARA_NUM", + m->add_component(parameter("COND_PARA_NUM", {.description = "number of parameters for conductivity", .default_value = 0})); - m->add_component( - entry>("COND_PARA", {.description = "parameters for conductivity", - .default_value = std::vector{}, - .size = from_parameter("COND_PARA_NUM")})); - m->add_component(entry("COND_TEMP_SCALE_FUNCT_PARA_NUM", + m->add_component(parameter>( + "COND_PARA", {.description = "parameters for conductivity", + .default_value = std::vector{}, + .size = from_parameter("COND_PARA_NUM")})); + m->add_component(parameter("COND_TEMP_SCALE_FUNCT_PARA_NUM", {.description = "number of parameters for temperature scaling of conductivity", .default_value = 0})); - m->add_component(entry>("COND_TEMP_SCALE_FUNCT_PARA", + m->add_component(parameter>("COND_TEMP_SCALE_FUNCT_PARA", {.description = "parameters for temperature scaling of conductivity", .default_value = std::vector{}, .size = from_parameter("COND_TEMP_SCALE_FUNCT_PARA_NUM")})); @@ -774,69 +783,71 @@ std::shared_ptr>> Global::v "material parameters for ion species in electrolyte solution for multi-scale approach", Core::Materials::m_newman_multiscale); - m->add_component(entry("VALENCE", {.description = "valence (= charge number)"})); - m->add_component(entry("DIFF_COEF_CONC_DEP_FUNCT", + m->add_component(parameter("VALENCE", {.description = "valence (= charge number)"})); + m->add_component(parameter("DIFF_COEF_CONC_DEP_FUNCT", {.description = "function number of function describing concentration dependence of " "diffusion coefficient"})); - m->add_component(entry("DIFF_COEF_TEMP_SCALE_FUNCT", + m->add_component(parameter("DIFF_COEF_TEMP_SCALE_FUNCT", {.description = "FUNCT number describing temperature scaling of diffusion coefficient"})); m->add_component( - entry("TRANSNR", {.description = "curve number for transference number"})); + parameter("TRANSNR", {.description = "curve number for transference number"})); m->add_component( - entry("THERMFAC", {.description = "curve number for thermodynamic factor"})); - m->add_component(entry( + parameter("THERMFAC", {.description = "curve number for thermodynamic factor"})); + m->add_component(parameter( "COND_CONC_DEP_FUNCT", {.description = "function number of function describing " "concentration dependence of conductivity"})); - m->add_component(entry("COND_TEMP_SCALE_FUNCT", + m->add_component(parameter("COND_TEMP_SCALE_FUNCT", {.description = "FUNCT number describing temperature scaling of conductivity"})); - m->add_component(entry("ELECTRONIC_COND", {.description = "electronic conductivity"})); - m->add_component(entry("ELECTRONIC_COND_CONC_SCALE_FUNC_NUM", + m->add_component( + parameter("ELECTRONIC_COND", {.description = "electronic conductivity"})); + m->add_component(parameter("ELECTRONIC_COND_CONC_SCALE_FUNC_NUM", {.description = "FUNCT number describing concentration dependence of electronic conductivity"})); - m->add_component(entry("A_s", {.description = "specific micro-scale surface area"})); - m->add_component(entry("MICROFILE", + m->add_component( + parameter("A_s", {.description = "specific micro-scale surface area"})); + m->add_component(parameter("MICROFILE", {.description = "input file for micro scale", .default_value = "filename.dat"})); m->add_component( - entry("MICRODIS_NUM", {.description = "number of micro-scale discretization"})); + parameter("MICRODIS_NUM", {.description = "number of micro-scale discretization"})); // optional parameters for implemented concentration-depending functions - m->add_component(entry("DIFF_PARA_NUM", + m->add_component(parameter("DIFF_PARA_NUM", {.description = "number of parameters for diffusion coefficient", .default_value = 0})); - m->add_component(entry>( + m->add_component(parameter>( "DIFF_PARA", {.description = "parameters for diffusion coefficient", .default_value = std::vector{}, .size = from_parameter("DIFF_PARA_NUM")})); - m->add_component(entry("DIFF_COEF_TEMP_SCALE_FUNCT_PARA_NUM", + m->add_component(parameter("DIFF_COEF_TEMP_SCALE_FUNCT_PARA_NUM", {.description = "number of parameters for scaling function describing temperature dependence of " "diffusion coefficient", .default_value = 0})); - m->add_component(entry>("DIFF_COEF_TEMP_SCALE_FUNCT_PARA", + m->add_component(parameter>("DIFF_COEF_TEMP_SCALE_FUNCT_PARA", {.description = "parameters for function describing temperature dependence of diffusion " "coefficient", .default_value = std::vector{}, .size = from_parameter("DIFF_COEF_TEMP_SCALE_FUNCT_PARA_NUM")})); - m->add_component(entry("TRANS_PARA_NUM", + m->add_component(parameter("TRANS_PARA_NUM", {.description = "number of parameters for transference number", .default_value = 0})); - m->add_component(entry>( + m->add_component(parameter>( "TRANS_PARA", {.description = "parameters for transference number", .default_value = std::vector{}, .size = from_parameter("TRANS_PARA_NUM")})); - m->add_component(entry("THERM_PARA_NUM", + m->add_component(parameter("THERM_PARA_NUM", {.description = "number of parameters for thermodynamic factor", .default_value = 0})); - m->add_component(entry>( + m->add_component(parameter>( "THERM_PARA", {.description = "parameters for thermodynamic factor", .default_value = std::vector{}, .size = from_parameter("THERM_PARA_NUM")})); - m->add_component(entry("COND_PARA_NUM", + m->add_component(parameter("COND_PARA_NUM", {.description = "number of parameters for ionic conductivity", .default_value = 0})); - m->add_component( - entry>("COND_PARA", {.description = "parameters for ionic conductivity", - .default_value = std::vector{}, - .size = from_parameter("COND_PARA_NUM")})); - m->add_component(entry("COND_TEMP_SCALE_FUNCT_PARA_NUM", + m->add_component(parameter>( + "COND_PARA", {.description = "parameters for ionic conductivity", + .default_value = std::vector{}, + .size = from_parameter("COND_PARA_NUM")})); + m->add_component(parameter("COND_TEMP_SCALE_FUNCT_PARA_NUM", {.description = "number of parameters for temperature scaling of conductivity", .default_value = 0})); - m->add_component(entry>("COND_TEMP_SCALE_FUNCT_PARA", + m->add_component(parameter>("COND_TEMP_SCALE_FUNCT_PARA", {.description = "parameters for temperature scaling of conductivity", .default_value = std::vector{}, .size = from_parameter("COND_TEMP_SCALE_FUNCT_PARA_NUM")})); @@ -847,65 +858,66 @@ std::shared_ptr>> Global::v auto m = std::make_shared( "MAT_scl", "material parameters for space charge layers", Core::Materials::m_scl); - m->add_component(entry("VALENCE", {.description = "valence/charge number"})); - m->add_component(entry("DIFF_COEF_CONC_DEP_FUNCT", + m->add_component(parameter("VALENCE", {.description = "valence/charge number"})); + m->add_component(parameter("DIFF_COEF_CONC_DEP_FUNCT", {.description = "function number of function describing concentration dependence of " "diffusion coefficient"})); - m->add_component(entry("DIFF_COEF_TEMP_SCALE_FUNCT", + m->add_component(parameter("DIFF_COEF_TEMP_SCALE_FUNCT", {.description = "function number describing temperature scaling of diffusion coefficient"})); m->add_component( - entry("TRANSNR", {.description = "curve number for transference number"})); - m->add_component(entry( + parameter("TRANSNR", {.description = "curve number for transference number"})); + m->add_component(parameter( "COND_CONC_DEP_FUNCT", {.description = "function number of function describing " "concentration dependence of conductivity"})); - m->add_component(entry("COND_TEMP_SCALE_FUNCT", + m->add_component(parameter("COND_TEMP_SCALE_FUNCT", {.description = "function number describing temperature scaling of conductivity"})); - m->add_component(entry("DIFF_PARA_NUM", + m->add_component(parameter("DIFF_PARA_NUM", {.description = "number of parameters for diffusion coefficient", .default_value = 0})); - m->add_component(entry>( + m->add_component(parameter>( "DIFF_PARA", {.description = "parameters for diffusion coefficient", .default_value = std::vector{}, .size = from_parameter("DIFF_PARA_NUM")})); - m->add_component(entry("DIFF_COEF_TEMP_SCALE_FUNCT_PARA_NUM", + m->add_component(parameter("DIFF_COEF_TEMP_SCALE_FUNCT_PARA_NUM", {.description = "number of parameters for scaling function describing temperature " "dependence of diffusion " "coefficient", .default_value = 0})); - m->add_component(entry>("DIFF_COEF_TEMP_SCALE_FUNCT_PARA", + m->add_component(parameter>("DIFF_COEF_TEMP_SCALE_FUNCT_PARA", {.description = "parameters for function describing temperature dependence of diffusion " "coefficient", .default_value = std::vector{}, .size = from_parameter("DIFF_COEF_TEMP_SCALE_FUNCT_PARA_NUM")})); - m->add_component(entry("TRANS_PARA_NUM", + m->add_component(parameter("TRANS_PARA_NUM", {.description = "number of parameters for transference number", .default_value = 0})); - m->add_component(entry>( + m->add_component(parameter>( "TRANS_PARA", {.description = "parameters for transference number", .default_value = std::vector{}, .size = from_parameter("TRANS_PARA_NUM")})); - m->add_component(entry("COND_PARA_NUM", + m->add_component(parameter("COND_PARA_NUM", {.description = "number of parameters for conductivity", .default_value = 0})); - m->add_component( - entry>("COND_PARA", {.description = "parameters for conductivity", - .default_value = std::vector{}, - .size = from_parameter("COND_PARA_NUM")})); - m->add_component(entry("COND_TEMP_SCALE_FUNCT_PARA_NUM", + m->add_component(parameter>( + "COND_PARA", {.description = "parameters for conductivity", + .default_value = std::vector{}, + .size = from_parameter("COND_PARA_NUM")})); + m->add_component(parameter("COND_TEMP_SCALE_FUNCT_PARA_NUM", {.description = "number of parameters for temperature scaling of conductivity", .default_value = 0})); - m->add_component(entry>("COND_TEMP_SCALE_FUNCT_PARA", + m->add_component(parameter>("COND_TEMP_SCALE_FUNCT_PARA", {.description = "parameters for temperature scaling of conductivity", .default_value = std::vector{}, .size = from_parameter("COND_TEMP_SCALE_FUNCT_PARA_NUM")})); - m->add_component(entry("MAX_CONC", {.description = "maximum cation concentration"})); m->add_component( - entry("EXTRAPOL_DIFF", {.description = "strategy for extrapolation of diffusion " - "coefficient below 0 and above MAX_CONC (-1: " - "disabled, 0: constant)"})); - m->add_component(entry("LIM_CONC", + parameter("MAX_CONC", {.description = "maximum cation concentration"})); + m->add_component(parameter( + "EXTRAPOL_DIFF", {.description = "strategy for extrapolation of diffusion " + "coefficient below 0 and above MAX_CONC (-1: " + "disabled, 0: constant)"})); + m->add_component(parameter("LIM_CONC", {.description = "limiting concentration for extrapolation", .default_value = 1.0})); - m->add_component(entry("BULK_CONC", {.description = "bulk ion concentration"})); - m->add_component(entry("SUSCEPT", {.description = "susceptibility"})); - m->add_component(entry( + m->add_component(parameter("BULK_CONC", {.description = "bulk ion concentration"})); + m->add_component(parameter("SUSCEPT", {.description = "susceptibility"})); + m->add_component(parameter( "DELTA_NU", {.description = "difference of partial molar volumes (vacancy & cation)"})); Mat::append_material_definition(matlist, m); @@ -919,56 +931,56 @@ std::shared_ptr>> Global::v "MAT_electrode", "electrode material", Core::Materials::m_electrode); // diffusivity and electronic conductivity - matelectrode->add_component(entry("DIFF_COEF_CONC_DEP_FUNCT", + matelectrode->add_component(parameter("DIFF_COEF_CONC_DEP_FUNCT", {.description = "function number of function describing concentration dependence of " "diffusion coefficient"})); - matelectrode->add_component(entry("DIFF_COEF_TEMP_SCALE_FUNCT", + matelectrode->add_component(parameter("DIFF_COEF_TEMP_SCALE_FUNCT", {.description = "FUNCT number describing temperature scaling of diffusion coefficient"})); - matelectrode->add_component(entry( + matelectrode->add_component(parameter( "COND_CONC_DEP_FUNCT", {.description = "function number of function describing " "concentration dependence of conductivity"})); - matelectrode->add_component(entry("COND_TEMP_SCALE_FUNCT", + matelectrode->add_component(parameter("COND_TEMP_SCALE_FUNCT", {.description = "FUNCT number describing temperature scaling of conductivity"})); // optional parameters for concentration dependency of diffusivity and electronic conductivity - matelectrode->add_component(entry("DIFF_PARA_NUM", + matelectrode->add_component(parameter("DIFF_PARA_NUM", {.description = "number of parameters for diffusion coefficient", .default_value = 0})); - matelectrode->add_component(entry>( + matelectrode->add_component(parameter>( "DIFF_PARA", {.description = "parameters for diffusion coefficient", .default_value = std::vector{}, .size = from_parameter("DIFF_PARA_NUM")})); - matelectrode->add_component(entry("DIFF_COEF_TEMP_SCALE_FUNCT_PARA_NUM", + matelectrode->add_component(parameter("DIFF_COEF_TEMP_SCALE_FUNCT_PARA_NUM", {.description = "number of parameters for scaling function describing temperature " "dependence of diffusion " "coefficient", .default_value = 0})); - matelectrode->add_component(entry>("DIFF_COEF_TEMP_SCALE_FUNCT_PARA", + matelectrode->add_component(parameter>("DIFF_COEF_TEMP_SCALE_FUNCT_PARA", {.description = "parameters for function describing temperature dependence of diffusion " "coefficient", .default_value = std::vector{}, .size = from_parameter("DIFF_COEF_TEMP_SCALE_FUNCT_PARA_NUM")})); - matelectrode->add_component(entry("COND_PARA_NUM", + matelectrode->add_component(parameter("COND_PARA_NUM", {.description = "number of parameters for electronic conductivity", .default_value = 0})); - matelectrode->add_component(entry>( + matelectrode->add_component(parameter>( "COND_PARA", {.description = "parameters for electronic conductivity", .default_value = std::vector{}, .size = from_parameter("COND_PARA_NUM")})); - matelectrode->add_component(entry("COND_TEMP_SCALE_FUNCT_PARA_NUM", + matelectrode->add_component(parameter("COND_TEMP_SCALE_FUNCT_PARA_NUM", {.description = "number of parameters for temperature scaling of conductivity", .default_value = 0})); - matelectrode->add_component(entry>("COND_TEMP_SCALE_FUNCT_PARA", + matelectrode->add_component(parameter>("COND_TEMP_SCALE_FUNCT_PARA", {.description = "parameters for temperature scaling of conductivity", .default_value = std::vector{}, .size = from_parameter("COND_TEMP_SCALE_FUNCT_PARA_NUM")})); // saturation value of intercalated Lithium concentration - matelectrode->add_component(entry( + matelectrode->add_component(parameter( "C_MAX", {.description = "saturation value of intercalated Lithium concentration"})); // lithiation value corresponding to saturation value of intercalated Lithium concentration matelectrode->add_component( - entry("CHI_MAX", {.description = "lithiation value corresponding to saturation " - "value of intercalated Lithium concentration " - "'C_MAX'"})); + parameter("CHI_MAX", {.description = "lithiation value corresponding to saturation " + "value of intercalated Lithium concentration " + "'C_MAX'"})); // model for half cell open circuit potential of electrode using namespace Core::IO::InputSpecBuilders; @@ -978,7 +990,7 @@ std::shared_ptr>> Global::v { group("Function", { - entry("OCP_FUNCT_NUM", + parameter("OCP_FUNCT_NUM", { .description = "function number of function that is used to " "model the open circuit potential", @@ -986,29 +998,29 @@ std::shared_ptr>> Global::v }), group("Redlich-Kister", { - entry("OCP_PARA_NUM", + parameter("OCP_PARA_NUM", { .description = "number of parameters underlying half " "cell open circuit potential model", }), - entry>( + parameter>( "OCP_PARA", {.description = "parameters underlying half cell open " "circuit potential model", .size = from_parameter("OCP_PARA_NUM")}), }), group("Taralov", { - entry>( + parameter>( "OCP_PARA", {.description = "parameters underlying half cell open " "circuit potential model", .size = 13}), }), }, store_index_as("OCP_MODEL")), - entry( + parameter( "X_MIN", {.description = "lower bound of range of validity as a fraction of " "C_MAX for ocp calculation model"}), - entry( + parameter( "X_MAX", {.description = "upper bound of range of validity as a fraction of " "C_MAX for ocp calculation model"}), })); @@ -1023,10 +1035,10 @@ std::shared_ptr>> Global::v auto m = std::make_shared("MAT_matlist", "list/collection of materials, i.e. material IDs", Core::Materials::m_matlist); - m->add_component(entry("LOCAL", + m->add_component(parameter("LOCAL", {.description = "individual materials allocated per element or only at global scope"})); - m->add_component(entry("NUMMAT", {.description = "number of materials in list"})); - m->add_component(entry>( + m->add_component(parameter("NUMMAT", {.description = "number of materials in list"})); + m->add_component(parameter>( "MATIDS", {.description = "the list material IDs", .size = from_parameter("NUMMAT")})); Mat::append_material_definition(matlist, m); @@ -1039,17 +1051,17 @@ std::shared_ptr>> Global::v "list/collection of materials, i.e. material IDs and list of reactions", Core::Materials::m_matlist_reactions); - m->add_component(entry("LOCAL", + m->add_component(parameter("LOCAL", {.description = "individual materials allocated per element or only at global scope"})); - m->add_component(entry("NUMMAT", {.description = "number of materials in list"})); - m->add_component(entry>( + m->add_component(parameter("NUMMAT", {.description = "number of materials in list"})); + m->add_component(parameter>( "MATIDS", {.description = "the list material IDs", .size = from_parameter("NUMMAT")})); m->add_component( - entry("NUMREAC", {.description = "number of reactions for these elements"})); + parameter("NUMREAC", {.description = "number of reactions for these elements"})); m->add_component( - entry>("REACIDS", {.description = "advanced reaction list", - .default_value = std::vector{0}, - .size = from_parameter("NUMREAC")})); + parameter>("REACIDS", {.description = "advanced reaction list", + .default_value = std::vector{0}, + .size = from_parameter("NUMREAC")})); Mat::append_material_definition(matlist, m); } @@ -1061,16 +1073,17 @@ std::shared_ptr>> Global::v "list/collection of materials, i.e. material IDs and list of chemotactic pairs", Core::Materials::m_matlist_chemotaxis); - m->add_component(entry("LOCAL", + m->add_component(parameter("LOCAL", {.description = "individual materials allocated per element or only at global scope"})); - m->add_component(entry("NUMMAT", {.description = "number of materials in list"})); - m->add_component(entry>( + m->add_component(parameter("NUMMAT", {.description = "number of materials in list"})); + m->add_component(parameter>( "MATIDS", {.description = "the list material IDs", .size = from_parameter("NUMMAT")})); - m->add_component(entry("NUMPAIR", {.description = "number of pairs for these elements"})); m->add_component( - entry>("PAIRIDS", {.description = "chemotaxis pairs list", - .default_value = std::vector{0}, - .size = from_parameter("NUMPAIR")})); + parameter("NUMPAIR", {.description = "number of pairs for these elements"})); + m->add_component( + parameter>("PAIRIDS", {.description = "chemotaxis pairs list", + .default_value = std::vector{0}, + .size = from_parameter("NUMPAIR")})); Mat::append_material_definition(matlist, m); } @@ -1082,22 +1095,23 @@ std::shared_ptr>> Global::v "list/collection of materials, i.e. material IDs and list of reactive/chemotactic pairs", Core::Materials::m_matlist_chemoreac); - m->add_component(entry("LOCAL", + m->add_component(parameter("LOCAL", {.description = "individual materials allocated per element or only at global scope"})); - m->add_component(entry("NUMMAT", {.description = "number of materials in list"})); - m->add_component(entry>( + m->add_component(parameter("NUMMAT", {.description = "number of materials in list"})); + m->add_component(parameter>( "MATIDS", {.description = "the list material IDs", .size = from_parameter("NUMMAT")})); - m->add_component(entry("NUMPAIR", {.description = "number of pairs for these elements"})); m->add_component( - entry>("PAIRIDS", {.description = "chemotaxis pairs list", - .default_value = std::vector{0}, - .size = from_parameter("NUMPAIR")})); + parameter("NUMPAIR", {.description = "number of pairs for these elements"})); + m->add_component( + parameter>("PAIRIDS", {.description = "chemotaxis pairs list", + .default_value = std::vector{0}, + .size = from_parameter("NUMPAIR")})); m->add_component( - entry("NUMREAC", {.description = "number of reactions for these elements"})); + parameter("NUMREAC", {.description = "number of reactions for these elements"})); m->add_component( - entry>("REACIDS", {.description = "advanced reaction list", - .default_value = std::vector{0}, - .size = from_parameter("NUMREAC")})); + parameter>("REACIDS", {.description = "advanced reaction list", + .default_value = std::vector{0}, + .size = from_parameter("NUMREAC")})); Mat::append_material_definition(matlist, m); } @@ -1109,14 +1123,15 @@ std::shared_ptr>> Global::v "specific list/collection of species and phases for elch applications", Core::Materials::m_elchmat); - m->add_component(entry("LOCAL", + m->add_component(parameter("LOCAL", {.description = "individual materials allocated per element or only at global scope", .default_value = false})); - m->add_component(entry("NUMDOF", {.description = "number of dof's per node"})); + m->add_component(parameter("NUMDOF", {.description = "number of dof's per node"})); m->add_component( - entry("NUMSCAL", {.description = "number of transported scalars per node"})); - m->add_component(entry("NUMPHASE", {.description = "number of phases in electrolyte"})); - m->add_component(entry>("PHASEIDS", + parameter("NUMSCAL", {.description = "number of transported scalars per node"})); + m->add_component( + parameter("NUMPHASE", {.description = "number of phases in electrolyte"})); + m->add_component(parameter>("PHASEIDS", {.description = "the list phasel IDs", .size = from_parameter("NUMPHASE")})); Mat::append_material_definition(matlist, m); @@ -1129,14 +1144,15 @@ std::shared_ptr>> Global::v "material parameters for ion species in electrolyte solution", Core::Materials::m_elchphase); - m->add_component(entry("LOCAL", + m->add_component(parameter("LOCAL", {.description = "individual materials allocated per element or only at global scope", .default_value = false})); - m->add_component(entry("EPSILON", {.description = "phase porosity"})); + m->add_component(parameter("EPSILON", {.description = "phase porosity"})); + m->add_component( + parameter("TORTUOSITY", {.description = "inverse (!) of phase tortuosity"})); m->add_component( - entry("TORTUOSITY", {.description = "inverse (!) of phase tortuosity"})); - m->add_component(entry("NUMMAT", {.description = "number of materials in electrolyte"})); - m->add_component(entry>( + parameter("NUMMAT", {.description = "number of materials in electrolyte"})); + m->add_component(parameter>( "MATIDS", {.description = "the list phasel IDs", .size = from_parameter("NUMMAT")})); Mat::append_material_definition(matlist, m); @@ -1148,9 +1164,9 @@ std::shared_ptr>> Global::v auto m = std::make_shared("MAT_Struct_StVenantKirchhoff", "St.Venant--Kirchhoff material", Core::Materials::m_stvenant); - m->add_component(entry("YOUNG", {.description = "Young's modulus"})); - m->add_component(entry("NUE", {.description = "Poisson's ratio"})); - m->add_component(entry("DENS", {.description = "mass density"})); + m->add_component(parameter("YOUNG", {.description = "Young's modulus"})); + m->add_component(parameter("NUE", {.description = "Poisson's ratio"})); + m->add_component(parameter("DENS", {.description = "mass density"})); Mat::append_material_definition(matlist, m); } @@ -1161,20 +1177,20 @@ std::shared_ptr>> Global::v auto m = std::make_shared("MAT_Struct_ThermoStVenantK", "Thermo St.Venant--Kirchhoff material", Core::Materials::m_thermostvenant); - m->add_component( - entry("YOUNGNUM", {.description = "number of Young's modulus in list (if 1 Young is " - "const, if >1 Young is temperature) " - "dependent"})); - m->add_component(entry>( + m->add_component(parameter( + "YOUNGNUM", {.description = "number of Young's modulus in list (if 1 Young is " + "const, if >1 Young is temperature) " + "dependent"})); + m->add_component(parameter>( "YOUNG", {.description = "Young's modulus", .size = from_parameter("YOUNGNUM")})); - m->add_component(entry("NUE", {.description = "Poisson's ratio"})); - m->add_component(entry("DENS", {.description = "mass density"})); - m->add_component(entry( + m->add_component(parameter("NUE", {.description = "Poisson's ratio"})); + m->add_component(parameter("DENS", {.description = "mass density"})); + m->add_component(parameter( "THEXPANS", {.description = "constant coefficient of linear thermal expansion"})); - m->add_component(entry("CAPA", {.description = "capacity"})); - m->add_component(entry("CONDUCT", {.description = "conductivity"})); - m->add_component(entry("INITTEMP", {.description = "initial temperature"})); - m->add_component(entry( + m->add_component(parameter("CAPA", {.description = "capacity"})); + m->add_component(parameter("CONDUCT", {.description = "conductivity"})); + m->add_component(parameter("INITTEMP", {.description = "initial temperature"})); + m->add_component(parameter( "THERMOMAT", {.description = "mat id of thermal material part", .default_value = -1})); Mat::append_material_definition(matlist, m); @@ -1185,18 +1201,19 @@ std::shared_ptr>> Global::v auto m = std::make_shared("MAT_Struct_DruckerPrager", "elastic St.Venant Kirchhoff / plastic drucker prager", Core::Materials::m_pldruckprag); - m->add_component(entry("YOUNG", {.description = "Young's modulus"})); - m->add_component(entry("NUE", {.description = "Poisson's ratio"})); - m->add_component(entry("DENS", {.description = "Density"})); - m->add_component(entry("ISOHARD", {.description = "linear isotropic hardening"})); - m->add_component(entry("TOL", {.description = "Local Newton iteration tolerance"})); - m->add_component(entry("C", {.description = "cohesion"})); - m->add_component(entry("ETA", {.description = "Drucker Prager Constant Eta"})); - m->add_component(entry("XI", {.description = "Drucker Prager Constant Xi"})); - m->add_component(entry("ETABAR", {.description = "Drucker Prager Constant Etabar"})); - m->add_component(entry("TANG", + m->add_component(parameter("YOUNG", {.description = "Young's modulus"})); + m->add_component(parameter("NUE", {.description = "Poisson's ratio"})); + m->add_component(parameter("DENS", {.description = "Density"})); + m->add_component(parameter("ISOHARD", {.description = "linear isotropic hardening"})); + m->add_component(parameter("TOL", {.description = "Local Newton iteration tolerance"})); + m->add_component(parameter("C", {.description = "cohesion"})); + m->add_component(parameter("ETA", {.description = "Drucker Prager Constant Eta"})); + m->add_component(parameter("XI", {.description = "Drucker Prager Constant Xi"})); + m->add_component( + parameter("ETABAR", {.description = "Drucker Prager Constant Etabar"})); + m->add_component(parameter("TANG", {.description = "Method to compute the material tangent", .default_value = "consistent"})); - m->add_component(entry("MAXITER", + m->add_component(parameter("MAXITER", {.description = "Maximum Iterations for local Neutron Raphson", .default_value = 50})); Mat::append_material_definition(matlist, m); @@ -1209,24 +1226,25 @@ std::shared_ptr>> Global::v "Thermo-elastic St.Venant Kirchhoff / plastic von Mises material", Core::Materials::m_thermopllinelast); - m->add_component(entry("YOUNG", {.description = "Young's modulus"})); - m->add_component(entry("NUE", {.description = "Poisson's ratio"})); - m->add_component(entry("DENS", {.description = "mass density"})); + m->add_component(parameter("YOUNG", {.description = "Young's modulus"})); + m->add_component(parameter("NUE", {.description = "Poisson's ratio"})); + m->add_component(parameter("DENS", {.description = "mass density"})); m->add_component( - entry("THEXPANS", {.description = "coefficient of linear thermal expansion"})); - m->add_component(entry("INITTEMP", {.description = "initial temperature"})); - m->add_component(entry("YIELD", {.description = "yield stress"})); - m->add_component(entry("ISOHARD", {.description = "isotropic hardening modulus"})); - m->add_component(entry("KINHARD", {.description = "kinematic hardening modulus"})); + parameter("THEXPANS", {.description = "coefficient of linear thermal expansion"})); + m->add_component(parameter("INITTEMP", {.description = "initial temperature"})); + m->add_component(parameter("YIELD", {.description = "yield stress"})); + m->add_component(parameter("ISOHARD", {.description = "isotropic hardening modulus"})); + m->add_component(parameter("KINHARD", {.description = "kinematic hardening modulus"})); m->add_component( - entry("SAMPLENUM", {.description = "number of stress-strain pairs in list"})); - m->add_component(entry>( + parameter("SAMPLENUM", {.description = "number of stress-strain pairs in list"})); + m->add_component(parameter>( "SIGMA_Y", {.description = "yield stress", .size = from_parameter("SAMPLENUM")})); - m->add_component(entry>( + m->add_component(parameter>( "EPSBAR_P", {.description = "accumulated plastic strain corresponding to SIGMA_Y", .size = from_parameter("SAMPLENUM")})); - m->add_component(entry("TOL", {.description = "tolerance for local Newton iteration"})); - m->add_component(entry( + m->add_component( + parameter("TOL", {.description = "tolerance for local Newton iteration"})); + m->add_component(parameter( "THERMOMAT", {.description = "mat id of thermal material part", .default_value = -1})); Mat::append_material_definition(matlist, m); @@ -1238,30 +1256,34 @@ std::shared_ptr>> Global::v auto m = std::make_shared("MAT_Struct_PlasticGTN", "elastic St.Venant Kirchhoff / plastic GTN", Core::Materials::m_plgtn); - m->add_component(entry("YOUNG", {.description = "Young's modulus"})); - m->add_component(entry("NUE", {.description = "Poisson's ratio"})); - m->add_component(entry("DENS", {.description = "Density"})); - m->add_component(entry("YIELD", {.description = "yield stress"})); - m->add_component(entry("ISOHARD", {.description = "linear isotropic hardening"})); - m->add_component(entry("HARDENING_FUNC", + m->add_component(parameter("YOUNG", {.description = "Young's modulus"})); + m->add_component(parameter("NUE", {.description = "Poisson's ratio"})); + m->add_component(parameter("DENS", {.description = "Density"})); + m->add_component(parameter("YIELD", {.description = "yield stress"})); + m->add_component(parameter("ISOHARD", {.description = "linear isotropic hardening"})); + m->add_component(parameter("HARDENING_FUNC", {.description = "Function number for isotropic hardening", .default_value = 0})); - m->add_component(entry("TOL", {.description = "Local Newton iteration tolerance"})); - m->add_component(entry( + m->add_component(parameter("TOL", {.description = "Local Newton iteration tolerance"})); + m->add_component(parameter( "MAXITER", {.description = "Maximum Neutron Raphson Iterations", .default_value = 50})); - m->add_component(entry("K1", {.description = "GTN Constant k1"})); - m->add_component(entry("K2", {.description = "GTN Constant k2"})); - m->add_component(entry("K3", {.description = "GTN constant k3"})); - m->add_component(entry("F0", {.description = "GTN constant f0 for initial damage"})); - m->add_component(entry("FN", {.description = "GTN constant fN for damage nucleation"})); - m->add_component(entry("EN", {.description = "GTN constant eN for damage nucleation"})); - m->add_component(entry("SN", {.description = "GTN constant sN for damage nucleation"})); + m->add_component(parameter("K1", {.description = "GTN Constant k1"})); + m->add_component(parameter("K2", {.description = "GTN Constant k2"})); + m->add_component(parameter("K3", {.description = "GTN constant k3"})); + m->add_component( + parameter("F0", {.description = "GTN constant f0 for initial damage"})); + m->add_component( + parameter("FN", {.description = "GTN constant fN for damage nucleation"})); m->add_component( - entry("FC", {.description = "GTN constant fC for damage coalescence"})); + parameter("EN", {.description = "GTN constant eN for damage nucleation"})); m->add_component( - entry("KAPPA", {.description = "GTN constant kappa for damage coalescence"})); + parameter("SN", {.description = "GTN constant sN for damage nucleation"})); m->add_component( - entry("EF", {.description = "GTN stabilization parameter ef for damage coalescence", - .default_value = 0.0})); + parameter("FC", {.description = "GTN constant fC for damage coalescence"})); + m->add_component( + parameter("KAPPA", {.description = "GTN constant kappa for damage coalescence"})); + m->add_component(parameter( + "EF", {.description = "GTN stabilization parameter ef for damage coalescence", + .default_value = 0.0})); Mat::append_material_definition(matlist, m); } @@ -1272,51 +1294,51 @@ std::shared_ptr>> Global::v auto m = std::make_shared("MAT_Struct_SuperElastSMA", "finite strain superelastic shape memory alloy", Core::Materials::m_superelast); - m->add_component(entry("DENS", {.description = "mass density"})); - m->add_component(entry("YOUNG", {.description = "Young's modulus"})); - m->add_component(entry("NUE", {.description = "Poisson's ratio"})); - m->add_component( - entry("EPSILON_L", {.description = "parameter representing the maximum deformation " - "obtainable only by detwinning of the " - "multiple-variant martensite"})); + m->add_component(parameter("DENS", {.description = "mass density"})); + m->add_component(parameter("YOUNG", {.description = "Young's modulus"})); + m->add_component(parameter("NUE", {.description = "Poisson's ratio"})); + m->add_component(parameter( + "EPSILON_L", {.description = "parameter representing the maximum deformation " + "obtainable only by detwinning of the " + "multiple-variant martensite"})); m->add_component( - entry("T_AS_s", {.description = "Temperature at which the phase transformation " - "from austenite to martensite starts"})); + parameter("T_AS_s", {.description = "Temperature at which the phase transformation " + "from austenite to martensite starts"})); m->add_component( - entry("T_AS_f", {.description = "Temperature at which the phase transformation " - "from austenite to martensite finishes"})); + parameter("T_AS_f", {.description = "Temperature at which the phase transformation " + "from austenite to martensite finishes"})); m->add_component( - entry("T_SA_s", {.description = "Temperature at which the phase transformation " - "from martensite to autenite starts"})); + parameter("T_SA_s", {.description = "Temperature at which the phase transformation " + "from martensite to autenite starts"})); m->add_component( - entry("T_SA_f", {.description = "Temperature at which the phase transformation " - "from martensite to autenite finishes"})); - m->add_component(entry( + parameter("T_SA_f", {.description = "Temperature at which the phase transformation " + "from martensite to autenite finishes"})); + m->add_component(parameter( "C_AS", {.description = "Coefficient of the linear temperature dependence of T_AS"})); - m->add_component(entry( + m->add_component(parameter( "C_SA", {.description = "Coefficient of the linear temperature dependence of T_SA"})); - m->add_component(entry("SIGMA_AS_s", + m->add_component(parameter("SIGMA_AS_s", {.description = "stress at which the phase transformation from austenite to martensite begins"})); - m->add_component(entry("SIGMA_AS_f", + m->add_component(parameter("SIGMA_AS_f", {.description = "stress at which the phase transformation from austenite to martensite finishes"})); - m->add_component(entry("SIGMA_SA_s", + m->add_component(parameter("SIGMA_SA_s", {.description = "stress at which the phase transformation from martensite to austenite begins"})); - m->add_component(entry("SIGMA_SA_f", + m->add_component(parameter("SIGMA_SA_f", {.description = "stress at which the phase transformation from martensite to austenite finishes"})); - m->add_component(entry( + m->add_component(parameter( "ALPHA", {.description = "pressure dependency in the drucker-prager-type loading"})); - m->add_component(entry("MODEL", + m->add_component(parameter("MODEL", {.description = "Model used for the evolution of martensitic fraction (1=exponential; 2=linear)"})); - m->add_component(entry("BETA_AS", + m->add_component(parameter("BETA_AS", {.description = "parameter, measuring the speed of the transformation from austenite to martensite", .default_value = 0.})); - m->add_component(entry("BETA_SA", + m->add_component(parameter("BETA_SA", {.description = "parameter, measuring the speed of the transformation from martensite to austenite", .default_value = 0.})); @@ -1333,28 +1355,28 @@ std::shared_ptr>> Global::v "with linear and exponential isotropic hardening", Core::Materials::m_thermoplhyperelast); - m->add_component(entry("YOUNG", {.description = "Young's modulus"})); - m->add_component(entry("NUE", {.description = "Poisson's ratio"})); - m->add_component(entry("DENS", {.description = "mass density"})); - m->add_component(entry( + m->add_component(parameter("YOUNG", {.description = "Young's modulus"})); + m->add_component(parameter("NUE", {.description = "Poisson's ratio"})); + m->add_component(parameter("DENS", {.description = "mass density"})); + m->add_component(parameter( "CTE", {.description = "coefficient of thermal expansion", .default_value = 0.})); - m->add_component(entry( + m->add_component(parameter( "INITTEMP", {.description = "initial, reference temperature", .default_value = 0.})); - m->add_component(entry("YIELD", {.description = "initial yield stress"})); - m->add_component(entry( + m->add_component(parameter("YIELD", {.description = "initial yield stress"})); + m->add_component(parameter( "ISOHARD", {.description = "linear isotropic hardening modulus", .default_value = 0.})); - m->add_component(entry( + m->add_component(parameter( "SATHARDENING", {.description = "saturation hardening", .default_value = 0.})); m->add_component( - entry("HARDEXPO", {.description = "hardening exponent", .default_value = 0.})); - m->add_component(entry( + parameter("HARDEXPO", {.description = "hardening exponent", .default_value = 0.})); + m->add_component(parameter( "YIELDSOFT", {.description = "thermal yield stress softening", .default_value = 0.})); - m->add_component(entry("HARDSOFT", + m->add_component(parameter("HARDSOFT", {.description = "thermal hardening softening (acting on SATHARDENING and ISOHARD)", .default_value = 0.})); - m->add_component(entry( + m->add_component(parameter( "TOL", {.description = "tolerance for local Newton iteration", .default_value = 1.e-8})); - m->add_component(entry( + m->add_component(parameter( "THERMOMAT", {.description = "mat id of thermal material part", .default_value = -1})); Mat::append_material_definition(matlist, m); @@ -1370,22 +1392,23 @@ std::shared_ptr>> Global::v "(VARFUNCTION using the variable epsp)", Core::Materials::m_plnlnlogneohooke); - m->add_component(entry("YOUNG", {.description = "Young's modulus"})); - m->add_component(entry("NUE", {.description = "Poisson's ratio"})); - m->add_component(entry("DENS", {.description = "mass density"})); - m->add_component(entry("YIELD", {.description = "yield stress", .default_value = 0})); - m->add_component(entry( - "ISOHARD", {.description = "isotropic hardening modulus", .default_value = 0})); + m->add_component(parameter("YOUNG", {.description = "Young's modulus"})); + m->add_component(parameter("NUE", {.description = "Poisson's ratio"})); + m->add_component(parameter("DENS", {.description = "mass density"})); m->add_component( - entry("SATHARDENING", {.description = "saturation hardening", .default_value = 0})); - m->add_component(entry( + parameter("YIELD", {.description = "yield stress", .default_value = 0})); + m->add_component(parameter( + "ISOHARD", {.description = "isotropic hardening modulus", .default_value = 0})); + m->add_component(parameter( + "SATHARDENING", {.description = "saturation hardening", .default_value = 0})); + m->add_component(parameter( "HARDEXPO", {.description = "linear hardening exponent", .default_value = 0})); - m->add_component(entry("VISC", {.description = "VISCOSITY", .default_value = 0.})); - m->add_component( - entry("RATE_DEPENDENCY", {.description = "rate dependency", .default_value = 0.})); - m->add_component(entry("TOL", + m->add_component(parameter("VISC", {.description = "VISCOSITY", .default_value = 0.})); + m->add_component(parameter( + "RATE_DEPENDENCY", {.description = "rate dependency", .default_value = 0.})); + m->add_component(parameter("TOL", {.description = "Tolerance for local Newton-Raphson iteration", .default_value = 1.e-08})); - m->add_component(entry("HARDENING_FUNC", + m->add_component(parameter("HARDENING_FUNC", {.description = "Function number for isotropic hardening", .default_value = 0})); Mat::append_material_definition(matlist, m); @@ -1399,15 +1422,16 @@ std::shared_ptr>> Global::v "with linear isotropic and kineamtic hardening", Core::Materials::m_pllinelast); - m->add_component(entry("YOUNG", {.description = "Young's modulus"})); - m->add_component(entry("NUE", {.description = "Poisson's ratio"})); - m->add_component(entry("DENS", {.description = "mass density"})); - m->add_component(entry("YIELD", {.description = "yield stress"})); + m->add_component(parameter("YOUNG", {.description = "Young's modulus"})); + m->add_component(parameter("NUE", {.description = "Poisson's ratio"})); + m->add_component(parameter("DENS", {.description = "mass density"})); + m->add_component(parameter("YIELD", {.description = "yield stress"})); m->add_component( - entry("ISOHARD", {.description = "linear isotropic hardening modulus"})); + parameter("ISOHARD", {.description = "linear isotropic hardening modulus"})); m->add_component( - entry("KINHARD", {.description = "linear kinematic hardening modulus"})); - m->add_component(entry("TOL", {.description = "tolerance for local Newton iteration"})); + parameter("KINHARD", {.description = "linear kinematic hardening modulus"})); + m->add_component( + parameter("TOL", {.description = "tolerance for local Newton iteration"})); Mat::append_material_definition(matlist, m); } @@ -1420,26 +1444,27 @@ std::shared_ptr>> Global::v Core::Materials::m_vp_no_yield_surface); // elasticity parameters - m->add_component(entry("YOUNG", {.description = "Young's modulus"})); - m->add_component(entry("NUE", {.description = "Poisson's ratio"})); - m->add_component(entry("DENS", {.description = "material mass density"})); + m->add_component(parameter("YOUNG", {.description = "Young's modulus"})); + m->add_component(parameter("NUE", {.description = "Poisson's ratio"})); + m->add_component(parameter("DENS", {.description = "material mass density"})); // visco-plasticity parameters - m->add_component(entry("TEMPERATURE", {.description = "temperature in Kelvin"})); - m->add_component(entry( + m->add_component(parameter("TEMPERATURE", {.description = "temperature in Kelvin"})); + m->add_component(parameter( "PRE_EXP_FAC", {.description = "pre-exponential factor of plastic shear strain rate 'A'"})); - m->add_component(entry("ACTIVATION_ENERGY", {.description = "activation energy 'Q'"})); - m->add_component(entry("GAS_CONSTANT", {.description = "gas constant 'R'"})); - m->add_component( - entry("STRAIN_RATE_SENS", {.description = "strain-rate-sensitivity 'm'"})); m->add_component( - entry("INIT_FLOW_RES", {.description = "initial isotropic flow resistance 'S^0'"})); + parameter("ACTIVATION_ENERGY", {.description = "activation energy 'Q'"})); + m->add_component(parameter("GAS_CONSTANT", {.description = "gas constant 'R'"})); m->add_component( - entry("FLOW_RES_PRE_FAC", {.description = "flow resistance factor 'H_0'"})); + parameter("STRAIN_RATE_SENS", {.description = "strain-rate-sensitivity 'm'"})); + m->add_component(parameter( + "INIT_FLOW_RES", {.description = "initial isotropic flow resistance 'S^0'"})); m->add_component( - entry("FLOW_RES_EXP", {.description = "flow resistance exponential value 'a'"})); - m->add_component(entry( + parameter("FLOW_RES_PRE_FAC", {.description = "flow resistance factor 'H_0'"})); + m->add_component(parameter( + "FLOW_RES_EXP", {.description = "flow resistance exponential value 'a'"})); + m->add_component(parameter( "FLOW_RES_SAT_FAC", {.description = "flow resistance saturation factor 'S_*'"})); - m->add_component(entry( + m->add_component(parameter( "FLOW_RES_SAT_EXP", {.description = "flow resistance saturation exponent 'b'"})); Mat::append_material_definition(matlist, m); @@ -1451,34 +1476,36 @@ std::shared_ptr>> Global::v auto m = std::make_shared( "MAT_Struct_Robinson", "Robinson's visco-plastic material", Core::Materials::m_vp_robinson); - m->add_component(entry( + m->add_component(parameter( "KIND", {.description = "kind of Robinson material: " "Butler, Arya, Arya_NarloyZ (default), Arya_CrMoSteel"})); - m->add_component(entry("YOUNGNUM", {.description = "number of Young's modulus in list"})); - m->add_component(entry>( + m->add_component( + parameter("YOUNGNUM", {.description = "number of Young's modulus in list"})); + m->add_component(parameter>( "YOUNG", {.description = "Young's modulus", .size = from_parameter("YOUNGNUM")})); - m->add_component(entry("NUE", {.description = "Poisson's ratio"})); - m->add_component(entry("DENS", {.description = "mass density"})); - m->add_component( - entry("THEXPANS", {.description = "coefficient of linear thermal expansion"})); - m->add_component(entry("INITTEMP", {.description = "initial temperature"})); - m->add_component(entry("HRDN_FACT", {.description = "hardening factor 'A'"})); - m->add_component(entry("HRDN_EXPO", {.description = "hardening power 'n'"})); - m->add_component(entry( + m->add_component(parameter("NUE", {.description = "Poisson's ratio"})); + m->add_component(parameter("DENS", {.description = "mass density"})); + m->add_component( + parameter("THEXPANS", {.description = "coefficient of linear thermal expansion"})); + m->add_component(parameter("INITTEMP", {.description = "initial temperature"})); + m->add_component(parameter("HRDN_FACT", {.description = "hardening factor 'A'"})); + m->add_component(parameter("HRDN_EXPO", {.description = "hardening power 'n'"})); + m->add_component(parameter( "SHRTHRSHLDNUM", {.description = "number of shear stress threshold 'K^2'in list"})); - m->add_component(entry>( + m->add_component(parameter>( "SHRTHRSHLD", {.description = "Bingam-Prager shear stress threshold 'K^2'", .size = from_parameter("SHRTHRSHLDNUM")})); - m->add_component(entry("RCVRY", {.description = "recovery factor 'R_0'"})); - m->add_component(entry("ACTV_ERGY", {.description = "activation energy 'Q_0'"})); - m->add_component(entry("ACTV_TMPR", {.description = "activation temperature 'T_0'"})); - m->add_component(entry("G0", {.description = "'G_0'"})); - m->add_component(entry("M_EXPO", {.description = "'m'"})); - m->add_component(entry("BETANUM", {.description = "number of 'beta' in list"})); - m->add_component(entry>( + m->add_component(parameter("RCVRY", {.description = "recovery factor 'R_0'"})); + m->add_component(parameter("ACTV_ERGY", {.description = "activation energy 'Q_0'"})); + m->add_component( + parameter("ACTV_TMPR", {.description = "activation temperature 'T_0'"})); + m->add_component(parameter("G0", {.description = "'G_0'"})); + m->add_component(parameter("M_EXPO", {.description = "'m'"})); + m->add_component(parameter("BETANUM", {.description = "number of 'beta' in list"})); + m->add_component(parameter>( "BETA", {.description = "beta", .size = from_parameter("BETANUM")})); - m->add_component(entry("H_FACT", {.description = "'H'"})); - m->add_component(entry( + m->add_component(parameter("H_FACT", {.description = "'H'"})); + m->add_component(parameter( "THERMOMAT", {.description = "mat id of thermal material part", .default_value = -1})); Mat::append_material_definition(matlist, m); @@ -1490,28 +1517,29 @@ std::shared_ptr>> Global::v auto m = std::make_shared("MAT_Struct_Damage", "elasto-plastic von Mises material with ductile damage", Core::Materials::m_elpldamage); - m->add_component(entry("YOUNG", {.description = "Young's modulus"})); - m->add_component(entry("NUE", {.description = "Poisson's ratio"})); - m->add_component(entry("DENS", {.description = "mass density"})); + m->add_component(parameter("YOUNG", {.description = "Young's modulus"})); + m->add_component(parameter("NUE", {.description = "Poisson's ratio"})); + m->add_component(parameter("DENS", {.description = "mass density"})); m->add_component( - entry("SAMPLENUM", {.description = "number of stress-strain pairs in list"})); - m->add_component(entry>( + parameter("SAMPLENUM", {.description = "number of stress-strain pairs in list"})); + m->add_component(parameter>( "SIGMA_Y", {.description = "yield stress", .size = from_parameter("SAMPLENUM")})); - m->add_component(entry>( + m->add_component(parameter>( "EPSBAR_P", {.description = "accumulated plastic strain corresponding to SIGMA_Y", .size = from_parameter("SAMPLENUM")})); m->add_component( - entry("DAMDEN", {.description = "denominator of damage evaluations law"})); + parameter("DAMDEN", {.description = "denominator of damage evaluations law"})); m->add_component( - entry("DAMEXP", {.description = "exponent of damage evaluations law"})); - m->add_component(entry("DAMTHRESHOLD", {.description = "damage threshold"})); - m->add_component(entry( + parameter("DAMEXP", {.description = "exponent of damage evaluations law"})); + m->add_component(parameter("DAMTHRESHOLD", {.description = "damage threshold"})); + m->add_component(parameter( "KINHARD", {.description = "kinematic hardening modulus, stress-like variable"})); + m->add_component(parameter( + "KINHARD_REC", {.description = "recovery factor, scalar-valued variable"})); + m->add_component(parameter("SATHARDENING", {.description = "saturation hardening"})); + m->add_component(parameter("HARDEXPO", {.description = "hardening exponent"})); m->add_component( - entry("KINHARD_REC", {.description = "recovery factor, scalar-valued variable"})); - m->add_component(entry("SATHARDENING", {.description = "saturation hardening"})); - m->add_component(entry("HARDEXPO", {.description = "hardening exponent"})); - m->add_component(entry("TOL", {.description = "tolerance for local Newton iteration"})); + parameter("TOL", {.description = "tolerance for local Newton iteration"})); Mat::append_material_definition(matlist, m); } @@ -1523,10 +1551,10 @@ std::shared_ptr>> Global::v "aneurysm wall material according to Raghavan and Vorp [2000]", Core::Materials::m_aaaneohooke); - m->add_component(entry("YOUNG", {.description = "Young's modulus"})); - m->add_component(entry("BETA", {.description = "2nd parameter"})); - m->add_component(entry("NUE", {.description = "Poisson's ratio"})); - m->add_component(entry("DENS", {.description = "mass density"})); + m->add_component(parameter("YOUNG", {.description = "Young's modulus"})); + m->add_component(parameter("BETA", {.description = "2nd parameter"})); + m->add_component(parameter("NUE", {.description = "Poisson's ratio"})); + m->add_component(parameter("DENS", {.description = "mass density"})); Mat::append_material_definition(matlist, m); } @@ -1537,12 +1565,12 @@ std::shared_ptr>> Global::v { auto m = std::make_shared("MAT_VISCONEOHOOKE", "visco-elastic neo-Hookean material law", Core::Materials::m_visconeohooke); - m->add_component(entry("YOUNGS_SLOW", {.description = "???"})); - m->add_component(entry("POISSON", {.description = "???"})); - m->add_component(entry("DENS", {.description = "???"})); - m->add_component(entry("YOUNGS_FAST", {.description = "???"})); - m->add_component(entry("RELAX", {.description = "???"})); - m->add_component(entry("THETA", {.description = "???"})); + m->add_component(parameter("YOUNGS_SLOW", {.description = "???"})); + m->add_component(parameter("POISSON", {.description = "???"})); + m->add_component(parameter("DENS", {.description = "???"})); + m->add_component(parameter("YOUNGS_FAST", {.description = "???"})); + m->add_component(parameter("RELAX", {.description = "???"})); + m->add_component(parameter("THETA", {.description = "???"})); Mat::append_material_definition(matlist, m); } @@ -1553,22 +1581,24 @@ std::shared_ptr>> Global::v auto m = std::make_shared("MAT_VISCOANISO", "visco-elastic anisotropic fibre material law", Core::Materials::m_viscoanisotropic); - m->add_component(entry("KAPPA", {.description = "dilatation modulus"})); - m->add_component(entry("MUE", {.description = "Shear Modulus"})); - m->add_component(entry("DENS", {.description = "Density"})); - m->add_component(entry("K1", {.description = "Parameter for linear fiber stiffness"})); + m->add_component(parameter("KAPPA", {.description = "dilatation modulus"})); + m->add_component(parameter("MUE", {.description = "Shear Modulus"})); + m->add_component(parameter("DENS", {.description = "Density"})); + m->add_component( + parameter("K1", {.description = "Parameter for linear fiber stiffness"})); m->add_component( - entry("K2", {.description = "Parameter for exponential fiber stiffness"})); - m->add_component(entry("GAMMA", {.description = "angle between fibers"})); - m->add_component(entry( + parameter("K2", {.description = "Parameter for exponential fiber stiffness"})); + m->add_component(parameter("GAMMA", {.description = "angle between fibers"})); + m->add_component(parameter( "BETA_ISO", {.description = "ratio between elasticities in generalized Maxweel body"})); - m->add_component(entry( + m->add_component(parameter( "BETA_ANISO", {.description = "ratio between elasticities in generalized Maxweel body"})); - m->add_component(entry("RELAX_ISO", {.description = "isotropic relaxation time"})); - m->add_component(entry("RELAX_ANISO", {.description = "anisotropic relaxation time"})); - m->add_component(entry( + m->add_component(parameter("RELAX_ISO", {.description = "isotropic relaxation time"})); + m->add_component( + parameter("RELAX_ANISO", {.description = "anisotropic relaxation time"})); + m->add_component(parameter( "MINSTRETCH", {.description = "minimal principal stretch fibers do respond to"})); - m->add_component(entry("ELETHICKDIR", + m->add_component(parameter("ELETHICKDIR", {.description = "Element thickness direction applies also to fibers (only sosh)"})); Mat::append_material_definition(matlist, m); @@ -1582,12 +1612,12 @@ std::shared_ptr>> Global::v "simulation", Core::Materials::m_struct_multiscale); - m->add_component(entry("MICROFILE", + m->add_component(parameter("MICROFILE", {.description = "inputfile for microstructure", .default_value = "filename.dat"})); m->add_component( - entry("MICRODIS_NUM", {.description = "Number of microscale discretization"})); - m->add_component( - entry("INITVOL", {.description = "Initial volume of RVE", .default_value = 0.0})); + parameter("MICRODIS_NUM", {.description = "Number of microscale discretization"})); + m->add_component(parameter( + "INITVOL", {.description = "Initial volume of RVE", .default_value = 0.0})); Mat::append_material_definition(matlist, m); } @@ -1600,11 +1630,11 @@ std::shared_ptr>> Global::v Core::Materials::m_elasthyper); m->add_component( - entry("NUMMAT", {.description = "number of materials/potentials in list"})); - m->add_component(entry>("MATIDS", + parameter("NUMMAT", {.description = "number of materials/potentials in list"})); + m->add_component(parameter>("MATIDS", {.description = "the list material/potential IDs", .size = from_parameter("NUMMAT")})); - m->add_component(entry("DENS", {.description = "material mass density"})); - m->add_component(entry("POLYCONVEX", + m->add_component(parameter("DENS", {.description = "material mass density"})); + m->add_component(parameter("POLYCONVEX", {.description = "1.0 if polyconvexity of system is checked", .default_value = 0.})); Mat::append_material_definition(matlist, m); @@ -1618,11 +1648,11 @@ std::shared_ptr>> Global::v Core::Materials::m_viscoelasthyper); m->add_component( - entry("NUMMAT", {.description = "number of materials/potentials in list"})); - m->add_component(entry>("MATIDS", + parameter("NUMMAT", {.description = "number of materials/potentials in list"})); + m->add_component(parameter>("MATIDS", {.description = "the list material/potential IDs", .size = from_parameter("NUMMAT")})); - m->add_component(entry("DENS", {.description = "material mass density"})); - m->add_component(entry("POLYCONVEX", + m->add_component(parameter("DENS", {.description = "material mass density"})); + m->add_component(parameter("POLYCONVEX", {.description = "1.0 if polyconvexity of system is checked", .default_value = 0.})); Mat::append_material_definition(matlist, m); @@ -1636,67 +1666,67 @@ std::shared_ptr>> Global::v Core::Materials::m_plelasthyper); m->add_component( - entry("NUMMAT", {.description = "number of materials/potentials in list"})); - m->add_component(entry>("MATIDS", + parameter("NUMMAT", {.description = "number of materials/potentials in list"})); + m->add_component(parameter>("MATIDS", {.description = "the list material/potential IDs", .size = from_parameter("NUMMAT")})); - m->add_component(entry("DENS", {.description = "material mass density"})); - m->add_component(entry("INITYIELD", {.description = "initial yield stress"})); - m->add_component(entry("POLYCONVEX", + m->add_component(parameter("DENS", {.description = "material mass density"})); + m->add_component(parameter("INITYIELD", {.description = "initial yield stress"})); + m->add_component(parameter("POLYCONVEX", {.description = "1.0 if polyconvexity of system is checked", .default_value = 0.})); - m->add_component(entry( + m->add_component(parameter( "ISOHARD", {.description = "linear isotropic hardening modulus", .default_value = 0.})); - m->add_component(entry("EXPISOHARD", + m->add_component(parameter("EXPISOHARD", {.description = "nonlinear isotropic hardening exponent", .default_value = 0.})); - m->add_component(entry( + m->add_component(parameter( "INFYIELD", {.description = "saturation yield stress for nonlinear isotropic hardening", .default_value = 0.})); - m->add_component(entry( + m->add_component(parameter( "KINHARD", {.description = "linear kinematic hardening modulus", .default_value = 0.})); // visco-plasticity - m->add_component(entry("VISC", + m->add_component(parameter("VISC", {.description = "Visco-Plasticity parameter 'eta' in Perzyna model", .default_value = 0.})); - m->add_component(entry("RATE_DEPENDENCY", + m->add_component(parameter("RATE_DEPENDENCY", {.description = "Visco-Plasticity parameter 'eta' in Perzyna model", .default_value = 1.})); - m->add_component(entry("VISC_SOFT", + m->add_component(parameter("VISC_SOFT", {.description = "Visco-Plasticity temperature dependency (eta = eta_0 * (1-(T-T_0)*x)", .default_value = 0.})); // optional pastic spin parameter - m->add_component(entry( + m->add_component(parameter( "PL_SPIN_CHI", {.description = "Plastic spin coupling parameter chi (often called eta)", .default_value = 0.0})); // optional Hill yield parameters - m->add_component(entry( + m->add_component(parameter( "rY_11", {.description = "relative yield stress in fiber1-direction (Y_11/Y_0)", .default_value = 0.0})); - m->add_component(entry( + m->add_component(parameter( "rY_22", {.description = "relative yield stress in fiber2-direction (Y_22/Y_0)", .default_value = 0.0})); - m->add_component(entry( + m->add_component(parameter( "rY_33", {.description = "relative yield stress in fiber3-direction (Y_33/Y_0)", .default_value = 0.0})); - m->add_component(entry( + m->add_component(parameter( "rY_12", {.description = "relative shear yield stress in 12-direction (Y_12/Y_0)", .default_value = 0.0})); - m->add_component(entry( + m->add_component(parameter( "rY_23", {.description = "relative shear yield stress in 23-direction (Y_23/Y_0)", .default_value = 0.0})); - m->add_component(entry( + m->add_component(parameter( "rY_13", {.description = "relative shear yield stress in 13-direction (Y_13/Y_0)", .default_value = 0.0})); // optional TSI parameters - m->add_component(entry( + m->add_component(parameter( "CTE", {.description = "coefficient of thermal expansion", .default_value = 0.})); - m->add_component(entry( + m->add_component(parameter( "INITTEMP", {.description = "initial, reference temperature", .default_value = 0.})); + m->add_component(parameter( + "YIELDSOFT", {.description = "yield stress softening", .default_value = 0.})); m->add_component( - entry("YIELDSOFT", {.description = "yield stress softening", .default_value = 0.})); - m->add_component( - entry("HARDSOFT", {.description = "hardening softening", .default_value = 0.})); - m->add_component(entry("TAYLOR_QUINNEY", + parameter("HARDSOFT", {.description = "hardening softening", .default_value = 0.})); + m->add_component(parameter("TAYLOR_QUINNEY", {.description = "Taylor-Quinney factor for plastic heat conversion", .default_value = 1.})); Mat::append_material_definition(matlist, m); @@ -1710,68 +1740,68 @@ std::shared_ptr>> Global::v Core::Materials::m_plelasthyperVCU); m->add_component( - entry("NUMMAT", {.description = "number of materials/potentials in list"})); - m->add_component(entry>("MATIDS", + parameter("NUMMAT", {.description = "number of materials/potentials in list"})); + m->add_component(parameter>("MATIDS", {.description = "the list material/potential IDs", .size = from_parameter("NUMMAT")})); - m->add_component(entry("DENS", {.description = "material mass density"})); - m->add_component(entry("INITYIELD", {.description = "initial yield stress"})); - m->add_component(entry( + m->add_component(parameter("DENS", {.description = "material mass density"})); + m->add_component(parameter("INITYIELD", {.description = "initial yield stress"})); + m->add_component(parameter( "ISOHARD", {.description = "linear isotropic hardening modulus", .default_value = 0.})); - m->add_component(entry("EXPISOHARD", + m->add_component(parameter("EXPISOHARD", {.description = "nonlinear isotropic hardening exponent", .default_value = 0.})); - m->add_component(entry( + m->add_component(parameter( "INFYIELD", {.description = "saturation yield stress for nonlinear isotropic hardening", .default_value = 0.})); - m->add_component(entry( + m->add_component(parameter( "KINHARD", {.description = "linear kinematic hardening modulus", .default_value = 0.})); // visco-plasticity - m->add_component(entry("VISC", + m->add_component(parameter("VISC", {.description = "Visco-Plasticity parameter 'eta' in Perzyna model", .default_value = 0.})); - m->add_component(entry("RATE_DEPENDENCY", + m->add_component(parameter("RATE_DEPENDENCY", {.description = "Visco-Plasticity parameter 'eta' in Perzyna model", .default_value = 1.})); - m->add_component(entry("VISC_SOFT", + m->add_component(parameter("VISC_SOFT", {.description = "Visco-Plasticity temperature dependency (eta = eta_0 * (1-(T-T_0)*x)", .default_value = 0.})); // optional pastic spin parameter - m->add_component(entry( + m->add_component(parameter( "PL_SPIN_CHI", {.description = "Plastic spin coupling parameter chi (often called eta)", .default_value = 0.0})); // optional Hill yield parameters - m->add_component(entry( + m->add_component(parameter( "rY_11", {.description = "relative yield stress in fiber1-direction (Y_11/Y_0)", .default_value = 0.0})); - m->add_component(entry( + m->add_component(parameter( "rY_22", {.description = "relative yield stress in fiber2-direction (Y_22/Y_0)", .default_value = 0.0})); - m->add_component(entry( + m->add_component(parameter( "rY_33", {.description = "relative yield stress in fiber3-direction (Y_33/Y_0)", .default_value = 0.0})); - m->add_component(entry( + m->add_component(parameter( "rY_12", {.description = "relative shear yield stress in 12-direction (Y_12/Y_0)", .default_value = 0.0})); - m->add_component(entry( + m->add_component(parameter( "rY_23", {.description = "relative shear yield stress in 23-direction (Y_23/Y_0)", .default_value = 0.0})); - m->add_component(entry( + m->add_component(parameter( "rY_13", {.description = "relative shear yield stress in 13-direction (Y_13/Y_0)", .default_value = 0.0})); // optional TSI parameters - m->add_component(entry( + m->add_component(parameter( "CTE", {.description = "coefficient of thermal expansion", .default_value = 0.})); - m->add_component(entry( + m->add_component(parameter( "INITTEMP", {.description = "initial, reference temperature", .default_value = 0.})); + m->add_component(parameter( + "YIELDSOFT", {.description = "yield stress softening", .default_value = 0.})); m->add_component( - entry("YIELDSOFT", {.description = "yield stress softening", .default_value = 0.})); - m->add_component( - entry("HARDSOFT", {.description = "hardening softening", .default_value = 0.})); - m->add_component(entry("TAYLOR_QUINNEY", + parameter("HARDSOFT", {.description = "hardening softening", .default_value = 0.})); + m->add_component(parameter("TAYLOR_QUINNEY", {.description = "Taylor-Quinney factor for plastic heat conversion", .default_value = 1.})); - m->add_component(entry("POLYCONVEX", + m->add_component(parameter("POLYCONVEX", {.description = "1.0 if polyconvexity of system is checked", .default_value = 0.})); @@ -1785,12 +1815,12 @@ std::shared_ptr>> Global::v "logarithmic neo-Hooke material acc. to Bonet and Wood", Core::Materials::mes_couplogneohooke); - m->add_component( - entry("MODE", {.description = "parameter set: YN (Young's modulus and " - "Poisson's ration; default) or Lame (mue and " - "lambda)"})); - m->add_component(entry("C1", {.description = "E or mue"})); - m->add_component(entry("C2", {.description = "nue or lambda"})); + m->add_component(parameter( + "MODE", {.description = "parameter set: YN (Young's modulus and " + "Poisson's ration; default) or Lame (mue and " + "lambda)"})); + m->add_component(parameter("C1", {.description = "E or mue"})); + m->add_component(parameter("C2", {.description = "nue or lambda"})); Mat::append_material_definition(matlist, m); } @@ -1801,8 +1831,8 @@ std::shared_ptr>> Global::v auto m = std::make_shared( "ELAST_CoupSVK", "Saint-Venant-Kirchhoff as elastic summand", Core::Materials::mes_coupSVK); - m->add_component(entry("YOUNG", {.description = "Young's modulus"})); - m->add_component(entry("NUE", {.description = "Poisson's ratio"})); + m->add_component(parameter("YOUNG", {.description = "Young's modulus"})); + m->add_component(parameter("NUE", {.description = "Poisson's ratio"})); Mat::append_material_definition(matlist, m); } @@ -1813,7 +1843,7 @@ std::shared_ptr>> Global::v auto m = std::make_shared( "ELAST_CoupSimoPister", "Simo-Pister type material", Core::Materials::mes_coupsimopister); - m->add_component(entry("MUE", {.description = "material constant"})); + m->add_component(parameter("MUE", {.description = "material constant"})); Mat::append_material_definition(matlist, m); } @@ -1824,12 +1854,12 @@ std::shared_ptr>> Global::v auto m = std::make_shared("ELAST_CoupLogMixNeoHooke", "mixed logarithmic neo-Hooke material", Core::Materials::mes_couplogmixneohooke); - m->add_component( - entry("MODE", {.description = "parameter set: YN (Young's modulus and " - "Poisson's ration; default) or Lame (mue and " - "lambda)"})); - m->add_component(entry("C1", {.description = "E or mue"})); - m->add_component(entry("C2", {.description = "nue or lambda"})); + m->add_component(parameter( + "MODE", {.description = "parameter set: YN (Young's modulus and " + "Poisson's ration; default) or Lame (mue and " + "lambda)"})); + m->add_component(parameter("C1", {.description = "E or mue"})); + m->add_component(parameter("C2", {.description = "nue or lambda"})); Mat::append_material_definition(matlist, m); } @@ -1840,9 +1870,9 @@ std::shared_ptr>> Global::v auto m = std::make_shared("ELAST_CoupExpPol", "compressible, isochoric exponential material law for soft tissue", Core::Materials::mes_coupexppol); - m->add_component(entry("A", {.description = "material constant"})); - m->add_component(entry("B", {.description = "material constant linear I_1"})); - m->add_component(entry("C", {.description = "material constant linear J"})); + m->add_component(parameter("A", {.description = "material constant"})); + m->add_component(parameter("B", {.description = "material constant linear I_1"})); + m->add_component(parameter("C", {.description = "material constant linear J"})); Mat::append_material_definition(matlist, m); } @@ -1854,9 +1884,9 @@ std::shared_ptr>> Global::v "compressible neo-Hooke material acc. to Holzapfel", Core::Materials::mes_coupneohooke); m->add_component( - entry("YOUNG", {.description = "Young's modulus", .default_value = 0.0})); + parameter("YOUNG", {.description = "Young's modulus", .default_value = 0.0})); m->add_component( - entry("NUE", {.description = "Poisson's ratio", .default_value = 0.0})); + parameter("NUE", {.description = "Poisson's ratio", .default_value = 0.0})); Mat::append_material_definition(matlist, m); } @@ -1866,11 +1896,11 @@ std::shared_ptr>> Global::v "Mooney - Rivlin material acc. to Holzapfel", Core::Materials::mes_coupmooneyrivlin); m->add_component( - entry("C1", {.description = "material constant", .default_value = 0.0})); + parameter("C1", {.description = "material constant", .default_value = 0.0})); m->add_component( - entry("C2", {.description = "material constant", .default_value = 0.0})); + parameter("C2", {.description = "material constant", .default_value = 0.0})); m->add_component( - entry("C3", {.description = "material constant", .default_value = 0.0})); + parameter("C3", {.description = "material constant", .default_value = 0.0})); Mat::append_material_definition(matlist, m); } @@ -1881,9 +1911,9 @@ std::shared_ptr>> Global::v auto m = std::make_shared("ELAST_CoupBlatzKo", "Blatz and Ko material acc. to Holzapfel", Core::Materials::mes_coupblatzko); - m->add_component(entry("MUE", {.description = "Shear modulus"})); - m->add_component(entry("NUE", {.description = "Poisson's ratio"})); - m->add_component(entry("F", {.description = "interpolation parameter"})); + m->add_component(parameter("MUE", {.description = "Shear modulus"})); + m->add_component(parameter("NUE", {.description = "Poisson's ratio"})); + m->add_component(parameter("F", {.description = "interpolation parameter"})); Mat::append_material_definition(matlist, m); } @@ -1894,7 +1924,7 @@ std::shared_ptr>> Global::v auto m = std::make_shared("ELAST_IsoNeoHooke", "isochoric part of neo-Hooke material acc. to Holzapfel", Core::Materials::mes_isoneohooke); - m->add_component(entry("MUE", {.description = "Shear modulus"})); + m->add_component(parameter("MUE", {.description = "Shear modulus"})); Mat::append_material_definition(matlist, m); } @@ -1905,8 +1935,8 @@ std::shared_ptr>> Global::v auto m = std::make_shared("ELAST_IsoOgden", "isochoric part of the one-term Ogden material", Core::Materials::mes_isoogden); - m->add_component(entry("MUE", {.description = "Shear modulus"})); - m->add_component(entry("ALPHA", {.description = "Nonlinearity parameter"})); + m->add_component(parameter("MUE", {.description = "Shear modulus"})); + m->add_component(parameter("ALPHA", {.description = "Nonlinearity parameter"})); Mat::append_material_definition(matlist, m); } @@ -1916,9 +1946,9 @@ std::shared_ptr>> Global::v auto m = std::make_shared("ELAST_IsoYeoh", "isochoric part of Yeoh material acc. to Holzapfel", Core::Materials::mes_isoyeoh); - m->add_component(entry("C1", {.description = "Linear modulus"})); - m->add_component(entry("C2", {.description = "Quadratic modulus"})); - m->add_component(entry("C3", {.description = "Cubic modulus"})); + m->add_component(parameter("C1", {.description = "Linear modulus"})); + m->add_component(parameter("C2", {.description = "Quadratic modulus"})); + m->add_component(parameter("C3", {.description = "Cubic modulus"})); Mat::append_material_definition(matlist, m); } @@ -1929,8 +1959,8 @@ std::shared_ptr>> Global::v auto m = std::make_shared( "ELAST_Iso1Pow", "isochoric part of general power material", Core::Materials::mes_iso1pow); - m->add_component(entry("C", {.description = "material parameter"})); - m->add_component(entry("D", {.description = "exponent"})); + m->add_component(parameter("C", {.description = "material parameter"})); + m->add_component(parameter("D", {.description = "exponent"})); Mat::append_material_definition(matlist, m); } @@ -1940,8 +1970,8 @@ std::shared_ptr>> Global::v auto m = std::make_shared( "ELAST_Iso2Pow", "isochoric part of general power material", Core::Materials::mes_iso2pow); - m->add_component(entry("C", {.description = "material parameter"})); - m->add_component(entry("D", {.description = "exponent"})); + m->add_component(parameter("C", {.description = "material parameter"})); + m->add_component(parameter("D", {.description = "exponent"})); Mat::append_material_definition(matlist, m); } @@ -1951,8 +1981,8 @@ std::shared_ptr>> Global::v auto m = std::make_shared( "ELAST_Coup1Pow", "part of general power material", Core::Materials::mes_coup1pow); - m->add_component(entry("C", {.description = "material parameter"})); - m->add_component(entry("D", {.description = "exponent"})); + m->add_component(parameter("C", {.description = "material parameter"})); + m->add_component(parameter("D", {.description = "exponent"})); Mat::append_material_definition(matlist, m); } @@ -1962,8 +1992,8 @@ std::shared_ptr>> Global::v auto m = std::make_shared( "ELAST_Coup2Pow", "part of general power material", Core::Materials::mes_coup2pow); - m->add_component(entry("C", {.description = "material parameter"})); - m->add_component(entry("D", {.description = "exponent"})); + m->add_component(parameter("C", {.description = "material parameter"})); + m->add_component(parameter("D", {.description = "exponent"})); Mat::append_material_definition(matlist, m); } @@ -1973,8 +2003,8 @@ std::shared_ptr>> Global::v auto m = std::make_shared( "ELAST_Coup3Pow", "part of general power material", Core::Materials::mes_coup3pow); - m->add_component(entry("C", {.description = "material parameter"})); - m->add_component(entry("D", {.description = "exponent"})); + m->add_component(parameter("C", {.description = "material parameter"})); + m->add_component(parameter("D", {.description = "exponent"})); Mat::append_material_definition(matlist, m); } @@ -1985,9 +2015,9 @@ std::shared_ptr>> Global::v "hyperelastic potential summand for multiplicative coupled invariants I1 and I3", Core::Materials::mes_coup13apow); - m->add_component(entry("C", {.description = "material parameter"})); - m->add_component(entry("D", {.description = "exponent of all"})); - m->add_component(entry("A", {.description = "negative exponent of I3"})); + m->add_component(parameter("C", {.description = "material parameter"})); + m->add_component(parameter("D", {.description = "exponent of all"})); + m->add_component(parameter("A", {.description = "negative exponent of I3"})); Mat::append_material_definition(matlist, m); } @@ -1998,9 +2028,9 @@ std::shared_ptr>> Global::v "isochoric part of exponential material acc. to Holzapfel", Core::Materials::mes_isoexpopow); - m->add_component(entry("K1", {.description = "material parameter"})); - m->add_component(entry("K2", {.description = "material parameter"})); - m->add_component(entry("C", {.description = "exponent"})); + m->add_component(parameter("K1", {.description = "material parameter"})); + m->add_component(parameter("K2", {.description = "material parameter"})); + m->add_component(parameter("C", {.description = "exponent"})); Mat::append_material_definition(matlist, m); } @@ -2011,8 +2041,10 @@ std::shared_ptr>> Global::v "isochoric part of Mooney-Rivlin material acc. to Holzapfel", Core::Materials::mes_isomooneyrivlin); - m->add_component(entry("C1", {.description = "Linear modulus for first invariant"})); - m->add_component(entry("C2", {.description = "Linear modulus for second invariant"})); + m->add_component( + parameter("C1", {.description = "Linear modulus for first invariant"})); + m->add_component( + parameter("C2", {.description = "Linear modulus for second invariant"})); Mat::append_material_definition(matlist, m); } @@ -2022,21 +2054,22 @@ std::shared_ptr>> Global::v auto m = std::make_shared("ELAST_IsoMuscle_Blemker", "anisotropic Blemker muscle material", Core::Materials::mes_isomuscleblemker); - m->add_component(entry("G1", {.description = "muscle along fiber shear modulus"})); - m->add_component(entry("G2", {.description = "muscle cross fiber shear modulus"})); - m->add_component(entry( + m->add_component(parameter("G1", {.description = "muscle along fiber shear modulus"})); + m->add_component(parameter("G2", {.description = "muscle cross fiber shear modulus"})); + m->add_component(parameter( "P1", {.description = "linear material parameter for passive along-fiber response"})); - m->add_component(entry( + m->add_component(parameter( "P2", {.description = "exponential material parameter for passive along-fiber response"})); - m->add_component(entry("SIGMAMAX", {.description = "maximal active isometric stress"})); - m->add_component(entry("LAMBDAOFL", {.description = "optimal fiber stretch"})); - m->add_component(entry("LAMBDASTAR", - {.description = "stretch at which the normalized passive fiber force becomes linear"})); - m->add_component(entry("ALPHA", {.description = "tetanised activation level,"})); m->add_component( - entry("BETA", {.description = "constant scaling tanh-type activation function"})); + parameter("SIGMAMAX", {.description = "maximal active isometric stress"})); + m->add_component(parameter("LAMBDAOFL", {.description = "optimal fiber stretch"})); + m->add_component(parameter("LAMBDASTAR", + {.description = "stretch at which the normalized passive fiber force becomes linear"})); + m->add_component(parameter("ALPHA", {.description = "tetanised activation level,"})); + m->add_component(parameter( + "BETA", {.description = "constant scaling tanh-type activation function"})); m->add_component( - entry("ACTSTARTTIME", {.description = "starting time of muscle activation"})); + parameter("ACTSTARTTIME", {.description = "starting time of muscle activation"})); Mat::append_material_definition(matlist, m); } @@ -2047,8 +2080,8 @@ std::shared_ptr>> Global::v auto m = std::make_shared("ELAST_IsoTestMaterial", "test material to test elasthyper-toolbox", Core::Materials::mes_isotestmaterial); - m->add_component(entry("C1", {.description = "Modulus for first invariant"})); - m->add_component(entry("C2", {.description = "Modulus for second invariant"})); + m->add_component(parameter("C1", {.description = "Modulus for first invariant"})); + m->add_component(parameter("C2", {.description = "Modulus for second invariant"})); Mat::append_material_definition(matlist, m); } @@ -2059,19 +2092,19 @@ std::shared_ptr>> Global::v "General fiber material for remodeling", Core::Materials::mes_remodelfiber); m->add_component( - entry("NUMMAT", {.description = "number of materials/potentials in list"})); - m->add_component(entry>("MATIDS", + parameter("NUMMAT", {.description = "number of materials/potentials in list"})); + m->add_component(parameter>("MATIDS", {.description = "the list material/potential IDs", .size = from_parameter("NUMMAT")})); - m->add_component( - entry("TDECAY", {.description = "decay time of Poisson (degradation) process"})); - m->add_component(entry( + m->add_component(parameter( + "TDECAY", {.description = "decay time of Poisson (degradation) process"})); + m->add_component(parameter( "GROWTHFAC", {.description = "time constant for collagen growth", .default_value = 0.0})); - m->add_component(entry>("COLMASSFRAC", + m->add_component(parameter>("COLMASSFRAC", {.description = "initial mass fraction of first collagen fiber family in constraint mixture", .default_value = std::vector{0.0}, .size = from_parameter("NUMMAT")})); - m->add_component(entry("DEPOSITIONSTRETCH", {.description = "deposition stretch"})); + m->add_component(parameter("DEPOSITIONSTRETCH", {.description = "deposition stretch"})); Mat::append_material_definition(matlist, m); } @@ -2082,7 +2115,7 @@ std::shared_ptr>> Global::v auto m = std::make_shared("ELAST_VolSussmanBathe", "volumetric part of SussmanBathe material", Core::Materials::mes_volsussmanbathe); - m->add_component(entry("KAPPA", {.description = "dilatation modulus"})); + m->add_component(parameter("KAPPA", {.description = "dilatation modulus"})); Mat::append_material_definition(matlist, m); } @@ -2093,8 +2126,8 @@ std::shared_ptr>> Global::v auto m = std::make_shared("ELAST_VolPenalty", "Penalty formulation for the volumetric part", Core::Materials::mes_volpenalty); - m->add_component(entry("EPSILON", {.description = "penalty parameter"})); - m->add_component(entry("GAMMA", {.description = "penalty parameter"})); + m->add_component(parameter("EPSILON", {.description = "penalty parameter"})); + m->add_component(parameter("GAMMA", {.description = "penalty parameter"})); Mat::append_material_definition(matlist, m); } @@ -2105,8 +2138,8 @@ std::shared_ptr>> Global::v auto m = std::make_shared("ELAST_VolOgden", "Ogden formulation for the volumetric part", Core::Materials::mes_vologden); - m->add_component(entry("KAPPA", {.description = "dilatation modulus"})); - m->add_component(entry("BETA", {.description = "empiric constant"})); + m->add_component(parameter("KAPPA", {.description = "dilatation modulus"})); + m->add_component(parameter("BETA", {.description = "empiric constant"})); Mat::append_material_definition(matlist, m); } @@ -2117,8 +2150,8 @@ std::shared_ptr>> Global::v auto m = std::make_shared("ELAST_VolPow", "Power law formulation for the volumetric part", Core::Materials::mes_volpow); - m->add_component(entry("A", {.description = "prefactor of power law"})); - m->add_component(entry("EXPON", {.description = "exponent of power law"})); + m->add_component(parameter("A", {.description = "prefactor of power law"})); + m->add_component(parameter("EXPON", {.description = "exponent of power law"})); Mat::append_material_definition(matlist, m); } @@ -2129,23 +2162,23 @@ std::shared_ptr>> Global::v auto m = std::make_shared("ELAST_CoupAnisoExpoActive", "anisotropic active fiber", Core::Materials::mes_coupanisoexpoactive); - m->add_component(entry("K1", {.description = "linear constant"})); - m->add_component(entry("K2", {.description = "exponential constant"})); - m->add_component(entry("GAMMA", {.description = "angle"})); - m->add_component(entry("K1COMP", {.description = "linear constant"})); - m->add_component(entry("K2COMP", {.description = "exponential constant"})); - m->add_component( - entry("STR_TENS_ID", {.description = "MAT ID for definition of Structural Tensor"})); - m->add_component(entry( + m->add_component(parameter("K1", {.description = "linear constant"})); + m->add_component(parameter("K2", {.description = "exponential constant"})); + m->add_component(parameter("GAMMA", {.description = "angle"})); + m->add_component(parameter("K1COMP", {.description = "linear constant"})); + m->add_component(parameter("K2COMP", {.description = "exponential constant"})); + m->add_component(parameter( + "STR_TENS_ID", {.description = "MAT ID for definition of Structural Tensor"})); + m->add_component(parameter( "INIT", {.description = "initialization modus for fiber alignment", .default_value = 1})); - m->add_component(entry( + m->add_component(parameter( "ADAPT_ANGLE", {.description = "adapt angle during remodeling", .default_value = false})); - m->add_component(entry("S", {.description = "maximum contractile stress"})); + m->add_component(parameter("S", {.description = "maximum contractile stress"})); + m->add_component(parameter( + "LAMBDAMAX", {.description = "stretch at maximum active force generation"})); m->add_component( - entry("LAMBDAMAX", {.description = "stretch at maximum active force generation"})); - m->add_component( - entry("LAMBDA0", {.description = "stretch at zero active force generation"})); - m->add_component(entry( + parameter("LAMBDA0", {.description = "stretch at zero active force generation"})); + m->add_component(parameter( "DENS", {.description = "total reference mass density of constrained mixture"})); Mat::append_material_definition(matlist, m); @@ -2157,18 +2190,18 @@ std::shared_ptr>> Global::v auto m = std::make_shared("ELAST_CoupAnisoExpo", "anisotropic part with one exp. fiber", Core::Materials::mes_coupanisoexpo); - m->add_component(entry("K1", {.description = "linear constant"})); - m->add_component(entry("K2", {.description = "exponential constant"})); - m->add_component(entry("GAMMA", {.description = "angle"})); - m->add_component(entry("K1COMP", {.description = "linear constant"})); - m->add_component(entry("K2COMP", {.description = "exponential constant"})); - m->add_component( - entry("STR_TENS_ID", {.description = "MAT ID for definition of Structural Tensor"})); - m->add_component(entry( + m->add_component(parameter("K1", {.description = "linear constant"})); + m->add_component(parameter("K2", {.description = "exponential constant"})); + m->add_component(parameter("GAMMA", {.description = "angle"})); + m->add_component(parameter("K1COMP", {.description = "linear constant"})); + m->add_component(parameter("K2COMP", {.description = "exponential constant"})); + m->add_component(parameter( + "STR_TENS_ID", {.description = "MAT ID for definition of Structural Tensor"})); + m->add_component(parameter( "INIT", {.description = "initialization modus for fiber alignment", .default_value = 1})); - m->add_component(entry( + m->add_component(parameter( "ADAPT_ANGLE", {.description = "adapt angle during remodeling", .default_value = false})); - m->add_component(entry( + m->add_component(parameter( "FIBER_ID", {.description = "Id of the fiber to be used (1 for first fiber, default)", .default_value = 1})); @@ -2181,14 +2214,14 @@ std::shared_ptr>> Global::v auto m = std::make_shared("ELAST_CoupAnisoExpoShear", "Exponential shear behavior between two fibers", Core::Materials::mes_coupanisoexposhear); - m->add_component(entry("K1", {.description = "linear constant"})); - m->add_component(entry("K2", {.description = "exponential constant"})); - m->add_component(entry("GAMMA", {.description = "angle"})); - m->add_component(entry("K1COMP", {.description = "linear constant"})); - m->add_component(entry("K2COMP", {.description = "exponential constant"})); - m->add_component(entry( + m->add_component(parameter("K1", {.description = "linear constant"})); + m->add_component(parameter("K2", {.description = "exponential constant"})); + m->add_component(parameter("GAMMA", {.description = "angle"})); + m->add_component(parameter("K1COMP", {.description = "linear constant"})); + m->add_component(parameter("K2COMP", {.description = "exponential constant"})); + m->add_component(parameter( "INIT", {.description = "initialization modus for fiber alignment", .default_value = 1})); - m->add_component(entry>("FIBER_IDS", + m->add_component(parameter>("FIBER_IDS", {.description = "Ids of the two fibers to be used (1 for the first fiber, 2 for the second, " "default)", @@ -2203,23 +2236,23 @@ std::shared_ptr>> Global::v auto m = std::make_shared("ELAST_CoupAnisoPow", "anisotropic part with one pow-like fiber", Core::Materials::mes_coupanisopow); - m->add_component(entry("K", {.description = "linear constant"})); + m->add_component(parameter("K", {.description = "linear constant"})); m->add_component( - entry("D1", {.description = "exponential constant for fiber invariant"})); - m->add_component(entry("D2", {.description = "exponential constant for system"})); - m->add_component(entry( + parameter("D1", {.description = "exponential constant for fiber invariant"})); + m->add_component(parameter("D2", {.description = "exponential constant for system"})); + m->add_component(parameter( "ACTIVETHRES", {.description = "Deformation threshold for activating fibers. Default:" " 1.0 (off at compression); If 0.0 (always active)", .default_value = 1.0})); - m->add_component( - entry("STR_TENS_ID", {.description = "MAT ID for definition of Structural Tensor"})); - m->add_component( - entry("FIBER", {.description = "Number of the fiber family contained in the element", - .default_value = 1})); - m->add_component(entry("GAMMA", {.description = "angle", .default_value = 0.0})); - m->add_component(entry( + m->add_component(parameter( + "STR_TENS_ID", {.description = "MAT ID for definition of Structural Tensor"})); + m->add_component(parameter( + "FIBER", {.description = "Number of the fiber family contained in the element", + .default_value = 1})); + m->add_component(parameter("GAMMA", {.description = "angle", .default_value = 0.0})); + m->add_component(parameter( "INIT", {.description = "initialization modus for fiber alignment", .default_value = 1})); - m->add_component(entry( + m->add_component(parameter( "ADAPT_ANGLE", {.description = "adapt angle during remodeling", .default_value = false})); Mat::append_material_definition(matlist, m); @@ -2232,26 +2265,26 @@ std::shared_ptr>> Global::v "anisotropic part with two exp. fibers", Core::Materials::mes_coupanisoexpotwocoup); m->add_component( - entry("A4", {.description = "linear anisotropic constant for fiber 1"})); + parameter("A4", {.description = "linear anisotropic constant for fiber 1"})); m->add_component( - entry("B4", {.description = "exponential anisotropic constant for fiber 1"})); + parameter("B4", {.description = "exponential anisotropic constant for fiber 1"})); m->add_component( - entry("A6", {.description = "linear anisotropic constant for fiber 2"})); + parameter("A6", {.description = "linear anisotropic constant for fiber 2"})); m->add_component( - entry("B6", {.description = "exponential anisotropic constant for fiber 2"})); - m->add_component(entry( + parameter("B6", {.description = "exponential anisotropic constant for fiber 2"})); + m->add_component(parameter( "A8", {.description = "linear anisotropic constant for fiber 1 relating fiber 2"})); - m->add_component(entry( + m->add_component(parameter( "B8", {.description = "exponential anisotropic constant for fiber 1 relating fiber 2"})); - m->add_component(entry("GAMMA", {.description = "angle"})); - m->add_component( - entry("STR_TENS_ID", {.description = "MAT ID for definition of Structural Tensor"})); - m->add_component(entry( + m->add_component(parameter("GAMMA", {.description = "angle"})); + m->add_component(parameter( + "STR_TENS_ID", {.description = "MAT ID for definition of Structural Tensor"})); + m->add_component(parameter( "INIT", {.description = "initialization modus for fiber alignment", .default_value = 1})); - m->add_component(entry( + m->add_component(parameter( "FIB_COMP", {.description = "fibers support compression: yes (true) or no (false)", .default_value = true})); - m->add_component(entry( + m->add_component(parameter( "ADAPT_ANGLE", {.description = "adapt angle during remodeling", .default_value = false})); Mat::append_material_definition(matlist, m); @@ -2263,13 +2296,13 @@ std::shared_ptr>> Global::v auto m = std::make_shared("ELAST_CoupAnisoNeoHooke", "anisotropic part with one neo Hookean fiber", Core::Materials::mes_coupanisoneohooke); - m->add_component(entry("C", {.description = "linear constant"})); - m->add_component(entry("GAMMA", {.description = "angle"})); - m->add_component( - entry("STR_TENS_ID", {.description = "MAT ID for definition of Structural Tensor"})); - m->add_component(entry( + m->add_component(parameter("C", {.description = "linear constant"})); + m->add_component(parameter("GAMMA", {.description = "angle"})); + m->add_component(parameter( + "STR_TENS_ID", {.description = "MAT ID for definition of Structural Tensor"})); + m->add_component(parameter( "INIT", {.description = "initialization modus for fiber alignment", .default_value = 1})); - m->add_component(entry( + m->add_component(parameter( "ADAPT_ANGLE", {.description = "adapt angle during remodeling", .default_value = false})); Mat::append_material_definition(matlist, m); @@ -2284,33 +2317,33 @@ std::shared_ptr>> Global::v "activation-contraction law of Bestel-Clement-Sorine-2001", Core::Materials::mes_anisoactivestress_evolution); - m->add_component(entry("SIGMA", {.description = "Contractility (maximal stress)"})); + m->add_component(parameter("SIGMA", {.description = "Contractility (maximal stress)"})); m->add_component( - entry("TAUC0", {.description = "Initial value for the active stress"})); - m->add_component(entry( + parameter("TAUC0", {.description = "Initial value for the active stress"})); + m->add_component(parameter( "MAX_ACTIVATION", {.description = "Maximal value for the rescaled activation"})); - m->add_component(entry( + m->add_component(parameter( "MIN_ACTIVATION", {.description = "Minimal value for the rescaled activation"})); - m->add_component(entry("SOURCE_ACTIVATION", + m->add_component(parameter("SOURCE_ACTIVATION", {.description = "Where the activation comes from: 0=scatra , >0 Id for FUNCT"})); - m->add_component(entry( + m->add_component(parameter( "ACTIVATION_THRES", {.description = "Threshold for activation (contraction starts when " "activation function is larger than this " "value, relaxes otherwise)"})); - m->add_component(entry( + m->add_component(parameter( "STRAIN_DEPENDENCY", {.description = "model strain dependency of contractility " "(Frank-Starling law): no (false) or yes (true)", .default_value = false})); - m->add_component(entry("LAMBDA_LOWER", + m->add_component(parameter("LAMBDA_LOWER", {.description = "lower fiber stretch for Frank-Starling law", .default_value = 1.0})); - m->add_component(entry("LAMBDA_UPPER", + m->add_component(parameter("LAMBDA_UPPER", {.description = "upper fiber stretch for Frank-Starling law", .default_value = 1.0})); - m->add_component(entry("GAMMA", {.description = "angle", .default_value = 0.0})); - m->add_component( - entry("STR_TENS_ID", {.description = "MAT ID for definition of Structural Tensor"})); - m->add_component(entry( + m->add_component(parameter("GAMMA", {.description = "angle", .default_value = 0.0})); + m->add_component(parameter( + "STR_TENS_ID", {.description = "MAT ID for definition of Structural Tensor"})); + m->add_component(parameter( "INIT", {.description = "initialization mode for fiber alignment", .default_value = 1})); - m->add_component(entry( + m->add_component(parameter( "ADAPT_ANGLE", {.description = "adapt angle during remodeling", .default_value = false})); Mat::append_material_definition(matlist, m); @@ -2323,17 +2356,18 @@ std::shared_ptr>> Global::v "anisotropic part with one neo Hookean fiber with variable coefficient", Core::Materials::mes_coupanisoneohooke_varprop); - m->add_component(entry("C", {.description = "linear constant"})); - m->add_component(entry("SOURCE_ACTIVATION", + m->add_component(parameter("C", {.description = "linear constant"})); + m->add_component(parameter("SOURCE_ACTIVATION", {.description = "Where the activation comes from: 0=scatra , >0 Id for FUNCT"})); m->add_component( - entry("GAMMA", {.description = "azimuth angle", .default_value = 0.0})); - m->add_component(entry("THETA", {.description = "polar angle", .default_value = 0.0})); + parameter("GAMMA", {.description = "azimuth angle", .default_value = 0.0})); m->add_component( - entry("STR_TENS_ID", {.description = "MAT ID for definition of Structural Tensor"})); - m->add_component(entry( + parameter("THETA", {.description = "polar angle", .default_value = 0.0})); + m->add_component(parameter( + "STR_TENS_ID", {.description = "MAT ID for definition of Structural Tensor"})); + m->add_component(parameter( "INIT", {.description = "initialization mode for fiber alignment", .default_value = 1})); - m->add_component(entry( + m->add_component(parameter( "ADAPT_ANGLE", {.description = "adapt angle during remodeling", .default_value = false})); Mat::append_material_definition(matlist, m); @@ -2345,16 +2379,16 @@ std::shared_ptr>> Global::v auto m = std::make_shared("ELAST_IsoAnisoExpo", "anisotropic part with one exp. fiber", Core::Materials::mes_isoanisoexpo); - m->add_component(entry("K1", {.description = "linear constant"})); - m->add_component(entry("K2", {.description = "exponential constant"})); - m->add_component(entry("GAMMA", {.description = "angle"})); - m->add_component(entry("K1COMP", {.description = "linear constant"})); - m->add_component(entry("K2COMP", {.description = "exponential constant"})); - m->add_component( - entry("STR_TENS_ID", {.description = "MAT ID for definition of Structural Tensor"})); - m->add_component(entry( + m->add_component(parameter("K1", {.description = "linear constant"})); + m->add_component(parameter("K2", {.description = "exponential constant"})); + m->add_component(parameter("GAMMA", {.description = "angle"})); + m->add_component(parameter("K1COMP", {.description = "linear constant"})); + m->add_component(parameter("K2COMP", {.description = "exponential constant"})); + m->add_component(parameter( + "STR_TENS_ID", {.description = "MAT ID for definition of Structural Tensor"})); + m->add_component(parameter( "INIT", {.description = "initialization modus for fiber alignment", .default_value = 1})); - m->add_component(entry( + m->add_component(parameter( "ADAPT_ANGLE", {.description = "adapt angle during remodeling", .default_value = false})); Mat::append_material_definition(matlist, m); @@ -2367,7 +2401,7 @@ std::shared_ptr>> Global::v "Parameter for structural tensor strategy in anisotropic materials", Core::Materials::mes_structuraltensorstratgy); - m->add_component(entry("STRATEGY", + m->add_component(parameter("STRATEGY", {.description = "Strategy for evaluation of structural tensor: " "Standard (default), ByDistributionFunction, DispersedTransverselyIsotropic"})); @@ -2377,18 +2411,18 @@ std::shared_ptr>> Global::v // "Bingham" // "vonMisesFisher" // rauch 10/17 - m->add_component(entry( + m->add_component(parameter( "DISTR", {.description = "Type of distribution function around mean direction: " "none, Bingham, vonMisesFisher", .default_value = "none"})); - m->add_component(entry( + m->add_component(parameter( "C1", {.description = "constant 1 for distribution function", .default_value = 1.0})); - m->add_component(entry( + m->add_component(parameter( "C2", {.description = "constant 2 for distribution function", .default_value = 0.0})); - m->add_component(entry( + m->add_component(parameter( "C3", {.description = "constant 3 for distribution function", .default_value = 0.0})); - m->add_component(entry( + m->add_component(parameter( "C4", {.description = "constant 4 for distribution function", .default_value = 1e16})); Mat::append_material_definition(matlist, m); @@ -2402,15 +2436,15 @@ std::shared_ptr>> Global::v "isotropic hyperelastic constitutive equation", Core::Materials::mes_couptransverselyisotropic); - m->add_component(entry("ALPHA", {.description = "1-st constant"})); - m->add_component(entry("BETA", {.description = "2-nd constant"})); - m->add_component(entry("GAMMA", {.description = "3-rd constant"})); - m->add_component(entry("ANGLE", {.description = "fiber angle"})); - m->add_component( - entry("STR_TENS_ID", {.description = "MAT ID for definition of Structural Tensor"})); + m->add_component(parameter("ALPHA", {.description = "1-st constant"})); + m->add_component(parameter("BETA", {.description = "2-nd constant"})); + m->add_component(parameter("GAMMA", {.description = "3-rd constant"})); + m->add_component(parameter("ANGLE", {.description = "fiber angle"})); + m->add_component(parameter( + "STR_TENS_ID", {.description = "MAT ID for definition of Structural Tensor"})); m->add_component( - entry("FIBER", {.description = "exponential constant", .default_value = 1})); - m->add_component(entry( + parameter("FIBER", {.description = "exponential constant", .default_value = 1})); + m->add_component(parameter( "INIT", {.description = "initialization modus for fiber alignment", .default_value = 1})); Mat::append_material_definition(matlist, m); @@ -2422,8 +2456,8 @@ std::shared_ptr>> Global::v auto m = std::make_shared( "ELAST_CoupVarga", "Varga material acc. to Holzapfel", Core::Materials::mes_coupvarga); - m->add_component(entry("MUE", {.description = "Shear modulus"})); - m->add_component(entry("BETA", {.description = "'Anti-modulus'"})); + m->add_component(parameter("MUE", {.description = "Shear modulus"})); + m->add_component(parameter("BETA", {.description = "'Anti-modulus'"})); Mat::append_material_definition(matlist, m); } @@ -2434,8 +2468,8 @@ std::shared_ptr>> Global::v auto m = std::make_shared("ELAST_IsoVarga", "Isochoric Varga material acc. to Holzapfel", Core::Materials::mes_isovarga); - m->add_component(entry("MUE", {.description = "Shear modulus"})); - m->add_component(entry("BETA", {.description = "'Anti-modulus'"})); + m->add_component(parameter("MUE", {.description = "Shear modulus"})); + m->add_component(parameter("BETA", {.description = "'Anti-modulus'"})); Mat::append_material_definition(matlist, m); } @@ -2446,7 +2480,7 @@ std::shared_ptr>> Global::v auto m = std::make_shared("VISCO_CoupMyocard", "Isotropic viscous contribution of myocardial matrix", Core::Materials::mes_coupmyocard); - m->add_component(entry("N", {.description = "material parameter"})); + m->add_component(parameter("N", {.description = "material parameter"})); Mat::append_material_definition(matlist, m); } @@ -2457,7 +2491,7 @@ std::shared_ptr>> Global::v auto m = std::make_shared("VISCO_IsoRateDep", "Isochoric rate dependent viscous material", Core::Materials::mes_isoratedep); - m->add_component(entry("N", {.description = "material parameter"})); + m->add_component(parameter("N", {.description = "material parameter"})); Mat::append_material_definition(matlist, m); } @@ -2468,9 +2502,10 @@ std::shared_ptr>> Global::v auto m = std::make_shared( "VISCO_GenMax", "Viscous contribution according to SLS-Model", Core::Materials::mes_genmax); - m->add_component(entry("TAU", {.description = "relaxation parameter"})); - m->add_component(entry("BETA", {.description = "emphasis of viscous to elastic part"})); - m->add_component(entry("SOLVE", + m->add_component(parameter("TAU", {.description = "relaxation parameter"})); + m->add_component( + parameter("BETA", {.description = "emphasis of viscous to elastic part"})); + m->add_component(parameter("SOLVE", {.description = "Solution of evolution equation via: OST (default) or CONVOL (convolution " "integral)"})); @@ -2484,9 +2519,10 @@ std::shared_ptr>> Global::v auto m = std::make_shared( "VISCO_Fract", "Viscous contribution according to FSLS-Model", Core::Materials::mes_fract); - m->add_component(entry("TAU", {.description = "relaxation parameter"})); - m->add_component(entry("ALPHA", {.description = "fractional order derivative"})); - m->add_component(entry("BETA", {.description = "emphasis of viscous to elastic part"})); + m->add_component(parameter("TAU", {.description = "relaxation parameter"})); + m->add_component(parameter("ALPHA", {.description = "fractional order derivative"})); + m->add_component( + parameter("BETA", {.description = "emphasis of viscous to elastic part"})); Mat::append_material_definition(matlist, m); } @@ -2497,7 +2533,7 @@ std::shared_ptr>> Global::v auto m = std::make_shared("VISCO_PART", "Viscous contribution of a viscoelastic Branch", Core::Materials::mes_viscopart); - m->add_component(entry( + m->add_component(parameter( "TAU", {.description = "dynamic viscosity divided by young's modulus of the branch"})); Mat::append_material_definition(matlist, m); @@ -2508,10 +2544,11 @@ std::shared_ptr>> Global::v auto m = std::make_shared("VISCO_GeneralizedGenMax", "Viscoelastic Branches of generalized Maxwell", Core::Materials::mes_generalizedgenmax); - m->add_component(entry("NUMBRANCH", {.description = "number of viscoelastic branches"})); - m->add_component(entry>("MATIDS", + m->add_component( + parameter("NUMBRANCH", {.description = "number of viscoelastic branches"})); + m->add_component(parameter>("MATIDS", {.description = "the list material IDs", .size = from_parameter("NUMBRANCH")})); - m->add_component(entry("SOLVE", + m->add_component(parameter("SOLVE", {.description = "Solution for evolution equation: OST (default) or CONVOL (convolution " "integral)"})); @@ -2524,9 +2561,9 @@ std::shared_ptr>> Global::v auto m = std::make_shared("VISCO_BRANCH", "Viscoelastic Branch (viscous and elastic contribution)", Core::Materials::mes_viscobranch); - m->add_component( - entry("NUMMAT", {.description = "number of materials in the viscoelastic branch"})); - m->add_component(entry>( + m->add_component(parameter( + "NUMMAT", {.description = "number of materials in the viscoelastic branch"})); + m->add_component(parameter>( "MATIDS", {.description = "the list material IDs", .size = from_parameter("NUMMAT")})); Mat::append_material_definition(matlist, m); @@ -2538,31 +2575,33 @@ std::shared_ptr>> Global::v auto m = std::make_shared( "MAT_CNST_ART", "artery with constant properties", Core::Materials::m_cnst_art); + m->add_component(parameter( + "VISCOSITY", {.description = "viscosity (for CONSTANT viscosity law taken as " + "blood viscosity, for BLOOD viscosity law " + "taken as the viscosity of blood plasma)"})); + m->add_component(parameter("DENS", {.description = "density of blood"})); m->add_component( - entry("VISCOSITY", {.description = "viscosity (for CONSTANT viscosity law taken as " - "blood viscosity, for BLOOD viscosity law " - "taken as the viscosity of blood plasma)"})); - m->add_component(entry("DENS", {.description = "density of blood"})); + parameter("YOUNG", {.description = "artery Youngs modulus of elasticity"})); + m->add_component(parameter("NUE", {.description = "Poissons ratio of artery fiber"})); + m->add_component(parameter("TH", {.description = "artery thickness"})); m->add_component( - entry("YOUNG", {.description = "artery Youngs modulus of elasticity"})); - m->add_component(entry("NUE", {.description = "Poissons ratio of artery fiber"})); - m->add_component(entry("TH", {.description = "artery thickness"})); - m->add_component(entry("PEXT1", {.description = "artery fixed external pressure 1"})); - m->add_component(entry("PEXT2", {.description = "artery fixed external pressure 2"})); - m->add_component(entry( + parameter("PEXT1", {.description = "artery fixed external pressure 1"})); + m->add_component( + parameter("PEXT2", {.description = "artery fixed external pressure 2"})); + m->add_component(parameter( "VISCOSITYLAW", {.description = "type of viscosity law, CONSTANT (default) or BLOOD", .default_value = "CONSTANT"})); - m->add_component(entry("BLOOD_VISC_SCALE_DIAM_TO_MICRONS", + m->add_component(parameter("BLOOD_VISC_SCALE_DIAM_TO_MICRONS", {.description = "used to scale the diameter for blood viscosity law to microns if your " "problem is not " "given in microns, e.g., if you use mms, set this parameter to 1.0e3", .default_value = 1.0})); - m->add_component(entry("VARYING_DIAMETERLAW", + m->add_component(parameter("VARYING_DIAMETERLAW", {.description = "type of varying diameter law, CONSTANT (default) or BY_FUNCTION", .default_value = "CONSTANT"})); - m->add_component(entry("VARYING_DIAMETER_FUNCTION", + m->add_component(parameter("VARYING_DIAMETER_FUNCTION", {.description = "function for varying diameter law", .default_value = -1})); - m->add_component(entry( + m->add_component(parameter( "COLLAPSE_THRESHOLD", {.description = "Collapse threshold for diameter (below this " "diameter element is assumed to be collapsed " "with zero diameter and is not evaluated)", @@ -2577,13 +2616,13 @@ std::shared_ptr>> Global::v auto m = std::make_shared("MAT_Fourier", "anisotropic linear Fourier's law of heat conduction", Core::Materials::m_thermo_fourier); - m->add_component(entry("CAPA", {.description = "volumetric heat capacity"})); - m->add_component(entry("CONDUCT_PARA_NUM", + m->add_component(parameter("CAPA", {.description = "volumetric heat capacity"})); + m->add_component(parameter("CONDUCT_PARA_NUM", {.description = "Parameter representing the relevant number of entries in the thermal " "conductivity tensor. Setting its value to 1 resembles a scalar " "conductivity, 2 or 3 a diagonal conductivity and 4 or 9 the full " "conductivity tensor in two and three dimensions respectively."})); - m->add_component(entry>("CONDUCT", + m->add_component(parameter>("CONDUCT", {.description = "Vector of values representing the thermal conductivity tensor in a " "row-wise ordering, with the vector size given by CONDUCT_PARA_NUM.", .size = from_parameter("CONDUCT_PARA_NUM")})); @@ -2598,17 +2637,17 @@ std::shared_ptr>> Global::v "material for heat transport due to Fourier-type thermal conduction and the Soret effect", Core::Materials::m_soret); - m->add_component(entry("CAPA", {.description = "volumetric heat capacity"})); - m->add_component(entry("CONDUCT_PARA_NUM", + m->add_component(parameter("CAPA", {.description = "volumetric heat capacity"})); + m->add_component(parameter("CONDUCT_PARA_NUM", {.description = "Parameter representing the relevant number of entries in the thermal " "conductivity tensor. Setting its value to 1 resembles a scalar " "conductivity, 2 or 3 a diagonal conductivity and 4 or 9 the full " "conductivity tensor in two and three dimensions respectively."})); - m->add_component(entry>("CONDUCT", + m->add_component(parameter>("CONDUCT", {.description = "Vector of values representing the thermal conductivity tensor in a " "row-wise ordering, with the vector size given by CONDUCT_PARA_NUM.", .size = from_parameter("CONDUCT_PARA_NUM")})); - m->add_component(entry("SORET", {.description = "Soret coefficient"})); + m->add_component(parameter("SORET", {.description = "Soret coefficient"})); Mat::append_material_definition(matlist, m); } @@ -2621,11 +2660,11 @@ std::shared_ptr>> Global::v Core::Materials::m_membrane_elasthyper); m->add_component( - entry("NUMMAT", {.description = "number of materials/potentials in list"})); - m->add_component(entry>("MATIDS", + parameter("NUMMAT", {.description = "number of materials/potentials in list"})); + m->add_component(parameter>("MATIDS", {.description = "the list material/potential IDs", .size = from_parameter("NUMMAT")})); - m->add_component(entry("DENS", {.description = "material mass density"})); - m->add_component(entry("POLYCONVEX", + m->add_component(parameter("DENS", {.description = "material mass density"})); + m->add_component(parameter("POLYCONVEX", {.description = "1.0 if polyconvexity of system is checked", .default_value = 0.})); Mat::append_material_definition(matlist, m); @@ -2637,18 +2676,19 @@ std::shared_ptr>> Global::v auto m = std::make_shared("MAT_Membrane_ActiveStrain", "active strain membrane material", Core::Materials::m_membrane_activestrain); - m->add_component(entry("MATIDPASSIVE", {.description = "MATID for the passive material"})); - m->add_component(entry( - "SCALIDVOLTAGE", {.description = "ID of the scalar that represents the (SMC) voltage"})); - m->add_component(entry("DENS", {.description = "material mass density"})); - m->add_component(entry("BETA1", {.description = "Ca2+ dynamics"})); - m->add_component(entry("BETA2", {.description = "opening dynamics of the VDCC"})); m->add_component( - entry("VOLTHRESH", {.description = "voltage threshold for activation"})); - m->add_component( - entry("ALPHA1", {.description = "intensity of contraction in fiber direction 1"})); + parameter("MATIDPASSIVE", {.description = "MATID for the passive material"})); + m->add_component(parameter( + "SCALIDVOLTAGE", {.description = "ID of the scalar that represents the (SMC) voltage"})); + m->add_component(parameter("DENS", {.description = "material mass density"})); + m->add_component(parameter("BETA1", {.description = "Ca2+ dynamics"})); + m->add_component(parameter("BETA2", {.description = "opening dynamics of the VDCC"})); m->add_component( - entry("ALPHA2", {.description = "intensity of contraction in fiber direction 2"})); + parameter("VOLTHRESH", {.description = "voltage threshold for activation"})); + m->add_component(parameter( + "ALPHA1", {.description = "intensity of contraction in fiber direction 1"})); + m->add_component(parameter( + "ALPHA2", {.description = "intensity of contraction in fiber direction 2"})); Mat::append_material_definition(matlist, m); } @@ -2659,59 +2699,59 @@ std::shared_ptr>> Global::v "growth and remodeling", Core::Materials::m_growthremodel_elasthyper); m->add_component( - entry("NUMMATRF", {.description = "number of remodelfiber materials in list"})); - m->add_component(entry( + parameter("NUMMATRF", {.description = "number of remodelfiber materials in list"})); + m->add_component(parameter( "NUMMATEL3D", {.description = "number of 3d elastin matrix materials/potentials in list", .default_value = 0})); - m->add_component(entry( + m->add_component(parameter( "NUMMATEL2D", {.description = "number of 2d elastin matrix materials/potentials in list"})); - m->add_component( - entry>("MATIDSRF", {.description = "the list remodelfiber material IDs", - .default_value = std::vector{0}, - .size = from_parameter("NUMMATRF")})); - m->add_component(entry>( + m->add_component(parameter>( + "MATIDSRF", {.description = "the list remodelfiber material IDs", + .default_value = std::vector{0}, + .size = from_parameter("NUMMATRF")})); + m->add_component(parameter>( "MATIDSEL3D", {.description = "the list 3d elastin matrix material/potential IDs", .default_value = std::vector{-1}, .size = from_parameter("NUMMATEL3D")})); - m->add_component(entry>( + m->add_component(parameter>( "MATIDSEL2D", {.description = "the list 2d elastin matrix material/potential IDs", .default_value = std::vector{0}, .size = from_parameter("NUMMATEL2D")})); - m->add_component( - entry("MATIDELPENALTY", {.description = "penalty material ID", .default_value = -1})); - m->add_component(entry("ELMASSFRAC", + m->add_component(parameter( + "MATIDELPENALTY", {.description = "penalty material ID", .default_value = -1})); + m->add_component(parameter("ELMASSFRAC", {.description = "initial mass fraction of elastin matrix in constraint mixture"})); - m->add_component(entry("DENS", {.description = "material mass density"})); - m->add_component(entry( + m->add_component(parameter("DENS", {.description = "material mass density"})); + m->add_component(parameter( "PRESTRETCHELASTINCIR", {.description = "circumferential prestretch of elastin matrix"})); - m->add_component(entry( + m->add_component(parameter( "PRESTRETCHELASTINAX", {.description = "axial prestretch of elastin matrix"})); - m->add_component(entry("THICKNESS", + m->add_component(parameter("THICKNESS", {.description = "reference wall thickness of the idealized cylindrical aneurysm [m]", .default_value = -1})); - m->add_component(entry( + m->add_component(parameter( "MEANPRESSURE", {.description = "mean blood pressure [Pa]", .default_value = -1.0})); - m->add_component(entry( + m->add_component(parameter( "RADIUS", {.description = "inner radius of the idealized cylindrical aneurysm [m]", .default_value = -1.0})); - m->add_component(entry( + m->add_component(parameter( "DAMAGE", {.description = "1: elastin damage after prestressing,0: no elastin damage"})); - m->add_component(entry("GROWTHTYPE", + m->add_component(parameter("GROWTHTYPE", {.description = "flag to decide what type of collagen growth is used: 1: anisotropic growth; " "0: isotropic growth"})); - m->add_component(entry("LOCTIMEINT", + m->add_component(parameter("LOCTIMEINT", {.description = "flag to decide what type of local time integration scheme is used: 1: " "Backward Euler Method; 0: Forward Euler Method"})); + m->add_component(parameter( + "MEMBRANE", {.description = "Flag whether Hex or Membrane elements are used ( " + "Membrane: 1, Hex: Everything else )", + .default_value = -1})); m->add_component( - entry("MEMBRANE", {.description = "Flag whether Hex or Membrane elements are used ( " - "Membrane: 1, Hex: Everything else )", - .default_value = -1})); - m->add_component( - entry("CYLINDER", {.description = "Flag that geometry is a cylinder. 1: " - "aligned in x-direction; 2: y-direction; 3: " - "z-direction", - .default_value = -1})); + parameter("CYLINDER", {.description = "Flag that geometry is a cylinder. 1: " + "aligned in x-direction; 2: y-direction; 3: " + "z-direction", + .default_value = -1})); Mat::append_material_definition(matlist, m); } @@ -2722,19 +2762,19 @@ std::shared_ptr>> Global::v "multiplicative split of deformation gradient", Core::Materials::m_multiplicative_split_defgrad_elasthyper); - m->add_component( - entry("NUMMATEL", {.description = "number of elastic materials/potentials in list"})); - m->add_component(entry>( + m->add_component(parameter( + "NUMMATEL", {.description = "number of elastic materials/potentials in list"})); + m->add_component(parameter>( "MATIDSEL", {.description = "the list of elastic material/potential IDs", .default_value = std::vector{-1}, .size = from_parameter("NUMMATEL")})); - m->add_component(entry( + m->add_component(parameter( "NUMFACINEL", {.description = "number of factors of inelastic deformation gradient"})); - m->add_component(entry>("INELDEFGRADFACIDS", + m->add_component(parameter>("INELDEFGRADFACIDS", {.description = "the list of inelastic deformation gradient factor IDs", .default_value = std::vector{0}, .size = from_parameter("NUMFACINEL")})); - m->add_component(entry("DENS", {.description = "material mass density"})); + m->add_component(parameter("DENS", {.description = "material mass density"})); Mat::append_material_definition(matlist, m); } @@ -2757,10 +2797,11 @@ std::shared_ptr>> Global::v "material configuration)", Core::Materials::mfi_lin_scalar_iso); - m->add_component(entry("SCALAR1", {.description = "number of growth inducing scalar"})); - m->add_component(entry("SCALAR1_MolarGrowthFac", + m->add_component( + parameter("SCALAR1", {.description = "number of growth inducing scalar"})); + m->add_component(parameter("SCALAR1_MolarGrowthFac", {.description = "isotropic molar growth factor due to scalar 1"})); - m->add_component(entry("SCALAR1_RefConc", + m->add_component(parameter("SCALAR1_RefConc", {.description = "reference concentration of scalar 1 causing no strains"})); Mat::append_material_definition(matlist, m); @@ -2776,14 +2817,15 @@ std::shared_ptr>> Global::v "volume change linearly dependent on scalar (in material configuration)", Core::Materials::mfi_lin_scalar_aniso); - m->add_component(entry("SCALAR1", {.description = "number of growth inducing scalar"})); - m->add_component(entry("SCALAR1_MolarGrowthFac", + m->add_component( + parameter("SCALAR1", {.description = "number of growth inducing scalar"})); + m->add_component(parameter("SCALAR1_MolarGrowthFac", {.description = "anisotropic molar growth factor due to scalar 1"})); - m->add_component(entry("SCALAR1_RefConc", + m->add_component(parameter("SCALAR1_RefConc", {.description = "reference concentration of scalar 1 causing no strains"})); m->add_component( - entry("NUMSPACEDIM", {.description = "Number of space dimension (only 3 valid)"})); - m->add_component(entry>( + parameter("NUMSPACEDIM", {.description = "Number of space dimension (only 3 valid)"})); + m->add_component(parameter>( "GrowthDirection", {.description = "vector that defines the growth direction", .size = from_parameter("NUMSPACEDIM")})); @@ -2800,20 +2842,21 @@ std::shared_ptr>> Global::v "configuration)", Core::Materials::mfi_poly_intercal_frac_iso); - m->add_component(entry("SCALAR1", {.description = "number of growth inducing scalar"})); - m->add_component(entry("SCALAR1_RefConc", + m->add_component( + parameter("SCALAR1", {.description = "number of growth inducing scalar"})); + m->add_component(parameter("SCALAR1_RefConc", {.description = "reference concentration of scalar 1 causing no strains"})); m->add_component( - entry("POLY_PARA_NUM", {.description = "number of polynomial coefficients"})); - m->add_component(entry>( + parameter("POLY_PARA_NUM", {.description = "number of polynomial coefficients"})); + m->add_component(parameter>( "POLY_PARAMS", {.description = "coefficients of polynomial", .size = from_parameter("POLY_PARA_NUM")})); m->add_component( - entry("X_min", {.description = "lower bound of validity of polynomial"})); + parameter("X_min", {.description = "lower bound of validity of polynomial"})); m->add_component( - entry("X_max", {.description = "upper bound of validity of polynomial"})); - m->add_component( - entry("MATID", {.description = "material ID of the corresponding scatra material"})); + parameter("X_max", {.description = "upper bound of validity of polynomial"})); + m->add_component(parameter( + "MATID", {.description = "material ID of the corresponding scatra material"})); Mat::append_material_definition(matlist, m); } @@ -2829,25 +2872,26 @@ std::shared_ptr>> Global::v "using the scalar concentration (in material configuration)", Core::Materials::mfi_poly_intercal_frac_aniso); - m->add_component(entry("SCALAR1", {.description = "number of growth inducing scalar"})); - m->add_component(entry("SCALAR1_RefConc", + m->add_component( + parameter("SCALAR1", {.description = "number of growth inducing scalar"})); + m->add_component(parameter("SCALAR1_RefConc", {.description = "reference concentration of scalar 1 causing no strains"})); m->add_component( - entry("NUMSPACEDIM", {.description = "Number of space dimension (only 3 valid)"})); - m->add_component(entry>( + parameter("NUMSPACEDIM", {.description = "Number of space dimension (only 3 valid)"})); + m->add_component(parameter>( "GrowthDirection", {.description = "vector that defines the growth direction", .size = from_parameter("NUMSPACEDIM")})); m->add_component( - entry("POLY_PARA_NUM", {.description = "number of polynomial coefficients"})); - m->add_component(entry>( + parameter("POLY_PARA_NUM", {.description = "number of polynomial coefficients"})); + m->add_component(parameter>( "POLY_PARAMS", {.description = "coefficients of polynomial", .size = from_parameter("POLY_PARA_NUM")})); m->add_component( - entry("X_min", {.description = "lower bound of validity of polynomial"})); - m->add_component( - entry("X_max", {.description = "upper bound of validity of polynomial"})); + parameter("X_min", {.description = "lower bound of validity of polynomial"})); m->add_component( - entry("MATID", {.description = "material ID of the corresponding scatra material"})); + parameter("X_max", {.description = "upper bound of validity of polynomial"})); + m->add_component(parameter( + "MATID", {.description = "material ID of the corresponding scatra material"})); Mat::append_material_definition(matlist, m); } @@ -2858,10 +2902,10 @@ std::shared_ptr>> Global::v "Temperature dependent growth law. Volume change linearly dependent on temperature", Core::Materials::mfi_lin_temp_iso); - m->add_component(entry( + m->add_component(parameter( "Temp_GrowthFac", {.description = "isotropic growth factor due to temperature"})); m->add_component( - entry("RefTemp", {.description = "reference temperature causing no strains"})); + parameter("RefTemp", {.description = "reference temperature causing no strains"})); Mat::append_material_definition(matlist, m); } @@ -2874,9 +2918,9 @@ std::shared_ptr>> Global::v "by 'FUNCT_NUM", Core::Materials::mfi_time_funct); - m->add_component( - entry("FUNCT_NUM", {.description = "Time-dependent function of the determinant of the " - "inelastic deformation gradient"})); + m->add_component(parameter( + "FUNCT_NUM", {.description = "Time-dependent function of the determinant of the " + "inelastic deformation gradient"})); Mat::append_material_definition(matlist, m); } @@ -2890,35 +2934,35 @@ std::shared_ptr>> Global::v "+ hardening model)", Core::Materials::mfi_transv_isotrop_elast_viscoplast); - m->add_component(entry( + m->add_component(parameter( "VISCOPLAST_LAW_ID", {.description = "MAT ID of the corresponding viscoplastic law"})); - m->add_component(entry("FIBER_READER_ID", + m->add_component(parameter("FIBER_READER_ID", {.description = "MAT ID of the used fiber direction reader for transversely isotropic behavior"})); - m->add_component(entry("YIELD_COND_A", + m->add_component(parameter("YIELD_COND_A", {.description = "transversely isotropic version of the Hill(1948) yield condition: parameter A, " "following " "the notation in Dafalias 1989, International Journal of Plasticity, Vol. 5"})); - m->add_component(entry("YIELD_COND_B", + m->add_component(parameter("YIELD_COND_B", {.description = "transversely isotropic version of the Hill(1948) yield condition: parameter B, " "following " "the notation in Dafalias 1989, International Journal of Plasticity, Vol. 5"})); - m->add_component(entry("YIELD_COND_F", + m->add_component(parameter("YIELD_COND_F", {.description = "transversely isotropic version of the Hill(1948) yield condition: parameter F, " "following " "the notation in Dafalias 1989, International Journal of Plasticity, Vol. 5"})); - m->add_component(entry("ANISOTROPY", + m->add_component(parameter("ANISOTROPY", {.description = "Anisotropy type: transversely isotropic (transvisotrop; transverseisotropic; " "transverselyisotropic) | isotropic (isotrop; isotropic; Default)"})); - m->add_component(entry( + m->add_component(parameter( "LOG_SUBSTEP", {.description = "boolean: time integration of internal variables using " "logarithmic substepping (True) or " "standard substepping (False)?"})); - m->add_component(entry( + m->add_component(parameter( "MAX_HALVE_NUM_SUBSTEP", {.description = "maximum number of times the global time step can " "be halved in the substepping procedure"})); @@ -2934,15 +2978,15 @@ std::shared_ptr>> Global::v "law), as shown in Mareau et al. (Mechanics of Materials 143, 2020)", Core::Materials::mvl_reformulated_Johnson_Cook); - m->add_component(entry( + m->add_component(parameter( "STRAIN_RATE_PREFAC", {.description = "reference plastic strain rate $\\dot{P}_0$ "})); - m->add_component(entry( + m->add_component(parameter( "STRAIN_RATE_EXP_FAC", {.description = "exponential factor of plastic strain rate $C$"})); - m->add_component(entry( + m->add_component(parameter( "INIT_YIELD_STRENGTH", {.description = "initial yield strength of the material $A_0$"})); - m->add_component(entry("ISOTROP_HARDEN_PREFAC", + m->add_component(parameter("ISOTROP_HARDEN_PREFAC", {.description = "prefactor of the isotropic hardening stress $B_0$"})); - m->add_component(entry( + m->add_component(parameter( "ISOTROP_HARDEN_EXP", {.description = "exponent of the isotropic hardening stress $n$"})); Mat::append_material_definition(matlist, m); @@ -2956,9 +3000,9 @@ std::shared_ptr>> Global::v Core::Materials::m_sc_dep_interp); mm->add_component( - entry("IDMATZEROSC", {.description = "material for lambda equal to zero"})); + parameter("IDMATZEROSC", {.description = "material for lambda equal to zero"})); mm->add_component( - entry("IDMATUNITSC", {.description = "material for lambda equal to one"})); + parameter("IDMATUNITSC", {.description = "material for lambda equal to one"})); Mat::append_material_definition(matlist, mm); } @@ -2969,65 +3013,67 @@ std::shared_ptr>> Global::v auto m = std::make_shared("MAT_ConstraintMixture", "growth and remodeling of arteries", Core::Materials::m_constraintmixture); - m->add_component(entry("DENS", {.description = "Density"})); - m->add_component(entry("MUE", {.description = "Shear Modulus"})); - m->add_component(entry("NUE", {.description = "Poisson's ratio"})); - m->add_component(entry("PHIE", {.description = "mass fraction of elastin"})); - m->add_component(entry("PREELA", {.description = "prestretch of elastin"})); - m->add_component( - entry("K1", {.description = "Parameter for linear collagen fiber stiffness"})); - m->add_component( - entry("K2", {.description = "Parameter for exponential collagen fiber stiffness"})); - m->add_component(entry("NUMHOM", {.description = "Number of homeostatic parameters"})); - m->add_component(entry>("PRECOLL", + m->add_component(parameter("DENS", {.description = "Density"})); + m->add_component(parameter("MUE", {.description = "Shear Modulus"})); + m->add_component(parameter("NUE", {.description = "Poisson's ratio"})); + m->add_component(parameter("PHIE", {.description = "mass fraction of elastin"})); + m->add_component(parameter("PREELA", {.description = "prestretch of elastin"})); + m->add_component( + parameter("K1", {.description = "Parameter for linear collagen fiber stiffness"})); + m->add_component(parameter( + "K2", {.description = "Parameter for exponential collagen fiber stiffness"})); + m->add_component(parameter("NUMHOM", {.description = "Number of homeostatic parameters"})); + m->add_component(parameter>("PRECOLL", {.description = "prestretch of collagen fibers", .size = from_parameter("NUMHOM")})); - m->add_component(entry("DAMAGE", {.description = "damage stretch of collagen fibers"})); - m->add_component(entry( + m->add_component( + parameter("DAMAGE", {.description = "damage stretch of collagen fibers"})); + m->add_component(parameter( "K1M", {.description = "Parameter for linear smooth muscle fiber stiffness"})); - m->add_component(entry( + m->add_component(parameter( "K2M", {.description = "Parameter for exponential smooth muscle fiber stiffness"})); - m->add_component(entry("PHIM", {.description = "mass fraction of smooth muscle"})); - m->add_component( - entry("PREMUS", {.description = "prestretch of smooth muscle fibers"})); - m->add_component(entry("SMAX", {.description = "maximal active stress"})); - m->add_component(entry("KAPPA", {.description = "dilatation modulus"})); - m->add_component(entry("LIFETIME", {.description = "lifetime of collagen fibers"})); - m->add_component(entry("GROWTHFAC", {.description = "growth factor for stress"})); - m->add_component(entry>( + m->add_component(parameter("PHIM", {.description = "mass fraction of smooth muscle"})); + m->add_component( + parameter("PREMUS", {.description = "prestretch of smooth muscle fibers"})); + m->add_component(parameter("SMAX", {.description = "maximal active stress"})); + m->add_component(parameter("KAPPA", {.description = "dilatation modulus"})); + m->add_component(parameter("LIFETIME", {.description = "lifetime of collagen fibers"})); + m->add_component(parameter("GROWTHFAC", {.description = "growth factor for stress"})); + m->add_component(parameter>( "HOMSTR", {.description = "homeostatic target value of scalar stress measure", .size = from_parameter("NUMHOM")})); - m->add_component(entry("SHEARGROWTHFAC", {.description = "growth factor for shear"})); m->add_component( - entry("HOMRAD", {.description = "homeostatic target value of inner radius"})); + parameter("SHEARGROWTHFAC", {.description = "growth factor for shear"})); m->add_component( - entry("STARTTIME", {.description = "at this time turnover of collagen starts"})); + parameter("HOMRAD", {.description = "homeostatic target value of inner radius"})); + m->add_component(parameter( + "STARTTIME", {.description = "at this time turnover of collagen starts"})); m->add_component( - entry("INTEGRATION", {.description = "time integration scheme: " - "Explicit (default), or Implicit"})); - m->add_component(entry("TOL", + parameter("INTEGRATION", {.description = "time integration scheme: " + "Explicit (default), or Implicit"})); + m->add_component(parameter("TOL", {.description = "tolerance for local Newton iteration, only for implicit integration"})); m->add_component( - entry("GROWTHFORCE", {.description = "driving force of growth: " - "Single (default), All, ElaCol"})); + parameter("GROWTHFORCE", {.description = "driving force of growth: " + "Single (default), All, ElaCol"})); + m->add_component(parameter( + "ELASTINDEGRAD", {.description = "how elastin is degraded: " + "None (default), Rectangle, Time"})); m->add_component( - entry("ELASTINDEGRAD", {.description = "how elastin is degraded: " - "None (default), Rectangle, Time"})); - m->add_component( - entry("MASSPROD", {.description = "how mass depends on driving force: " - "Lin (default), CosCos"})); - m->add_component(entry("INITSTRETCH", + parameter("MASSPROD", {.description = "how mass depends on driving force: " + "Lin (default), CosCos"})); + m->add_component(parameter("INITSTRETCH", {.description = "how to set stretches in the beginning (None, Homeo, UpdatePrestretch)", .default_value = "None"})); - m->add_component(entry( + m->add_component(parameter( "CURVE", {.description = "number of timecurve for increase of prestretch in time"})); m->add_component( - entry("DEGOPTION", {.description = "Type of degradation function: " - "Lin (default), Cos, Exp, ExpVar"})); + parameter("DEGOPTION", {.description = "Type of degradation function: " + "Lin (default), Cos, Exp, ExpVar"})); m->add_component( - entry("MAXMASSPRODFAC", {.description = "maximal factor of mass production"})); - m->add_component(entry( + parameter("MAXMASSPRODFAC", {.description = "maximal factor of mass production"})); + m->add_component(parameter( "ELASTINFAC", {.description = "factor for elastin content", .default_value = 0.0})); - m->add_component(entry("STOREHISTORY", + m->add_component(parameter("STOREHISTORY", {.description = "store all history variables, not recommended for forward simulations", .default_value = false})); @@ -3040,10 +3086,10 @@ std::shared_ptr>> Global::v auto m = std::make_shared("MAT_StructPoro", "wrapper for structure poroelastic material", Core::Materials::m_structporo); - m->add_component(entry("MATID", {.description = "ID of structure material"})); - m->add_component(entry("POROLAWID", {.description = "ID of porosity law"})); + m->add_component(parameter("MATID", {.description = "ID of structure material"})); + m->add_component(parameter("POROLAWID", {.description = "ID of porosity law"})); m->add_component( - entry("INITPOROSITY", {.description = "initial porosity of porous medium"})); + parameter("INITPOROSITY", {.description = "initial porosity of porous medium"})); Mat::append_material_definition(matlist, m); } @@ -3054,7 +3100,7 @@ std::shared_ptr>> Global::v "linear constitutive law for porosity", Core::Materials::m_poro_law_linear); m->add_component( - entry("BULKMODULUS", {.description = "bulk modulus of porous medium"})); + parameter("BULKMODULUS", {.description = "bulk modulus of porous medium"})); Mat::append_material_definition(matlist, m); } @@ -3074,9 +3120,9 @@ std::shared_ptr>> Global::v Core::Materials::m_poro_law_logNeoHooke_Penalty); m->add_component( - entry("BULKMODULUS", {.description = "bulk modulus of porous medium"})); - m->add_component( - entry("PENALTYPARAMETER", {.description = "penalty parameter of porous medium"})); + parameter("BULKMODULUS", {.description = "bulk modulus of porous medium"})); + m->add_component(parameter( + "PENALTYPARAMETER", {.description = "penalty parameter of porous medium"})); Mat::append_material_definition(matlist, m); } @@ -3096,10 +3142,10 @@ std::shared_ptr>> Global::v auto m = std::make_shared("MAT_PoroLawLinBiot", "linear biot model for porosity law", Core::Materials::m_poro_law_linear_biot); + m->add_component(parameter( + "INVBIOTMODULUS", {.description = "inverse Biot modulus of porous medium"})); m->add_component( - entry("INVBIOTMODULUS", {.description = "inverse Biot modulus of porous medium"})); - m->add_component( - entry("BIOTCEOFF", {.description = "Biot coefficient of porous medium"})); + parameter("BIOTCEOFF", {.description = "Biot coefficient of porous medium"})); Mat::append_material_definition(matlist, m); } @@ -3110,7 +3156,7 @@ std::shared_ptr>> Global::v auto m = std::make_shared("MAT_PoroLawDensityDependent", "porosity depending on the density", Core::Materials::m_poro_law_density_dependent); - m->add_component(entry("DENSITYLAWID", {.description = "material ID of density law"})); + m->add_component(parameter("DENSITYLAWID", {.description = "material ID of density law"})); Mat::append_material_definition(matlist, m); } @@ -3133,7 +3179,7 @@ std::shared_ptr>> Global::v Core::Materials::m_poro_densitylaw_exp); m->add_component( - entry("BULKMODULUS", {.description = "bulk modulus of porous medium"})); + parameter("BULKMODULUS", {.description = "bulk modulus of porous medium"})); Mat::append_material_definition(matlist, m); } @@ -3144,7 +3190,7 @@ std::shared_ptr>> Global::v "permeability law for constant permeability in porous multiphase medium", Core::Materials::m_fluidporo_relpermeabilitylaw_constant); - m->add_component(entry("VALUE", {.description = "constant value of permeability"})); + m->add_component(parameter("VALUE", {.description = "constant value of permeability"})); Mat::append_material_definition(matlist, m); } @@ -3157,8 +3203,8 @@ std::shared_ptr>> Global::v Core::Materials::m_fluidporo_relpermeabilitylaw_exp); m->add_component( - entry("EXP", {.description = "exponent of the saturation of this phase"})); - m->add_component(entry( + parameter("EXP", {.description = "exponent of the saturation of this phase"})); + m->add_component(parameter( "MIN_SAT", {.description = "minimum saturation which is used for calculation"})); Mat::append_material_definition(matlist, m); } @@ -3170,7 +3216,7 @@ std::shared_ptr>> Global::v "viscosity law for constant viscosity in porous multiphase medium", Core::Materials::m_fluidporo_viscositylaw_constant); - m->add_component(entry("VALUE", {.description = "constant value of viscosity"})); + m->add_component(parameter("VALUE", {.description = "constant value of viscosity"})); Mat::append_material_definition(matlist, m); } @@ -3181,12 +3227,12 @@ std::shared_ptr>> Global::v "visosity law depending on pressure gradient in porous multiphase medium", Core::Materials::m_fluidporo_viscositylaw_celladh); + m->add_component(parameter( + "VISC_0", {.description = "Visc0 parameter for modelling cell adherence"})); m->add_component( - entry("VISC_0", {.description = "Visc0 parameter for modelling cell adherence"})); - m->add_component( - entry("XI", {.description = "xi parameter for modelling cell adherence"})); + parameter("XI", {.description = "xi parameter for modelling cell adherence"})); m->add_component( - entry("PSI", {.description = "psi parameter for modelling cell adherence"})); + parameter("PSI", {.description = "psi parameter for modelling cell adherence"})); Mat::append_material_definition(matlist, m); } @@ -3197,11 +3243,11 @@ std::shared_ptr>> Global::v "wrapper for structure porelastic material with reaction", Core::Materials::m_structpororeaction); - m->add_component(entry("MATID", {.description = "ID of structure material"})); - m->add_component(entry("POROLAWID", {.description = "ID of porosity law"})); + m->add_component(parameter("MATID", {.description = "ID of structure material"})); + m->add_component(parameter("POROLAWID", {.description = "ID of porosity law"})); m->add_component( - entry("INITPOROSITY", {.description = "initial porosity of porous medium"})); - m->add_component(entry("DOFIDREACSCALAR", + parameter("INITPOROSITY", {.description = "initial porosity of porous medium"})); + m->add_component(parameter("DOFIDREACSCALAR", {.description = "Id of DOF within scalar transport problem, which controls the reaction"})); Mat::append_material_definition(matlist, m); @@ -3214,12 +3260,12 @@ std::shared_ptr>> Global::v "wrapper for structure porelastic material with reaction", Core::Materials::m_structpororeactionECM); - m->add_component(entry("MATID", {.description = "ID of structure material"})); - m->add_component(entry("POROLAWID", {.description = "ID of porosity law"})); + m->add_component(parameter("MATID", {.description = "ID of structure material"})); + m->add_component(parameter("POROLAWID", {.description = "ID of porosity law"})); m->add_component( - entry("INITPOROSITY", {.description = "initial porosity of porous medium"})); - m->add_component(entry("DENSCOLLAGEN", {.description = "density of collagen"})); - m->add_component(entry("DOFIDREACSCALAR", + parameter("INITPOROSITY", {.description = "initial porosity of porous medium"})); + m->add_component(parameter("DENSCOLLAGEN", {.description = "density of collagen"})); + m->add_component(parameter("DOFIDREACSCALAR", {.description = "Id of DOF within scalar transport problem, which controls the reaction"})); Mat::append_material_definition(matlist, m); } @@ -3230,23 +3276,23 @@ std::shared_ptr>> Global::v auto m = std::make_shared( "MAT_FluidPoro", "flow in deformable porous media", Core::Materials::m_fluidporo); - m->add_component(entry("DYNVISCOSITY", {.description = "dynamic viscosity"})); - m->add_component(entry("DENSITY", {.description = "density"})); - m->add_component(entry( + m->add_component(parameter("DYNVISCOSITY", {.description = "dynamic viscosity"})); + m->add_component(parameter("DENSITY", {.description = "density"})); + m->add_component(parameter( "PERMEABILITY", {.description = "permeability of medium", .default_value = 0.0})); - m->add_component(entry("AXIALPERMEABILITY", + m->add_component(parameter("AXIALPERMEABILITY", {.description = "axial permeability for transverse isotropy", .default_value = 0.0})); - m->add_component(entry("ORTHOPERMEABILITY1", + m->add_component(parameter("ORTHOPERMEABILITY1", {.description = "first permeability for orthotropy", .default_value = 0.0})); - m->add_component(entry("ORTHOPERMEABILITY2", + m->add_component(parameter("ORTHOPERMEABILITY2", {.description = "second permeability for orthotropy", .default_value = 0.0})); - m->add_component(entry("ORTHOPERMEABILITY3", + m->add_component(parameter("ORTHOPERMEABILITY3", {.description = "third permeability for orthotropy", .default_value = 0.0})); - m->add_component(entry( + m->add_component(parameter( "TYPE", {.description = "Problem type: Darcy (default) or Darcy-Brinkman", .default_value = "Darcy"})); // optional parameter - m->add_component(entry("PERMEABILITYFUNCTION", + m->add_component(parameter("PERMEABILITYFUNCTION", {.description = "Permeability function: Const(Default) or Kozeny_Carman", .default_value = "Const"})); @@ -3259,13 +3305,13 @@ std::shared_ptr>> Global::v auto m = std::make_shared("MAT_FluidPoroMultiPhase", "multi phase flow in deformable porous media", Core::Materials::m_fluidporo_multiphase); - m->add_component(entry("LOCAL", + m->add_component(parameter("LOCAL", {.description = "individual materials allocated per element or only at global scope"})); - m->add_component(entry("PERMEABILITY", {.description = "permeability of medium"})); - m->add_component(entry("NUMMAT", {.description = "number of materials in list"})); - m->add_component(entry>( + m->add_component(parameter("PERMEABILITY", {.description = "permeability of medium"})); + m->add_component(parameter("NUMMAT", {.description = "number of materials in list"})); + m->add_component(parameter>( "MATIDS", {.description = "the list material IDs", .size = from_parameter("NUMMAT")})); - m->add_component(entry( + m->add_component(parameter( "NUMFLUIDPHASES_IN_MULTIPHASEPORESPACE", {.description = "number of fluid phases"})); Mat::append_material_definition(matlist, m); @@ -3278,20 +3324,20 @@ std::shared_ptr>> Global::v "multi phase flow in deformable porous media and list of reactions", Core::Materials::m_fluidporo_multiphase_reactions); - m->add_component(entry("LOCAL", + m->add_component(parameter("LOCAL", {.description = "individual materials allocated per element or only at global scope"})); - m->add_component(entry("PERMEABILITY", {.description = "permeability of medium"})); - m->add_component(entry("NUMMAT", {.description = "number of materials in list"})); - m->add_component(entry>( + m->add_component(parameter("PERMEABILITY", {.description = "permeability of medium"})); + m->add_component(parameter("NUMMAT", {.description = "number of materials in list"})); + m->add_component(parameter>( "MATIDS", {.description = "the list material IDs", .size = from_parameter("NUMMAT")})); - m->add_component(entry( + m->add_component(parameter( "NUMFLUIDPHASES_IN_MULTIPHASEPORESPACE", {.description = "number of fluid phases"})); m->add_component( - entry("NUMREAC", {.description = "number of reactions for these elements"})); + parameter("NUMREAC", {.description = "number of reactions for these elements"})); m->add_component( - entry>("REACIDS", {.description = "advanced reaction list", - .default_value = std::vector{0}, - .size = from_parameter("NUMREAC")})); + parameter>("REACIDS", {.description = "advanced reaction list", + .default_value = std::vector{0}, + .size = from_parameter("NUMREAC")})); Mat::append_material_definition(matlist, m); } @@ -3303,16 +3349,18 @@ std::shared_ptr>> Global::v "advanced reaction material", Core::Materials::m_fluidporo_singlereaction); m->add_component( - entry("NUMSCAL", {.description = "number of scalars coupled with this problem"})); - m->add_component(entry("TOTALNUMDOF", {.description = "total number of multiphase-dofs"})); - m->add_component(entry("NUMVOLFRAC", {.description = "number of volfracs"})); - m->add_component(entry>("SCALE", + parameter("NUMSCAL", {.description = "number of scalars coupled with this problem"})); + m->add_component( + parameter("TOTALNUMDOF", {.description = "total number of multiphase-dofs"})); + m->add_component(parameter("NUMVOLFRAC", {.description = "number of volfracs"})); + m->add_component(parameter>("SCALE", {.description = "advanced reaction list", .size = from_parameter("TOTALNUMDOF")})); m->add_component( - entry("COUPLING", {.description = "type of coupling: " - "scalar_by_function, no_coupling " - "(default)"})); - m->add_component(entry("FUNCTID", {.description = "function ID defining the reaction"})); + parameter("COUPLING", {.description = "type of coupling: " + "scalar_by_function, no_coupling " + "(default)"})); + m->add_component( + parameter("FUNCTID", {.description = "function ID defining the reaction"})); Mat::append_material_definition(matlist, m); } @@ -3324,12 +3372,12 @@ std::shared_ptr>> Global::v "one phase for multiphase flow in deformable porous media", Core::Materials::m_fluidporo_singlephase); - m->add_component(entry("DENSITYLAWID", {.description = "ID of density law"})); - m->add_component(entry("DENSITY", {.description = "reference/initial density"})); + m->add_component(parameter("DENSITYLAWID", {.description = "ID of density law"})); + m->add_component(parameter("DENSITY", {.description = "reference/initial density"})); m->add_component( - entry("RELPERMEABILITYLAWID", {.description = "ID of relative permeability law"})); - m->add_component(entry("VISCOSITYLAWID", {.description = "ID of viscosity law"})); - m->add_component(entry("DOFTYPEID", {.description = "ID of dof definition"})); + parameter("RELPERMEABILITYLAWID", {.description = "ID of relative permeability law"})); + m->add_component(parameter("VISCOSITYLAWID", {.description = "ID of viscosity law"})); + m->add_component(parameter("DOFTYPEID", {.description = "ID of dof definition"})); Mat::append_material_definition(matlist, m); } @@ -3341,17 +3389,17 @@ std::shared_ptr>> Global::v "one phase for multiphase flow in deformable porous media", Core::Materials::m_fluidporo_singlevolfrac); - m->add_component(entry("DENSITY", {.description = "reference/initial density"})); - m->add_component(entry("DIFFUSIVITY", {.description = "diffusivity of phase"})); - m->add_component(entry("AddScalarDependentFlux", + m->add_component(parameter("DENSITY", {.description = "reference/initial density"})); + m->add_component(parameter("DIFFUSIVITY", {.description = "diffusivity of phase"})); + m->add_component(parameter("AddScalarDependentFlux", {.description = "Is there additional scalar dependent flux (yes) or (no)"})); m->add_component( - entry("NUMSCAL", {.description = "Number of scalars", .default_value = 0})); - m->add_component(entry>( + parameter("NUMSCAL", {.description = "Number of scalars", .default_value = 0})); + m->add_component(parameter>( "SCALARDIFFS", {.description = "Diffusivities for additional scalar-dependent flux", .default_value = std::vector{}, .size = from_parameter("NUMSCAL")})); - m->add_component(entry>( + m->add_component(parameter>( "OMEGA_HALF", {.description = "Constant for receptor kinetic law", .required = false, .size = from_parameter("NUMSCAL")})); @@ -3366,9 +3414,9 @@ std::shared_ptr>> Global::v "one volume fraction pressure for multiphase flow in deformable porous media", Core::Materials::m_fluidporo_volfracpressure); - m->add_component(entry("PERMEABILITY", {.description = "permeability of phase"})); - m->add_component(entry("VISCOSITYLAWID", {.description = "ID of viscosity law"})); - m->add_component(entry("MIN_VOLFRAC", + m->add_component(parameter("PERMEABILITY", {.description = "permeability of phase"})); + m->add_component(parameter("VISCOSITYLAWID", {.description = "ID of viscosity law"})); + m->add_component(parameter("MIN_VOLFRAC", {.description = "Minimum volume fraction under which we assume that VolfracPressure is zero", .default_value = 1.0e-3})); @@ -3383,9 +3431,10 @@ std::shared_ptr>> Global::v "one degrree of freedom for multiphase flow in deformable porous media", Core::Materials::m_fluidporo_phasedof_diffpressure); - m->add_component(entry("PHASELAWID", {.description = "ID of pressure-saturation law"})); - m->add_component(entry("NUMDOF", {.description = "number of DoFs"})); - m->add_component(entry>( + m->add_component( + parameter("PHASELAWID", {.description = "ID of pressure-saturation law"})); + m->add_component(parameter("NUMDOF", {.description = "number of DoFs"})); + m->add_component(parameter>( "PRESCOEFF", {.description = "pressure IDs for differential pressure", .default_value = std::vector{0}, .size = from_parameter("NUMDOF")})); @@ -3400,7 +3449,8 @@ std::shared_ptr>> Global::v "one degrree of freedom for multiphase flow in deformable porous media", Core::Materials::m_fluidporo_phasedof_pressure); - m->add_component(entry("PHASELAWID", {.description = "ID of pressure-saturation law"})); + m->add_component( + parameter("PHASELAWID", {.description = "ID of pressure-saturation law"})); Mat::append_material_definition(matlist, m); } @@ -3412,7 +3462,8 @@ std::shared_ptr>> Global::v "one degrree of freedom for multiphase flow in deformable porous media", Core::Materials::m_fluidporo_phasedof_saturation); - m->add_component(entry("PHASELAWID", {.description = "ID of pressure-saturation law"})); + m->add_component( + parameter("PHASELAWID", {.description = "ID of pressure-saturation law"})); Mat::append_material_definition(matlist, m); } @@ -3423,14 +3474,15 @@ std::shared_ptr>> Global::v auto m = std::make_shared("MAT_PhaseLawLinear", "saturated fluid phase of porous medium", Core::Materials::m_fluidporo_phaselaw_linear); - m->add_component(entry("RELTENSION", {.description = "relative interface tensions"})); m->add_component( - entry("SATURATION_0", {.description = "saturation at zero differential pressure"})); - m->add_component(entry("NUMDOF", {.description = "number of DoFs"})); - m->add_component( - entry>("PRESCOEFF", {.description = "Coefficients for pressure dependence", - .default_value = std::vector{0}, - .size = from_parameter("NUMDOF")})); + parameter("RELTENSION", {.description = "relative interface tensions"})); + m->add_component(parameter( + "SATURATION_0", {.description = "saturation at zero differential pressure"})); + m->add_component(parameter("NUMDOF", {.description = "number of DoFs"})); + m->add_component(parameter>( + "PRESCOEFF", {.description = "Coefficients for pressure dependence", + .default_value = std::vector{0}, + .size = from_parameter("NUMDOF")})); Mat::append_material_definition(matlist, m); } @@ -3441,15 +3493,17 @@ std::shared_ptr>> Global::v auto m = std::make_shared("MAT_PhaseLawTangent", "tangent fluid phase of porous medium", Core::Materials::m_fluidporo_phaselaw_tangent); - m->add_component(entry("RELTENSION", {.description = "relative interface tensions"})); - m->add_component(entry("EXP", {.description = "exponent in pressure-saturation law"})); m->add_component( - entry("SATURATION_0", {.description = "saturation at zero differential pressure"})); - m->add_component(entry("NUMDOF", {.description = "number of DoFs"})); + parameter("RELTENSION", {.description = "relative interface tensions"})); m->add_component( - entry>("PRESCOEFF", {.description = "Coefficients for pressure dependence", - .default_value = std::vector{0}, - .size = from_parameter("NUMDOF")})); + parameter("EXP", {.description = "exponent in pressure-saturation law"})); + m->add_component(parameter( + "SATURATION_0", {.description = "saturation at zero differential pressure"})); + m->add_component(parameter("NUMDOF", {.description = "number of DoFs"})); + m->add_component(parameter>( + "PRESCOEFF", {.description = "Coefficients for pressure dependence", + .default_value = std::vector{0}, + .size = from_parameter("NUMDOF")})); Mat::append_material_definition(matlist, m); } @@ -3472,13 +3526,13 @@ std::shared_ptr>> Global::v Core::Materials::m_fluidporo_phaselaw_byfunction); m->add_component( - entry("FUNCTPRES", {.description = "ID of function for differential pressure"})); - m->add_component(entry("FUNCTSAT", {.description = "ID of function for saturation"})); - m->add_component(entry("NUMDOF", {.description = "number of DoFs"})); - m->add_component( - entry>("PRESCOEFF", {.description = "Coefficients for pressure dependence", - .default_value = std::vector{0}, - .size = from_parameter("NUMDOF")})); + parameter("FUNCTPRES", {.description = "ID of function for differential pressure"})); + m->add_component(parameter("FUNCTSAT", {.description = "ID of function for saturation"})); + m->add_component(parameter("NUMDOF", {.description = "number of DoFs"})); + m->add_component(parameter>( + "PRESCOEFF", {.description = "Coefficients for pressure dependence", + .default_value = std::vector{0}, + .size = from_parameter("NUMDOF")})); Mat::append_material_definition(matlist, m); } @@ -3489,8 +3543,8 @@ std::shared_ptr>> Global::v auto m = std::make_shared( "MAT_Struct_Spring", "elastic spring", Core::Materials::m_spring); - m->add_component(entry("STIFFNESS", {.description = "spring constant"})); - m->add_component(entry("DENS", {.description = "density"})); + m->add_component(parameter("STIFFNESS", {.description = "spring constant"})); + m->add_component(parameter("DENS", {.description = "density"})); Mat::append_material_definition(matlist, m); } @@ -3539,30 +3593,31 @@ std::shared_ptr>> Global::v Core::Materials::m_beam_reissner_elast_hyper); - matdef->add_component(entry("YOUNG", {.description = "Young's modulus"})); + matdef->add_component(parameter("YOUNG", {.description = "Young's modulus"})); /* note: we define both of the two following (redundant) parameters to be optional. * upon initialization of the material, we assure that one of them is * properly defined. */ matdef->add_component( - entry("SHEARMOD", {.description = "shear modulus", .default_value = -1.0})); - matdef->add_component( - entry("POISSONRATIO", {.description = "Poisson's ratio", .default_value = -1.0})); + parameter("SHEARMOD", {.description = "shear modulus", .default_value = -1.0})); + matdef->add_component(parameter( + "POISSONRATIO", {.description = "Poisson's ratio", .default_value = -1.0})); - matdef->add_component(entry("DENS", {.description = "mass density"})); - - matdef->add_component(entry("CROSSAREA", {.description = "cross-section area"})); - matdef->add_component(entry("SHEARCORR", {.description = "shear correction factor"})); + matdef->add_component(parameter("DENS", {.description = "mass density"})); + matdef->add_component(parameter("CROSSAREA", {.description = "cross-section area"})); matdef->add_component( - entry("MOMINPOL", {.description = "polar/axial area moment of inertia"})); + parameter("SHEARCORR", {.description = "shear correction factor"})); + matdef->add_component( - entry("MOMIN2", {.description = "area moment of inertia w.r.t. first principal " - "axis of inertia (i.e. second base vector)"})); + parameter("MOMINPOL", {.description = "polar/axial area moment of inertia"})); matdef->add_component( - entry("MOMIN3", {.description = "area moment of inertia w.r.t. second principal " - "axis of inertia (i.e. third base vector)"})); - matdef->add_component(entry("FAD", + parameter("MOMIN2", {.description = "area moment of inertia w.r.t. first principal " + "axis of inertia (i.e. second base vector)"})); + matdef->add_component(parameter( + "MOMIN3", {.description = "area moment of inertia w.r.t. second principal " + "axis of inertia (i.e. third base vector)"})); + matdef->add_component(parameter("FAD", {.description = "Does automatic differentiation have to be used", .default_value = false})); @@ -3572,7 +3627,7 @@ std::shared_ptr>> Global::v * * This should be generalized to a type of cross-section shape (circular, rectangular, * elliptic, ...) and corresponding necessary dimensions (radius, sizes, ...) if needed. */ - matdef->add_component(entry("INTERACTIONRADIUS", + matdef->add_component(parameter("INTERACTIONRADIUS", {.description = "radius of a circular cross-section which " "is EXCLUSIVELY used to evaluate interactions such as contact, potentials, ...", @@ -3589,18 +3644,18 @@ std::shared_ptr>> Global::v Core::Materials::m_beam_reissner_elast_plastic); - matdef->add_component(entry("YOUNG", {.description = "Young's modulus"})); + matdef->add_component(parameter("YOUNG", {.description = "Young's modulus"})); // optional parameters for plasticity - matdef->add_component( - entry("YIELDN", {.description = "initial yield stress N", .default_value = -1.0})); - matdef->add_component( - entry("YIELDM", {.description = "initial yield stress M", .default_value = -1.0})); - matdef->add_component(entry("ISOHARDN", + matdef->add_component(parameter( + "YIELDN", {.description = "initial yield stress N", .default_value = -1.0})); + matdef->add_component(parameter( + "YIELDM", {.description = "initial yield stress M", .default_value = -1.0})); + matdef->add_component(parameter("ISOHARDN", {.description = "isotropic hardening modulus of forces", .default_value = -1.0})); - matdef->add_component(entry("ISOHARDM", + matdef->add_component(parameter("ISOHARDM", {.description = "isotropic hardening modulus of moments", .default_value = -1.0})); - matdef->add_component(entry("TORSIONPLAST", + matdef->add_component(parameter("TORSIONPLAST", {.description = "defines whether torsional moment contributes to plasticity", .default_value = false})); @@ -3608,24 +3663,25 @@ std::shared_ptr>> Global::v * upon initialization of the material, we assure that one of them is * properly defined. */ matdef->add_component( - entry("SHEARMOD", {.description = "shear modulus", .default_value = -1.0})); - matdef->add_component( - entry("POISSONRATIO", {.description = "Poisson's ratio", .default_value = -1.0})); + parameter("SHEARMOD", {.description = "shear modulus", .default_value = -1.0})); + matdef->add_component(parameter( + "POISSONRATIO", {.description = "Poisson's ratio", .default_value = -1.0})); - matdef->add_component(entry("DENS", {.description = "mass density"})); - - matdef->add_component(entry("CROSSAREA", {.description = "cross-section area"})); - matdef->add_component(entry("SHEARCORR", {.description = "shear correction factor"})); + matdef->add_component(parameter("DENS", {.description = "mass density"})); + matdef->add_component(parameter("CROSSAREA", {.description = "cross-section area"})); matdef->add_component( - entry("MOMINPOL", {.description = "polar/axial area moment of inertia"})); + parameter("SHEARCORR", {.description = "shear correction factor"})); + matdef->add_component( - entry("MOMIN2", {.description = "area moment of inertia w.r.t. first principal " - "axis of inertia (i.e. second base vector)"})); + parameter("MOMINPOL", {.description = "polar/axial area moment of inertia"})); matdef->add_component( - entry("MOMIN3", {.description = "area moment of inertia w.r.t. second principal " - "axis of inertia (i.e. third base vector)"})); - matdef->add_component(entry("FAD", + parameter("MOMIN2", {.description = "area moment of inertia w.r.t. first principal " + "axis of inertia (i.e. second base vector)"})); + matdef->add_component(parameter( + "MOMIN3", {.description = "area moment of inertia w.r.t. second principal " + "axis of inertia (i.e. third base vector)"})); + matdef->add_component(parameter("FAD", {.description = "Does automatic differentiation have to be used", .default_value = false})); @@ -3635,7 +3691,7 @@ std::shared_ptr>> Global::v * * This should be generalized to a type of cross-section shape (circular, rectangular, * elliptic, ...) and corresponding necessary dimensions (radius, sizes, ...) if needed. */ - matdef->add_component(entry("INTERACTIONRADIUS", + matdef->add_component(parameter("INTERACTIONRADIUS", {.description = "radius of a circular cross-section which " "is EXCLUSIVELY used to evaluate interactions such as contact, potentials, ...", @@ -3654,33 +3710,33 @@ std::shared_ptr>> Global::v Core::Materials::m_beam_reissner_elast_hyper_bymodes); - matdef->add_component(entry("EA", {.description = "axial rigidity"})); - matdef->add_component(entry( + matdef->add_component(parameter("EA", {.description = "axial rigidity"})); + matdef->add_component(parameter( "GA2", {.description = "shear rigidity w.r.t first principal axis of inertia"})); - matdef->add_component(entry( + matdef->add_component(parameter( "GA3", {.description = "shear rigidity w.r.t second principal axis of inertia"})); - matdef->add_component(entry("GI_T", {.description = "torsional rigidity"})); + matdef->add_component(parameter("GI_T", {.description = "torsional rigidity"})); matdef->add_component( - entry("EI2", {.description = "flexural/bending rigidity w.r.t. first principal " - "axis of inertia"})); - matdef->add_component( - entry("EI3", {.description = "flexural/bending rigidity w.r.t. second principal " - "axis of inertia"})); + parameter("EI2", {.description = "flexural/bending rigidity w.r.t. first principal " + "axis of inertia"})); + matdef->add_component(parameter( + "EI3", {.description = "flexural/bending rigidity w.r.t. second principal " + "axis of inertia"})); - matdef->add_component(entry( + matdef->add_component(parameter( "RhoA", {.description = "translational inertia: mass density * cross-section area"})); - matdef->add_component( - entry("MASSMOMINPOL", {.description = "polar mass moment of inertia, i.e. w.r.t. " - "rotation around beam axis"})); - matdef->add_component( - entry("MASSMOMIN2", {.description = "mass moment of inertia w.r.t. first principal " - "axis of inertia"})); - matdef->add_component(entry( + matdef->add_component(parameter( + "MASSMOMINPOL", {.description = "polar mass moment of inertia, i.e. w.r.t. " + "rotation around beam axis"})); + matdef->add_component(parameter( + "MASSMOMIN2", {.description = "mass moment of inertia w.r.t. first principal " + "axis of inertia"})); + matdef->add_component(parameter( "MASSMOMIN3", {.description = "mass moment of inertia w.r.t. second principal " "axis of inertia"})); - matdef->add_component(entry("FAD", + matdef->add_component(parameter("FAD", {.description = "Does automatic differentiation have to be used", .default_value = false})); @@ -3690,7 +3746,7 @@ std::shared_ptr>> Global::v * * This should be generalized to a type of cross-section shape (circular, rectangular, * elliptic, ...) and corresponding necessary dimensions (radius, sizes, ...) if needed. */ - matdef->add_component(entry("INTERACTIONRADIUS", + matdef->add_component(parameter("INTERACTIONRADIUS", {.description = "radius of a circular cross-section which " "is EXCLUSIVELY used to evaluate interactions such as contact, potentials, ...", @@ -3708,29 +3764,29 @@ std::shared_ptr>> Global::v Core::Materials::m_beam_kirchhoff_elast_hyper); - matdef->add_component(entry("YOUNG", {.description = "Young's modulus"})); + matdef->add_component(parameter("YOUNG", {.description = "Young's modulus"})); /* note: we define both of the two following (redundant) parameters to be optional. * upon initialization of the material, we assure that one of them is * properly defined. */ matdef->add_component( - entry("SHEARMOD", {.description = "shear modulus", .default_value = -1.0})); - matdef->add_component( - entry("POISSONRATIO", {.description = "Poisson's ratio", .default_value = -1.0})); + parameter("SHEARMOD", {.description = "shear modulus", .default_value = -1.0})); + matdef->add_component(parameter( + "POISSONRATIO", {.description = "Poisson's ratio", .default_value = -1.0})); - matdef->add_component(entry("DENS", {.description = "mass density"})); + matdef->add_component(parameter("DENS", {.description = "mass density"})); - matdef->add_component(entry("CROSSAREA", {.description = "cross-section area"})); + matdef->add_component(parameter("CROSSAREA", {.description = "cross-section area"})); matdef->add_component( - entry("MOMINPOL", {.description = "polar/axial area moment of inertia"})); - matdef->add_component( - entry("MOMIN2", {.description = "area moment of inertia w.r.t. first principal " - "axis of inertia (i.e. second base vector)"})); + parameter("MOMINPOL", {.description = "polar/axial area moment of inertia"})); matdef->add_component( - entry("MOMIN3", {.description = "area moment of inertia w.r.t. second principal " - "axis of inertia (i.e. third base vector)"})); - matdef->add_component(entry("FAD", + parameter("MOMIN2", {.description = "area moment of inertia w.r.t. first principal " + "axis of inertia (i.e. second base vector)"})); + matdef->add_component(parameter( + "MOMIN3", {.description = "area moment of inertia w.r.t. second principal " + "axis of inertia (i.e. third base vector)"})); + matdef->add_component(parameter("FAD", {.description = "Does automatic differentiation have to be used", .default_value = false})); @@ -3740,7 +3796,7 @@ std::shared_ptr>> Global::v * * This should be generalized to a type of cross-section shape (circular, rectangular, * elliptic, ...) and corresponding necessary dimensions (radius, sizes, ...) if needed. */ - matdef->add_component(entry("INTERACTIONRADIUS", + matdef->add_component(parameter("INTERACTIONRADIUS", {.description = "radius of a circular cross-section which " "is EXCLUSIVELY used to evaluate interactions such as contact, potentials, ...", @@ -3760,29 +3816,29 @@ std::shared_ptr>> Global::v Core::Materials::m_beam_kirchhoff_elast_hyper_bymodes); - matdef->add_component(entry("EA", {.description = "axial rigidity"})); + matdef->add_component(parameter("EA", {.description = "axial rigidity"})); - matdef->add_component(entry("GI_T", {.description = "torsional rigidity"})); - matdef->add_component( - entry("EI2", {.description = "flexural/bending rigidity w.r.t. first principal " - "axis of inertia"})); + matdef->add_component(parameter("GI_T", {.description = "torsional rigidity"})); matdef->add_component( - entry("EI3", {.description = "flexural/bending rigidity w.r.t. second principal " - "axis of inertia"})); + parameter("EI2", {.description = "flexural/bending rigidity w.r.t. first principal " + "axis of inertia"})); + matdef->add_component(parameter( + "EI3", {.description = "flexural/bending rigidity w.r.t. second principal " + "axis of inertia"})); - matdef->add_component(entry( + matdef->add_component(parameter( "RhoA", {.description = "translational inertia: mass density * cross-section area"})); - matdef->add_component( - entry("MASSMOMINPOL", {.description = "polar mass moment of inertia, i.e. w.r.t. " - "rotation around beam axis"})); - matdef->add_component( - entry("MASSMOMIN2", {.description = "mass moment of inertia w.r.t. first principal " - "axis of inertia"})); - matdef->add_component(entry( + matdef->add_component(parameter( + "MASSMOMINPOL", {.description = "polar mass moment of inertia, i.e. w.r.t. " + "rotation around beam axis"})); + matdef->add_component(parameter( + "MASSMOMIN2", {.description = "mass moment of inertia w.r.t. first principal " + "axis of inertia"})); + matdef->add_component(parameter( "MASSMOMIN3", {.description = "mass moment of inertia w.r.t. second principal " "axis of inertia"})); - matdef->add_component(entry("FAD", + matdef->add_component(parameter("FAD", {.description = "Does automatic differentiation have to be used", .default_value = false})); @@ -3792,7 +3848,7 @@ std::shared_ptr>> Global::v * * This should be generalized to a type of cross-section shape (circular, rectangular, * elliptic, ...) and corresponding necessary dimensions (radius, sizes, ...) if needed. */ - matdef->add_component(entry("INTERACTIONRADIUS", + matdef->add_component(parameter("INTERACTIONRADIUS", {.description = "radius of a circular cross-section which " "is EXCLUSIVELY used to evaluate interactions such as contact, potentials, ...", @@ -3812,14 +3868,14 @@ std::shared_ptr>> Global::v Core::Materials::m_beam_kirchhoff_torsionfree_elast_hyper); - matdef->add_component(entry("YOUNG", {.description = "Young's modulus"})); + matdef->add_component(parameter("YOUNG", {.description = "Young's modulus"})); - matdef->add_component(entry("DENS", {.description = "mass density"})); + matdef->add_component(parameter("DENS", {.description = "mass density"})); - matdef->add_component(entry("CROSSAREA", {.description = "cross-section area"})); + matdef->add_component(parameter("CROSSAREA", {.description = "cross-section area"})); - matdef->add_component(entry("MOMIN", {.description = "area moment of inertia"})); - matdef->add_component(entry("FAD", + matdef->add_component(parameter("MOMIN", {.description = "area moment of inertia"})); + matdef->add_component(parameter("FAD", {.description = "Does automatic differentiation have to be used", .default_value = false})); @@ -3829,7 +3885,7 @@ std::shared_ptr>> Global::v * * This should be generalized to a type of cross-section shape (circular, rectangular, * elliptic, ...) and corresponding necessary dimensions (radius, sizes, ...) if needed. */ - matdef->add_component(entry("INTERACTIONRADIUS", + matdef->add_component(parameter("INTERACTIONRADIUS", {.description = "radius of a circular cross-section which " "is EXCLUSIVELY used to evaluate interactions such as contact, potentials, ...", @@ -3851,14 +3907,14 @@ std::shared_ptr>> Global::v Core::Materials::m_beam_kirchhoff_torsionfree_elast_hyper_bymodes); - matdef->add_component(entry("EA", {.description = "axial rigidity"})); + matdef->add_component(parameter("EA", {.description = "axial rigidity"})); - matdef->add_component(entry("EI", {.description = "flexural/bending rigidity"})); + matdef->add_component(parameter("EI", {.description = "flexural/bending rigidity"})); - matdef->add_component(entry( + matdef->add_component(parameter( "RhoA", {.description = "translational inertia: mass density * cross-section area"})); - matdef->add_component(entry("FAD", + matdef->add_component(parameter("FAD", {.description = "Does automatic differentiation have to be used", .default_value = false})); /* The following is optional because it is only required if we evaluate interactions @@ -3867,7 +3923,7 @@ std::shared_ptr>> Global::v * * This should be generalized to a type of cross-section shape (circular, rectangular, * elliptic, ...) and corresponding necessary dimensions (radius, sizes, ...) if needed. */ - matdef->add_component(entry("INTERACTIONRADIUS", + matdef->add_component(parameter("INTERACTIONRADIUS", {.description = "radius of a circular cross-section which " "is EXCLUSIVELY used to evaluate interactions such as contact, potentials, ...", @@ -3882,9 +3938,10 @@ std::shared_ptr>> Global::v auto matdef = std::make_shared("MAT_Kirchhoff_Love_shell", "Material for an elastic Kichhhoff-Love shell ", Core::Materials::m_shell_kirchhoff_love); - matdef->add_component(entry("YOUNG_MODULUS", {.description = "Young's modulus"})); - matdef->add_component(entry("POISSON_RATIO", {.description = "Poisson's ratio"})); - matdef->add_component(entry("THICKNESS", {.description = "Thickness of the shell"})); + matdef->add_component(parameter("YOUNG_MODULUS", {.description = "Young's modulus"})); + matdef->add_component(parameter("POISSON_RATIO", {.description = "Poisson's ratio"})); + matdef->add_component( + parameter("THICKNESS", {.description = "Thickness of the shell"})); append_material_definition(matlist, matdef); } @@ -3896,33 +3953,34 @@ std::shared_ptr>> Global::v "material for a linkage between beams", Core::Materials::m_crosslinkermat); matdef->add_component( - entry("MATNUM", {.description = "number of beam elasthyper material"})); - matdef->add_component(entry( + parameter("MATNUM", {.description = "number of beam elasthyper material"})); + matdef->add_component(parameter( "JOINTTYPE", {.description = "type of joint: " "beam3rline2rigid (default), beam3rline2pin or truss"})); - matdef->add_component(entry( + matdef->add_component(parameter( "LINKINGLENGTH", {.description = "distance between the two binding domains of a linker"})); - matdef->add_component(entry("LINKINGLENGTHTOL", + matdef->add_component(parameter("LINKINGLENGTHTOL", {.description = "tolerance for linker length in the sense: length +- tolerance"})); - matdef->add_component(entry("LINKINGANGLE", + matdef->add_component(parameter("LINKINGANGLE", {.description = "preferred binding angle enclosed by two filaments' axes in radians"})); - matdef->add_component(entry( + matdef->add_component(parameter( "LINKINGANGLETOL", {.description = "tolerance for preferred binding angle in radians in " "the sense of: angle +- tolerance"})); - matdef->add_component(entry("K_ON", {.description = "chemical association-rate"})); - matdef->add_component(entry("K_OFF", {.description = "chemical dissociation-rate"})); + matdef->add_component(parameter("K_ON", {.description = "chemical association-rate"})); + matdef->add_component( + parameter("K_OFF", {.description = "chemical dissociation-rate"})); // optional parameter - matdef->add_component(entry( + matdef->add_component(parameter( "DELTABELLEQ", {.description = "deltaD in Bell's equation for force dependent off rate", .default_value = 0.0})); - matdef->add_component(entry("NOBONDDISTSPHERE", + matdef->add_component(parameter("NOBONDDISTSPHERE", {.description = "distance to sphere elements in which no double bonded linker is allowed", .default_value = 0.0})); - matdef->add_component( - entry("TYPE", {.description = "type of crosslinker: " - "arbitrary (default), actin, collagen, integrin", - .default_value = "arbitrary"})); + matdef->add_component(parameter( + "TYPE", {.description = "type of crosslinker: " + "arbitrary (default), actin, collagen, integrin", + .default_value = "arbitrary"})); Mat::append_material_definition(matlist, matdef); } @@ -3933,10 +3991,10 @@ std::shared_ptr>> Global::v auto m = std::make_shared( "MAT_0D_MAXWELL_ACINUS", "0D acinar material", Core::Materials::m_0d_maxwell_acinus); - m->add_component(entry("Stiffness1", {.description = "first stiffness"})); - m->add_component(entry("Stiffness2", {.description = "second stiffness"})); - m->add_component(entry("Viscosity1", {.description = "first viscosity"})); - m->add_component(entry("Viscosity2", {.description = "second viscosity"})); + m->add_component(parameter("Stiffness1", {.description = "first stiffness"})); + m->add_component(parameter("Stiffness2", {.description = "second stiffness"})); + m->add_component(parameter("Viscosity1", {.description = "first viscosity"})); + m->add_component(parameter("Viscosity2", {.description = "second viscosity"})); Mat::append_material_definition(matlist, m); } @@ -3947,10 +4005,10 @@ std::shared_ptr>> Global::v auto m = std::make_shared("MAT_0D_MAXWELL_ACINUS_NEOHOOKEAN", "0D acinar material neohookean", Core::Materials::m_0d_maxwell_acinus_neohookean); - m->add_component(entry("Stiffness1", {.description = "first stiffness"})); - m->add_component(entry("Stiffness2", {.description = "second stiffness"})); - m->add_component(entry("Viscosity1", {.description = "first viscosity"})); - m->add_component(entry("Viscosity2", {.description = "second viscosity"})); + m->add_component(parameter("Stiffness1", {.description = "first stiffness"})); + m->add_component(parameter("Stiffness2", {.description = "second stiffness"})); + m->add_component(parameter("Viscosity1", {.description = "first viscosity"})); + m->add_component(parameter("Viscosity2", {.description = "second viscosity"})); Mat::append_material_definition(matlist, m); } @@ -3961,10 +4019,10 @@ std::shared_ptr>> Global::v auto m = std::make_shared("MAT_0D_MAXWELL_ACINUS_EXPONENTIAL", "0D acinar material exponential", Core::Materials::m_0d_maxwell_acinus_exponential); - m->add_component(entry("Stiffness1", {.description = "first stiffness"})); - m->add_component(entry("Stiffness2", {.description = "second stiffness"})); - m->add_component(entry("Viscosity1", {.description = "first viscosity"})); - m->add_component(entry("Viscosity2", {.description = "second viscosity"})); + m->add_component(parameter("Stiffness1", {.description = "first stiffness"})); + m->add_component(parameter("Stiffness2", {.description = "second stiffness"})); + m->add_component(parameter("Viscosity1", {.description = "first viscosity"})); + m->add_component(parameter("Viscosity2", {.description = "second viscosity"})); Mat::append_material_definition(matlist, m); } @@ -3976,10 +4034,10 @@ std::shared_ptr>> Global::v "0D acinar material doubleexponential", Core::Materials::m_0d_maxwell_acinus_doubleexponential); - m->add_component(entry("Stiffness1", {.description = "first stiffness"})); - m->add_component(entry("Stiffness2", {.description = "second stiffness"})); - m->add_component(entry("Viscosity1", {.description = "first viscosity"})); - m->add_component(entry("Viscosity2", {.description = "second viscosity"})); + m->add_component(parameter("Stiffness1", {.description = "first stiffness"})); + m->add_component(parameter("Stiffness2", {.description = "second stiffness"})); + m->add_component(parameter("Viscosity1", {.description = "first viscosity"})); + m->add_component(parameter("Viscosity2", {.description = "second viscosity"})); Mat::append_material_definition(matlist, m); } @@ -3990,10 +4048,10 @@ std::shared_ptr>> Global::v auto m = std::make_shared("MAT_0D_MAXWELL_ACINUS_OGDEN", "0D acinar material ogden", Core::Materials::m_0d_maxwell_acinus_ogden); - m->add_component(entry("Stiffness1", {.description = "first stiffness"})); - m->add_component(entry("Stiffness2", {.description = "second stiffness"})); - m->add_component(entry("Viscosity1", {.description = "first viscosity"})); - m->add_component(entry("Viscosity2", {.description = "second viscosity"})); + m->add_component(parameter("Stiffness1", {.description = "first stiffness"})); + m->add_component(parameter("Stiffness2", {.description = "second stiffness"})); + m->add_component(parameter("Viscosity1", {.description = "first viscosity"})); + m->add_component(parameter("Viscosity2", {.description = "second viscosity"})); Mat::append_material_definition(matlist, m); } @@ -4005,26 +4063,27 @@ std::shared_ptr>> Global::v auto m = std::make_shared("MAT_ParticleSPHFluid", "particle material for SPH fluid", Core::Materials::m_particle_sph_fluid); - m->add_component(entry("INITRADIUS", {.description = "initial radius"})); - m->add_component(entry("INITDENSITY", {.description = "initial density"})); - m->add_component(entry( + m->add_component(parameter("INITRADIUS", {.description = "initial radius"})); + m->add_component(parameter("INITDENSITY", {.description = "initial density"})); + m->add_component(parameter( "REFDENSFAC", {.description = "reference density factor in equation of state"})); - m->add_component(entry("EXPONENT", {.description = "exponent in equation of state"})); - m->add_component(entry("BACKGROUNDPRESSURE", + m->add_component( + parameter("EXPONENT", {.description = "exponent in equation of state"})); + m->add_component(parameter("BACKGROUNDPRESSURE", {.description = "background pressure for transport velocity formulation"})); - m->add_component(entry("BULK_MODULUS", {.description = "bulk modulus"})); + m->add_component(parameter("BULK_MODULUS", {.description = "bulk modulus"})); m->add_component( - entry("DYNAMIC_VISCOSITY", {.description = "dynamic shear viscosity"})); - m->add_component(entry("BULK_VISCOSITY", {.description = "bulk viscosity"})); + parameter("DYNAMIC_VISCOSITY", {.description = "dynamic shear viscosity"})); + m->add_component(parameter("BULK_VISCOSITY", {.description = "bulk viscosity"})); m->add_component( - entry("ARTIFICIAL_VISCOSITY", {.description = "artificial viscosity"})); - m->add_component(entry( + parameter("ARTIFICIAL_VISCOSITY", {.description = "artificial viscosity"})); + m->add_component(parameter( "INITTEMPERATURE", {.description = "initial temperature", .default_value = 0.0})); - m->add_component(entry( + m->add_component(parameter( "THERMALCAPACITY", {.description = "thermal capacity", .default_value = 0.0})); - m->add_component(entry( + m->add_component(parameter( "THERMALCONDUCTIVITY", {.description = "thermal conductivity", .default_value = 0.0})); - m->add_component(entry( + m->add_component(parameter( "THERMALABSORPTIVITY", {.description = "thermal absorptivity", .default_value = 0.0})); Mat::append_material_definition(matlist, m); @@ -4036,15 +4095,15 @@ std::shared_ptr>> Global::v auto m = std::make_shared("MAT_ParticleSPHBoundary", "particle material for SPH boundary", Core::Materials::m_particle_sph_boundary); - m->add_component(entry("INITRADIUS", {.description = "initial radius"})); - m->add_component(entry("INITDENSITY", {.description = "initial density"})); - m->add_component(entry( + m->add_component(parameter("INITRADIUS", {.description = "initial radius"})); + m->add_component(parameter("INITDENSITY", {.description = "initial density"})); + m->add_component(parameter( "INITTEMPERATURE", {.description = "initial temperature", .default_value = 0.0})); - m->add_component(entry( + m->add_component(parameter( "THERMALCAPACITY", {.description = "thermal capacity", .default_value = 0.0})); - m->add_component(entry( + m->add_component(parameter( "THERMALCONDUCTIVITY", {.description = "thermal conductivity", .default_value = 0.0})); - m->add_component(entry( + m->add_component(parameter( "THERMALABSORPTIVITY", {.description = "thermal absorptivity", .default_value = 0.0})); Mat::append_material_definition(matlist, m); @@ -4056,8 +4115,10 @@ std::shared_ptr>> Global::v auto m = std::make_shared( "MAT_ParticleDEM", "particle material for DEM", Core::Materials::m_particle_dem); - m->add_component(entry("INITRADIUS", {.description = "initial radius of particle"})); - m->add_component(entry("INITDENSITY", {.description = "initial density of particle"})); + m->add_component( + parameter("INITRADIUS", {.description = "initial radius of particle"})); + m->add_component( + parameter("INITDENSITY", {.description = "initial density of particle"})); Mat::append_material_definition(matlist, m); } @@ -4068,11 +4129,11 @@ std::shared_ptr>> Global::v auto m = std::make_shared("MAT_ParticleWallDEM", "particle wall material for DEM", Core::Materials::m_particle_wall_dem); - m->add_component(entry("FRICT_COEFF_TANG", + m->add_component(parameter("FRICT_COEFF_TANG", {.description = "friction coefficient for tangential contact", .default_value = -1.0})); - m->add_component(entry("FRICT_COEFF_ROLL", + m->add_component(parameter("FRICT_COEFF_ROLL", {.description = "friction coefficient for rolling contact", .default_value = -1.0})); - m->add_component(entry("ADHESION_SURFACE_ENERGY", + m->add_component(parameter("ADHESION_SURFACE_ENERGY", {.description = "adhesion surface energy", .default_value = -1.0})); Mat::append_material_definition(matlist, m); @@ -4084,9 +4145,9 @@ std::shared_ptr>> Global::v auto m = std::make_shared( "MAT_Electromagnetic", "Electromagnetic material", Core::Materials::m_electromagneticmat); - m->add_component(entry("CONDUCTIVITY", {.description = "electrical conductivity"})); - m->add_component(entry("PERMITTIVITY", {.description = "Permittivity"})); - m->add_component(entry("PERMEABILITY", {.description = "Permeability"})); + m->add_component(parameter("CONDUCTIVITY", {.description = "electrical conductivity"})); + m->add_component(parameter("PERMITTIVITY", {.description = "Permittivity"})); + m->add_component(parameter("PERMEABILITY", {.description = "Permeability"})); Mat::append_material_definition(matlist, m); } @@ -4097,10 +4158,10 @@ std::shared_ptr>> Global::v auto m = std::make_shared( "MAT_Mixture", "General mixture model", Core::Materials::m_mixture); - m->add_component(entry("NUMCONST", {.description = "number of mixture constituents"})); + m->add_component(parameter("NUMCONST", {.description = "number of mixture constituents"})); m->add_component( - entry("MATIDMIXTURERULE", {.description = "material id of the mixturerule"})); - m->add_component(entry>( + parameter("MATIDMIXTURERULE", {.description = "material id of the mixturerule"})); + m->add_component(parameter>( "MATIDSCONST", {.description = "list material IDs of the mixture constituents", .size = from_parameter("NUMCONST")})); @@ -4113,11 +4174,11 @@ std::shared_ptr>> Global::v auto m = std::make_shared( "MIX_Constituent_ElastHyper", "ElastHyper toolbox", Core::Materials::mix_elasthyper); - m->add_component(entry("NUMMAT", {.description = "number of summands"})); + m->add_component(parameter("NUMMAT", {.description = "number of summands"})); m->add_component( - entry>("MATIDS", {.description = "list material IDs of the summands", - .size = from_parameter("NUMMAT")})); - m->add_component(entry("PRESTRESS_STRATEGY", + parameter>("MATIDS", {.description = "list material IDs of the summands", + .size = from_parameter("NUMMAT")})); + m->add_component(parameter("PRESTRESS_STRATEGY", {.description = "Material id of the prestress strategy (optional, by default no prestretch)", .default_value = 0})); @@ -4131,18 +4192,18 @@ std::shared_ptr>> Global::v auto m = std::make_shared("MIX_Constituent_ElastHyper_Damage", "ElastHyper toolbox with damage", Core::Materials::mix_elasthyper_damage); - m->add_component(entry("NUMMAT", {.description = "number of summands"})); - m->add_component(entry>( + m->add_component(parameter("NUMMAT", {.description = "number of summands"})); + m->add_component(parameter>( "MATIDS", {.description = "list material IDs of the membrane summands", .size = from_parameter("NUMMAT")})); - m->add_component(entry("PRESTRESS_STRATEGY", + m->add_component(parameter("PRESTRESS_STRATEGY", {.description = "Material id of the prestress strategy (optional, by default no prestretch)", .default_value = 0})); - m->add_component( - entry("DAMAGE_FUNCT", {.description = "Reference to the function that is a gain for " - "the increase/decrease of the reference " - "mass density."})); + m->add_component(parameter( + "DAMAGE_FUNCT", {.description = "Reference to the function that is a gain for " + "the increase/decrease of the reference " + "mass density."})); Mat::append_material_definition(matlist, m); } @@ -4154,22 +4215,22 @@ std::shared_ptr>> Global::v "ElastHyper toolbox with damage and 2D membrane material", Core::Materials::mix_elasthyper_elastin_membrane); - m->add_component(entry("NUMMAT", {.description = "number of summands"})); - m->add_component(entry>( + m->add_component(parameter("NUMMAT", {.description = "number of summands"})); + m->add_component(parameter>( "MATIDS", {.description = "list material IDs of the membrane summands", .size = from_parameter("NUMMAT")})); - m->add_component(entry("MEMBRANENUMMAT", {.description = "number of summands"})); - m->add_component(entry>( + m->add_component(parameter("MEMBRANENUMMAT", {.description = "number of summands"})); + m->add_component(parameter>( "MEMBRANEMATIDS", {.description = "list material IDs of the membrane summands", .size = from_parameter("MEMBRANENUMMAT")})); - m->add_component(entry("PRESTRESS_STRATEGY", + m->add_component(parameter("PRESTRESS_STRATEGY", {.description = "Material id of the prestress strategy (optional, by default no prestretch)", .default_value = 0})); - m->add_component( - entry("DAMAGE_FUNCT", {.description = "Reference to the function that is a gain for " - "the increase/decrease of the reference " - "mass density."})); + m->add_component(parameter( + "DAMAGE_FUNCT", {.description = "Reference to the function that is a gain for " + "the increase/decrease of the reference " + "mass density."})); Mat::append_material_definition(matlist, m); } @@ -4180,7 +4241,7 @@ std::shared_ptr>> Global::v auto m = std::make_shared( "MIX_Constituent_SolidMaterial", "Solid material", Core::Materials::mix_solid_material); - m->add_component(entry("MATID", {.description = "ID of the solid material"})); + m->add_component(parameter("MATID", {.description = "ID of the solid material"})); Mat::append_material_definition(matlist, m); } @@ -4201,10 +4262,10 @@ std::shared_ptr>> Global::v "anisotropic growth", Core::Materials::mix_growth_strategy_anisotropic); - m->add_component( - entry("INIT", {.description = "initialization modus for growth direction alignment", - .default_value = 1})); - m->add_component(entry("FIBER_ID", + m->add_component(parameter( + "INIT", {.description = "initialization modus for growth direction alignment", + .default_value = 1})); + m->add_component(parameter("FIBER_ID", {.description = "Id of the fiber to point the growth direction (1 for first fiber, default)", .default_value = 1})); @@ -4220,7 +4281,7 @@ std::shared_ptr>> Global::v "Extension of all constituents simultaneously", Core::Materials::mix_growth_strategy_stiffness); - m->add_component(entry("KAPPA", + m->add_component(parameter("KAPPA", {.description = "Penalty parameter for the modified penalty term for incompressibility"})); Mat::append_material_definition(matlist, m); @@ -4233,8 +4294,8 @@ std::shared_ptr>> Global::v "General material wrapper enabling iterative pretressing for any material", Core::Materials::m_iterative_prestress); - m->add_component(entry("MATID", {.description = "Id of the material"})); - m->add_component(entry("ACTIVE", + m->add_component(parameter("MATID", {.description = "Id of the material"})); + m->add_component(parameter("ACTIVE", {.description = "Set to True during prestressing and to false afterwards using a restart of the " "simulation."})); @@ -4248,7 +4309,7 @@ std::shared_ptr>> Global::v auto m = std::make_shared("MIX_Prestress_Strategy_Constant", "Simple predefined prestress", Core::Materials::mix_prestress_strategy_constant); - m->add_component(entry>( + m->add_component(parameter>( "PRESTRETCH", {.description = "Definition of the prestretch as a " "9x1 vector", .size = 9})); @@ -4264,15 +4325,15 @@ std::shared_ptr>> Global::v Core::Materials::mix_prestress_strategy_cylinder); m->add_component( - entry("INNER_RADIUS", {.description = "Inner radius of the cylinder"})); + parameter("INNER_RADIUS", {.description = "Inner radius of the cylinder"})); m->add_component( - entry("WALL_THICKNESS", {.description = "Wall thickness of the cylinder"})); + parameter("WALL_THICKNESS", {.description = "Wall thickness of the cylinder"})); m->add_component( - entry("AXIAL_PRESTRETCH", {.description = "Prestretch in axial direction"})); - m->add_component(entry( + parameter("AXIAL_PRESTRETCH", {.description = "Prestretch in axial direction"})); + m->add_component(parameter( "CIRCUMFERENTIAL_PRESTRETCH", {.description = "Prestretch in circumferential direction"})); m->add_component( - entry("PRESSURE", {.description = "Pressure in the inner of the cylinder"})); + parameter("PRESSURE", {.description = "Pressure in the inner of the cylinder"})); Mat::append_material_definition(matlist, m); } @@ -4284,9 +4345,9 @@ std::shared_ptr>> Global::v "Simple iterative prestress strategy for any geometry. Needed to be used within the " "mixture framework.", Core::Materials::mix_prestress_strategy_iterative); - m->add_component( - entry("ACTIVE", {.description = "Flag whether prestretch tensor should be updated"})); - m->add_component(entry("ISOCHORIC", + m->add_component(parameter( + "ACTIVE", {.description = "Flag whether prestretch tensor should be updated"})); + m->add_component(parameter("ISOCHORIC", {.description = "Flag whether prestretch tensor is isochoric", .default_value = false})); Mat::append_material_definition(matlist, m); @@ -4300,29 +4361,29 @@ std::shared_ptr>> Global::v "A 1D constituent that grows with the full constrained mixture fiber theory", Core::Materials::mix_full_constrained_mixture_fiber); - m->add_component(entry("FIBER_ID", {.description = "Id of the fiber"})); - m->add_component(entry("FIBER_MATERIAL_ID", {.description = "Id of fiber material"})); - m->add_component(entry("ENABLE_GROWTH", + m->add_component(parameter("FIBER_ID", {.description = "Id of the fiber"})); + m->add_component(parameter("FIBER_MATERIAL_ID", {.description = "Id of fiber material"})); + m->add_component(parameter("ENABLE_GROWTH", {.description = "Switch for the growth (default true)", .default_value = true})); - m->add_component(entry("ENABLE_BASAL_MASS_PRODUCTION", + m->add_component(parameter("ENABLE_BASAL_MASS_PRODUCTION", {.description = "Switch to enable the basal mass production rate (default true)", .default_value = true})); m->add_component( - entry("DECAY_TIME", {.description = "Decay time of deposited tissue"})); + parameter("DECAY_TIME", {.description = "Decay time of deposited tissue"})); m->add_component( - entry("GROWTH_CONSTANT", {.description = "Growth constant of the tissue"})); - m->add_component(entry( + parameter("GROWTH_CONSTANT", {.description = "Growth constant of the tissue"})); + m->add_component(parameter( "DEPOSITION_STRETCH", {.description = "Stretch at which the fiber is deposited"})); - m->add_component(entry("INITIAL_DEPOSITION_STRETCH_TIMEFUNCT", + m->add_component(parameter("INITIAL_DEPOSITION_STRETCH_TIMEFUNCT", {.description = "Id of the time function to scale the deposition stretch (Default: 0=None)", .default_value = 0})); - m->add_component(entry("INIT", + m->add_component(parameter("INIT", {.description = "Initialization mode for fibers (1=element fibers, 3=nodal fibers)"})); - m->add_component(entry("ADAPTIVE_HISTORY_STRATEGY", + m->add_component(parameter("ADAPTIVE_HISTORY_STRATEGY", {.description = "Strategy for adaptive history integration (none, model_equation, " "higher_order)", .default_value = "none"})); - m->add_component(entry("ADAPTIVE_HISTORY_TOLERANCE", + m->add_component(parameter("ADAPTIVE_HISTORY_TOLERANCE", {.description = "Tolerance of the adaptive history", .default_value = 1e-6})); Mat::append_material_definition(matlist, m); @@ -4335,29 +4396,29 @@ std::shared_ptr>> Global::v "A 1D constituent that remodels", Core::Materials::mix_remodelfiber_expl); m->add_component( - entry("FIBER_ID", {.description = "Id of the fiber", .default_value = 1})); - m->add_component(entry("FIBER_MATERIAL_ID", {.description = "Id of fiber material"})); + parameter("FIBER_ID", {.description = "Id of the fiber", .default_value = 1})); + m->add_component(parameter("FIBER_MATERIAL_ID", {.description = "Id of fiber material"})); - m->add_component(entry("ENABLE_GROWTH", + m->add_component(parameter("ENABLE_GROWTH", {.description = "Switch for the growth (default true)", .default_value = true})); - m->add_component(entry("ENABLE_BASAL_MASS_PRODUCTION", + m->add_component(parameter("ENABLE_BASAL_MASS_PRODUCTION", {.description = "Switch to enable the basal mass production rate (default true)", .default_value = true})); m->add_component( - entry("DECAY_TIME", {.description = "Decay time of deposited tissue"})); + parameter("DECAY_TIME", {.description = "Decay time of deposited tissue"})); m->add_component( - entry("GROWTH_CONSTANT", {.description = "Growth constant of the tissue"})); - m->add_component(entry( + parameter("GROWTH_CONSTANT", {.description = "Growth constant of the tissue"})); + m->add_component(parameter( "DEPOSITION_STRETCH", {.description = "Stretch at with the fiber is deposited"})); - m->add_component(entry("DEPOSITION_STRETCH_TIMEFUNCT", + m->add_component(parameter("DEPOSITION_STRETCH_TIMEFUNCT", {.description = "Id of the time function to scale the deposition stretch (Default: 0=None)", .default_value = 0})); - m->add_component(entry( + m->add_component(parameter( "INELASTIC_GROWTH", {.description = "Mixture rule has inelastic growth (default false)", .default_value = false})); - m->add_component(entry("INIT", + m->add_component(parameter("INIT", {.description = "Initialization mode for fibers (1=element fibers, 2=nodal fibers)"})); - m->add_component(entry( + m->add_component(parameter( "GAMMA", {.description = "Angle of fiber alignment in degree (default = 0.0 degrees)", .default_value = 0.0})); @@ -4370,24 +4431,24 @@ std::shared_ptr>> Global::v auto m = std::make_shared("MIX_Constituent_ImplicitRemodelFiber", "A 1D constituent that remodels", Core::Materials::mix_remodelfiber_impl); - m->add_component(entry("FIBER_ID", {.description = "Id of the fiber"})); - m->add_component(entry("FIBER_MATERIAL_ID", {.description = "Id of fiber material"})); + m->add_component(parameter("FIBER_ID", {.description = "Id of the fiber"})); + m->add_component(parameter("FIBER_MATERIAL_ID", {.description = "Id of fiber material"})); - m->add_component(entry("ENABLE_GROWTH", + m->add_component(parameter("ENABLE_GROWTH", {.description = "Switch for the growth (default true)", .default_value = true})); - m->add_component(entry("ENABLE_BASAL_MASS_PRODUCTION", + m->add_component(parameter("ENABLE_BASAL_MASS_PRODUCTION", {.description = "Switch to enable the basal mass production rate (default true)", .default_value = true})); m->add_component( - entry("DECAY_TIME", {.description = "Decay time of deposited tissue"})); + parameter("DECAY_TIME", {.description = "Decay time of deposited tissue"})); m->add_component( - entry("GROWTH_CONSTANT", {.description = "Growth constant of the tissue"})); - m->add_component(entry( + parameter("GROWTH_CONSTANT", {.description = "Growth constant of the tissue"})); + m->add_component(parameter( "DEPOSITION_STRETCH", {.description = "Stretch at with the fiber is deposited"})); - m->add_component(entry("DEPOSITION_STRETCH_TIMEFUNCT", + m->add_component(parameter("DEPOSITION_STRETCH_TIMEFUNCT", {.description = "Id of the time function to scale the deposition stretch (Default: 0=None)", .default_value = 0})); - m->add_component(entry("INIT", + m->add_component(parameter("INIT", {.description = "Initialization mode for fibers (1=element fibers, 2=nodal fibers)"})); Mat::append_material_definition(matlist, m); @@ -4402,11 +4463,11 @@ std::shared_ptr>> Global::v Core::Materials::mix_remodelfiber_material_exponential); - m->add_component(entry( + m->add_component(parameter( "K1", {.description = "First parameter of exponential strain energy function"})); - m->add_component(entry( + m->add_component(parameter( "K2", {.description = "Second parameter of exponential strain energy function"})); - m->add_component(entry("COMPRESSION", + m->add_component(parameter("COMPRESSION", {.description = "Bool, whether the fiber material also supports compressive forces."})); Mat::append_material_definition(matlist, m); @@ -4422,20 +4483,21 @@ std::shared_ptr>> Global::v Core::Materials::mix_remodelfiber_material_exponential_active); - m->add_component(entry( + m->add_component(parameter( "K1", {.description = "First parameter of exponential strain energy function"})); - m->add_component(entry( + m->add_component(parameter( "K2", {.description = "Second parameter of exponential strain energy function"})); - m->add_component(entry("COMPRESSION", + m->add_component(parameter("COMPRESSION", {.description = "Bool, whether the fiber material also supports compressive forces."})); - m->add_component(entry("SIGMA_MAX", {.description = "Maximum active Cauchy-stress"})); m->add_component( - entry("LAMBDAMAX", {.description = "Stretch at maximum active Cauchy-stress"})); + parameter("SIGMA_MAX", {.description = "Maximum active Cauchy-stress"})); m->add_component( - entry("LAMBDA0", {.description = "Stretch at zero active Cauchy-stress"})); + parameter("LAMBDAMAX", {.description = "Stretch at maximum active Cauchy-stress"})); m->add_component( - entry("LAMBDAACT", {.description = "Current stretch", .default_value = 1.0})); - m->add_component(entry("DENS", {.description = "Density of the whole mixture"})); + parameter("LAMBDA0", {.description = "Stretch at zero active Cauchy-stress"})); + m->add_component( + parameter("LAMBDAACT", {.description = "Current stretch", .default_value = 1.0})); + m->add_component(parameter("DENS", {.description = "Density of the whole mixture"})); Mat::append_material_definition(matlist, m); } @@ -4447,9 +4509,9 @@ std::shared_ptr>> Global::v "A mixture rule where the mass fractions are scaled by functions of space and time", Core::Materials::mix_rule_function); - m->add_component(entry("DENS", {.description = ""})); - m->add_component(entry("NUMCONST", {.description = "number of mixture constituents"})); - m->add_component(entry>("MASSFRACFUNCT", + m->add_component(parameter("DENS", {.description = ""})); + m->add_component(parameter("NUMCONST", {.description = "number of mixture constituents"})); + m->add_component(parameter>("MASSFRACFUNCT", {.description = "list of functions (their ids) defining the mass fractions of the mixture " "constituents", .size = from_parameter("NUMCONST")})); @@ -4464,8 +4526,8 @@ std::shared_ptr>> Global::v "A mixture rule where the mass fractions are defined elementwise as discrete values", Core::Materials::mix_rule_map); - m->add_component(entry("DENS", {.description = ""})); - m->add_component(entry("NUMCONST", {.description = "number of mixture constituents"})); + m->add_component(parameter("DENS", {.description = ""})); + m->add_component(parameter("NUMCONST", {.description = "number of mixture constituents"})); // definition of operation and print string for post processed component "MASSFRACMAPFILE" using mapType = std::unordered_map>; @@ -4490,7 +4552,7 @@ std::shared_ptr>> Global::v Core::IO::convert_lines(file_stream, map_reduction_operation)); }; - m->add_component(entry("MASSFRACMAPFILE", + m->add_component(parameter("MASSFRACMAPFILE", { .description = "file path of pattern file defining the massfractions as discrete values", @@ -4507,9 +4569,9 @@ std::shared_ptr>> Global::v auto m = std::make_shared( "MIX_Rule_Simple", "Simple mixture rule", Core::Materials::mix_rule_simple); - m->add_component(entry("DENS", {.description = ""})); - m->add_component(entry("NUMCONST", {.description = "number of mixture constituents"})); - m->add_component(entry>( + m->add_component(parameter("DENS", {.description = ""})); + m->add_component(parameter("NUMCONST", {.description = "number of mixture constituents"})); + m->add_component(parameter>( "MASSFRAC", {.description = "list mass fractions of the mixture constituents", .size = from_parameter("NUMCONST")})); @@ -4524,10 +4586,10 @@ std::shared_ptr>> Global::v Core::Materials::mix_rule_growthremodel); m->add_component( - entry("GROWTH_STRATEGY", {.description = "Material id of the growth strategy"})); - m->add_component(entry("DENS", {.description = ""})); - m->add_component(entry("NUMCONST", {.description = "number of mixture constituents"})); - m->add_component(entry>( + parameter("GROWTH_STRATEGY", {.description = "Material id of the growth strategy"})); + m->add_component(parameter("DENS", {.description = ""})); + m->add_component(parameter("NUMCONST", {.description = "number of mixture constituents"})); + m->add_component(parameter>( "MASSFRAC", {.description = "list mass fractions of the mixture constituents", .size = from_parameter("NUMCONST")})); @@ -4540,104 +4602,105 @@ std::shared_ptr>> Global::v auto m = std::make_shared( "MAT_crystal_plasticity", " Crystal plasticity ", Core::Materials::m_crystplast); m->add_component( - entry("TOL", {.description = "tolerance for internal Newton iteration"})); - m->add_component(entry("YOUNG", {.description = "Young's modulus"})); - m->add_component(entry("NUE", {.description = "Poisson's ratio"})); - m->add_component(entry("DENS", {.description = "Mass density"})); - m->add_component(entry("LAT", + parameter("TOL", {.description = "tolerance for internal Newton iteration"})); + m->add_component(parameter("YOUNG", {.description = "Young's modulus"})); + m->add_component(parameter("NUE", {.description = "Poisson's ratio"})); + m->add_component(parameter("DENS", {.description = "Mass density"})); + m->add_component(parameter("LAT", {.description = "lattice type: FCC, BCC, HCP, D019 or L10", .default_value = "FCC"})); - m->add_component(entry("CTOA", {.description = "c to a ratio of crystal unit cell"})); m->add_component( - entry("ABASE", {.description = "base length a of the crystal unit cell"})); - m->add_component(entry("NUMSLIPSYS", {.description = "number of slip systems"})); - m->add_component(entry("NUMSLIPSETS", {.description = "number of slip system sets"})); - m->add_component(entry>("SLIPSETMEMBERS", + parameter("CTOA", {.description = "c to a ratio of crystal unit cell"})); + m->add_component( + parameter("ABASE", {.description = "base length a of the crystal unit cell"})); + m->add_component(parameter("NUMSLIPSYS", {.description = "number of slip systems"})); + m->add_component(parameter("NUMSLIPSETS", {.description = "number of slip system sets"})); + m->add_component(parameter>("SLIPSETMEMBERS", {.description = "vector of NUMSLIPSYS indices ranging from 1 to NUMSLIPSETS that indicate " "to which set each slip system belongs", .size = from_parameter("NUMSLIPSYS")})); - m->add_component(entry>("SLIPRATEEXP", + m->add_component(parameter>("SLIPRATEEXP", {.description = "vector containing NUMSLIPSETS entries for the rate sensitivity exponent", .size = from_parameter("NUMSLIPSETS")})); - m->add_component(entry>("GAMMADOTSLIPREF", + m->add_component(parameter>("GAMMADOTSLIPREF", {.description = "vector containing NUMSLIPSETS entries for the reference slip shear rate", .size = from_parameter("NUMSLIPSETS")})); - m->add_component(entry>("DISDENSINIT", + m->add_component(parameter>("DISDENSINIT", {.description = "vector containing NUMSLIPSETS entries for the initial dislocation density", .size = from_parameter("NUMSLIPSETS")})); - m->add_component(entry>("DISGENCOEFF", + m->add_component(parameter>("DISGENCOEFF", {.description = "vector containing NUMSLIPSETS entries for the dislocation generation coefficients", .size = from_parameter("NUMSLIPSETS")})); - m->add_component(entry>( + m->add_component(parameter>( "DISDYNRECCOEFF", {.description = "vector containing NUMSLIPSETS entries for " "the coefficients for dynamic dislocation " "removal", .size = from_parameter("NUMSLIPSETS")})); - m->add_component(entry>( + m->add_component(parameter>( "TAUY0", {.description = "vector containing NUMSLIPSETS entries for the " "lattice resistance to slip, e.g. the " "Peierls barrier", .size = from_parameter("NUMSLIPSETS")})); - m->add_component(entry>( + m->add_component(parameter>( "MFPSLIP", {.description = "vector containing NUMSLIPSETS microstructural " "parameters that are relevant for Hall-Petch " "strengthening, e.g., grain size", .size = from_parameter("NUMSLIPSETS")})); - m->add_component(entry>( + m->add_component(parameter>( "SLIPHPCOEFF", {.description = "vector containing NUMSLIPSETS entries for the Hall-Petch " "coefficients corresponding to " "the microstructural parameters given in MFPSLIP", .size = from_parameter("NUMSLIPSETS")})); - m->add_component(entry>( + m->add_component(parameter>( "SLIPBYTWIN", {.description = "(optional) vector containing NUMSLIPSETS entries for the " "work hardening coefficients by " "twinning on non-coplanar systems", .default_value = std::vector{0.}, .size = from_parameter("NUMSLIPSETS")})); - m->add_component(entry("NUMTWINSYS", + m->add_component(parameter("NUMTWINSYS", {.description = "(optional) number of twinning systems", .default_value = 0})); - m->add_component(entry("NUMTWINSETS", + m->add_component(parameter("NUMTWINSETS", {.description = "(optional) number of sets of twinning systems", .default_value = 0})); - m->add_component(entry>("TWINSETMEMBERS", + m->add_component(parameter>("TWINSETMEMBERS", {.description = "(optional) vector of NUMTWINSYS indices ranging from 1 to NUMTWINSETS " "that indicate to which set each slip system belongs", .default_value = std::vector{0}, .size = from_parameter("NUMTWINSYS")})); - m->add_component(entry>("TWINRATEEXP", + m->add_component(parameter>("TWINRATEEXP", {.description = "(optional) vector containing NUMTWINSETS entries for the rate sensitivity " "exponent", .default_value = std::vector{0}, .size = from_parameter("NUMTWINSETS")})); - m->add_component(entry>( + m->add_component(parameter>( "GAMMADOTTWINREF", {.description = "(optional) vector containing NUMTWINSETS entries for " "the reference slip shear rate", .default_value = std::vector{0.}, .size = from_parameter("NUMTWINSETS")})); - m->add_component(entry>( + m->add_component(parameter>( "TAUT0", {.description = "(optional) vector containing NUMTWINSETS entries for the lattice " "resistance to twinning, " "e.g. the Peierls barrier", .default_value = std::vector{0.}, .size = from_parameter("NUMTWINSETS")})); - m->add_component(entry>( + m->add_component(parameter>( "MFPTWIN", {.description = "(optional) vector containing NUMTWINSETS microstructural " "parameters that are relevant for " "Hall-Petch strengthening of twins, e.g., grain size", .default_value = std::vector{0.}, .size = from_parameter("NUMTWINSETS")})); - m->add_component(entry>("TWINHPCOEFF", + m->add_component(parameter>("TWINHPCOEFF", {.description = "(optional) vector containing NUMTWINSETS entries for the Hall-Petch coefficients " "corresponding to the microstructural parameters given in MFPTWIN", .default_value = std::vector{0.}, .size = from_parameter("NUMTWINSETS")})); - m->add_component(entry>( + m->add_component(parameter>( "TWINBYSLIP", {.description = "(optional) vector containing NUMTWINSETS entries for the " "work hardening coefficients by " "slip", .default_value = std::vector{0.}, .size = from_parameter("NUMTWINSETS")})); - m->add_component(entry>( + m->add_component(parameter>( "TWINBYTWIN", {.description = "(optional) vector containing NUMTWINSETS entries for the " "work hardening coefficients by " "twins on non-coplanar systems", @@ -4652,8 +4715,8 @@ std::shared_ptr>> Global::v auto m = std::make_shared("MAT_LinElast1D", "linear elastic material in one direction", Core::Materials::m_linelast1D); - m->add_component(entry("YOUNG", {.description = "Young's modulus"})); - m->add_component(entry("DENS", {.description = "mass density"})); + m->add_component(parameter("YOUNG", {.description = "Young's modulus"})); + m->add_component(parameter("DENS", {.description = "mass density"})); Mat::append_material_definition(matlist, m); } @@ -4665,16 +4728,16 @@ std::shared_ptr>> Global::v "linear elastic material with growth in one direction", Core::Materials::m_linelast1D_growth); - m->add_component(entry("YOUNG", {.description = "Young's modulus"})); - m->add_component(entry("DENS", {.description = "mass density"})); - m->add_component(entry("C0", {.description = "reference concentration"})); - m->add_component(entry( + m->add_component(parameter("YOUNG", {.description = "Young's modulus"})); + m->add_component(parameter("DENS", {.description = "mass density"})); + m->add_component(parameter("C0", {.description = "reference concentration"})); + m->add_component(parameter( "AOS_PROP_GROWTH", {.description = "growth proportional to amount of substance (AOS) if " "true or proportional to concentration " "if false"})); m->add_component( - entry("POLY_PARA_NUM", {.description = "number of polynomial coefficients"})); - m->add_component(entry>( + parameter("POLY_PARA_NUM", {.description = "number of polynomial coefficients"})); + m->add_component(parameter>( "POLY_PARAMS", {.description = "coefficients of polynomial", .size = from_parameter("POLY_PARA_NUM")})); diff --git a/src/inpar/4C_inpar_beam_to_solid.cpp b/src/inpar/4C_inpar_beam_to_solid.cpp index 6689cafb51f..fe2e9c3f932 100644 --- a/src/inpar/4C_inpar_beam_to_solid.cpp +++ b/src/inpar/4C_inpar_beam_to_solid.cpp @@ -387,7 +387,7 @@ void Inpar::BeamToSolid::set_valid_conditions( "Beam-to-volume mesh tying conditions - volume definition", Core::Conditions::BeamToSolidVolumeMeshtyingVolume, true, Core::Conditions::geometry_type_volume); - beam_to_solid_volume_meshtying_condition.add_component(entry("COUPLING_ID")); + beam_to_solid_volume_meshtying_condition.add_component(parameter("COUPLING_ID")); condlist.push_back(beam_to_solid_volume_meshtying_condition); beam_to_solid_volume_meshtying_condition = Core::Conditions::ConditionDefinition( @@ -395,7 +395,7 @@ void Inpar::BeamToSolid::set_valid_conditions( "Beam-to-volume mesh tying conditions - line definition", Core::Conditions::BeamToSolidVolumeMeshtyingLine, true, Core::Conditions::geometry_type_line); - beam_to_solid_volume_meshtying_condition.add_component(entry("COUPLING_ID")); + beam_to_solid_volume_meshtying_condition.add_component(parameter("COUPLING_ID")); condlist.push_back(beam_to_solid_volume_meshtying_condition); } @@ -411,7 +411,7 @@ void Inpar::BeamToSolid::set_valid_conditions( "Beam-to-surface mesh tying conditions - surface definition", Core::Conditions::BeamToSolidSurfaceMeshtyingSurface, true, Core::Conditions::geometry_type_surface); - beam_to_solid_surface_meshtying_condition.add_component(entry("COUPLING_ID")); + beam_to_solid_surface_meshtying_condition.add_component(parameter("COUPLING_ID")); condlist.push_back(beam_to_solid_surface_meshtying_condition); beam_to_solid_surface_meshtying_condition = Core::Conditions::ConditionDefinition( @@ -419,7 +419,7 @@ void Inpar::BeamToSolid::set_valid_conditions( "Beam-to-surface mesh tying conditions - line definition", Core::Conditions::BeamToSolidSurfaceMeshtyingLine, true, Core::Conditions::geometry_type_line); - beam_to_solid_surface_meshtying_condition.add_component(entry("COUPLING_ID")); + beam_to_solid_surface_meshtying_condition.add_component(parameter("COUPLING_ID")); condlist.push_back(beam_to_solid_surface_meshtying_condition); } @@ -435,7 +435,7 @@ void Inpar::BeamToSolid::set_valid_conditions( "Beam-to-surface contact conditions - surface definition", Core::Conditions::BeamToSolidSurfaceContactSurface, true, Core::Conditions::geometry_type_surface); - beam_to_solid_surface_contact_condition.add_component(entry("COUPLING_ID")); + beam_to_solid_surface_contact_condition.add_component(parameter("COUPLING_ID")); condlist.push_back(beam_to_solid_surface_contact_condition); beam_to_solid_surface_contact_condition = @@ -443,7 +443,7 @@ void Inpar::BeamToSolid::set_valid_conditions( condition_names[0], "Beam-to-surface contact conditions - line definition", Core::Conditions::BeamToSolidSurfaceContactLine, true, Core::Conditions::geometry_type_line); - beam_to_solid_surface_contact_condition.add_component(entry("COUPLING_ID")); + beam_to_solid_surface_contact_condition.add_component(parameter("COUPLING_ID")); condlist.push_back(beam_to_solid_surface_contact_condition); } } diff --git a/src/inpar/4C_inpar_beaminteraction.cpp b/src/inpar/4C_inpar_beaminteraction.cpp index 71a4f4c17c0..40bf9e719c4 100644 --- a/src/inpar/4C_inpar_beaminteraction.cpp +++ b/src/inpar/4C_inpar_beaminteraction.cpp @@ -187,7 +187,7 @@ void Inpar::BeamInteraction::set_valid_conditions( "Beam_Line_Filament_Condition", Core::Conditions::FilamentBeamLineCondition, false, Core::Conditions::geometry_type_line); - beam_filament_condition.add_component(entry("ID", {.description = "filament id"})); + beam_filament_condition.add_component(parameter("ID", {.description = "filament id"})); beam_filament_condition.add_component(selection("TYPE", {"Arbitrary", "arbitrary", "Actin", "actin", "Collagen", "collagen"}, {.description = "", .default_value = "Arbitrary"})); @@ -201,8 +201,8 @@ void Inpar::BeamInteraction::set_valid_conditions( Core::Conditions::PenaltyPointCouplingCondition, false, Core::Conditions::geometry_type_point); - penalty_coupling_condition.add_component(entry("POSITIONAL_PENALTY_PARAMETER")); - penalty_coupling_condition.add_component(entry("ROTATIONAL_PENALTY_PARAMETER")); + penalty_coupling_condition.add_component(parameter("POSITIONAL_PENALTY_PARAMETER")); + penalty_coupling_condition.add_component(parameter("ROTATIONAL_PENALTY_PARAMETER")); condlist.push_back(penalty_coupling_condition); diff --git a/src/inpar/4C_inpar_beampotential.cpp b/src/inpar/4C_inpar_beampotential.cpp index 115ffc987fd..6315b73df52 100644 --- a/src/inpar/4C_inpar_beampotential.cpp +++ b/src/inpar/4C_inpar_beampotential.cpp @@ -171,15 +171,15 @@ void Inpar::BeamPotential::set_valid_conditions( "Beam_Potential_Line_Charge_Density", Core::Conditions::BeamPotential_LineChargeDensity, false, Core::Conditions::geometry_type_line); - rigidsphere_potential_charge.add_component(entry("POTLAW")); - rigidsphere_potential_charge.add_component(entry("VAL")); + rigidsphere_potential_charge.add_component(parameter("POTLAW")); + rigidsphere_potential_charge.add_component(parameter("VAL")); rigidsphere_potential_charge.add_component( - entry>("FUNCT", {.description = "", .default_value = 0})); + parameter>("FUNCT", {.description = "", .default_value = 0})); - beam_potential_line_charge.add_component(entry("POTLAW")); - beam_potential_line_charge.add_component(entry("VAL")); + beam_potential_line_charge.add_component(parameter("POTLAW")); + beam_potential_line_charge.add_component(parameter("VAL")); beam_potential_line_charge.add_component( - entry>("FUNCT", {.description = "", .default_value = 0})); + parameter>("FUNCT", {.description = "", .default_value = 0})); condlist.push_back(rigidsphere_potential_charge); condlist.push_back(beam_potential_line_charge); diff --git a/src/inpar/4C_inpar_bio.cpp b/src/inpar/4C_inpar_bio.cpp index 75e908b3eae..220b0d965b2 100644 --- a/src/inpar/4C_inpar_bio.cpp +++ b/src/inpar/4C_inpar_bio.cpp @@ -91,8 +91,8 @@ void Inpar::ArteryNetwork::set_valid_conditions( "Artery junction boundary condition", Core::Conditions::ArtJunctionCond, true, Core::Conditions::geometry_type_point); - art_connection_bc.add_component(entry("ConditionID")); - art_connection_bc.add_component(entry("Kr")); + art_connection_bc.add_component(parameter("ConditionID")); + art_connection_bc.add_component(parameter("Kr")); condlist.push_back(art_connection_bc); @@ -108,9 +108,10 @@ void Inpar::ArteryNetwork::set_valid_conditions( art_in_bc.add_component(selection( "type", {"forced", "absorbing"}, {.description = "type", .default_value = "forced"})); - art_in_bc.add_component(entry>("VAL", {.description = "values", .size = 2})); art_in_bc.add_component( - entry>>("curve", {.description = "curve ids", .size = 2})); + parameter>("VAL", {.description = "values", .size = 2})); + art_in_bc.add_component( + parameter>>("curve", {.description = "curve ids", .size = 2})); condlist.push_back(art_in_bc); @@ -120,9 +121,10 @@ void Inpar::ArteryNetwork::set_valid_conditions( "ArtRfCond", "Artery reflection condition", Core::Conditions::ArtRfCond, true, Core::Conditions::geometry_type_point); - art_rf_bc.add_component(entry>("VAL", {.description = "value", .size = 1})); art_rf_bc.add_component( - entry>>("curve", {.description = "curve", .size = 1})); + parameter>("VAL", {.description = "value", .size = 1})); + art_rf_bc.add_component( + parameter>>("curve", {.description = "curve", .size = 1})); condlist.push_back(art_rf_bc); @@ -147,7 +149,7 @@ void Inpar::ArteryNetwork::set_valid_conditions( "Artery coupling with porofluid", Core::Conditions::ArtPorofluidCouplingCondNodebased, true, Core::Conditions::geometry_type_point); - artcoup.add_component(entry("COUPID")); + artcoup.add_component(parameter("COUPID")); condlist.push_back(artcoup); @@ -159,7 +161,7 @@ void Inpar::ArteryNetwork::set_valid_conditions( "Artery coupling with porofluid", Core::Conditions::ArtScatraCouplingCondNodebased, true, Core::Conditions::geometry_type_point); - artscatracoup.add_component(entry("COUPID")); + artscatracoup.add_component(parameter("COUPID")); condlist.push_back(artscatracoup); @@ -173,13 +175,13 @@ void Inpar::ArteryNetwork::set_valid_conditions( artcoup_ntp.add_component(selection("COUPLING_TYPE", {"ARTERY", "AIRWAY"}, {.description = "coupling type", .default_value = "ARTERY"})); - artcoup_ntp.add_component(entry("NUMDOF")); - artcoup_ntp.add_component(entry>( + artcoup_ntp.add_component(parameter("NUMDOF")); + artcoup_ntp.add_component(parameter>( "COUPLEDDOF_REDUCED", {.description = "coupling dofs of reduced airways or arteries", .size = from_parameter("NUMDOF")})); - artcoup_ntp.add_component(entry>("COUPLEDDOF_PORO", + artcoup_ntp.add_component(parameter>("COUPLEDDOF_PORO", {.description = "coupling dofs in porous domain", .size = from_parameter("NUMDOF")})); - artcoup_ntp.add_component(entry("PENALTY")); + artcoup_ntp.add_component(parameter("PENALTY")); condlist.push_back(artcoup_ntp); @@ -193,13 +195,13 @@ void Inpar::ArteryNetwork::set_valid_conditions( artscatracoup_ntp.add_component(selection("COUPLING_TYPE", {"ARTERY", "AIRWAY"}, {.description = "coupling type", .default_value = "ARTERY"})); - artscatracoup_ntp.add_component(entry("NUMDOF")); - artscatracoup_ntp.add_component(entry>( + artscatracoup_ntp.add_component(parameter("NUMDOF")); + artscatracoup_ntp.add_component(parameter>( "COUPLEDDOF_REDUCED", {.description = "coupling dofs of reduced airways or arteries", .size = from_parameter("NUMDOF")})); - artscatracoup_ntp.add_component(entry>("COUPLEDDOF_PORO", + artscatracoup_ntp.add_component(parameter>("COUPLEDDOF_PORO", {.description = "coupling dofs in porous domain", .size = from_parameter("NUMDOF")})); - artscatracoup_ntp.add_component(entry("PENALTY")); + artscatracoup_ntp.add_component(parameter("PENALTY")); condlist.push_back(artscatracoup_ntp); } @@ -247,7 +249,7 @@ void Inpar::BioFilm::set_valid_conditions( "BioGrCoupling", "BioGrCoupling", Core::Conditions::BioGrCoupling, true, Core::Conditions::geometry_type_surface); - surfbiogr.add_component(entry("coupling_id", {.description = "coupling_id"})); + surfbiogr.add_component(parameter("coupling_id", {.description = "coupling_id"})); condlist.push_back(surfbiogr); } @@ -308,13 +310,13 @@ void Inpar::ReducedLung::set_valid_conditions( "Artery reduced D 3D coupling condition", Core::Conditions::ArtRedTo3DCouplingCond, true, Core::Conditions::geometry_type_point); - art_red_to_3d_bc.add_component(entry("ConditionID")); + art_red_to_3d_bc.add_component(parameter("ConditionID")); art_red_to_3d_bc.add_component(selection("CouplingType", {"forced", "absorbing"}, {.description = "coupling type", .default_value = "forced"})); art_red_to_3d_bc.add_component(selection("ReturnedVariable", {"pressure", "flow"}, {.description = "returned variable", .default_value = "pressure"})); - art_red_to_3d_bc.add_component(entry("Tolerance")); - art_red_to_3d_bc.add_component(entry("MaximumIterations")); + art_red_to_3d_bc.add_component(parameter("Tolerance")); + art_red_to_3d_bc.add_component(parameter("MaximumIterations")); condlist.push_back(art_red_to_3d_bc); @@ -325,11 +327,11 @@ void Inpar::ReducedLung::set_valid_conditions( "Artery 3D reduced D coupling condition", Core::Conditions::Art3DToRedCouplingCond, true, Core::Conditions::geometry_type_surface); - art_3d_to_red_bc.add_component(entry("ConditionID")); + art_3d_to_red_bc.add_component(parameter("ConditionID")); art_3d_to_red_bc.add_component(selection("ReturnedVariable", {"pressure", "flow"}, {.description = "returned variable", .default_value = "flow"})); - art_3d_to_red_bc.add_component(entry("Tolerance")); - art_3d_to_red_bc.add_component(entry("MaximumIterations")); + art_3d_to_red_bc.add_component(parameter("Tolerance")); + art_3d_to_red_bc.add_component(parameter("MaximumIterations")); condlist.push_back(art_3d_to_red_bc); @@ -340,7 +342,7 @@ void Inpar::ReducedLung::set_valid_conditions( "SurfaceNeumann", "tissue RedAirway coupling surface condition", Core::Conditions::RedAirwayTissue, true, Core::Conditions::geometry_type_surface); - surfredairtis.add_component(entry("coupling_id")); + surfredairtis.add_component(parameter("coupling_id")); condlist.push_back(surfredairtis); @@ -352,7 +354,7 @@ void Inpar::ReducedLung::set_valid_conditions( "RedAirwayPrescribedCond", "tissue RedAirway coupling node condition", Core::Conditions::RedAirwayNodeTissue, true, Core::Conditions::geometry_type_point); - noderedairtis.add_component(entry("coupling_id")); + noderedairtis.add_component(parameter("coupling_id")); condlist.push_back(noderedairtis); @@ -371,10 +373,11 @@ void Inpar::ReducedLung::set_valid_conditions( {.description = "boundary condition type", .default_value = "flow"})); // reduced airway inlet components - raw_in_bc.add_component(entry>("VAL", {.description = "value", .size = 1})); raw_in_bc.add_component( - entry>>("curve", {.description = "curve", .size = 2})); - raw_in_bc.add_component(entry>>( + parameter>("VAL", {.description = "value", .size = 1})); + raw_in_bc.add_component( + parameter>>("curve", {.description = "curve", .size = 2})); + raw_in_bc.add_component(parameter>>( "funct", {.description = "function id", .default_value = std::vector{none}, .size = 1})); condlist.push_back(raw_in_bc); @@ -388,9 +391,9 @@ void Inpar::ReducedLung::set_valid_conditions( "RedAirwaySwitchFlowPressureCond", "Reduced d airway switch flow pressure boundary condition", Core::Conditions::RedAirwayPrescribedSwitchCond, true, Core::Conditions::geometry_type_point); - raw_in_switch_bc.add_component(entry("FUNCT_ID_FLOW")); - raw_in_switch_bc.add_component(entry("FUNCT_ID_PRESSURE")); - raw_in_switch_bc.add_component(entry("FUNCT_ID_PRESSURE_ACTIVE")); + raw_in_switch_bc.add_component(parameter("FUNCT_ID_FLOW")); + raw_in_switch_bc.add_component(parameter("FUNCT_ID_PRESSURE")); + raw_in_switch_bc.add_component(parameter("FUNCT_ID_PRESSURE_ACTIVE")); condlist.push_back(raw_in_switch_bc); @@ -409,19 +412,19 @@ void Inpar::ReducedLung::set_valid_conditions( "Nonlinear_Exponential", "Nonlinear_Ogden"}, {.description = "type", .default_value = "Linear_Exponential"})); - raw_volPpl_bc.add_component(entry("TLC")); - raw_volPpl_bc.add_component(entry("RV")); + raw_volPpl_bc.add_component(parameter("TLC")); + raw_volPpl_bc.add_component(parameter("RV")); - raw_volPpl_bc.add_component(entry("P_PLEURAL_0")); - raw_volPpl_bc.add_component(entry("P_PLEURAL_LIN")); - raw_volPpl_bc.add_component(entry("P_PLEURAL_NONLIN")); - raw_volPpl_bc.add_component(entry("TAU")); + raw_volPpl_bc.add_component(parameter("P_PLEURAL_0")); + raw_volPpl_bc.add_component(parameter("P_PLEURAL_LIN")); + raw_volPpl_bc.add_component(parameter("P_PLEURAL_NONLIN")); + raw_volPpl_bc.add_component(parameter("TAU")); // raw_volPpl_bc_components raw_volPpl_bc.add_component( - entry>("VAL", {.description = "value", .size = 1})); + parameter>("VAL", {.description = "value", .size = 1})); raw_volPpl_bc.add_component( - entry>>("curve", {.description = "curve", .size = 1})); + parameter>>("curve", {.description = "curve", .size = 1})); condlist.push_back(raw_volPpl_bc); @@ -444,15 +447,15 @@ void Inpar::ReducedLung::set_valid_conditions( "ImpedanceCond", "Impedance boundary condition", Core::Conditions::ImpedanceCond, true, Core::Conditions::geometry_type_surface); - impedancebc.add_component(entry("ConditionID")); + impedancebc.add_component(parameter("ConditionID")); impedancebc.add_component( selection("TYPE", {"windkessel", "resistive", "pressure_by_funct"}, {.description = "type", .default_value = "windkessel"})); - impedancebc.add_component(entry("R1")); - impedancebc.add_component(entry("R2")); - impedancebc.add_component(entry("C")); - impedancebc.add_component(entry("TIMEPERIOD")); - impedancebc.add_component(entry("FUNCT")); + impedancebc.add_component(parameter("R1")); + impedancebc.add_component(parameter("R2")); + impedancebc.add_component(parameter("C")); + impedancebc.add_component(parameter("TIMEPERIOD")); + impedancebc.add_component(parameter("FUNCT")); condlist.push_back(impedancebc); } diff --git a/src/inpar/4C_inpar_cardiovascular0d.cpp b/src/inpar/4C_inpar_cardiovascular0d.cpp index 91266f08bd1..68409862a90 100644 --- a/src/inpar/4C_inpar_cardiovascular0d.cpp +++ b/src/inpar/4C_inpar_cardiovascular0d.cpp @@ -539,13 +539,13 @@ void Inpar::Cardiovascular0D::set_valid_conditions( Core::Conditions::Cardiovascular0D4ElementWindkessel_Structure, true, Core::Conditions::geometry_type_surface); - cardiovascular0d4elementwindkesselcondition.add_component(entry("id")); - cardiovascular0d4elementwindkesselcondition.add_component(entry("C")); - cardiovascular0d4elementwindkesselcondition.add_component(entry("R_p")); - cardiovascular0d4elementwindkesselcondition.add_component(entry("Z_c")); - cardiovascular0d4elementwindkesselcondition.add_component(entry("L")); - cardiovascular0d4elementwindkesselcondition.add_component(entry("p_ref")); - cardiovascular0d4elementwindkesselcondition.add_component(entry("p_0")); + cardiovascular0d4elementwindkesselcondition.add_component(parameter("id")); + cardiovascular0d4elementwindkesselcondition.add_component(parameter("C")); + cardiovascular0d4elementwindkesselcondition.add_component(parameter("R_p")); + cardiovascular0d4elementwindkesselcondition.add_component(parameter("Z_c")); + cardiovascular0d4elementwindkesselcondition.add_component(parameter("L")); + cardiovascular0d4elementwindkesselcondition.add_component(parameter("p_ref")); + cardiovascular0d4elementwindkesselcondition.add_component(parameter("p_0")); condlist.push_back(cardiovascular0d4elementwindkesselcondition); @@ -560,25 +560,25 @@ void Inpar::Cardiovascular0D::set_valid_conditions( Core::Conditions::Cardiovascular0DArterialProxDist_Structure, true, Core::Conditions::geometry_type_surface); - cardiovascular0darterialproxdistcond.add_component(entry("id")); - cardiovascular0darterialproxdistcond.add_component(entry("R_arvalve_max")); - cardiovascular0darterialproxdistcond.add_component(entry("R_arvalve_min")); - cardiovascular0darterialproxdistcond.add_component(entry("R_atvalve_max")); - cardiovascular0darterialproxdistcond.add_component(entry("R_atvalve_min")); - cardiovascular0darterialproxdistcond.add_component(entry("k_p")); - cardiovascular0darterialproxdistcond.add_component(entry("L_arp")); - cardiovascular0darterialproxdistcond.add_component(entry("C_arp")); - cardiovascular0darterialproxdistcond.add_component(entry("R_arp")); - cardiovascular0darterialproxdistcond.add_component(entry("C_ard")); - cardiovascular0darterialproxdistcond.add_component(entry("R_ard")); - cardiovascular0darterialproxdistcond.add_component(entry("p_ref")); - cardiovascular0darterialproxdistcond.add_component(entry("p_v_0")); - cardiovascular0darterialproxdistcond.add_component(entry("p_arp_0")); - cardiovascular0darterialproxdistcond.add_component(entry("y_arp_0")); - cardiovascular0darterialproxdistcond.add_component(entry("p_ard_0")); - cardiovascular0darterialproxdistcond.add_component(entry("p_at_fac")); + cardiovascular0darterialproxdistcond.add_component(parameter("id")); + cardiovascular0darterialproxdistcond.add_component(parameter("R_arvalve_max")); + cardiovascular0darterialproxdistcond.add_component(parameter("R_arvalve_min")); + cardiovascular0darterialproxdistcond.add_component(parameter("R_atvalve_max")); + cardiovascular0darterialproxdistcond.add_component(parameter("R_atvalve_min")); + cardiovascular0darterialproxdistcond.add_component(parameter("k_p")); + cardiovascular0darterialproxdistcond.add_component(parameter("L_arp")); + cardiovascular0darterialproxdistcond.add_component(parameter("C_arp")); + cardiovascular0darterialproxdistcond.add_component(parameter("R_arp")); + cardiovascular0darterialproxdistcond.add_component(parameter("C_ard")); + cardiovascular0darterialproxdistcond.add_component(parameter("R_ard")); + cardiovascular0darterialproxdistcond.add_component(parameter("p_ref")); + cardiovascular0darterialproxdistcond.add_component(parameter("p_v_0")); + cardiovascular0darterialproxdistcond.add_component(parameter("p_arp_0")); + cardiovascular0darterialproxdistcond.add_component(parameter("y_arp_0")); + cardiovascular0darterialproxdistcond.add_component(parameter("p_ard_0")); + cardiovascular0darterialproxdistcond.add_component(parameter("p_at_fac")); cardiovascular0darterialproxdistcond.add_component( - entry>("p_at_crv", {.description = "curve"})); + parameter>("p_at_crv", {.description = "curve"})); condlist.push_back(cardiovascular0darterialproxdistcond); /*--------------------------------------------------------------------*/ @@ -592,7 +592,7 @@ void Inpar::Cardiovascular0D::set_valid_conditions( Core::Conditions::Cardiovascular0DSysPulCirculation_Structure, true, Core::Conditions::geometry_type_surface); - cardiovascular0dsyspulcirculationcond.add_component(entry("id")); + cardiovascular0dsyspulcirculationcond.add_component(parameter("id")); cardiovascular0dsyspulcirculationcond.add_component(selection("TYPE", {"ventricle_left", "ventricle_right", "atrium_left", "atrium_right", "dummy"}, {.description = ""})); @@ -610,7 +610,7 @@ void Inpar::Cardiovascular0D::set_valid_conditions( Core::Conditions::CardiovascularRespiratory0DSysPulPeriphCirculation_Structure, true, Core::Conditions::geometry_type_surface); - cardiovascularrespiratory0dsyspulperiphcirculationcond.add_component(entry("id")); + cardiovascularrespiratory0dsyspulperiphcirculationcond.add_component(parameter("id")); cardiovascularrespiratory0dsyspulperiphcirculationcond.add_component(selection( "TYPE", {"ventricle_left", "ventricle_right", "atrium_left", "atrium_right", "dummy"}, {.description = ""})); @@ -628,7 +628,7 @@ void Inpar::Cardiovascular0D::set_valid_conditions( Core::Conditions::Cardiovascular0DStructureCoupling, true, Core::Conditions::geometry_type_surface); - cardiovascular0dstructurecouplingcond.add_component(entry("coupling_id")); + cardiovascular0dstructurecouplingcond.add_component(parameter("coupling_id")); condlist.push_back(cardiovascular0dstructurecouplingcond); } diff --git a/src/inpar/4C_inpar_ehl.cpp b/src/inpar/4C_inpar_ehl.cpp index e401733ed9c..d9786f9cf96 100644 --- a/src/inpar/4C_inpar_ehl.cpp +++ b/src/inpar/4C_inpar_ehl.cpp @@ -148,12 +148,13 @@ void Inpar::EHL::set_valid_conditions(std::vector("InterfaceID")); + cond.add_component(parameter("InterfaceID")); cond.add_component( selection("Side", {"Master", "Slave"}, {.description = "interface side"})); cond.add_component(selection("Initialization", {"Inactive", "Active"}, {.description = "initialization", .default_value = "Active"})); - cond.add_component(entry("FrCoeffOrBound", {.description = "", .default_value = 0.0})); + cond.add_component( + parameter("FrCoeffOrBound", {.description = "", .default_value = 0.0})); condlist.push_back(cond); }; diff --git a/src/inpar/4C_inpar_elch.cpp b/src/inpar/4C_inpar_elch.cpp index 864b25f5563..e2c77468ec2 100644 --- a/src/inpar/4C_inpar_elch.cpp +++ b/src/inpar/4C_inpar_elch.cpp @@ -188,10 +188,10 @@ void Inpar::ElCh::set_valid_conditions(std::vector("ConditionID")); - cond.add_component(entry("C_0%")); - cond.add_component(entry("C_100%")); - cond.add_component(entry("ONE_HOUR")); + cond.add_component(parameter("ConditionID")); + cond.add_component(parameter("C_0%")); + cond.add_component(parameter("C_100%")); + cond.add_component(parameter("ONE_HOUR")); // insert condition definitions into global list of valid condition definitions condlist.emplace_back(cond); @@ -222,7 +222,7 @@ void Inpar::ElCh::set_valid_conditions(std::vector("ConditionID")); + cond.add_component(parameter("ConditionID")); // insert condition definitions into global list of valid condition definitions condlist.emplace_back(cond); @@ -247,52 +247,52 @@ void Inpar::ElCh::set_valid_conditions(std::vector("ALPHA_A"), - entry("ALPHA_C"), - entry("I0"), - entry("GAMMA"), - entry("REFCON"), - entry("DL_SPEC_CAP"), + parameter("ALPHA_A"), + parameter("ALPHA_C"), + parameter("I0"), + parameter("GAMMA"), + parameter("REFCON"), + parameter("DL_SPEC_CAP"), }), all_of({ selection("KINETIC_MODEL", {{"Tafel", Inpar::ElCh::ElectrodeKinetics::tafel}}), - entry("ALPHA"), - entry("I0"), - entry("GAMMA"), - entry("REFCON"), - entry("DL_SPEC_CAP"), + parameter("ALPHA"), + parameter("I0"), + parameter("GAMMA"), + parameter("REFCON"), + parameter("DL_SPEC_CAP"), }), all_of({ selection("KINETIC_MODEL", {{"linear", Inpar::ElCh::ElectrodeKinetics::linear}}), - entry("ALPHA"), - entry("I0"), - entry("GAMMA"), - entry("REFCON"), - entry("DL_SPEC_CAP"), + parameter("ALPHA"), + parameter("I0"), + parameter("GAMMA"), + parameter("REFCON"), + parameter("DL_SPEC_CAP"), }), all_of({ selection("KINETIC_MODEL", {{"Butler-Volmer-Newman", Inpar::ElCh::ElectrodeKinetics::butler_volmer_newman}}), - entry("K_A"), - entry("K_C"), - entry("BETA"), - entry("DL_SPEC_CAP"), + parameter("K_A"), + parameter("K_C"), + parameter("BETA"), + parameter("DL_SPEC_CAP"), }), all_of({ selection("KINETIC_MODEL", {{"Butler-Volmer-Bard", Inpar::ElCh::ElectrodeKinetics::butler_volmer_bard}}), - entry("E0"), - entry("K0"), - entry("BETA"), - entry("C_C0"), - entry("C_A0"), - entry("DL_SPEC_CAP"), + parameter("E0"), + parameter("K0"), + parameter("BETA"), + parameter("C_C0"), + parameter("C_A0"), + parameter("DL_SPEC_CAP"), }), all_of({ selection("KINETIC_MODEL", {{"Nernst", Inpar::ElCh::ElectrodeKinetics::nernst}}), - entry("E0"), - entry("C0"), - entry("DL_SPEC_CAP"), + parameter("E0"), + parameter("C0"), + parameter("DL_SPEC_CAP"), }), }); @@ -315,17 +315,17 @@ void Inpar::ElCh::set_valid_conditions(std::vector("ConditionID")); - cond.add_component(entry("POT")); - cond.add_component(entry>("FUNCT", {.description = ""})); - cond.add_component(entry("NUMSCAL")); - cond.add_component(entry>( + cond.add_component(parameter("ConditionID")); + cond.add_component(parameter("POT")); + cond.add_component(parameter>("FUNCT", {.description = ""})); + cond.add_component(parameter("NUMSCAL")); + cond.add_component(parameter>( "STOICH", {.description = "", .size = from_parameter("NUMSCAL")})); - cond.add_component(entry("E-")); - cond.add_component( - entry("EPSILON", {.description = "porosity of electrode boundary, set to -1 if " - "equal to porosity of electrolyte domain"})); - cond.add_component(entry("ZERO_CUR")); + cond.add_component(parameter("E-")); + cond.add_component(parameter( + "EPSILON", {.description = "porosity of electrode boundary, set to -1 if " + "equal to porosity of electrolyte domain"})); + cond.add_component(parameter("ZERO_CUR")); cond.add_component(reaction_model_choices); condlist.emplace_back(cond); }; @@ -356,24 +356,24 @@ void Inpar::ElCh::set_valid_conditions(std::vector("ConditionID"), - entry("POT"), - entry>("FUNCT"), - entry("NUMSCAL"), - entry>("STOICH", {.size = from_parameter("NUMSCAL")}), - entry("E-"), - entry("ZERO_CUR"), + parameter("ConditionID"), + parameter("POT"), + parameter>("FUNCT"), + parameter("NUMSCAL"), + parameter>("STOICH", {.size = from_parameter("NUMSCAL")}), + parameter("E-"), + parameter("ZERO_CUR"), selection("KINETIC_MODEL", { {"Butler-Volmer", Inpar::ElCh::ElectrodeKinetics::butler_volmer}, }), - entry("A_S"), - entry("ALPHA_A"), - entry("ALPHA_C"), - entry("I0"), - entry("GAMMA"), - entry("REFCON"), - entry("DL_SPEC_CAP"), + parameter("A_S"), + parameter("ALPHA_A"), + parameter("ALPHA_C"), + parameter("I0"), + parameter("GAMMA"), + parameter("REFCON"), + parameter("DL_SPEC_CAP"), }); { @@ -411,16 +411,17 @@ void Inpar::ElCh::set_valid_conditions(std::vector("NUMBER_OF_HALF_CYCLES")); + cond.add_component(parameter("NUMBER_OF_HALF_CYCLES")); + cond.add_component(parameter( + "BEGIN_WITH_CHARGING")); // Boolean parameter represented by integer parameter + cond.add_component(parameter>("CONDITION_ID_FOR_CHARGE", {.description = ""})); cond.add_component( - entry("BEGIN_WITH_CHARGING")); // Boolean parameter represented by integer parameter - cond.add_component(entry>("CONDITION_ID_FOR_CHARGE", {.description = ""})); - cond.add_component(entry>("CONDITION_ID_FOR_DISCHARGE", {.description = ""})); - cond.add_component(entry("INIT_RELAX_TIME")); - cond.add_component(entry("ADAPTIVE_TIME_STEPPING_INIT_RELAX")); - cond.add_component(entry>("NUM_ADD_ADAPT_TIME_STEPS", {.description = ""})); + parameter>("CONDITION_ID_FOR_DISCHARGE", {.description = ""})); + cond.add_component(parameter("INIT_RELAX_TIME")); + cond.add_component(parameter("ADAPTIVE_TIME_STEPPING_INIT_RELAX")); + cond.add_component(parameter>("NUM_ADD_ADAPT_TIME_STEPS", {.description = ""})); cond.add_component( - entry>("MIN_TIME_STEPS_DURING_INIT_RELAX", {.description = ""})); + parameter>("MIN_TIME_STEPS_DURING_INIT_RELAX", {.description = ""})); // insert condition definitions into global list of valid condition definitions condlist.emplace_back(cond); @@ -453,14 +454,14 @@ void Inpar::ElCh::set_valid_conditions(std::vector("ConditionID")); - cond.add_component(entry("CURRENT")); - cond.add_component(entry("CUT_OFF_VOLTAGE")); - cond.add_component(entry("CUT_OFF_C_RATE")); - cond.add_component(entry("RELAX_TIME")); + cond.add_component(parameter("ConditionID")); + cond.add_component(parameter("CURRENT")); + cond.add_component(parameter("CUT_OFF_VOLTAGE")); + cond.add_component(parameter("CUT_OFF_C_RATE")); + cond.add_component(parameter("RELAX_TIME")); // switch adaptive time stepping on for different phases of half cycle: 1st: end of constant // current, 2nd: end of constant voltage, 3rd: end of relaxation - cond.add_component(entry>( + cond.add_component(parameter>( "ADAPTIVE_TIME_STEPPING_PHASE_ON_OFF", {.description = "", .size = 3})); // insert condition definitions into global list of valid condition definitions diff --git a/src/inpar/4C_inpar_elemag.cpp b/src/inpar/4C_inpar_elemag.cpp index dc29ba159ff..be8e7c13140 100644 --- a/src/inpar/4C_inpar_elemag.cpp +++ b/src/inpar/4C_inpar_elemag.cpp @@ -129,12 +129,12 @@ void Inpar::EleMag::set_valid_conditions( const auto make_silvermueller = [&condlist](Core::Conditions::ConditionDefinition& cond) { - cond.add_component(entry("NUMDOF")); - cond.add_component(entry>( + cond.add_component(parameter("NUMDOF")); + cond.add_component(parameter>( "ONOFF", {.description = "", .size = from_parameter("NUMDOF")})); - cond.add_component(entry>>( + cond.add_component(parameter>>( "FUNCT", {.description = "", .required = false, .size = from_parameter("NUMDOF")})); - cond.add_component(entry>( + cond.add_component(parameter>( "VAL", {.description = "", .size = from_parameter("NUMDOF")})); condlist.push_back(cond); diff --git a/src/inpar/4C_inpar_fluid.cpp b/src/inpar/4C_inpar_fluid.cpp index a8bea312915..e45068d801b 100644 --- a/src/inpar/4C_inpar_fluid.cpp +++ b/src/inpar/4C_inpar_fluid.cpp @@ -1298,12 +1298,12 @@ void Inpar::FLUID::set_valid_conditions( "TransferTurbulentInflow", "TransferTurbulentInflow", Core::Conditions::TransferTurbulentInflow, true, Core::Conditions::geometry_type_surface); - tbc_turb_inflow.add_component(entry("ID", {.description = ""})); + tbc_turb_inflow.add_component(parameter("ID", {.description = ""})); tbc_turb_inflow.add_component( selection("toggle", {"master", "slave"}, {.description = "toggle"})); tbc_turb_inflow.add_component(selection("DIRECTION", {{"x", 0}, {"y", 1}, {"z", 2}}, {.description = "transfer direction", .default_value = 0})); - tbc_turb_inflow.add_component(entry>( + tbc_turb_inflow.add_component(parameter>( "curve", {.description = "curve id", .default_value = Core::IO::none})); condlist.push_back(tbc_turb_inflow); @@ -1330,17 +1330,17 @@ void Inpar::FLUID::set_valid_conditions( // (out)flow rate or (out)flow volume (e.g., for air-cushion condition) surfflowdeppressure.add_component(selection("TYPE_OF_FLOW_DEPENDENCE", {"flow_rate", "flow_volume", "fixed_pressure"}, {.description = "type of flow dependence"})); - surfflowdeppressure.add_component(entry("ConstCoeff", + surfflowdeppressure.add_component(parameter("ConstCoeff", {.description = "constant coefficient for (linear) flow-rate-based condition"})); - surfflowdeppressure.add_component(entry( + surfflowdeppressure.add_component(parameter( "LinCoeff", {.description = "linear coefficient for (linear) flow-rate-based condition"})); - surfflowdeppressure.add_component(entry( + surfflowdeppressure.add_component(parameter( "InitialVolume", {.description = "initial (air-cushion) volume outside of boundary"})); - surfflowdeppressure.add_component(entry( + surfflowdeppressure.add_component(parameter( "ReferencePressure", {.description = " reference pressure outside of boundary"})); surfflowdeppressure.add_component( - entry("AdiabaticExponent", {.description = "adiabatic exponent"})); - surfflowdeppressure.add_component(entry>( + parameter("AdiabaticExponent", {.description = "adiabatic exponent"})); + surfflowdeppressure.add_component(parameter>( "curve", {.description = "curve id", .default_value = Core::IO::none})); condlist.emplace_back(surfflowdeppressure); @@ -1360,7 +1360,7 @@ void Inpar::FLUID::set_valid_conditions( const auto make_slip_supp = [&](Core::Conditions::ConditionDefinition& cond) { - cond.add_component(entry("USEUPDATEDNODEPOS")); + cond.add_component(parameter("USEUPDATEDNODEPOS")); condlist.emplace_back(cond); }; @@ -1380,7 +1380,7 @@ void Inpar::FLUID::set_valid_conditions( const auto make_navierslip = [&](Core::Conditions::ConditionDefinition& cond) { - cond.add_component(entry("SLIPCOEFFICIENT")); + cond.add_component(parameter("SLIPCOEFFICIENT")); condlist.emplace_back(cond); }; @@ -1426,16 +1426,17 @@ void Inpar::FLUID::set_valid_conditions( const auto make_mixhybDirichlet = [&](Core::Conditions::ConditionDefinition& cond) { // we provide a vector of 3 values for velocities - cond.add_component(entry>("val", {.description = "velocity", .size = 3})); + cond.add_component( + parameter>("val", {.description = "velocity", .size = 3})); // and optional spatial functions - cond.add_component(entry>>( + cond.add_component(parameter>>( "funct", {.description = "spatial function", .default_value = std::vector(3, Core::IO::none), .size = 3})); // characteristic velocity - cond.add_component(entry("u_C")); + cond.add_component(parameter("u_C")); // the penalty parameter could be computed dynamically (using Spaldings // law of the wall) or using a fixed value (1) @@ -1443,7 +1444,7 @@ void Inpar::FLUID::set_valid_conditions( "PENTYPE", {"constant", "Spalding"}, {.description = "how penalty parameter is computed"})); // scaling factor for penalty parameter tauB - cond.add_component(entry("hB_divided_by")); + cond.add_component(parameter("hB_divided_by")); // if Spaldings law is used, this defines the way how the traction at y is computed from utau cond.add_component(selection("utau_computation", {"at_wall", "viscous_tangent"}, @@ -1475,9 +1476,10 @@ void Inpar::FLUID::set_valid_conditions( "Surface LIFTDRAG", Core::Conditions::SurfLIFTDRAG, true, Core::Conditions::geometry_type_surface); - surfliftdrag.add_component(entry("label")); - surfliftdrag.add_component(entry>("CENTER", {.description = "", .size = 3})); - surfliftdrag.add_component(entry>( + surfliftdrag.add_component(parameter("label")); + surfliftdrag.add_component( + parameter>("CENTER", {.description = "", .size = 3})); + surfliftdrag.add_component(parameter>( "AXIS", {.description = "", .default_value = std::vector{0.0, 0.0, 0.0}, .size = 3})); condlist.push_back(surfliftdrag); @@ -1489,7 +1491,7 @@ void Inpar::FLUID::set_valid_conditions( "LineFlowRate", "Line Flow Rate", Core::Conditions::FlowRateThroughLine_2D, true, Core::Conditions::geometry_type_line); - lineflowrate.add_component(entry("ConditionID")); + lineflowrate.add_component(parameter("ConditionID")); condlist.push_back(lineflowrate); @@ -1500,7 +1502,7 @@ void Inpar::FLUID::set_valid_conditions( "SurfFlowRate", "Surface Flow Rate", Core::Conditions::FlowRateThroughSurface_3D, true, Core::Conditions::geometry_type_surface); - surfflowrate.add_component(entry("ConditionID")); + surfflowrate.add_component(parameter("ConditionID")); condlist.push_back(surfflowrate); @@ -1511,7 +1513,7 @@ void Inpar::FLUID::set_valid_conditions( "volumetric surface flow condition", Core::Conditions::VolumetricSurfaceFlowCond, true, Core::Conditions::geometry_type_surface); - volumetric_surface_flow_cond.add_component(entry("ConditionID")); + volumetric_surface_flow_cond.add_component(parameter("ConditionID")); volumetric_surface_flow_cond.add_component( selection("ConditionType", {"POLYNOMIAL", "WOMERSLEY"}, @@ -1527,25 +1529,25 @@ void Inpar::FLUID::set_valid_conditions( selection("CorrectionFlag", {"WithOutCorrection", "WithCorrection"}, {.description = "correction flag", .default_value = "WithOutCorrection"})); - volumetric_surface_flow_cond.add_component(entry("Period")); - volumetric_surface_flow_cond.add_component(entry("Order")); - volumetric_surface_flow_cond.add_component(entry("Harmonics")); - volumetric_surface_flow_cond.add_component(entry("Val")); - volumetric_surface_flow_cond.add_component(entry("Funct")); + volumetric_surface_flow_cond.add_component(parameter("Period")); + volumetric_surface_flow_cond.add_component(parameter("Order")); + volumetric_surface_flow_cond.add_component(parameter("Harmonics")); + volumetric_surface_flow_cond.add_component(parameter("Val")); + volumetric_surface_flow_cond.add_component(parameter("Funct")); volumetric_surface_flow_cond.add_component( selection("NORMAL", {"SelfEvaluateNormal", "UsePrescribedNormal"}, {.description = "normal", .default_value = "SelfEvaluateNormal"})); - volumetric_surface_flow_cond.add_component(entry("n1")); - volumetric_surface_flow_cond.add_component(entry("n2")); - volumetric_surface_flow_cond.add_component(entry("n3")); + volumetric_surface_flow_cond.add_component(parameter("n1")); + volumetric_surface_flow_cond.add_component(parameter("n2")); + volumetric_surface_flow_cond.add_component(parameter("n3")); volumetric_surface_flow_cond.add_component(selection("CenterOfMass", {"SelfEvaluateCenterOfMass", "UsePrescribedCenterOfMass"}, {.description = "center of mass", .default_value = "SelfEvaluateCenterOfMass"})); - volumetric_surface_flow_cond.add_component(entry("c1")); - volumetric_surface_flow_cond.add_component(entry("c2")); - volumetric_surface_flow_cond.add_component(entry("c3")); + volumetric_surface_flow_cond.add_component(parameter("c1")); + volumetric_surface_flow_cond.add_component(parameter("c2")); + volumetric_surface_flow_cond.add_component(parameter("c3")); condlist.push_back(volumetric_surface_flow_cond); @@ -1559,7 +1561,7 @@ void Inpar::FLUID::set_valid_conditions( "volumetric flow border nodes condition", Core::Conditions::VolumetricFlowBorderNodes, true, Core::Conditions::geometry_type_line); - volumetric_border_nodes_cond.add_component(entry("ConditionID")); + volumetric_border_nodes_cond.add_component(parameter("ConditionID")); condlist.push_back(volumetric_border_nodes_cond); @@ -1570,7 +1572,7 @@ void Inpar::FLUID::set_valid_conditions( "total traction correction condition", Core::Conditions::TotalTractionCorrectionCond, true, Core::Conditions::geometry_type_surface); - total_traction_correction_cond.add_component(entry("ConditionID")); + total_traction_correction_cond.add_component(parameter("ConditionID")); total_traction_correction_cond.add_component( selection("ConditionType", {"POLYNOMIAL", "WOMERSLEY"}, {.description = "condition type", .default_value = "POLYNOMIAL"})); @@ -1585,25 +1587,25 @@ void Inpar::FLUID::set_valid_conditions( selection("CorrectionFlag", {"WithOutCorrection", "WithCorrection"}, {.description = "correction flag", .default_value = "WithOutCorrection"})); - total_traction_correction_cond.add_component(entry("Period")); - total_traction_correction_cond.add_component(entry("Order")); - total_traction_correction_cond.add_component(entry("Harmonics")); - total_traction_correction_cond.add_component(entry("Val")); - total_traction_correction_cond.add_component(entry("Funct")); + total_traction_correction_cond.add_component(parameter("Period")); + total_traction_correction_cond.add_component(parameter("Order")); + total_traction_correction_cond.add_component(parameter("Harmonics")); + total_traction_correction_cond.add_component(parameter("Val")); + total_traction_correction_cond.add_component(parameter("Funct")); total_traction_correction_cond.add_component( selection("NORMAL", {"SelfEvaluateNormal", "UsePrescribedNormal"}, {.description = "normal", .default_value = "SelfEvaluateNormal"})); - total_traction_correction_cond.add_component(entry("n1")); - total_traction_correction_cond.add_component(entry("n2")); - total_traction_correction_cond.add_component(entry("n3")); + total_traction_correction_cond.add_component(parameter("n1")); + total_traction_correction_cond.add_component(parameter("n2")); + total_traction_correction_cond.add_component(parameter("n3")); total_traction_correction_cond.add_component(selection("CenterOfMass", {"SelfEvaluateCenterOfMass", "UsePrescribedCenterOfMass"}, {.description = "center of mass", .default_value = "SelfEvaluateCenterOfMass"})); - total_traction_correction_cond.add_component(entry("c1")); - total_traction_correction_cond.add_component(entry("c2")); - total_traction_correction_cond.add_component(entry("c3")); + total_traction_correction_cond.add_component(parameter("c1")); + total_traction_correction_cond.add_component(parameter("c2")); + total_traction_correction_cond.add_component(parameter("c3")); condlist.push_back(total_traction_correction_cond); @@ -1616,7 +1618,7 @@ void Inpar::FLUID::set_valid_conditions( Core::Conditions::TotalTractionCorrectionBorderNodes, true, Core::Conditions::geometry_type_line); - traction_corrector_border_nodes_cond.add_component(entry("ConditionID")); + traction_corrector_border_nodes_cond.add_component(parameter("ConditionID")); condlist.push_back(traction_corrector_border_nodes_cond); diff --git a/src/inpar/4C_inpar_fpsi.cpp b/src/inpar/4C_inpar_fpsi.cpp index 86a31554aad..9396a9e8832 100644 --- a/src/inpar/4C_inpar_fpsi.cpp +++ b/src/inpar/4C_inpar_fpsi.cpp @@ -133,8 +133,8 @@ void Inpar::FPSI::set_valid_conditions(std::vector("coupling_id")); - surffpsi.add_component(entry("coupling_id")); + linefpsi.add_component(parameter("coupling_id")); + surffpsi.add_component(parameter("coupling_id")); condlist.push_back(linefpsi); condlist.push_back(surffpsi); diff --git a/src/inpar/4C_inpar_fsi.cpp b/src/inpar/4C_inpar_fsi.cpp index 47377da56ed..ca16949d49b 100644 --- a/src/inpar/4C_inpar_fsi.cpp +++ b/src/inpar/4C_inpar_fsi.cpp @@ -433,8 +433,8 @@ void Inpar::FSI::set_valid_conditions(std::vector("coupling_id")); - surffsi.add_component(entry("coupling_id")); + linefsi.add_component(parameter("coupling_id")); + surffsi.add_component(parameter("coupling_id")); condlist.push_back(linefsi); condlist.push_back(surffsi); @@ -459,7 +459,7 @@ void Inpar::FSI::set_valid_conditions(std::vector("coupling_id")); + surfsac.add_component(parameter("coupling_id")); surfsac.add_component(selection( "field", {"structure", "ale"}, {.description = "field", .default_value = "structure"})); @@ -473,7 +473,7 @@ void Inpar::FSI::set_valid_conditions(std::vector("coupling_id")); + volsfv.add_component(parameter("coupling_id")); volsfv.add_component(selection( "field", {"structure", "ale"}, {.description = "field", .default_value = "structure"})); diff --git a/src/inpar/4C_inpar_mortar.cpp b/src/inpar/4C_inpar_mortar.cpp index e0a9e2520b9..cfc81a31b29 100644 --- a/src/inpar/4C_inpar_mortar.cpp +++ b/src/inpar/4C_inpar_mortar.cpp @@ -177,16 +177,16 @@ void Inpar::Mortar::set_valid_conditions( const auto make_contact = [&condlist](Core::Conditions::ConditionDefinition& cond) { - cond.add_component(entry("InterfaceID")); + cond.add_component(parameter("InterfaceID")); cond.add_component(selection( "Side", {"Master", "Slave", "Selfcontact"}, {.description = "interface side"})); cond.add_component(selection("Initialization", {"Inactive", "Active"}, {.description = "initialization", .default_value = "Inactive"})); - cond.add_component(entry( + cond.add_component(parameter( "FrCoeffOrBound", {.description = "friction coefficient bound", .default_value = 0.0})); - cond.add_component( - entry("AdhesionBound", {.description = "adhesion bound", .default_value = 0.0})); + cond.add_component(parameter( + "AdhesionBound", {.description = "adhesion bound", .default_value = 0.0})); cond.add_component(selection("Application", {"Solidcontact", "Beamtosolidcontact", "Beamtosolidmeshtying"}, @@ -199,13 +199,13 @@ void Inpar::Mortar::set_valid_conditions( static_cast(DBCHandling::remove_dbc_nodes_from_slave_side)}}, {.description = "DbcHandling", .default_value = static_cast(DBCHandling::do_nothing)})); - cond.add_component(entry( + cond.add_component(parameter( "TwoHalfPass", {.description = "optional two half pass approach", .default_value = 0.0})); - cond.add_component(entry("RefConfCheckNonSmoothSelfContactSurface", + cond.add_component(parameter("RefConfCheckNonSmoothSelfContactSurface", {.description = "optional reference configuration check for non-smooth self contact surfaces", .default_value = 0.0})); - cond.add_component(entry>("ConstitutiveLawID", + cond.add_component(parameter>("ConstitutiveLawID", {.description = "material id of the constitutive law", .default_value = 0})); condlist.push_back(cond); }; @@ -226,7 +226,7 @@ void Inpar::Mortar::set_valid_conditions( const auto make_mortar = [&condlist](Core::Conditions::ConditionDefinition& cond) { - cond.add_component(entry("InterfaceID")); + cond.add_component(parameter("InterfaceID")); cond.add_component( selection("Side", {"Master", "Slave"}, {.description = "interface side"})); cond.add_component(selection("Initialization", {"Inactive", "Active"}, @@ -254,7 +254,7 @@ void Inpar::Mortar::set_valid_conditions( const auto make_mrtrsym = [&condlist](Core::Conditions::ConditionDefinition& cond) { - cond.add_component(entry>("ONOFF", {.description = "", .size = 3})); + cond.add_component(parameter>("ONOFF", {.description = "", .size = 3})); condlist.push_back(cond); }; @@ -292,7 +292,7 @@ void Inpar::Mortar::set_valid_conditions( const auto make_mortar_multi = [&condlist](Core::Conditions::ConditionDefinition& cond) { - cond.add_component(entry("InterfaceID")); + cond.add_component(parameter("InterfaceID")); cond.add_component( selection("Side", {"Master", "Slave"}, {.description = "interface side"})); cond.add_component(selection("Initialization", {"Inactive", "Active"}, diff --git a/src/inpar/4C_inpar_mpc_rve.cpp b/src/inpar/4C_inpar_mpc_rve.cpp index be082171028..7f48bf06284 100644 --- a/src/inpar/4C_inpar_mpc_rve.cpp +++ b/src/inpar/4C_inpar_mpc_rve.cpp @@ -85,10 +85,10 @@ void Inpar::RveMpc::set_valid_conditions( "2d", Core::Conditions::PointLinearCoupledEquation, false, Core::Conditions::geometry_type_point); - linear_ce.add_component(entry("EQUATION", {.description = "EQUATION"})); + linear_ce.add_component(parameter("EQUATION", {.description = "EQUATION"})); linear_ce.add_component(selection("ADD", {"dispx", "dispy", "undefined"}, {.description = "degrees of freedom", .default_value = "undefined"})); - linear_ce.add_component(entry("COEFFICIENT")); + linear_ce.add_component(parameter("COEFFICIENT")); condlist.push_back(linear_ce); /*--------------------------------------------------------------------*/ diff --git a/src/inpar/4C_inpar_particle.cpp b/src/inpar/4C_inpar_particle.cpp index 3dfd255ecc0..295722e9ac1 100644 --- a/src/inpar/4C_inpar_particle.cpp +++ b/src/inpar/4C_inpar_particle.cpp @@ -567,7 +567,7 @@ void Inpar::PARTICLE::set_valid_conditions( "Wall for particle interaction with (optional) material definition", Core::Conditions::ParticleWall, true, Core::Conditions::geometry_type_surface); - surfpartwall.add_component(entry("MAT")); + surfpartwall.add_component(parameter("MAT")); condlist.push_back(surfpartwall); } diff --git a/src/inpar/4C_inpar_poromultiphase_scatra.cpp b/src/inpar/4C_inpar_poromultiphase_scatra.cpp index 53e2b11a4b8..595e6651707 100644 --- a/src/inpar/4C_inpar_poromultiphase_scatra.cpp +++ b/src/inpar/4C_inpar_poromultiphase_scatra.cpp @@ -166,13 +166,13 @@ void Inpar::PoroMultiPhaseScaTra::set_valid_conditions( const auto make_oxypartpress = [&condlist](Core::Conditions::ConditionDefinition& cond) { cond.add_component( - entry("SCALARID", {.description = "scalar id of oxygen partial pressure"})); - cond.add_component(entry("n", {.description = "n"})); - cond.add_component(entry("Pb50", {.description = "Pb50"})); - cond.add_component(entry("CaO2_max", {.description = "CaO2_max"})); - cond.add_component(entry("alpha_bl_eff", {.description = "alpha_bl_eff"})); - cond.add_component(entry("rho_oxy", {.description = "rho_oxy"})); - cond.add_component(entry("rho_bl", {.description = "rho_bl"})); + parameter("SCALARID", {.description = "scalar id of oxygen partial pressure"})); + cond.add_component(parameter("n", {.description = "n"})); + cond.add_component(parameter("Pb50", {.description = "Pb50"})); + cond.add_component(parameter("CaO2_max", {.description = "CaO2_max"})); + cond.add_component(parameter("alpha_bl_eff", {.description = "alpha_bl_eff"})); + cond.add_component(parameter("rho_oxy", {.description = "rho_oxy"})); + cond.add_component(parameter("rho_bl", {.description = "rho_bl"})); condlist.push_back(cond); }; diff --git a/src/inpar/4C_inpar_s2i.cpp b/src/inpar/4C_inpar_s2i.cpp index ca2ceeaa566..2391fc3e715 100644 --- a/src/inpar/4C_inpar_s2i.cpp +++ b/src/inpar/4C_inpar_s2i.cpp @@ -118,12 +118,12 @@ void Inpar::S2I::set_valid_conditions(std::vector("ConditionID")); + cond.add_component(parameter("ConditionID")); cond.add_component(selection("INTERFACE_SIDE", {{"Undefined", Inpar::S2I::side_undefined}, {"Slave", Inpar::S2I::side_slave}, {"Master", Inpar::S2I::side_master}}, {.description = "interface side"})); - cond.add_component(entry("S2I_KINETICS_ID")); + cond.add_component(parameter("S2I_KINETICS_ID")); condlist.push_back(cond); }; @@ -166,9 +166,10 @@ void Inpar::S2I::set_valid_conditions(std::vector("NUMSCAL"), - entry>("PERMEABILITIES", {.size = from_parameter("NUMSCAL")}), - entry("IS_PSEUDO_CONTACT"), + parameter("NUMSCAL"), + parameter>( + "PERMEABILITIES", {.size = from_parameter("NUMSCAL")}), + parameter("IS_PSEUDO_CONTACT"), }); kinetic_model_choices.emplace_back(std::move(constlinperm)); } @@ -183,13 +184,14 @@ void Inpar::S2I::set_valid_conditions(std::vector("NUMSCAL"), - entry>("STOICHIOMETRIES", {.size = from_parameter("NUMSCAL")}), - entry("E-"), - entry("K_R"), - entry("ALPHA_A"), - entry("ALPHA_C"), - entry("IS_PSEUDO_CONTACT"), + parameter("NUMSCAL"), + parameter>( + "STOICHIOMETRIES", {.size = from_parameter("NUMSCAL")}), + parameter("E-"), + parameter("K_R"), + parameter("ALPHA_A"), + parameter("ALPHA_C"), + parameter("IS_PSEUDO_CONTACT"), }); kinetic_model_choices.emplace_back(std::move(butler_volmer)); } @@ -200,14 +202,15 @@ void Inpar::S2I::set_valid_conditions(std::vector("NUMSCAL"), - entry>("STOICHIOMETRIES", {.size = from_parameter("NUMSCAL")}), - entry("E-"), - entry("K_R"), - entry("ALPHA_A"), - entry("ALPHA_C"), - entry("IS_PSEUDO_CONTACT"), - entry("PELTIER"), + parameter("NUMSCAL"), + parameter>( + "STOICHIOMETRIES", {.size = from_parameter("NUMSCAL")}), + parameter("E-"), + parameter("K_R"), + parameter("ALPHA_A"), + parameter("ALPHA_C"), + parameter("IS_PSEUDO_CONTACT"), + parameter("PELTIER"), }); kinetic_model_choices.emplace_back(std::move(butler_volmer_peltier)); @@ -220,14 +223,15 @@ void Inpar::S2I::set_valid_conditions(std::vector("NUMSCAL"), - entry>("STOICHIOMETRIES", {.size = from_parameter("NUMSCAL")}), - entry("E-"), - entry("K_R"), - entry("CAPACITANCE"), - entry("ALPHA_A"), - entry("ALPHA_C"), - entry("IS_PSEUDO_CONTACT"), + parameter("NUMSCAL"), + parameter>( + "STOICHIOMETRIES", {.size = from_parameter("NUMSCAL")}), + parameter("E-"), + parameter("K_R"), + parameter("CAPACITANCE"), + parameter("ALPHA_A"), + parameter("ALPHA_C"), + parameter("IS_PSEUDO_CONTACT"), }); kinetic_model_choices.emplace_back(std::move(butler_volmer_reduced_capacitance)); @@ -239,16 +243,17 @@ void Inpar::S2I::set_valid_conditions(std::vector("NUMSCAL"), - entry>("STOICHIOMETRIES", {.size = from_parameter("NUMSCAL")}), - entry("E-"), - entry("K_R"), - entry("ALPHA_A"), - entry("ALPHA_C"), - entry("IS_PSEUDO_CONTACT"), - entry("RESISTANCE"), - entry("CONVTOL_IMPLBUTLERVOLMER"), - entry("ITEMAX_IMPLBUTLERVOLMER"), + parameter("NUMSCAL"), + parameter>( + "STOICHIOMETRIES", {.size = from_parameter("NUMSCAL")}), + parameter("E-"), + parameter("K_R"), + parameter("ALPHA_A"), + parameter("ALPHA_C"), + parameter("IS_PSEUDO_CONTACT"), + parameter("RESISTANCE"), + parameter("CONVTOL_IMPLBUTLERVOLMER"), + parameter("ITEMAX_IMPLBUTLERVOLMER"), }); kinetic_model_choices.emplace_back(std::move(butler_volmer_resistance)); } @@ -260,16 +265,17 @@ void Inpar::S2I::set_valid_conditions(std::vector("NUMSCAL"), - entry>("STOICHIOMETRIES", {.size = from_parameter("NUMSCAL")}), - entry("E-"), - entry("K_R"), - entry("ALPHA_A"), - entry("ALPHA_C"), - entry("IS_PSEUDO_CONTACT"), - entry("RESISTANCE"), - entry("CONVTOL_IMPLBUTLERVOLMER"), - entry("ITEMAX_IMPLBUTLERVOLMER"), + parameter("NUMSCAL"), + parameter>( + "STOICHIOMETRIES", {.size = from_parameter("NUMSCAL")}), + parameter("E-"), + parameter("K_R"), + parameter("ALPHA_A"), + parameter("ALPHA_C"), + parameter("IS_PSEUDO_CONTACT"), + parameter("RESISTANCE"), + parameter("CONVTOL_IMPLBUTLERVOLMER"), + parameter("ITEMAX_IMPLBUTLERVOLMER"), }); kinetic_model_choices.emplace_back(std::move(butler_volmer_reduced_with_resistance)); @@ -282,15 +288,16 @@ void Inpar::S2I::set_valid_conditions(std::vector("NUMSCAL"), - entry>("STOICHIOMETRIES", {.size = from_parameter("NUMSCAL")}), - entry("E-"), - entry("K_R"), - entry("ALPHA_A"), - entry("ALPHA_C"), - entry("IS_PSEUDO_CONTACT"), - entry("THERMOPERM"), - entry("MOLAR_HEAT_CAPACITY"), + parameter("NUMSCAL"), + parameter>( + "STOICHIOMETRIES", {.size = from_parameter("NUMSCAL")}), + parameter("E-"), + parameter("K_R"), + parameter("ALPHA_A"), + parameter("ALPHA_C"), + parameter("IS_PSEUDO_CONTACT"), + parameter("THERMOPERM"), + parameter("MOLAR_HEAT_CAPACITY"), }); kinetic_model_choices.emplace_back(std::move(butler_volmer_reduced_thermo)); @@ -303,10 +310,10 @@ void Inpar::S2I::set_valid_conditions(std::vector>("ONOFF", {.size = 2}), - entry("RESISTANCE"), - entry("E-"), - entry("IS_PSEUDO_CONTACT"), + parameter>("ONOFF", {.size = 2}), + parameter("RESISTANCE"), + parameter("E-"), + parameter("IS_PSEUDO_CONTACT"), }); kinetic_model_choices.emplace_back(std::move(constant_interface_resistance)); @@ -336,7 +343,7 @@ void Inpar::S2I::set_valid_conditions(std::vector("ConditionID")); + cond.add_component(parameter("ConditionID")); cond.add_component(interface_side_options); condlist.push_back(cond); @@ -370,15 +377,15 @@ void Inpar::S2I::set_valid_conditions(std::vector("NUMSCAL"), - entry>("STOICHIOMETRIES", {.size = from_parameter("NUMSCAL")}), - entry("E-"), - entry("K_R"), - entry("ALPHA_A"), - entry("ALPHA_C"), - entry("MOLMASS"), - entry("DENSITY"), - entry("CONDUCTIVITY"), + parameter("NUMSCAL"), + parameter>("STOICHIOMETRIES", {.size = from_parameter("NUMSCAL")}), + parameter("E-"), + parameter("K_R"), + parameter("ALPHA_A"), + parameter("ALPHA_C"), + parameter("MOLMASS"), + parameter("DENSITY"), + parameter("CONDUCTIVITY"), selection("REGTYPE", { {"none", Inpar::S2I::regularization_none}, @@ -386,14 +393,14 @@ void Inpar::S2I::set_valid_conditions(std::vector("REGPAR"), - entry("INITTHICKNESS"), + parameter("REGPAR"), + parameter("INITTHICKNESS"), }); const auto make_s2igrowth = [&condlist, &butler_volmer]( Core::Conditions::ConditionDefinition& cond) { - cond.add_component(entry("ConditionID")); + cond.add_component(parameter("ConditionID")); cond.add_component( selection("KINETIC_MODEL", {{"Butler-Volmer", growth_kinetics_butlervolmer}})); cond.add_component(butler_volmer); diff --git a/src/inpar/4C_inpar_scatra.cpp b/src/inpar/4C_inpar_scatra.cpp index 2f665d88d5b..5314fec3443 100644 --- a/src/inpar/4C_inpar_scatra.cpp +++ b/src/inpar/4C_inpar_scatra.cpp @@ -509,7 +509,7 @@ void Inpar::ScaTra::set_valid_conditions( const auto make_totalandmeanscalar = [&condlist](Core::Conditions::ConditionDefinition& cond) { // insert input file line components into condition definitions - cond.add_component(entry("ConditionID")); + cond.add_component(parameter("ConditionID")); // insert condition definitions into global list of valid condition definitions condlist.emplace_back(cond); @@ -534,8 +534,8 @@ void Inpar::ScaTra::set_valid_conditions( const auto make_relerror = [&condlist](Core::Conditions::ConditionDefinition& cond) { // insert input file line components into condition definitions - cond.add_component(entry("ConditionID")); - cond.add_component(entry("Function")); + cond.add_component(parameter("ConditionID")); + cond.add_component(parameter("Function")); // insert condition definitions into global list of valid condition definitions condlist.emplace_back(cond); @@ -552,17 +552,17 @@ void Inpar::ScaTra::set_valid_conditions( "ScaTraCoupling", "ScaTra Coupling", Core::Conditions::ScaTraCoupling, true, Core::Conditions::geometry_type_surface); - surfscatracoup.add_component(entry("NUMSCAL")); - surfscatracoup.add_component(entry>( + surfscatracoup.add_component(parameter("NUMSCAL")); + surfscatracoup.add_component(parameter>( "ONOFF", {.description = "", .size = from_parameter("NUMSCAL")})); - surfscatracoup.add_component(entry("COUPID")); - surfscatracoup.add_component(entry("PERMCOEF")); - surfscatracoup.add_component(entry("CONDUCT")); - surfscatracoup.add_component(entry("FILTR")); + surfscatracoup.add_component(parameter("COUPID")); + surfscatracoup.add_component(parameter("PERMCOEF")); + surfscatracoup.add_component(parameter("CONDUCT")); + surfscatracoup.add_component(parameter("FILTR")); surfscatracoup.add_component( - entry("WSSON", {.description = "flag if wall shear stress coupling is on"})); + parameter("WSSON", {.description = "flag if wall shear stress coupling is on"})); surfscatracoup.add_component( - entry>("WSSCOEFFS", {.description = "", .size = 2})); + parameter>("WSSCOEFFS", {.description = "", .size = 2})); condlist.emplace_back(surfscatracoup); @@ -579,11 +579,11 @@ void Inpar::ScaTra::set_valid_conditions( const auto make_scatrarobin = [&condlist](Core::Conditions::ConditionDefinition& cond) { - cond.add_component(entry("NUMSCAL")); - cond.add_component(entry>( + cond.add_component(parameter("NUMSCAL")); + cond.add_component(parameter>( "ONOFF", {.description = "", .size = from_parameter("NUMSCAL")})); - cond.add_component(entry("PREFACTOR")); - cond.add_component(entry("REFVALUE")); + cond.add_component(parameter("PREFACTOR")); + cond.add_component(parameter("REFVALUE")); condlist.emplace_back(cond); }; @@ -625,13 +625,13 @@ void Inpar::ScaTra::set_valid_conditions( // --> Tempnp (current temperature solution T_n+1) with linearisation cond.add_component(selection( "temperature_state", {"Tempnp", "Tempn"}, {.description = "temperature state"})); - cond.add_component(entry("coeff", {.description = "heat transfer coefficient h"})); + cond.add_component(parameter("coeff", {.description = "heat transfer coefficient h"})); cond.add_component( - entry("surtemp", {.description = "surrounding (fluid) temperature T_oo"})); - cond.add_component(entry>("surtempfunct", + parameter("surtemp", {.description = "surrounding (fluid) temperature T_oo"})); + cond.add_component(parameter>("surtempfunct", {.description = "time curve to increase the surrounding (fluid) temperature T_oo in time"})); - cond.add_component(entry>("funct", + cond.add_component(parameter>("funct", {.description = "time curve to increase the complete boundary condition, i.e., the heat flux"})); diff --git a/src/inpar/4C_inpar_solver.cpp b/src/inpar/4C_inpar_solver.cpp index da7561a8351..00f4b1066ae 100644 --- a/src/inpar/4C_inpar_solver.cpp +++ b/src/inpar/4C_inpar_solver.cpp @@ -102,7 +102,7 @@ namespace Inpar::SOLVER list); list.specs.emplace_back( - Core::IO::InputSpecBuilders::entry>( + Core::IO::InputSpecBuilders::parameter>( "SOLVER_XML_FILE", {.description = "xml file defining any iterative solver", .default_value = Core::IO::Noneable()})); @@ -111,7 +111,7 @@ namespace Inpar::SOLVER // MueLu options { list.specs.emplace_back( - Core::IO::InputSpecBuilders::entry>( + Core::IO::InputSpecBuilders::parameter>( "MUELU_XML_FILE", {.description = "xml file defining any MueLu preconditioner", .default_value = Core::IO::Noneable()})); } @@ -119,7 +119,7 @@ namespace Inpar::SOLVER // Teko options { list.specs.emplace_back( - Core::IO::InputSpecBuilders::entry>( + Core::IO::InputSpecBuilders::parameter>( "TEKO_XML_FILE", {.description = "xml file defining any Teko preconditioner", .default_value = Core::IO::Noneable()})); } @@ -134,7 +134,7 @@ namespace Inpar::SOLVER "is defined using a xml file", list); list.specs.emplace_back( - Core::IO::InputSpecBuilders::entry>( + Core::IO::InputSpecBuilders::parameter>( "AMGNXN_XML_FILE", {.description = "xml file defining the AMGnxn preconditioner", .default_value = Core::IO::Noneable()})); diff --git a/src/inpar/4C_inpar_solver_nonlin.cpp b/src/inpar/4C_inpar_solver_nonlin.cpp index 0e06f7d434a..d67ee1167ae 100644 --- a/src/inpar/4C_inpar_solver_nonlin.cpp +++ b/src/inpar/4C_inpar_solver_nonlin.cpp @@ -327,7 +327,8 @@ void Inpar::NlnSol::set_valid_parameters(std::map>("XML File", + Core::IO::InputSpecBuilders::parameter>( + "XML File", {.description = "Filename of XML file with configuration of nox status test", .default_value = Core::IO::Noneable()})); } diff --git a/src/inpar/4C_inpar_ssi.cpp b/src/inpar/4C_inpar_ssi.cpp index 8c0c0e3d83a..c77f70a4248 100644 --- a/src/inpar/4C_inpar_ssi.cpp +++ b/src/inpar/4C_inpar_ssi.cpp @@ -256,7 +256,7 @@ void Inpar::SSI::set_valid_conditions(std::vector("coupling_id")); + cond.add_component(parameter("coupling_id")); condlist.push_back(cond); }; @@ -278,7 +278,7 @@ void Inpar::SSI::set_valid_conditions(std::vector("coupling_id")); + cond.add_component(parameter("coupling_id")); condlist.push_back(cond); }; @@ -303,7 +303,7 @@ void Inpar::SSI::set_valid_conditions(std::vector("coupling_id")); + cond.add_component(parameter("coupling_id")); condlist.push_back(cond); }; @@ -338,12 +338,12 @@ void Inpar::SSI::set_valid_conditions(std::vector("ConditionID")); + cond.add_component(parameter("ConditionID")); cond.add_component(selection("INTERFACE_SIDE", {{"Undefined", Inpar::S2I::side_undefined}, {"Slave", Inpar::S2I::side_slave}, {"Master", Inpar::S2I::side_master}}, {.description = "interface_side"})); - cond.add_component(entry("S2I_KINETICS_ID")); + cond.add_component(parameter("S2I_KINETICS_ID")); condlist.push_back(cond); }; @@ -358,13 +358,13 @@ void Inpar::SSI::set_valid_conditions(std::vector("ConditionID")); + ssisurfacemanifold.add_component(parameter("ConditionID")); ssisurfacemanifold.add_component(selection("ImplType", {{"Undefined", Inpar::ScaTra::impltype_undefined}, {"Standard", Inpar::ScaTra::impltype_std}, {"ElchElectrode", Inpar::ScaTra::impltype_elch_electrode}, {"ElchDiffCond", Inpar::ScaTra::impltype_elch_diffcond}}, {.description = "implementation type"})); - ssisurfacemanifold.add_component(entry("thickness")); + ssisurfacemanifold.add_component(parameter("thickness")); condlist.emplace_back(ssisurfacemanifold); @@ -377,7 +377,7 @@ void Inpar::SSI::set_valid_conditions(std::vector("FIELD", {"ScaTra"}, {.description = "init field"})); - surfmanifoldinitfields.add_component(entry("FUNCT")); + surfmanifoldinitfields.add_component(parameter("FUNCT")); condlist.emplace_back(surfmanifoldinitfields); @@ -389,8 +389,8 @@ void Inpar::SSI::set_valid_conditions(std::vector("ConditionID")); - surfmanifoldkinetics.add_component(entry("ManifoldConditionID")); + surfmanifoldkinetics.add_component(parameter("ConditionID")); + surfmanifoldkinetics.add_component(parameter("ManifoldConditionID")); using namespace Core::IO::InputSpecBuilders; @@ -398,19 +398,20 @@ void Inpar::SSI::set_valid_conditions(std::vector("KINETIC_MODEL", {{"ConstantInterfaceResistance", Inpar::S2I::kinetics_constantinterfaceresistance}}), - entry>("ONOFF", {.size = 2}), - entry("RESISTANCE"), - entry("E-"), + parameter>("ONOFF", {.size = 2}), + parameter("RESISTANCE"), + parameter("E-"), }), all_of({ selection("KINETIC_MODEL", {{"Butler-VolmerReduced", Inpar::S2I::kinetics_butlervolmerreduced}}), - entry("NUMSCAL"), - entry>("STOICHIOMETRIES", {.size = from_parameter("NUMSCAL")}), - entry("E-"), - entry("K_R"), - entry("ALPHA_A"), - entry("ALPHA_C"), + parameter("NUMSCAL"), + parameter>( + "STOICHIOMETRIES", {.size = from_parameter("NUMSCAL")}), + parameter("E-"), + parameter("K_R"), + parameter("ALPHA_A"), + parameter("ALPHA_C"), }), selection( "KINETIC_MODEL", {{"NoInterfaceFlux", Inpar::S2I::kinetics_nointerfaceflux}}), @@ -434,12 +435,12 @@ void Inpar::SSI::set_valid_conditions(std::vector("NUMDOF")); - definition.add_component(entry>( + definition.add_component(parameter("NUMDOF")); + definition.add_component(parameter>( "ONOFF", {.description = "", .size = from_parameter("NUMDOF")})); - definition.add_component(entry>( + definition.add_component(parameter>( "VAL", {.description = "", .size = from_parameter("NUMDOF")})); - definition.add_component(entry>>( + definition.add_component(parameter>>( "FUNCT", {.description = "", .size = from_parameter("NUMDOF")})); }; @@ -467,13 +468,13 @@ void Inpar::SSI::set_valid_conditions(std::vector("ConditionID")); + cond.add_component(parameter("ConditionID")); cond.add_component(selection("INTERFACE_SIDE", {{"Undefined", Inpar::S2I::side_undefined}, {"Slave", Inpar::S2I::side_slave}, {"Master", Inpar::S2I::side_master}}, {.description = "interface_side"})); - cond.add_component(entry("S2I_KINETICS_ID")); - cond.add_component(entry("CONTACT_CONDITION_ID")); + cond.add_component(parameter("S2I_KINETICS_ID")); + cond.add_component(parameter("CONTACT_CONDITION_ID")); condlist.push_back(cond); }; diff --git a/src/inpar/4C_inpar_ssti.cpp b/src/inpar/4C_inpar_ssti.cpp index c8e5c38aabd..099f1e3c590 100644 --- a/src/inpar/4C_inpar_ssti.cpp +++ b/src/inpar/4C_inpar_ssti.cpp @@ -152,12 +152,12 @@ void Inpar::SSTI::set_valid_conditions(std::vector("ConditionID")); + cond.add_component(parameter("ConditionID")); cond.add_component(selection("INTERFACE_SIDE", {{"Undefined", Inpar::S2I::side_undefined}, {"Slave", Inpar::S2I::side_slave}, {"Master", Inpar::S2I::side_master}}, {.description = "interface side"})); - cond.add_component(entry("S2I_KINETICS_ID")); + cond.add_component(parameter("S2I_KINETICS_ID")); condlist.push_back(cond); }; diff --git a/src/inpar/4C_inpar_structure.cpp b/src/inpar/4C_inpar_structure.cpp index b150ace087f..eee52b5e6c1 100644 --- a/src/inpar/4C_inpar_structure.cpp +++ b/src/inpar/4C_inpar_structure.cpp @@ -401,22 +401,22 @@ namespace Inpar const auto make_robin_spring_dashpot = [&condlist]( Core::Conditions::ConditionDefinition& cond) { - cond.add_component(entry("NUMDOF")); - cond.add_component(entry>( + cond.add_component(parameter("NUMDOF")); + cond.add_component(parameter>( "ONOFF", {.description = "", .size = from_parameter("NUMDOF")})); - cond.add_component(entry>( + cond.add_component(parameter>( "STIFF", {.description = "", .size = from_parameter("NUMDOF")})); - cond.add_component(entry>( + cond.add_component(parameter>( "TIMEFUNCTSTIFF", {.description = "", .size = from_parameter("NUMDOF")})); - cond.add_component(entry>( + cond.add_component(parameter>( "VISCO", {.description = "", .size = from_parameter("NUMDOF")})); - cond.add_component(entry>( + cond.add_component(parameter>( "TIMEFUNCTVISCO", {.description = "", .size = from_parameter("NUMDOF")})); - cond.add_component(entry>( + cond.add_component(parameter>( "DISPLOFFSET", {.description = "", .size = from_parameter("NUMDOF")})); - cond.add_component(entry>( + cond.add_component(parameter>( "TIMEFUNCTDISPLOFFSET", {.description = "", .size = from_parameter("NUMDOF")})); - cond.add_component(entry>( + cond.add_component(parameter>( "FUNCTNONLINSTIFF", {.description = "", .size = from_parameter("NUMDOF")})); cond.add_component( selection("DIRECTION", @@ -426,7 +426,7 @@ namespace Inpar {"cursurfnormal", CONSTRAINTS::SpringDashpot::RobinSpringDashpotType::cursurfnormal}}, {.description = "Direction of the spring-dashpot boundary conditions"})); - cond.add_component(entry>("COUPLING", {.description = ""})); + cond.add_component(parameter>("COUPLING", {.description = ""})); condlist.emplace_back(cond); }; @@ -442,7 +442,7 @@ namespace Inpar "RobinSpring Dashpot Coupling", Core::Conditions::RobinSpringDashpotCoupling, true, Core::Conditions::geometry_type_surface); - springdashpotcoupcond.add_component(entry("COUPLING")); + springdashpotcoupcond.add_component(parameter("COUPLING")); condlist.push_back(springdashpotcoupcond); } diff --git a/src/inpar/4C_inpar_validconditions.cpp b/src/inpar/4C_inpar_validconditions.cpp index b2d39bc642f..6af2ffb5f2f 100644 --- a/src/inpar/4C_inpar_validconditions.cpp +++ b/src/inpar/4C_inpar_validconditions.cpp @@ -79,7 +79,7 @@ namespace Input "Layer for Multilayered STC", Core::Conditions::VolSTCLayer, true, Core::Conditions::geometry_type_volume); - stclayer.add_component(entry("ConditionID")); + stclayer.add_component(parameter("ConditionID")); condlist.push_back(stclayer); } @@ -154,12 +154,12 @@ std::vector Input::valid_conditions() const auto make_neumann_condition = [&condlist](auto& cond) { - cond.add_component(entry("NUMDOF")); - cond.add_component(entry>( + cond.add_component(parameter("NUMDOF")); + cond.add_component(parameter>( "ONOFF", {.description = "onoff", .size = from_parameter("NUMDOF")})); - cond.add_component(entry>( + cond.add_component(parameter>( "VAL", {.description = "values", .size = from_parameter("NUMDOF")})); - cond.add_component(entry>>( + cond.add_component(parameter>>( "FUNCT", {.description = "function ids", .size = from_parameter("NUMDOF")})); cond.add_component(selection("TYPE", {"Live", "Dead", "pseudo_orthopressure", "orthopressure", "PressureGrad"}, @@ -275,12 +275,12 @@ std::vector Input::valid_conditions() const auto make_dirichlet_condition = [&condlist](auto& cond) { - cond.add_component(entry("NUMDOF")); - cond.add_component(entry>( + cond.add_component(parameter("NUMDOF")); + cond.add_component(parameter>( "ONOFF", {.description = "", .size = from_parameter("NUMDOF")})); - cond.add_component(entry>( + cond.add_component(parameter>( "VAL", {.description = "", .size = from_parameter("NUMDOF")})); - cond.add_component(entry>>( + cond.add_component(parameter>>( "FUNCT", {.description = "", .size = from_parameter("NUMDOF")})); // optional @@ -333,8 +333,8 @@ std::vector Input::valid_conditions() const auto make_point_coupling_condition = [&condlist](auto& cond) { - cond.add_component(entry("NUMDOF")); - cond.add_component(entry>( + cond.add_component(parameter("NUMDOF")); + cond.add_component(parameter>( "ONOFF", {.description = "", .size = from_parameter("NUMDOF")})); condlist.emplace_back(cond); @@ -368,7 +368,7 @@ std::vector Input::valid_conditions() {.description = "init field"})); // for initial vector fields, use the COMPONENT option of our functions - cond.add_component(entry("FUNCT")); + cond.add_component(parameter("FUNCT")); condlist.emplace_back(cond); }; @@ -409,7 +409,7 @@ std::vector Input::valid_conditions() { cond.add_component( selection("FIELD", {"Undefined", "ScaTra"}, {.description = "init field"})); - cond.add_component(entry("FUNCT")); + cond.add_component(parameter("FUNCT")); condlist.emplace_back(cond); }; @@ -435,7 +435,7 @@ std::vector Input::valid_conditions() const auto make_domain_integral_condition = [&condlist](auto& cond) { - cond.add_component(entry("ConditionID")); + cond.add_component(parameter("ConditionID")); condlist.emplace_back(cond); }; @@ -453,7 +453,7 @@ std::vector Input::valid_conditions() Core::Conditions::BoundaryIntegral, true, Core::Conditions::geometry_type_surface); // add input file line components to condition definition - boundaryintegralsurf.add_component(entry("ConditionID")); + boundaryintegralsurf.add_component(parameter("ConditionID")); // insert condition definition into global list of valid condition definitions condlist.push_back(boundaryintegralsurf); @@ -488,14 +488,15 @@ std::vector Input::valid_conditions() const auto make_locsys_condition = [&condlist](auto& cond) { - cond.add_component(entry>("ROTANGLE", {.description = "", .size = 3})); - cond.add_component(entry>>("FUNCT", {.description = "", .size = 3})); - cond.add_component(entry("USEUPDATEDNODEPOS")); + cond.add_component(parameter>("ROTANGLE", {.description = "", .size = 3})); + cond.add_component( + parameter>>("FUNCT", {.description = "", .size = 3})); + cond.add_component(parameter("USEUPDATEDNODEPOS")); if (cond.geometry_type() == Core::Conditions::geometry_type_line || cond.geometry_type() == Core::Conditions::geometry_type_surface) { - cond.add_component(entry("USECONSISTENTNODENORMAL")); + cond.add_component(parameter("USECONSISTENTNODENORMAL")); } condlist.emplace_back(cond); @@ -518,16 +519,16 @@ std::vector Input::valid_conditions() const auto make_periodic_condition = [&condlist](auto& cond) { - cond.add_component(entry("ID", {.description = "periodic boundary condition id"})); + cond.add_component(parameter("ID", {.description = "periodic boundary condition id"})); cond.add_component(selection( "MASTER_OR_SLAVE", {"Master", "Slave"}, {.description = "master-slave toggle"})); cond.add_component(selection("PLANE", {"xy", "yz", "xz", "xyz"}, {.description = "degrees of freedom for the pbc plane"})); cond.add_component( - entry("LAYER", {.description = "layer of periodic boundary condition"})); - cond.add_component(entry("ANGLE", {.description = "angle of rotation"})); + parameter("LAYER", {.description = "layer of periodic boundary condition"})); + cond.add_component(parameter("ANGLE", {.description = "angle of rotation"})); cond.add_component( - entry("ABSTREETOL", {.description = "tolerance for nodematching in octree"})); + parameter("ABSTREETOL", {.description = "tolerance for nodematching in octree"})); condlist.emplace_back(cond); }; @@ -564,7 +565,7 @@ std::vector Input::valid_conditions() // scaling factor for penalty parameter tauB or // stabilization parameter alpha for Nitsche term // (SCATRA: if stabilization parameter negative -> mixed-hybrid formulation) - cond.add_component(entry("TauBscaling")); + cond.add_component(parameter("TauBscaling")); // linearisation strategies --- the linearisation (i.e. the matrix // contribution) of the convective term on the inflow could be @@ -575,10 +576,10 @@ std::vector Input::valid_conditions() "LINEARISATION", {"lin_all", "no_lin_conv_inflow"}, {.description = "Linearisation"})); // we provide a vector of 3 values for velocities - cond.add_component(entry>("VAL", {.description = "values", .size = 3})); + cond.add_component(parameter>("VAL", {.description = "values", .size = 3})); // and optional spatial functions - cond.add_component(entry>("FUNCT", + cond.add_component(parameter>("FUNCT", {.description = "function ids", .default_value = std::vector{0, 0, 0}, .size = 3})); // append the condition to the list of all conditions condlist.push_back(cond); @@ -607,9 +608,10 @@ std::vector Input::valid_conditions() "VolumeConstraint_3D", "Surface Volume Constraint", Core::Conditions::VolumeConstraint_3D, true, Core::Conditions::geometry_type_surface); - volumeconstraint.add_component(entry("ConditionID")); - volumeconstraint.add_component(entry>("curve", {.description = "id of the curve"})); - volumeconstraint.add_component(entry("activeTime")); + volumeconstraint.add_component(parameter("ConditionID")); + volumeconstraint.add_component( + parameter>("curve", {.description = "id of the curve"})); + volumeconstraint.add_component(parameter("activeTime")); volumeconstraint.add_component(selection("projection", {"none", "xy", "yz", "xz"}, {.description = "projection", .default_value = "none"})); @@ -624,12 +626,12 @@ std::vector Input::valid_conditions() "Surface Volume Constraint Penalty", Core::Conditions::VolumeConstraint_3D_pen, true, Core::Conditions::geometry_type_surface); - volumeconstraintpen.add_component(entry("ConditionID")); + volumeconstraintpen.add_component(parameter("ConditionID")); volumeconstraintpen.add_component( - entry>("curve", {.description = "id of the curve"})); - volumeconstraintpen.add_component(entry("activeTime")); - volumeconstraintpen.add_component(entry("penalty")); - volumeconstraintpen.add_component(entry("rho")); + parameter>("curve", {.description = "id of the curve"})); + volumeconstraintpen.add_component(parameter("activeTime")); + volumeconstraintpen.add_component(parameter("penalty")); + volumeconstraintpen.add_component(parameter("rho")); volumeconstraintpen.add_component(selection("projection", {"none", "xy", "yz", "xz"}, {.description = "projection", .default_value = "none"})); @@ -642,9 +644,10 @@ std::vector Input::valid_conditions() "AreaConstraint_3D", "Surface Area Constraint", Core::Conditions::AreaConstraint_3D, true, Core::Conditions::geometry_type_surface); - areaconstraint.add_component(entry("ConditionID")); - areaconstraint.add_component(entry>("curve", {.description = "id of the curve"})); - areaconstraint.add_component(entry("activeTime")); + areaconstraint.add_component(parameter("ConditionID")); + areaconstraint.add_component( + parameter>("curve", {.description = "id of the curve"})); + areaconstraint.add_component(parameter("activeTime")); condlist.push_back(areaconstraint); @@ -656,7 +659,7 @@ std::vector Input::valid_conditions() "VolumeMonitor_3D", "Surface Volume Monitor", Core::Conditions::VolumeMonitor_3D, true, Core::Conditions::geometry_type_surface); - volumemonitor.add_component(entry("ConditionID")); + volumemonitor.add_component(parameter("ConditionID")); condlist.push_back(volumemonitor); @@ -667,7 +670,7 @@ std::vector Input::valid_conditions() "AreaMonitor_3D", "Surface Area Monitor", Core::Conditions::AreaMonitor_3D, true, Core::Conditions::geometry_type_surface); - areamonitor.add_component(entry("ConditionID")); + areamonitor.add_component(parameter("ConditionID")); areamonitor.add_component(selection("projection", {"none", "xy", "yz", "xz"}, {.description = "projection", .default_value = "none"})); @@ -680,9 +683,9 @@ std::vector Input::valid_conditions() "AreaConstraint_2D", "Line Area Constraint", Core::Conditions::AreaConstraint_2D, true, Core::Conditions::geometry_type_line); - areaconstraint2D.add_component(entry("ConditionID")); - areaconstraint2D.add_component(entry>("curve", {.description = {}})); - areaconstraint2D.add_component(entry("activeTime")); + areaconstraint2D.add_component(parameter("ConditionID")); + areaconstraint2D.add_component(parameter>("curve", {.description = {}})); + areaconstraint2D.add_component(parameter("activeTime")); condlist.push_back(areaconstraint2D); @@ -693,7 +696,7 @@ std::vector Input::valid_conditions() "AreaMonitor_2D", "Line Area Monitor", Core::Conditions::AreaMonitor_2D, true, Core::Conditions::geometry_type_line); - areamonitor2D.add_component(entry("ConditionID")); + areamonitor2D.add_component(parameter("ConditionID")); condlist.push_back(areamonitor2D); @@ -704,11 +707,11 @@ std::vector Input::valid_conditions() "MPC_NodeOnPlane_3D", "Node on Plane Constraint", Core::Conditions::MPC_NodeOnPlane_3D, false, Core::Conditions::geometry_type_surface); - nodeonplaneconst3D.add_component(entry("ConditionID")); - nodeonplaneconst3D.add_component(entry("amplitude")); - nodeonplaneconst3D.add_component(entry>("curve", {.description = {}})); - nodeonplaneconst3D.add_component(entry("activeTime")); - nodeonplaneconst3D.add_component(entry>( + nodeonplaneconst3D.add_component(parameter("ConditionID")); + nodeonplaneconst3D.add_component(parameter("amplitude")); + nodeonplaneconst3D.add_component(parameter>("curve", {.description = {}})); + nodeonplaneconst3D.add_component(parameter("activeTime")); + nodeonplaneconst3D.add_component(parameter>( "planeNodes", {.description = "ids of the nodes spanning the plane", .size = 3})); nodeonplaneconst3D.add_component(selection("control", {"rel", "abs"}, {.description = "relative or absolute control", .default_value = "rel"})); @@ -723,13 +726,13 @@ std::vector Input::valid_conditions() "Node on Plane Constraint", Core::Conditions::MPC_NormalComponent_3D, false, Core::Conditions::geometry_type_surface); - nodemasterconst3D.add_component(entry("ConditionID")); - nodemasterconst3D.add_component(entry("amplitude")); - nodemasterconst3D.add_component(entry>("curve", {.description = {}})); - nodemasterconst3D.add_component(entry("activeTime")); - nodemasterconst3D.add_component(entry("masterNode")); + nodemasterconst3D.add_component(parameter("ConditionID")); + nodemasterconst3D.add_component(parameter("amplitude")); + nodemasterconst3D.add_component(parameter>("curve", {.description = {}})); + nodemasterconst3D.add_component(parameter("activeTime")); + nodemasterconst3D.add_component(parameter("masterNode")); nodemasterconst3D.add_component( - entry>("direction", {.description = "direction", .size = 3})); + parameter>("direction", {.description = "direction", .size = 3})); nodemasterconst3D.add_component(selection( "value", {"disp", "x"}, {.description = "value", .default_value = "disp"})); nodemasterconst3D.add_component(selection("control", {"rel", "abs"}, @@ -746,14 +749,14 @@ std::vector Input::valid_conditions() Core::Conditions::geometry_type_surface); - nodemasterconst3Dpen.add_component(entry("ConditionID")); - nodemasterconst3Dpen.add_component(entry("amplitude")); - nodemasterconst3Dpen.add_component(entry>("curve", {.description = {}})); - nodemasterconst3Dpen.add_component(entry("activeTime")); - nodemasterconst3Dpen.add_component(entry("penalty")); - nodemasterconst3Dpen.add_component(entry("masterNode")); + nodemasterconst3Dpen.add_component(parameter("ConditionID")); + nodemasterconst3Dpen.add_component(parameter("amplitude")); + nodemasterconst3Dpen.add_component(parameter>("curve", {.description = {}})); + nodemasterconst3Dpen.add_component(parameter("activeTime")); + nodemasterconst3Dpen.add_component(parameter("penalty")); + nodemasterconst3Dpen.add_component(parameter("masterNode")); nodemasterconst3Dpen.add_component( - entry>("direction", {.description = "direction", .size = 3})); + parameter>("direction", {.description = "direction", .size = 3})); nodemasterconst3Dpen.add_component(selection( "value", {"disp", "x"}, {.description = "value", .default_value = "disp"})); nodemasterconst3Dpen.add_component(selection("control", {"rel", "abs"}, @@ -766,15 +769,15 @@ std::vector Input::valid_conditions() "MPC_NodeOnLine_2D", "Node on Line Constraint", Core::Conditions::MPC_NodeOnLine_2D, false, Core::Conditions::geometry_type_line); - nodeonlineconst2D.add_component(entry("ConditionID")); - nodeonlineconst2D.add_component(entry("amplitude")); - nodeonlineconst2D.add_component(entry>("curve", {.description = {}})); - nodeonlineconst2D.add_component(entry("constrNode1")); - nodeonlineconst2D.add_component(entry("constrNode2")); - nodeonlineconst2D.add_component(entry("constrNode3")); + nodeonlineconst2D.add_component(parameter("ConditionID")); + nodeonlineconst2D.add_component(parameter("amplitude")); + nodeonlineconst2D.add_component(parameter>("curve", {.description = {}})); + nodeonlineconst2D.add_component(parameter("constrNode1")); + nodeonlineconst2D.add_component(parameter("constrNode2")); + nodeonlineconst2D.add_component(parameter("constrNode3")); nodeonlineconst2D.add_component(selection("control", {"dist", "angle"}, {.description = "distance or angle control", .default_value = "dist"})); - nodeonlineconst2D.add_component(entry("activeTime")); + nodeonlineconst2D.add_component(parameter("activeTime")); condlist.push_back(nodeonlineconst2D); @@ -813,8 +816,8 @@ std::vector Input::valid_conditions() { cond.add_component(selection( "DIS", {"fluid", "scatra", "solid"}, {.description = "discretization"})); - cond.add_component(entry("NUMMODES")); - cond.add_component(entry>( + cond.add_component(parameter("NUMMODES")); + cond.add_component(parameter>( "ONOFF", {.description = "", .size = from_parameter("NUMMODES")})); cond.add_component(selection("WEIGHTVECDEF", {"integration", "pointvalues"}, {.description = "weight vector definition"})); diff --git a/src/inpar/4C_inpar_xfem.cpp b/src/inpar/4C_inpar_xfem.cpp index d0b92230593..9314d459f95 100644 --- a/src/inpar/4C_inpar_xfem.cpp +++ b/src/inpar/4C_inpar_xfem.cpp @@ -392,18 +392,18 @@ void Inpar::XFEM::set_valid_conditions(std::vector("NUMDOF"), - entry>("ONOFF", {.size = from_parameter("NUMDOF")}), - entry>("VAL", {.size = from_parameter("NUMDOF")}), - entry>>("FUNCT", {.size = from_parameter("NUMDOF")}), + parameter("NUMDOF"), + parameter>("ONOFF", {.size = from_parameter("NUMDOF")}), + parameter>("VAL", {.size = from_parameter("NUMDOF")}), + parameter>>("FUNCT", {.size = from_parameter("NUMDOF")}), selection("TAG", {"none", "monitor_reaction"}, {.required = false}), }); auto neumanncomponents = all_of({ - entry("NUMDOF"), - entry>("ONOFF", {.size = from_parameter("NUMDOF")}), - entry>("VAL", {.size = from_parameter("NUMDOF")}), - entry>>("FUNCT", {.size = from_parameter("NUMDOF")}), + parameter("NUMDOF"), + parameter>("ONOFF", {.size = from_parameter("NUMDOF")}), + parameter>("VAL", {.size = from_parameter("NUMDOF")}), + parameter>>("FUNCT", {.size = from_parameter("NUMDOF")}), selection("TYPE", {"Live", "Dead", "pseudo_orthopressure", "orthopressure", "PressureGrad"}, {.default_value = "Live"}), @@ -420,7 +420,7 @@ void Inpar::XFEM::set_valid_conditions(std::vector("COUPLINGID")); + cond.add_component(parameter("COUPLINGID")); condlist.emplace_back(cond); }; @@ -439,7 +439,7 @@ void Inpar::XFEM::set_valid_conditions(std::vector("COUPLINGID")); + xfem_surf_displacement.add_component(parameter("COUPLINGID")); xfem_surf_displacement.add_component(selection("EVALTYPE", {"zero", "funct", "implementation"}, {.description = "", .default_value = "funct"})); @@ -451,14 +451,14 @@ void Inpar::XFEM::set_valid_conditions(std::vector("COUPLINGID"), - entry("LEVELSETFIELDNO"), + parameter("COUPLINGID"), + parameter("LEVELSETFIELDNO"), selection("BOOLEANTYPE", {"none", "cut", "union", "difference", "sym_difference"}, {.description = "define which boolean operator is used for combining this level-set " "field with the previous one with smaller coupling id", .required = false}), - entry( + parameter( "COMPLEMENTARY", {.description = "define which complementary operator is applied " "after combining the level-set field with a boolean " "operator with the previous one"}), @@ -477,7 +477,7 @@ void Inpar::XFEM::set_valid_conditions(std::vector("RANDNOISE", + xfem_levelset_wdbc.add_component(parameter("RANDNOISE", {.description = "set percentage of random noise used in uniform random distribution", .default_value = 0.0})); @@ -496,7 +496,7 @@ void Inpar::XFEM::set_valid_conditions(std::vector("INFLOW_STAB", {.description = "", .default_value = false})); + parameter("INFLOW_STAB", {.description = "", .default_value = false})); condlist.push_back(xfem_levelset_neumann); //*----------------*/ @@ -514,16 +514,17 @@ void Inpar::XFEM::set_valid_conditions(std::vector("L2_PROJECTION_SOLVER", {.description = ""})); xfem_levelset_navier_slip.add_component( - entry>("ROBIN_DIRICHLET_ID", {.description = ""})); + parameter("L2_PROJECTION_SOLVER", {.description = ""})); xfem_levelset_navier_slip.add_component( - entry>("ROBIN_NEUMANN_ID", {.description = ""})); - xfem_levelset_navier_slip.add_component(entry("SLIPCOEFFICIENT")); + parameter>("ROBIN_DIRICHLET_ID", {.description = ""})); xfem_levelset_navier_slip.add_component( - entry("FUNCT", {.description = "slip function id", .default_value = 0})); + parameter>("ROBIN_NEUMANN_ID", {.description = ""})); + xfem_levelset_navier_slip.add_component(parameter("SLIPCOEFFICIENT")); xfem_levelset_navier_slip.add_component( - entry("FORCE_ONLY_TANG_VEL", {.description = "", .default_value = false})); + parameter("FUNCT", {.description = "slip function id", .default_value = 0})); + xfem_levelset_navier_slip.add_component( + parameter("FORCE_ONLY_TANG_VEL", {.description = "", .default_value = false})); condlist.push_back(xfem_levelset_navier_slip); @@ -535,7 +536,7 @@ void Inpar::XFEM::set_valid_conditions(std::vector>("ROBIN_ID", {.description = "robin id"})); + parameter>("ROBIN_ID", {.description = "robin id"})); xfem_navier_slip_robin_dirch.add_component(dirichletbundcomponents); @@ -547,7 +548,7 @@ void Inpar::XFEM::set_valid_conditions(std::vector>("ROBIN_ID", {.description = "robin id"})); + parameter>("ROBIN_ID", {.description = "robin id"})); xfem_navier_slip_robin_neumann.add_component(neumanncomponents); @@ -573,7 +574,7 @@ void Inpar::XFEM::set_valid_conditions(std::vector("COUPLINGID")); + xfem_surf_fluidfluid.add_component(parameter("COUPLINGID")); xfem_surf_fluidfluid.add_component(selection("COUPSTRATEGY", {{"xfluid", Inpar::XFEM::Xfluid_Sided}, {"embedded", Inpar::XFEM::Embedded_Sided}, {"mean", Inpar::XFEM::Mean}}, @@ -588,7 +589,7 @@ void Inpar::XFEM::set_valid_conditions(std::vector("COUPLINGID")); + xfem_surf_fsi_part.add_component(parameter("COUPLINGID")); // COUPSTRATEGY IS FLUID SIDED xfem_surf_fsi_part.add_component(selection("INTLAW", @@ -596,9 +597,9 @@ void Inpar::XFEM::set_valid_conditions(std::vector("SLIPCOEFFICIENT", {.description = "", .default_value = 0.0})); + parameter("SLIPCOEFFICIENT", {.description = "", .default_value = 0.0})); xfem_surf_fsi_part.add_component( - entry("SLIP_FUNCT", {.description = "slip function id", .default_value = 0})); + parameter("SLIP_FUNCT", {.description = "slip function id", .default_value = 0})); condlist.push_back(xfem_surf_fsi_part); @@ -609,7 +610,7 @@ void Inpar::XFEM::set_valid_conditions(std::vector("COUPLINGID")); + xfem_surf_fsi_mono.add_component(parameter("COUPLINGID")); xfem_surf_fsi_mono.add_component(selection("COUPSTRATEGY", {{"xfluid", Inpar::XFEM::Xfluid_Sided}, {"solid", Inpar::XFEM::Embedded_Sided}, {"mean", Inpar::XFEM::Mean}, {"harmonic", Inpar::XFEM::Harmonic}}, @@ -620,9 +621,9 @@ void Inpar::XFEM::set_valid_conditions(std::vector("SLIPCOEFFICIENT", {.description = "", .default_value = 0.0})); + parameter("SLIPCOEFFICIENT", {.description = "", .default_value = 0.0})); xfem_surf_fsi_mono.add_component( - entry("SLIP_FUNCT", {.description = "slip function id", .default_value = 0})); + parameter("SLIP_FUNCT", {.description = "slip function id", .default_value = 0})); condlist.push_back(xfem_surf_fsi_mono); @@ -633,15 +634,15 @@ void Inpar::XFEM::set_valid_conditions(std::vector("COUPLINGID")); + xfem_surf_fpi_mono.add_component(parameter("COUPLINGID")); xfem_surf_fpi_mono.add_component( - entry("BJ_COEFF", {.description = "", .default_value = 0})); + parameter("BJ_COEFF", {.description = "", .default_value = 0})); xfem_surf_fpi_mono.add_component(selection( "Variant", {"BJ", "BJS"}, {.description = "variant", .default_value = "BJ"})); xfem_surf_fpi_mono.add_component(selection( "Method", {"NIT", "SUB"}, {.description = "method", .default_value = "NIT"})); xfem_surf_fpi_mono.add_component( - entry("Contact", {.description = "contact", .default_value = false})); + parameter("Contact", {.description = "contact", .default_value = false})); condlist.push_back(xfem_surf_fpi_mono); @@ -653,7 +654,7 @@ void Inpar::XFEM::set_valid_conditions(std::vector("COUPLINGID")); + xfem_surf_wdbc.add_component(parameter("COUPLINGID")); xfem_surf_wdbc.add_component(selection("EVALTYPE", {"zero", "funct_interpolated", "funct_gausspoint", "displacement_1storder_wo_initfunct", "displacement_2ndorder_wo_initfunct", "displacement_1storder_with_initfunct", @@ -663,7 +664,7 @@ void Inpar::XFEM::set_valid_conditions(std::vector("RANDNOISE", + xfem_surf_wdbc.add_component(parameter("RANDNOISE", {.description = "set percentage of random noise used in uniform random distribution", .default_value = 0.0})); @@ -677,12 +678,12 @@ void Inpar::XFEM::set_valid_conditions(std::vector("COUPLINGID")); + xfem_surf_neumann.add_component(parameter("COUPLINGID")); xfem_surf_neumann.add_component(neumanncomponents); // define if we use inflow stabilization on the xfem neumann surf condition - xfem_surf_neumann.add_component(entry( + xfem_surf_neumann.add_component(parameter( "INFLOW_STAB", {.description = "toggle inflow stabilization", .default_value = false})); condlist.push_back(xfem_surf_neumann); @@ -694,21 +695,21 @@ void Inpar::XFEM::set_valid_conditions(std::vector("COUPLINGID")); + xfem_surf_navier_slip.add_component(parameter("COUPLINGID")); xfem_surf_navier_slip.add_component(selection("EVALTYPE", {"zero", "funct_interpolated", "funct_gausspoint", "displacement_1storder_wo_initfunct", "displacement_2ndorder_wo_initfunct", "displacement_1storder_with_initfunct", "displacement_2ndorder_with_initfunct"}, {.description = "", .default_value = "funct_interpolated"})); xfem_surf_navier_slip.add_component( - entry>("ROBIN_DIRICHLET_ID", {.description = ""})); + parameter>("ROBIN_DIRICHLET_ID", {.description = ""})); xfem_surf_navier_slip.add_component( - entry>("ROBIN_NEUMANN_ID", {.description = ""})); - xfem_surf_navier_slip.add_component(entry("SLIPCOEFFICIENT")); + parameter>("ROBIN_NEUMANN_ID", {.description = ""})); + xfem_surf_navier_slip.add_component(parameter("SLIPCOEFFICIENT")); xfem_surf_navier_slip.add_component( - entry("FUNCT", {.description = "slip function id", .default_value = 0})); + parameter("FUNCT", {.description = "slip function id", .default_value = 0})); xfem_surf_navier_slip.add_component( - entry("FORCE_ONLY_TANG_VEL", {.description = "", .default_value = false})); + parameter("FORCE_ONLY_TANG_VEL", {.description = "", .default_value = false})); condlist.push_back(xfem_surf_navier_slip); @@ -719,9 +720,9 @@ void Inpar::XFEM::set_valid_conditions(std::vector("COUPLINGID")); + xfem_navier_slip_robin_dirch_surf.add_component(parameter("COUPLINGID")); xfem_navier_slip_robin_dirch_surf.add_component( - entry>("ROBIN_ID", {.description = "robin id"})); + parameter>("ROBIN_ID", {.description = "robin id"})); // Likely, not necessary. But needed for the current structure. xfem_navier_slip_robin_dirch_surf.add_component(selection("EVALTYPE", @@ -741,9 +742,9 @@ void Inpar::XFEM::set_valid_conditions(std::vector("COUPLINGID")); + xfem_navier_slip_robin_neumann_surf.add_component(parameter("COUPLINGID")); xfem_navier_slip_robin_neumann_surf.add_component( - entry>("ROBIN_ID", {.description = "robin id"})); + parameter>("ROBIN_ID", {.description = "robin id"})); xfem_navier_slip_robin_neumann_surf.add_component(neumanncomponents); @@ -756,7 +757,7 @@ void Inpar::XFEM::set_valid_conditions(std::vector("COUPLINGID")); + solid_surf_coupling.add_component(parameter("COUPLINGID")); condlist.push_back(solid_surf_coupling); @@ -767,7 +768,7 @@ void Inpar::XFEM::set_valid_conditions(std::vector("COUPLINGID")); + solid_vol_background_coupling.add_component(parameter("COUPLINGID")); condlist.push_back(solid_vol_background_coupling); } diff --git a/src/lubrication/src/4C_lubrication_ele.cpp b/src/lubrication/src/4C_lubrication_ele.cpp index 27ee0232832..bf6e2a1e3b4 100644 --- a/src/lubrication/src/4C_lubrication_ele.cpp +++ b/src/lubrication/src/4C_lubrication_ele.cpp @@ -76,38 +76,38 @@ void Discret::Elements::LubricationType::setup_element_definition( using namespace Core::IO::InputSpecBuilders; defs["QUAD4"] = all_of({ - entry>("QUAD4", {.size = 4}), - entry("MAT"), + parameter>("QUAD4", {.size = 4}), + parameter("MAT"), }); defs["QUAD8"] = all_of({ - entry>("QUAD8", {.size = 8}), - entry("MAT"), + parameter>("QUAD8", {.size = 8}), + parameter("MAT"), }); defs["QUAD9"] = all_of({ - entry>("QUAD9", {.size = 9}), - entry("MAT"), + parameter>("QUAD9", {.size = 9}), + parameter("MAT"), }); defs["TRI3"] = all_of({ - entry>("TRI3", {.size = 3}), - entry("MAT"), + parameter>("TRI3", {.size = 3}), + parameter("MAT"), }); defs["TRI6"] = all_of({ - entry>("TRI6", {.size = 6}), - entry("MAT"), + parameter>("TRI6", {.size = 6}), + parameter("MAT"), }); defs["LINE2"] = all_of({ - entry>("LINE2", {.size = 2}), - entry("MAT"), + parameter>("LINE2", {.size = 2}), + parameter("MAT"), }); defs["LINE3"] = all_of({ - entry>("LINE3", {.size = 3}), - entry("MAT"), + parameter>("LINE3", {.size = 3}), + parameter("MAT"), }); } diff --git a/src/membrane/4C_membrane_eletypes.cpp b/src/membrane/4C_membrane_eletypes.cpp index b7da722c6f9..69bc50566d8 100644 --- a/src/membrane/4C_membrane_eletypes.cpp +++ b/src/membrane/4C_membrane_eletypes.cpp @@ -74,17 +74,17 @@ void Discret::Elements::MembraneTri3Type::setup_element_definition( using namespace Core::IO::InputSpecBuilders; defs["TRI3"] = all_of({ - entry>("TRI3", {.size = 3}), - entry("MAT"), - entry("KINEM"), - entry("THICK"), - entry("STRESS_STRAIN"), - entry>("RAD", {.required = false, .size = 3}), - entry>("AXI", {.required = false, .size = 3}), - entry>("CIR", {.required = false, .size = 3}), - entry>("FIBER1", {.required = false, .size = 3}), - entry>("FIBER2", {.required = false, .size = 3}), - entry>("FIBER3", {.required = false, .size = 3}), + parameter>("TRI3", {.size = 3}), + parameter("MAT"), + parameter("KINEM"), + parameter("THICK"), + parameter("STRESS_STRAIN"), + parameter>("RAD", {.required = false, .size = 3}), + parameter>("AXI", {.required = false, .size = 3}), + parameter>("CIR", {.required = false, .size = 3}), + parameter>("FIBER1", {.required = false, .size = 3}), + parameter>("FIBER2", {.required = false, .size = 3}), + parameter>("FIBER3", {.required = false, .size = 3}), }); } @@ -149,17 +149,17 @@ void Discret::Elements::MembraneTri6Type::setup_element_definition( using namespace Core::IO::InputSpecBuilders; defs["TRI6"] = all_of({ - entry>("TRI6", {.size = 6}), - entry("MAT"), - entry("KINEM"), - entry("THICK"), - entry("STRESS_STRAIN"), - entry>("RAD", {.required = false, .size = 3}), - entry>("AXI", {.required = false, .size = 3}), - entry>("CIR", {.required = false, .size = 3}), - entry>("FIBER1", {.required = false, .size = 3}), - entry>("FIBER2", {.required = false, .size = 3}), - entry>("FIBER3", {.required = false, .size = 3}), + parameter>("TRI6", {.size = 6}), + parameter("MAT"), + parameter("KINEM"), + parameter("THICK"), + parameter("STRESS_STRAIN"), + parameter>("RAD", {.required = false, .size = 3}), + parameter>("AXI", {.required = false, .size = 3}), + parameter>("CIR", {.required = false, .size = 3}), + parameter>("FIBER1", {.required = false, .size = 3}), + parameter>("FIBER2", {.required = false, .size = 3}), + parameter>("FIBER3", {.required = false, .size = 3}), }); } @@ -224,17 +224,17 @@ void Discret::Elements::MembraneQuad4Type::setup_element_definition( using namespace Core::IO::InputSpecBuilders; defs["QUAD4"] = all_of({ - entry>("QUAD4", {.size = 4}), - entry("MAT"), - entry("KINEM"), - entry("THICK"), - entry("STRESS_STRAIN"), - entry>("RAD", {.required = false, .size = 3}), - entry>("AXI", {.required = false, .size = 3}), - entry>("CIR", {.required = false, .size = 3}), - entry>("FIBER1", {.required = false, .size = 3}), - entry>("FIBER2", {.required = false, .size = 3}), - entry>("FIBER3", {.required = false, .size = 3}), + parameter>("QUAD4", {.size = 4}), + parameter("MAT"), + parameter("KINEM"), + parameter("THICK"), + parameter("STRESS_STRAIN"), + parameter>("RAD", {.required = false, .size = 3}), + parameter>("AXI", {.required = false, .size = 3}), + parameter>("CIR", {.required = false, .size = 3}), + parameter>("FIBER1", {.required = false, .size = 3}), + parameter>("FIBER2", {.required = false, .size = 3}), + parameter>("FIBER3", {.required = false, .size = 3}), }); } @@ -299,17 +299,17 @@ void Discret::Elements::MembraneQuad9Type::setup_element_definition( using namespace Core::IO::InputSpecBuilders; defs["QUAD9"] = all_of({ - entry>("QUAD9", {.size = 9}), - entry("MAT"), - entry("KINEM"), - entry("THICK"), - entry("STRESS_STRAIN"), - entry>("RAD", {.required = false, .size = 3}), - entry>("AXI", {.required = false, .size = 3}), - entry>("CIR", {.required = false, .size = 3}), - entry>("FIBER1", {.required = false, .size = 3}), - entry>("FIBER2", {.required = false, .size = 3}), - entry>("FIBER3", {.required = false, .size = 3}), + parameter>("QUAD9", {.size = 9}), + parameter("MAT"), + parameter("KINEM"), + parameter("THICK"), + parameter("STRESS_STRAIN"), + parameter>("RAD", {.required = false, .size = 3}), + parameter>("AXI", {.required = false, .size = 3}), + parameter>("CIR", {.required = false, .size = 3}), + parameter>("FIBER1", {.required = false, .size = 3}), + parameter>("FIBER2", {.required = false, .size = 3}), + parameter>("FIBER3", {.required = false, .size = 3}), }); } diff --git a/src/membrane/4C_membrane_scatra_eletypes.cpp b/src/membrane/4C_membrane_scatra_eletypes.cpp index 13858f79175..3612f054efd 100644 --- a/src/membrane/4C_membrane_scatra_eletypes.cpp +++ b/src/membrane/4C_membrane_scatra_eletypes.cpp @@ -64,7 +64,7 @@ void Discret::Elements::MembraneScatraTri3Type::setup_element_definition( defs["TRI3"] = all_of({ defs_membrane["TRI3"], - entry("TYPE"), + parameter("TYPE"), }); } @@ -121,7 +121,7 @@ void Discret::Elements::MembraneScatraTri6Type::setup_element_definition( defs["TRI6"] = all_of({ defs_membrane["TRI6"], - entry("TYPE"), + parameter("TYPE"), }); } @@ -178,7 +178,7 @@ void Discret::Elements::MembraneScatraQuad4Type::setup_element_definition( defs["QUAD4"] = all_of({ defs_membrane["QUAD4"], - entry("TYPE"), + parameter("TYPE"), }); } @@ -235,7 +235,7 @@ void Discret::Elements::MembraneScatraQuad9Type::setup_element_definition( defs["QUAD9"] = all_of({ defs_membrane["QUAD9"], - entry("TYPE"), + parameter("TYPE"), }); } diff --git a/src/module_registry/4C_module_registry_callbacks.hpp b/src/module_registry/4C_module_registry_callbacks.hpp index 890b7839829..9d5b0cdcbe5 100644 --- a/src/module_registry/4C_module_registry_callbacks.hpp +++ b/src/module_registry/4C_module_registry_callbacks.hpp @@ -57,7 +57,8 @@ struct ModuleCallbacks * Nested groups are allowed. * * @note The materials from various modules are gathered in a shared section. The input mechanism - * automatically adds an `entry("MAT")` to the InputSpec to allow enumeration of materials. + * automatically adds an `parameter("MAT")` to the InputSpec to allow enumeration of + * materials. */ std::function()> materials; }; diff --git a/src/porofluidmultiphase_ele/4C_porofluidmultiphase_ele.cpp b/src/porofluidmultiphase_ele/4C_porofluidmultiphase_ele.cpp index 82a5a185747..48b87465696 100644 --- a/src/porofluidmultiphase_ele/4C_porofluidmultiphase_ele.cpp +++ b/src/porofluidmultiphase_ele/4C_porofluidmultiphase_ele.cpp @@ -80,53 +80,53 @@ void Discret::Elements::PoroFluidMultiPhaseType::setup_element_definition( using namespace Core::IO::InputSpecBuilders; defs["QUAD4"] = all_of({ - entry>("QUAD4", {.size = 4}), - entry("MAT"), + parameter>("QUAD4", {.size = 4}), + parameter("MAT"), }); defs["QUAD8"] = all_of({ - entry>("QUAD8", {.size = 8}), - entry("MAT"), + parameter>("QUAD8", {.size = 8}), + parameter("MAT"), }); defs["QUAD9"] = all_of({ - entry>("QUAD9", {.size = 9}), - entry("MAT"), + parameter>("QUAD9", {.size = 9}), + parameter("MAT"), }); defs["TRI3"] = all_of({ - entry>("TRI3", {.size = 3}), - entry("MAT"), + parameter>("TRI3", {.size = 3}), + parameter("MAT"), }); defs["TRI6"] = all_of({ - entry>("TRI6", {.size = 6}), - entry("MAT"), + parameter>("TRI6", {.size = 6}), + parameter("MAT"), }); defs["LINE2"] = all_of({ - entry>("LINE2", {.size = 2}), - entry("MAT"), + parameter>("LINE2", {.size = 2}), + parameter("MAT"), }); defs["LINE3"] = all_of({ - entry>("LINE3", {.size = 3}), - entry("MAT"), + parameter>("LINE3", {.size = 3}), + parameter("MAT"), }); defs["HEX8"] = all_of({ - entry>("HEX8", {.size = 8}), - entry("MAT"), + parameter>("HEX8", {.size = 8}), + parameter("MAT"), }); defs["TET4"] = all_of({ - entry>("TET4", {.size = 4}), - entry("MAT"), + parameter>("TET4", {.size = 4}), + parameter("MAT"), }); defs["TET10"] = all_of({ - entry>("TET10", {.size = 10}), - entry("MAT"), + parameter>("TET10", {.size = 10}), + parameter("MAT"), }); } diff --git a/src/poromultiphase_scatra/4C_poromultiphase_scatra_function.cpp b/src/poromultiphase_scatra/4C_poromultiphase_scatra_function.cpp index 8cc5f169204..e53450bae85 100644 --- a/src/poromultiphase_scatra/4C_poromultiphase_scatra_function.cpp +++ b/src/poromultiphase_scatra/4C_poromultiphase_scatra_function.cpp @@ -117,9 +117,9 @@ void PoroMultiPhaseScaTra::add_valid_poro_functions(Core::Utils::FunctionManager function_manager.add_function_definition( all_of({ - entry("POROMULTIPHASESCATRA_FUNCTION"), - entry("NUMPARAMS", {.required = false}), - entry>( + parameter("POROMULTIPHASESCATRA_FUNCTION"), + parameter("NUMPARAMS", {.required = false}), + parameter>( "PARAMS", {.required = false, .size = from_parameter("NUMPARAMS")}), }), try_create_poro_function_dispatch); diff --git a/src/red_airways/4C_red_airways_acinus.cpp b/src/red_airways/4C_red_airways_acinus.cpp index c2442420382..582b94fcb15 100644 --- a/src/red_airways/4C_red_airways_acinus.cpp +++ b/src/red_airways/4C_red_airways_acinus.cpp @@ -65,26 +65,26 @@ void Discret::Elements::RedAcinusType::setup_element_definition( using namespace Core::IO::InputSpecBuilders; defs["LINE2"] = all_of({ - entry>("LINE2", {.size = 2}), - entry("MAT"), - entry("TYPE"), - entry("AcinusVolume"), - entry("AlveolarDuctVolume"), - entry("E1_0", {.required = false}), - entry("E1_LIN", {.required = false}), - entry("E1_EXP", {.required = false}), - entry("TAU", {.required = false}), - entry("E1_01", {.required = false}), - entry("E1_LIN1", {.required = false}), - entry("E1_EXP1", {.required = false}), - entry("TAU1", {.required = false}), - entry("E1_02", {.required = false}), - entry("E1_LIN2", {.required = false}), - entry("E1_EXP2", {.required = false}), - entry("TAU2", {.required = false}), - entry("KAPPA", {.required = false}), - entry("BETA", {.required = false}), - entry("Area", {.required = false}), + parameter>("LINE2", {.size = 2}), + parameter("MAT"), + parameter("TYPE"), + parameter("AcinusVolume"), + parameter("AlveolarDuctVolume"), + parameter("E1_0", {.required = false}), + parameter("E1_LIN", {.required = false}), + parameter("E1_EXP", {.required = false}), + parameter("TAU", {.required = false}), + parameter("E1_01", {.required = false}), + parameter("E1_LIN1", {.required = false}), + parameter("E1_EXP1", {.required = false}), + parameter("TAU1", {.required = false}), + parameter("E1_02", {.required = false}), + parameter("E1_LIN2", {.required = false}), + parameter("E1_EXP2", {.required = false}), + parameter("TAU2", {.required = false}), + parameter("KAPPA", {.required = false}), + parameter("BETA", {.required = false}), + parameter("Area", {.required = false}), }); } diff --git a/src/red_airways/4C_red_airways_airway.cpp b/src/red_airways/4C_red_airways_airway.cpp index ea9a13b2dc0..5de8466fd32 100644 --- a/src/red_airways/4C_red_airways_airway.cpp +++ b/src/red_airways/4C_red_airways_airway.cpp @@ -66,26 +66,26 @@ void Discret::Elements::RedAirwayType::setup_element_definition( using namespace Core::IO::InputSpecBuilders; defs["LINE2"] = all_of({ - entry>("LINE2", {.size = 2}), - entry("MAT"), - entry("ElemSolvingType"), - entry("TYPE"), - entry("Resistance"), - entry("PowerOfVelocityProfile"), - entry("WallElasticity"), - entry("PoissonsRatio"), - entry("ViscousTs"), - entry("ViscousPhaseShift"), - entry("WallThickness"), - entry("Area"), - entry("Generation"), - entry("AirwayColl", {.required = false}), - entry("S_Close", {.required = false}), - entry("S_Open", {.required = false}), - entry("Pcrit_Open", {.required = false}), - entry("Pcrit_Close", {.required = false}), - entry("Open_Init", {.required = false}), - entry("BranchLength", {.required = false}), + parameter>("LINE2", {.size = 2}), + parameter("MAT"), + parameter("ElemSolvingType"), + parameter("TYPE"), + parameter("Resistance"), + parameter("PowerOfVelocityProfile"), + parameter("WallElasticity"), + parameter("PoissonsRatio"), + parameter("ViscousTs"), + parameter("ViscousPhaseShift"), + parameter("WallThickness"), + parameter("Area"), + parameter("Generation"), + parameter("AirwayColl", {.required = false}), + parameter("S_Close", {.required = false}), + parameter("S_Open", {.required = false}), + parameter("Pcrit_Open", {.required = false}), + parameter("Pcrit_Close", {.required = false}), + parameter("Open_Init", {.required = false}), + parameter("BranchLength", {.required = false}), }); } diff --git a/src/red_airways/4C_red_airways_interacinardep.cpp b/src/red_airways/4C_red_airways_interacinardep.cpp index 1579a748762..55b75c84070 100644 --- a/src/red_airways/4C_red_airways_interacinardep.cpp +++ b/src/red_airways/4C_red_airways_interacinardep.cpp @@ -73,8 +73,8 @@ void Discret::Elements::RedInterAcinarDepType::setup_element_definition( using namespace Core::IO::InputSpecBuilders; defs["LINE2"] = all_of({ - entry>("LINE2", {.size = 2}), - entry("MAT"), + parameter>("LINE2", {.size = 2}), + parameter("MAT"), }); } diff --git a/src/rigidsphere/4C_rigidsphere.cpp b/src/rigidsphere/4C_rigidsphere.cpp index 6a341364dc6..23ea35e2094 100644 --- a/src/rigidsphere/4C_rigidsphere.cpp +++ b/src/rigidsphere/4C_rigidsphere.cpp @@ -97,9 +97,9 @@ void Discret::Elements::RigidsphereType::setup_element_definition( using namespace Core::IO::InputSpecBuilders; defs["POINT1"] = all_of({ - entry>("POINT1", {.size = 1}), - entry("RADIUS"), - entry("DENSITY"), + parameter>("POINT1", {.size = 1}), + parameter("RADIUS"), + parameter("DENSITY"), }); } diff --git a/src/scatra_ele/4C_scatra_ele.cpp b/src/scatra_ele/4C_scatra_ele.cpp index 68a98606fed..c66ecf40b89 100644 --- a/src/scatra_ele/4C_scatra_ele.cpp +++ b/src/scatra_ele/4C_scatra_ele.cpp @@ -95,150 +95,150 @@ void Discret::Elements::TransportType::setup_element_definition( using namespace Core::IO::InputSpecBuilders; defs["HEX8"] = all_of({ - entry>("HEX8", {.size = 8}), - entry("MAT"), - entry("TYPE"), - entry>("FIBER1", {.required = false, .size = 3}), + parameter>("HEX8", {.size = 8}), + parameter("MAT"), + parameter("TYPE"), + parameter>("FIBER1", {.required = false, .size = 3}), }); defs["HEX20"] = all_of({ - entry>("HEX20", {.size = 20}), - entry("MAT"), - entry("TYPE"), - entry>("FIBER1", {.required = false, .size = 3}), + parameter>("HEX20", {.size = 20}), + parameter("MAT"), + parameter("TYPE"), + parameter>("FIBER1", {.required = false, .size = 3}), }); defs["HEX27"] = all_of({ - entry>("HEX27", {.size = 27}), - entry("MAT"), - entry("TYPE"), - entry>("FIBER1", {.required = false, .size = 3}), + parameter>("HEX27", {.size = 27}), + parameter("MAT"), + parameter("TYPE"), + parameter>("FIBER1", {.required = false, .size = 3}), }); defs["NURBS27"] = all_of({ - entry>("NURBS27", {.size = 27}), - entry("MAT"), - entry("TYPE"), - entry>("FIBER1", {.required = false, .size = 3}), + parameter>("NURBS27", {.size = 27}), + parameter("MAT"), + parameter("TYPE"), + parameter>("FIBER1", {.required = false, .size = 3}), }); defs["NURBS8"] = all_of({ - entry>("NURBS8", {.size = 8}), - entry("MAT"), - entry("TYPE"), - entry>("FIBER1", {.required = false, .size = 3}), + parameter>("NURBS8", {.size = 8}), + parameter("MAT"), + parameter("TYPE"), + parameter>("FIBER1", {.required = false, .size = 3}), }); defs["TET4"] = all_of({ - entry>("TET4", {.size = 4}), - entry("MAT"), - entry("TYPE"), - entry>("FIBER1", {.required = false, .size = 3}), + parameter>("TET4", {.size = 4}), + parameter("MAT"), + parameter("TYPE"), + parameter>("FIBER1", {.required = false, .size = 3}), }); defs["TET10"] = all_of({ - entry>("TET10", {.size = 10}), - entry("MAT"), - entry("TYPE"), - entry>("FIBER1", {.required = false, .size = 3}), + parameter>("TET10", {.size = 10}), + parameter("MAT"), + parameter("TYPE"), + parameter>("FIBER1", {.required = false, .size = 3}), }); defs["WEDGE6"] = all_of({ - entry>("WEDGE6", {.size = 6}), - entry("MAT"), - entry("TYPE"), - entry>("FIBER1", {.required = false, .size = 3}), + parameter>("WEDGE6", {.size = 6}), + parameter("MAT"), + parameter("TYPE"), + parameter>("FIBER1", {.required = false, .size = 3}), }); defs["WEDGE15"] = all_of({ - entry>("WEDGE15", {.size = 15}), - entry("MAT"), - entry("TYPE"), - entry>("FIBER1", {.required = false, .size = 3}), + parameter>("WEDGE15", {.size = 15}), + parameter("MAT"), + parameter("TYPE"), + parameter>("FIBER1", {.required = false, .size = 3}), }); defs["PYRAMID5"] = all_of({ - entry>("PYRAMID5", {.size = 5}), - entry("MAT"), - entry("TYPE"), - entry>("FIBER1", {.required = false, .size = 3}), + parameter>("PYRAMID5", {.size = 5}), + parameter("MAT"), + parameter("TYPE"), + parameter>("FIBER1", {.required = false, .size = 3}), }); defs["QUAD4"] = all_of({ - entry>("QUAD4", {.size = 4}), - entry("MAT"), - entry("TYPE"), - entry>("FIBER1", {.required = false, .size = 3}), + parameter>("QUAD4", {.size = 4}), + parameter("MAT"), + parameter("TYPE"), + parameter>("FIBER1", {.required = false, .size = 3}), }); defs["QUAD8"] = all_of({ - entry>("QUAD8", {.size = 8}), - entry("MAT"), - entry("TYPE"), - entry>("FIBER1", {.required = false, .size = 3}), + parameter>("QUAD8", {.size = 8}), + parameter("MAT"), + parameter("TYPE"), + parameter>("FIBER1", {.required = false, .size = 3}), }); defs["QUAD9"] = all_of({ - entry>("QUAD9", {.size = 9}), - entry("MAT"), - entry("TYPE"), - entry>("FIBER1", {.required = false, .size = 3}), + parameter>("QUAD9", {.size = 9}), + parameter("MAT"), + parameter("TYPE"), + parameter>("FIBER1", {.required = false, .size = 3}), }); defs["TRI3"] = all_of({ - entry>("TRI3", {.size = 3}), - entry("MAT"), - entry("TYPE"), - entry>("FIBER1", {.required = false, .size = 3}), + parameter>("TRI3", {.size = 3}), + parameter("MAT"), + parameter("TYPE"), + parameter>("FIBER1", {.required = false, .size = 3}), }); defs["TRI6"] = all_of({ - entry>("TRI6", {.size = 6}), - entry("MAT"), - entry("TYPE"), - entry>("FIBER1", {.required = false, .size = 3}), + parameter>("TRI6", {.size = 6}), + parameter("MAT"), + parameter("TYPE"), + parameter>("FIBER1", {.required = false, .size = 3}), }); defs["NURBS4"] = all_of({ - entry>("NURBS4", {.size = 4}), - entry("MAT"), - entry("TYPE"), - entry>("FIBER1", {.required = false, .size = 3}), + parameter>("NURBS4", {.size = 4}), + parameter("MAT"), + parameter("TYPE"), + parameter>("FIBER1", {.required = false, .size = 3}), }); defs["NURBS9"] = all_of({ - entry>("NURBS9", {.size = 9}), - entry("MAT"), - entry("TYPE"), - entry>("FIBER1", {.required = false, .size = 3}), + parameter>("NURBS9", {.size = 9}), + parameter("MAT"), + parameter("TYPE"), + parameter>("FIBER1", {.required = false, .size = 3}), }); defs["LINE2"] = all_of({ - entry>("LINE2", {.size = 2}), - entry("MAT"), - entry("TYPE"), - entry>("FIBER1", {.required = false, .size = 3}), + parameter>("LINE2", {.size = 2}), + parameter("MAT"), + parameter("TYPE"), + parameter>("FIBER1", {.required = false, .size = 3}), }); defs["LINE3"] = all_of({ - entry>("LINE3", {.size = 3}), - entry("MAT"), - entry("TYPE"), - entry>("FIBER1", {.required = false, .size = 3}), + parameter>("LINE3", {.size = 3}), + parameter("MAT"), + parameter("TYPE"), + parameter>("FIBER1", {.required = false, .size = 3}), }); defs["NURBS2"] = all_of({ - entry>("NURBS2", {.size = 2}), - entry("MAT"), - entry("TYPE"), - entry>("FIBER1", {.required = false, .size = 3}), + parameter>("NURBS2", {.size = 2}), + parameter("MAT"), + parameter("TYPE"), + parameter>("FIBER1", {.required = false, .size = 3}), }); defs["NURBS3"] = all_of({ - entry>("NURBS3", {.size = 3}), - entry("MAT"), - entry("TYPE"), - entry>("FIBER1", {.required = false, .size = 3}), + parameter>("NURBS3", {.size = 3}), + parameter("MAT"), + parameter("TYPE"), + parameter>("FIBER1", {.required = false, .size = 3}), }); } diff --git a/src/scatra_ele/4C_scatra_ele_hdg.cpp b/src/scatra_ele/4C_scatra_ele_hdg.cpp index a49acc27f80..56d4b289cb1 100644 --- a/src/scatra_ele/4C_scatra_ele_hdg.cpp +++ b/src/scatra_ele/4C_scatra_ele_hdg.cpp @@ -137,8 +137,8 @@ void Discret::Elements::ScaTraHDGType ::setup_element_definition( { defs[key] = all_of({ scatra_line_def, - entry("DEG"), - entry("SPC", {.required = false}), + parameter("DEG"), + parameter("SPC", {.required = false}), }); } } diff --git a/src/shell7p/4C_shell7p_ele.cpp b/src/shell7p/4C_shell7p_ele.cpp index 30686371806..8437c2c858f 100644 --- a/src/shell7p/4C_shell7p_ele.cpp +++ b/src/shell7p/4C_shell7p_ele.cpp @@ -84,74 +84,74 @@ void Discret::Elements::Shell7pType::setup_element_definition( using namespace Core::IO::InputSpecBuilders; defsgeneral["QUAD4"] = all_of({ - entry>("QUAD4", {.size = 4}), - entry("MAT"), - entry("THICK"), - entry>("EAS", {.size = 5}), - entry("SDC"), - entry("USE_ANS", {.default_value = false}), - entry>("RAD", {.required = false, .size = 3}), - entry>("AXI", {.required = false, .size = 3}), - entry>("CIR", {.required = false, .size = 3}), - entry>("FIBER1", {.required = false, .size = 3}), - entry>("FIBER2", {.required = false, .size = 3}), - entry>("FIBER3", {.required = false, .size = 3}), + parameter>("QUAD4", {.size = 4}), + parameter("MAT"), + parameter("THICK"), + parameter>("EAS", {.size = 5}), + parameter("SDC"), + parameter("USE_ANS", {.default_value = false}), + parameter>("RAD", {.required = false, .size = 3}), + parameter>("AXI", {.required = false, .size = 3}), + parameter>("CIR", {.required = false, .size = 3}), + parameter>("FIBER1", {.required = false, .size = 3}), + parameter>("FIBER2", {.required = false, .size = 3}), + parameter>("FIBER3", {.required = false, .size = 3}), }); defsgeneral["QUAD8"] = all_of({ - entry>("QUAD8", {.size = 8}), - entry("MAT"), - entry("THICK"), - entry>("EAS", {.size = 5}), - entry("SDC"), - entry("USE_ANS", {.default_value = false}), - entry>("RAD", {.required = false, .size = 3}), - entry>("AXI", {.required = false, .size = 3}), - entry>("CIR", {.required = false, .size = 3}), - entry>("FIBER1", {.required = false, .size = 3}), - entry>("FIBER2", {.required = false, .size = 3}), - entry>("FIBER3", {.required = false, .size = 3}), + parameter>("QUAD8", {.size = 8}), + parameter("MAT"), + parameter("THICK"), + parameter>("EAS", {.size = 5}), + parameter("SDC"), + parameter("USE_ANS", {.default_value = false}), + parameter>("RAD", {.required = false, .size = 3}), + parameter>("AXI", {.required = false, .size = 3}), + parameter>("CIR", {.required = false, .size = 3}), + parameter>("FIBER1", {.required = false, .size = 3}), + parameter>("FIBER2", {.required = false, .size = 3}), + parameter>("FIBER3", {.required = false, .size = 3}), }); defsgeneral["QUAD9"] = all_of({ - entry>("QUAD9", {.size = 9}), - entry("MAT"), - entry("THICK"), - entry>("EAS", {.size = 5}), - entry("SDC"), - entry("USE_ANS", {.default_value = false}), - entry>("RAD", {.required = false, .size = 3}), - entry>("AXI", {.required = false, .size = 3}), - entry>("CIR", {.required = false, .size = 3}), - entry>("FIBER1", {.required = false, .size = 3}), - entry>("FIBER2", {.required = false, .size = 3}), - entry>("FIBER3", {.required = false, .size = 3}), + parameter>("QUAD9", {.size = 9}), + parameter("MAT"), + parameter("THICK"), + parameter>("EAS", {.size = 5}), + parameter("SDC"), + parameter("USE_ANS", {.default_value = false}), + parameter>("RAD", {.required = false, .size = 3}), + parameter>("AXI", {.required = false, .size = 3}), + parameter>("CIR", {.required = false, .size = 3}), + parameter>("FIBER1", {.required = false, .size = 3}), + parameter>("FIBER2", {.required = false, .size = 3}), + parameter>("FIBER3", {.required = false, .size = 3}), }); defsgeneral["TRI3"] = all_of({ - entry>("TRI3", {.size = 3}), - entry("MAT"), - entry("THICK"), - entry("SDC"), - entry>("RAD", {.required = false, .size = 3}), - entry>("AXI", {.required = false, .size = 3}), - entry>("CIR", {.required = false, .size = 3}), - entry>("FIBER1", {.required = false, .size = 3}), - entry>("FIBER2", {.required = false, .size = 3}), - entry>("FIBER3", {.required = false, .size = 3}), + parameter>("TRI3", {.size = 3}), + parameter("MAT"), + parameter("THICK"), + parameter("SDC"), + parameter>("RAD", {.required = false, .size = 3}), + parameter>("AXI", {.required = false, .size = 3}), + parameter>("CIR", {.required = false, .size = 3}), + parameter>("FIBER1", {.required = false, .size = 3}), + parameter>("FIBER2", {.required = false, .size = 3}), + parameter>("FIBER3", {.required = false, .size = 3}), }); defsgeneral["TRI6"] = all_of({ - entry>("TRI6", {.size = 6}), - entry("MAT"), - entry("THICK"), - entry("SDC"), - entry>("RAD", {.required = false, .size = 3}), - entry>("AXI", {.required = false, .size = 3}), - entry>("CIR", {.required = false, .size = 3}), - entry>("FIBER1", {.required = false, .size = 3}), - entry>("FIBER2", {.required = false, .size = 3}), - entry>("FIBER3", {.required = false, .size = 3}), + parameter>("TRI6", {.size = 6}), + parameter("MAT"), + parameter("THICK"), + parameter("SDC"), + parameter>("RAD", {.required = false, .size = 3}), + parameter>("AXI", {.required = false, .size = 3}), + parameter>("CIR", {.required = false, .size = 3}), + parameter>("FIBER1", {.required = false, .size = 3}), + parameter>("FIBER2", {.required = false, .size = 3}), + parameter>("FIBER3", {.required = false, .size = 3}), }); } diff --git a/src/shell7p/4C_shell7p_ele_scatra.cpp b/src/shell7p/4C_shell7p_ele_scatra.cpp index 762d44400d4..a64b5516008 100644 --- a/src/shell7p/4C_shell7p_ele_scatra.cpp +++ b/src/shell7p/4C_shell7p_ele_scatra.cpp @@ -79,79 +79,79 @@ void Discret::Elements::Shell7pScatraType::setup_element_definition( using namespace Core::IO::InputSpecBuilders; defsgeneral["QUAD4"] = all_of({ - entry>("QUAD4", {.size = 4}), - entry("MAT"), - entry("THICK"), - entry>("EAS", {.size = 5}), - entry("SDC"), - entry("USE_ANS", {.default_value = false}), - entry>("RAD", {.required = false, .size = 3}), - entry>("AXI", {.required = false, .size = 3}), - entry>("CIR", {.required = false, .size = 3}), - entry>("FIBER1", {.required = false, .size = 3}), - entry>("FIBER2", {.required = false, .size = 3}), - entry>("FIBER3", {.required = false, .size = 3}), - entry("TYPE", {.required = false}), + parameter>("QUAD4", {.size = 4}), + parameter("MAT"), + parameter("THICK"), + parameter>("EAS", {.size = 5}), + parameter("SDC"), + parameter("USE_ANS", {.default_value = false}), + parameter>("RAD", {.required = false, .size = 3}), + parameter>("AXI", {.required = false, .size = 3}), + parameter>("CIR", {.required = false, .size = 3}), + parameter>("FIBER1", {.required = false, .size = 3}), + parameter>("FIBER2", {.required = false, .size = 3}), + parameter>("FIBER3", {.required = false, .size = 3}), + parameter("TYPE", {.required = false}), }); defsgeneral["QUAD8"] = all_of({ - entry>("QUAD8", {.size = 8}), - entry("MAT"), - entry("THICK"), - entry>("EAS", {.size = 5}), - entry("SDC"), - entry("USE_ANS", {.default_value = false}), - entry>("RAD", {.required = false, .size = 3}), - entry>("AXI", {.required = false, .size = 3}), - entry>("CIR", {.required = false, .size = 3}), - entry>("FIBER1", {.required = false, .size = 3}), - entry>("FIBER2", {.required = false, .size = 3}), - entry>("FIBER3", {.required = false, .size = 3}), - entry("TYPE", {.required = false}), + parameter>("QUAD8", {.size = 8}), + parameter("MAT"), + parameter("THICK"), + parameter>("EAS", {.size = 5}), + parameter("SDC"), + parameter("USE_ANS", {.default_value = false}), + parameter>("RAD", {.required = false, .size = 3}), + parameter>("AXI", {.required = false, .size = 3}), + parameter>("CIR", {.required = false, .size = 3}), + parameter>("FIBER1", {.required = false, .size = 3}), + parameter>("FIBER2", {.required = false, .size = 3}), + parameter>("FIBER3", {.required = false, .size = 3}), + parameter("TYPE", {.required = false}), }); defsgeneral["QUAD9"] = all_of({ - entry>("QUAD9", {.size = 9}), - entry("MAT"), - entry("THICK"), - entry>("EAS", {.size = 5}), - entry("SDC"), - entry("USE_ANS", {.default_value = false}), - entry>("RAD", {.required = false, .size = 3}), - entry>("AXI", {.required = false, .size = 3}), - entry>("CIR", {.required = false, .size = 3}), - entry>("FIBER1", {.required = false, .size = 3}), - entry>("FIBER2", {.required = false, .size = 3}), - entry>("FIBER3", {.required = false, .size = 3}), - entry("TYPE", {.required = false}), + parameter>("QUAD9", {.size = 9}), + parameter("MAT"), + parameter("THICK"), + parameter>("EAS", {.size = 5}), + parameter("SDC"), + parameter("USE_ANS", {.default_value = false}), + parameter>("RAD", {.required = false, .size = 3}), + parameter>("AXI", {.required = false, .size = 3}), + parameter>("CIR", {.required = false, .size = 3}), + parameter>("FIBER1", {.required = false, .size = 3}), + parameter>("FIBER2", {.required = false, .size = 3}), + parameter>("FIBER3", {.required = false, .size = 3}), + parameter("TYPE", {.required = false}), }); defsgeneral["TRI3"] = all_of({ - entry>("TRI3", {.size = 3}), - entry("MAT"), - entry("THICK"), - entry("SDC"), - entry>("RAD", {.required = false, .size = 3}), - entry>("AXI", {.required = false, .size = 3}), - entry>("CIR", {.required = false, .size = 3}), - entry>("FIBER1", {.required = false, .size = 3}), - entry>("FIBER2", {.required = false, .size = 3}), - entry>("FIBER3", {.required = false, .size = 3}), - entry("TYPE", {.required = false}), + parameter>("TRI3", {.size = 3}), + parameter("MAT"), + parameter("THICK"), + parameter("SDC"), + parameter>("RAD", {.required = false, .size = 3}), + parameter>("AXI", {.required = false, .size = 3}), + parameter>("CIR", {.required = false, .size = 3}), + parameter>("FIBER1", {.required = false, .size = 3}), + parameter>("FIBER2", {.required = false, .size = 3}), + parameter>("FIBER3", {.required = false, .size = 3}), + parameter("TYPE", {.required = false}), }); defsgeneral["TRI6"] = all_of({ - entry>("TRI6", {.size = 6}), - entry("MAT"), - entry("THICK"), - entry("SDC"), - entry>("RAD", {.required = false, .size = 3}), - entry>("AXI", {.required = false, .size = 3}), - entry>("CIR", {.required = false, .size = 3}), - entry>("FIBER1", {.required = false, .size = 3}), - entry>("FIBER2", {.required = false, .size = 3}), - entry>("FIBER3", {.required = false, .size = 3}), - entry("TYPE", {.required = false}), + parameter>("TRI6", {.size = 6}), + parameter("MAT"), + parameter("THICK"), + parameter("SDC"), + parameter>("RAD", {.required = false, .size = 3}), + parameter>("AXI", {.required = false, .size = 3}), + parameter>("CIR", {.required = false, .size = 3}), + parameter>("FIBER1", {.required = false, .size = 3}), + parameter>("FIBER2", {.required = false, .size = 3}), + parameter>("FIBER3", {.required = false, .size = 3}), + parameter("TYPE", {.required = false}), }); } diff --git a/src/shell_kl_nurbs/src/4C_shell_kl_nurbs.cpp b/src/shell_kl_nurbs/src/4C_shell_kl_nurbs.cpp index 4b5cdacf86e..bedfff45159 100644 --- a/src/shell_kl_nurbs/src/4C_shell_kl_nurbs.cpp +++ b/src/shell_kl_nurbs/src/4C_shell_kl_nurbs.cpp @@ -97,9 +97,9 @@ void Discret::Elements::KirchhoffLoveShellNurbsType::setup_element_definition( using namespace Core::IO::InputSpecBuilders; defs["NURBS9"] = all_of({ - entry>("NURBS9", {.size = 9}), - entry("MAT"), - entry>("GP", {.size = 2}), + parameter>("NURBS9", {.size = 9}), + parameter("MAT"), + parameter>("GP", {.size = 2}), }); } diff --git a/src/so3/4C_so3_hex27.cpp b/src/so3/4C_so3_hex27.cpp index dce84042b4f..4a3b7551cb9 100644 --- a/src/so3/4C_so3_hex27.cpp +++ b/src/so3/4C_so3_hex27.cpp @@ -82,17 +82,17 @@ void Discret::Elements::SoHex27Type::setup_element_definition( using namespace Core::IO::InputSpecBuilders; defs["HEX27"] = all_of({ - entry>("HEX27", {.size = 27}), - entry("MAT"), - entry("KINEM"), - entry>("RAD", {.required = false, .size = 3}), - entry>("AXI", {.required = false, .size = 3}), - entry>("CIR", {.required = false, .size = 3}), - entry>("FIBER1", {.required = false, .size = 3}), - entry>("FIBER2", {.required = false, .size = 3}), - entry>("FIBER3", {.required = false, .size = 3}), - entry("STRENGTH", {.required = false}), - entry("GROWTHTRIG", {.required = false}), + parameter>("HEX27", {.size = 27}), + parameter("MAT"), + parameter("KINEM"), + parameter>("RAD", {.required = false, .size = 3}), + parameter>("AXI", {.required = false, .size = 3}), + parameter>("CIR", {.required = false, .size = 3}), + parameter>("FIBER1", {.required = false, .size = 3}), + parameter>("FIBER2", {.required = false, .size = 3}), + parameter>("FIBER3", {.required = false, .size = 3}), + parameter("STRENGTH", {.required = false}), + parameter("GROWTHTRIG", {.required = false}), }); } diff --git a/src/so3/4C_so3_hex8.cpp b/src/so3/4C_so3_hex8.cpp index aa765e89200..1cc046ed9ad 100644 --- a/src/so3/4C_so3_hex8.cpp +++ b/src/so3/4C_so3_hex8.cpp @@ -92,18 +92,18 @@ void Discret::Elements::SoHex8Type::setup_element_definition( using namespace Core::IO::InputSpecBuilders; defs["HEX8"] = all_of({ - entry>("HEX8", {.size = 8}), - entry("MAT"), - entry("KINEM"), - entry("EAS"), - entry>("RAD", {.required = false, .size = 3}), - entry>("AXI", {.required = false, .size = 3}), - entry>("CIR", {.required = false, .size = 3}), - entry>("FIBER1", {.required = false, .size = 3}), - entry>("FIBER2", {.required = false, .size = 3}), - entry>("FIBER3", {.required = false, .size = 3}), - entry("STRENGTH", {.required = false}), - entry("GROWTHTRIG", {.required = false}), + parameter>("HEX8", {.size = 8}), + parameter("MAT"), + parameter("KINEM"), + parameter("EAS"), + parameter>("RAD", {.required = false, .size = 3}), + parameter>("AXI", {.required = false, .size = 3}), + parameter>("CIR", {.required = false, .size = 3}), + parameter>("FIBER1", {.required = false, .size = 3}), + parameter>("FIBER2", {.required = false, .size = 3}), + parameter>("FIBER3", {.required = false, .size = 3}), + parameter("STRENGTH", {.required = false}), + parameter("GROWTHTRIG", {.required = false}), }); } diff --git a/src/so3/4C_so3_nurbs27.cpp b/src/so3/4C_so3_nurbs27.cpp index b427516e034..bd09c325533 100644 --- a/src/so3/4C_so3_nurbs27.cpp +++ b/src/so3/4C_so3_nurbs27.cpp @@ -80,9 +80,9 @@ void Discret::Elements::Nurbs::SoNurbs27Type::setup_element_definition( using namespace Core::IO::InputSpecBuilders; defs["NURBS27"] = all_of({ - entry>("NURBS27", {.size = 27}), - entry("MAT"), - entry>("GP", {.size = 3}), + parameter>("NURBS27", {.size = 27}), + parameter("MAT"), + parameter>("GP", {.size = 3}), }); } diff --git a/src/so3/4C_so3_poro_eletypes.cpp b/src/so3/4C_so3_poro_eletypes.cpp index b34492d2939..c5bd9f8a624 100644 --- a/src/so3/4C_so3_poro_eletypes.cpp +++ b/src/so3/4C_so3_poro_eletypes.cpp @@ -69,12 +69,12 @@ void Discret::Elements::SoHex8PoroType::setup_element_definition( defs["HEX8"] = all_of({ defs_hex8["HEX8"], - entry>("POROANISODIR1", {.required = false, .size = 3}), - entry>("POROANISODIR2", {.required = false, .size = 3}), - entry>("POROANISODIR3", {.required = false, .size = 3}), - entry>("POROANISONODALCOEFFS1", {.required = false, .size = 8}), - entry>("POROANISONODALCOEFFS2", {.required = false, .size = 8}), - entry>("POROANISONODALCOEFFS3", {.required = false, .size = 8}), + parameter>("POROANISODIR1", {.required = false, .size = 3}), + parameter>("POROANISODIR2", {.required = false, .size = 3}), + parameter>("POROANISODIR3", {.required = false, .size = 3}), + parameter>("POROANISONODALCOEFFS1", {.required = false, .size = 8}), + parameter>("POROANISONODALCOEFFS2", {.required = false, .size = 8}), + parameter>("POROANISONODALCOEFFS3", {.required = false, .size = 8}), }); } @@ -149,12 +149,12 @@ void Discret::Elements::SoTet4PoroType::setup_element_definition( defs["TET4"] = all_of({ defs_tet4["TET4"], - entry>("POROANISODIR1", {.required = false, .size = 3}), - entry>("POROANISODIR2", {.required = false, .size = 3}), - entry>("POROANISODIR3", {.required = false, .size = 3}), - entry>("POROANISONODALCOEFFS1", {.required = false, .size = 4}), - entry>("POROANISONODALCOEFFS2", {.required = false, .size = 4}), - entry>("POROANISONODALCOEFFS3", {.required = false, .size = 4}), + parameter>("POROANISODIR1", {.required = false, .size = 3}), + parameter>("POROANISODIR2", {.required = false, .size = 3}), + parameter>("POROANISODIR3", {.required = false, .size = 3}), + parameter>("POROANISONODALCOEFFS1", {.required = false, .size = 4}), + parameter>("POROANISONODALCOEFFS2", {.required = false, .size = 4}), + parameter>("POROANISONODALCOEFFS3", {.required = false, .size = 4}), }); } @@ -228,9 +228,9 @@ void Discret::Elements::SoHex27PoroType::setup_element_definition( defs["HEX27"] = all_of({ defs_hex27["HEX27"], - entry>("POROANISODIR1", {.required = false, .size = 3}), - entry>("POROANISODIR2", {.required = false, .size = 3}), - entry>("POROANISODIR3", {.required = false, .size = 3}), + parameter>("POROANISODIR1", {.required = false, .size = 3}), + parameter>("POROANISODIR2", {.required = false, .size = 3}), + parameter>("POROANISODIR3", {.required = false, .size = 3}), }); } @@ -304,9 +304,9 @@ void Discret::Elements::SoTet10PoroType::setup_element_definition( defs["TET10"] = all_of({ defs_tet10["TET10"], - entry>("POROANISODIR1", {.required = false, .size = 3}), - entry>("POROANISODIR2", {.required = false, .size = 3}), - entry>("POROANISODIR3", {.required = false, .size = 3}), + parameter>("POROANISODIR1", {.required = false, .size = 3}), + parameter>("POROANISODIR2", {.required = false, .size = 3}), + parameter>("POROANISODIR3", {.required = false, .size = 3}), }); } @@ -378,9 +378,9 @@ void Discret::Elements::SoNurbs27PoroType::setup_element_definition( defs["NURBS27"] = all_of({ defs_nurbs27["NURBS27"], - entry>("POROANISODIR1", {.required = false, .size = 3}), - entry>("POROANISODIR2", {.required = false, .size = 3}), - entry>("POROANISODIR3", {.required = false, .size = 3}), + parameter>("POROANISODIR1", {.required = false, .size = 3}), + parameter>("POROANISODIR2", {.required = false, .size = 3}), + parameter>("POROANISODIR3", {.required = false, .size = 3}), }); } diff --git a/src/so3/4C_so3_poro_p1_scatra_eletypes.cpp b/src/so3/4C_so3_poro_p1_scatra_eletypes.cpp index cc0125d8d04..462aca3c96c 100644 --- a/src/so3/4C_so3_poro_p1_scatra_eletypes.cpp +++ b/src/so3/4C_so3_poro_p1_scatra_eletypes.cpp @@ -70,7 +70,7 @@ void Discret::Elements::SoHex8PoroP1ScatraType::setup_element_definition( defs["HEX8"] = all_of({ defs_hex8["HEX8"], - entry("TYPE"), + parameter("TYPE"), }); } @@ -130,7 +130,7 @@ void Discret::Elements::SoTet4PoroP1ScatraType::setup_element_definition( defs["TET4"] = all_of({ defs_tet4["TET4"], - entry("TYPE"), + parameter("TYPE"), }); } diff --git a/src/so3/4C_so3_poro_scatra_eletypes.cpp b/src/so3/4C_so3_poro_scatra_eletypes.cpp index 61d529cc7ed..6c189eb2869 100644 --- a/src/so3/4C_so3_poro_scatra_eletypes.cpp +++ b/src/so3/4C_so3_poro_scatra_eletypes.cpp @@ -71,7 +71,7 @@ void Discret::Elements::SoHex8PoroScatraType::setup_element_definition( defs["HEX8"] = all_of({ defs_hex8["HEX8"], - entry("TYPE"), + parameter("TYPE"), }); } @@ -133,7 +133,7 @@ void Discret::Elements::SoTet4PoroScatraType::setup_element_definition( defs["TET4"] = all_of({ defs_tet4["TET4"], - entry("TYPE"), + parameter("TYPE"), }); } @@ -195,7 +195,7 @@ void Discret::Elements::SoHex27PoroScatraType::setup_element_definition( defs["HEX27"] = all_of({ defs_hex27["HEX27"], - entry("TYPE"), + parameter("TYPE"), }); } @@ -258,7 +258,7 @@ void Discret::Elements::SoTet10PoroScatraType::setup_element_definition( defs["TET10"] = all_of({ defs_tet10["TET10"], - entry("TYPE"), + parameter("TYPE"), }); } @@ -319,7 +319,7 @@ void Discret::Elements::SoNurbs27PoroScatraType::setup_element_definition( defs["NURBS27"] = all_of({ defs_nurbs27["NURBS27"], - entry("TYPE"), + parameter("TYPE"), }); } diff --git a/src/so3/4C_so3_sh8.cpp b/src/so3/4C_so3_sh8.cpp index b9ab83c1dfe..fdb031949b3 100644 --- a/src/so3/4C_so3_sh8.cpp +++ b/src/so3/4C_so3_sh8.cpp @@ -75,20 +75,20 @@ void Discret::Elements::SoSh8Type::setup_element_definition( using namespace Core::IO::InputSpecBuilders; defs["HEX8"] = all_of({ - entry>("HEX8", {.size = 8}), - entry("MAT"), - entry("KINEM"), - entry("EAS"), - entry("ANS"), - entry("THICKDIR"), - entry>("RAD", {.required = false, .size = 3}), - entry>("AXI", {.required = false, .size = 3}), - entry>("CIR", {.required = false, .size = 3}), - entry>("FIBER1", {.required = false, .size = 3}), - entry>("FIBER2", {.required = false, .size = 3}), - entry>("FIBER3", {.required = false, .size = 3}), - entry("STRENGTH", {.required = false}), - entry("GROWTHTRIG", {.required = false}), + parameter>("HEX8", {.size = 8}), + parameter("MAT"), + parameter("KINEM"), + parameter("EAS"), + parameter("ANS"), + parameter("THICKDIR"), + parameter>("RAD", {.required = false, .size = 3}), + parameter>("AXI", {.required = false, .size = 3}), + parameter>("CIR", {.required = false, .size = 3}), + parameter>("FIBER1", {.required = false, .size = 3}), + parameter>("FIBER2", {.required = false, .size = 3}), + parameter>("FIBER3", {.required = false, .size = 3}), + parameter("STRENGTH", {.required = false}), + parameter("GROWTHTRIG", {.required = false}), }); } diff --git a/src/so3/4C_so3_tet10.cpp b/src/so3/4C_so3_tet10.cpp index 7f73bf11d09..d0188640494 100644 --- a/src/so3/4C_so3_tet10.cpp +++ b/src/so3/4C_so3_tet10.cpp @@ -87,17 +87,17 @@ void Discret::Elements::SoTet10Type::setup_element_definition( using namespace Core::IO::InputSpecBuilders; defs["TET10"] = all_of({ - entry>("TET10", {.size = 10}), - entry("MAT"), - entry("KINEM"), - entry>("RAD", {.required = false, .size = 3}), - entry>("AXI", {.required = false, .size = 3}), - entry>("CIR", {.required = false, .size = 3}), - entry>("FIBER1", {.required = false, .size = 3}), - entry>("FIBER2", {.required = false, .size = 3}), - entry>("FIBER3", {.required = false, .size = 3}), - entry("STRENGTH", {.required = false}), - entry("GROWTHTRIG", {.required = false}), + parameter>("TET10", {.size = 10}), + parameter("MAT"), + parameter("KINEM"), + parameter>("RAD", {.required = false, .size = 3}), + parameter>("AXI", {.required = false, .size = 3}), + parameter>("CIR", {.required = false, .size = 3}), + parameter>("FIBER1", {.required = false, .size = 3}), + parameter>("FIBER2", {.required = false, .size = 3}), + parameter>("FIBER3", {.required = false, .size = 3}), + parameter("STRENGTH", {.required = false}), + parameter("GROWTHTRIG", {.required = false}), }); } diff --git a/src/so3/4C_so3_tet4.cpp b/src/so3/4C_so3_tet4.cpp index 52e512c2a86..ff06d5cda30 100644 --- a/src/so3/4C_so3_tet4.cpp +++ b/src/so3/4C_so3_tet4.cpp @@ -93,16 +93,16 @@ void Discret::Elements::SoTet4Type::setup_element_definition( using namespace Core::IO::InputSpecBuilders; defs["TET4"] = all_of({ - entry>("TET4", {.size = 4}), - entry("MAT"), - entry("KINEM"), - entry>("RAD", {.required = false, .size = 3}), - entry>("AXI", {.required = false, .size = 3}), - entry>("CIR", {.required = false, .size = 3}), - entry>("FIBER1", {.required = false, .size = 3}), - entry>("FIBER2", {.required = false, .size = 3}), - entry>("FIBER3", {.required = false, .size = 3}), - entry("GROWTHTRIG", {.required = false}), + parameter>("TET4", {.size = 4}), + parameter("MAT"), + parameter("KINEM"), + parameter>("RAD", {.required = false, .size = 3}), + parameter>("AXI", {.required = false, .size = 3}), + parameter>("CIR", {.required = false, .size = 3}), + parameter>("FIBER1", {.required = false, .size = 3}), + parameter>("FIBER2", {.required = false, .size = 3}), + parameter>("FIBER3", {.required = false, .size = 3}), + parameter("GROWTHTRIG", {.required = false}), }); } diff --git a/src/solid_3D_ele/4C_solid_3D_ele.cpp b/src/solid_3D_ele/4C_solid_3D_ele.cpp index 8189c03bd6e..c8fdb6ca2ac 100644 --- a/src/solid_3D_ele/4C_solid_3D_ele.cpp +++ b/src/solid_3D_ele/4C_solid_3D_ele.cpp @@ -47,9 +47,9 @@ namespace auto get_default_input_spec() { return all_of({ - entry>( + parameter>( Core::FE::cell_type_to_string(celltype), {.size = Core::FE::num_nodes}), - entry("MAT"), + parameter("MAT"), get_kinem_type_input_spec(), selection("PRESTRESS_TECH", { @@ -62,12 +62,12 @@ namespace }, {.description = "The technology used for prestressing", .default_value = Discret::Elements::PrestressTechnology::none}), - entry>("RAD", {.required = false, .size = 3}), - entry>("AXI", {.required = false, .size = 3}), - entry>("CIR", {.required = false, .size = 3}), - entry>("FIBER1", {.required = false, .size = 3}), - entry>("FIBER2", {.required = false, .size = 3}), - entry>("FIBER3", {.required = false, .size = 3}), + parameter>("RAD", {.required = false, .size = 3}), + parameter>("AXI", {.required = false, .size = 3}), + parameter>("CIR", {.required = false, .size = 3}), + parameter>("FIBER1", {.required = false, .size = 3}), + parameter>("FIBER2", {.required = false, .size = 3}), + parameter>("FIBER3", {.required = false, .size = 3}), }); } } // namespace @@ -139,8 +139,8 @@ void Discret::Elements::SolidType::setup_element_definition( }); defsgeneral["NURBS27"] = all_of({ - entry>("NURBS27", {.size = 27}), - entry("MAT"), + parameter>("NURBS27", {.size = 27}), + parameter("MAT"), get_kinem_type_input_spec(), }); } diff --git a/src/solid_poro_3D_ele/4C_solid_poro_3D_ele_pressure_based.cpp b/src/solid_poro_3D_ele/4C_solid_poro_3D_ele_pressure_based.cpp index e89e1c71b43..047afb207dd 100644 --- a/src/solid_poro_3D_ele/4C_solid_poro_3D_ele_pressure_based.cpp +++ b/src/solid_poro_3D_ele/4C_solid_poro_3D_ele_pressure_based.cpp @@ -38,9 +38,9 @@ namespace Discret::Elements::SolidPoroPressureBasedInternal auto get_default_input_spec() { return all_of({ - entry>( + parameter>( Core::FE::cell_type_to_string(celltype), {.size = Core::FE::num_nodes}), - entry("MAT"), + parameter("MAT"), selection("KINEM", { {kinem_type_string(Inpar::Solid::KinemType::linear), diff --git a/src/solid_poro_3D_ele/4C_solid_poro_3D_ele_pressure_velocity_based.cpp b/src/solid_poro_3D_ele/4C_solid_poro_3D_ele_pressure_velocity_based.cpp index 8a087b3a692..784ba2d8df1 100644 --- a/src/solid_poro_3D_ele/4C_solid_poro_3D_ele_pressure_velocity_based.cpp +++ b/src/solid_poro_3D_ele/4C_solid_poro_3D_ele_pressure_velocity_based.cpp @@ -39,9 +39,9 @@ namespace Discret::Elements::SolidPoroPressureVelocityBasedInternal auto get_default_input_spec() { return all_of({ - entry>( + parameter>( Core::FE::cell_type_to_string(celltype), {.size = Core::FE::num_nodes}), - entry("MAT"), + parameter("MAT"), selection("KINEM", { {kinem_type_string(Inpar::Solid::KinemType::linear), @@ -51,9 +51,9 @@ namespace Discret::Elements::SolidPoroPressureVelocityBasedInternal }, {.description = "Whether to use linear kinematics (small displacements) or nonlinear " "kinematics (large displacements)"}), - entry>("POROANISODIR1", {.required = false, .size = 3}), - entry>("POROANISODIR2", {.required = false, .size = 3}), - entry>("POROANISODIR3", {.required = false, .size = 3}), + parameter>("POROANISODIR1", {.required = false, .size = 3}), + parameter>("POROANISODIR2", {.required = false, .size = 3}), + parameter>("POROANISODIR3", {.required = false, .size = 3}), selection("TYPE", Discret::Elements::get_impltype_inpar_pairs(), {.description = "Scalar transport implementation type", .default_value = Inpar::ScaTra::ImplType::impltype_undefined}), @@ -79,9 +79,9 @@ void Discret::Elements::SolidPoroPressureVelocityBasedType::setup_element_defini defsgeneral[Core::FE::cell_type_to_string(Core::FE::CellType::hex8)] = all_of({ Discret::Elements::SolidPoroPressureVelocityBasedInternal::get_default_input_spec< Core::FE::CellType::hex8>(), - entry>("POROANISONODALCOEFFS1", {.required = false, .size = 8}), - entry>("POROANISONODALCOEFFS2", {.required = false, .size = 8}), - entry>("POROANISONODALCOEFFS3", {.required = false, .size = 8}), + parameter>("POROANISONODALCOEFFS1", {.required = false, .size = 8}), + parameter>("POROANISONODALCOEFFS2", {.required = false, .size = 8}), + parameter>("POROANISONODALCOEFFS3", {.required = false, .size = 8}), }); defsgeneral[Core::FE::cell_type_to_string(Core::FE::CellType::hex27)] = @@ -92,9 +92,9 @@ void Discret::Elements::SolidPoroPressureVelocityBasedType::setup_element_defini defsgeneral[Core::FE::cell_type_to_string(Core::FE::CellType::tet4)] = all_of({ Discret::Elements::SolidPoroPressureVelocityBasedInternal::get_default_input_spec< Core::FE::CellType::tet4>(), - entry>("POROANISONODALCOEFFS1", {.required = false, .size = 8}), - entry>("POROANISONODALCOEFFS2", {.required = false, .size = 8}), - entry>("POROANISONODALCOEFFS3", {.required = false, .size = 8}), + parameter>("POROANISONODALCOEFFS1", {.required = false, .size = 8}), + parameter>("POROANISONODALCOEFFS2", {.required = false, .size = 8}), + parameter>("POROANISONODALCOEFFS3", {.required = false, .size = 8}), }); diff --git a/src/solid_scatra_3D_ele/4C_solid_scatra_3D_ele.cpp b/src/solid_scatra_3D_ele/4C_solid_scatra_3D_ele.cpp index 5d6310573b1..27c8fb12725 100644 --- a/src/solid_scatra_3D_ele/4C_solid_scatra_3D_ele.cpp +++ b/src/solid_scatra_3D_ele/4C_solid_scatra_3D_ele.cpp @@ -30,9 +30,9 @@ namespace auto get_default_input_spec() { return all_of({ - entry>( + parameter>( Core::FE::cell_type_to_string(celltype), {.size = Core::FE::num_nodes}), - entry("MAT"), + parameter("MAT"), selection("KINEM", { {kinem_type_string(Inpar::Solid::KinemType::linear), @@ -42,7 +42,7 @@ namespace }, {.description = "Whether to use linear kinematics (small displacements) or nonlinear " "kinematics (large displacements)"}), - entry("TYPE"), + parameter("TYPE"), selection("PRESTRESS_TECH", { {Discret::Elements::prestress_technology_string( @@ -54,12 +54,12 @@ namespace }, {.description = "The technology used for prestressing", .default_value = Discret::Elements::PrestressTechnology::none}), - entry>("RAD", {.required = false, .size = 3}), - entry>("AXI", {.required = false, .size = 3}), - entry>("CIR", {.required = false, .size = 3}), - entry>("FIBER1", {.required = false, .size = 3}), - entry>("FIBER2", {.required = false, .size = 3}), - entry>("FIBER3", {.required = false, .size = 3}), + parameter>("RAD", {.required = false, .size = 3}), + parameter>("AXI", {.required = false, .size = 3}), + parameter>("CIR", {.required = false, .size = 3}), + parameter>("FIBER1", {.required = false, .size = 3}), + parameter>("FIBER2", {.required = false, .size = 3}), + parameter>("FIBER3", {.required = false, .size = 3}), }); } diff --git a/src/structure_new/src/utils/4C_structure_new_functions.cpp b/src/structure_new/src/utils/4C_structure_new_functions.cpp index 379a4120ebf..c2265e1efb4 100644 --- a/src/structure_new/src/utils/4C_structure_new_functions.cpp +++ b/src/structure_new/src/utils/4C_structure_new_functions.cpp @@ -87,11 +87,11 @@ void Solid::add_valid_structure_functions(Core::Utils::FunctionManager& function auto spec = one_of({ group("WEAKLYCOMPRESSIBLE_ETIENNE_FSI_STRUCTURE", { - entry("MAT_STRUCT"), + parameter("MAT_STRUCT"), }), group("WEAKLYCOMPRESSIBLE_ETIENNE_FSI_STRUCTURE_FORCE", { - entry("MAT_STRUCT"), + parameter("MAT_STRUCT"), }), }); diff --git a/src/thermo/src/element/4C_thermo_element.cpp b/src/thermo/src/element/4C_thermo_element.cpp index c205fc12b82..8d932ec6d56 100644 --- a/src/thermo/src/element/4C_thermo_element.cpp +++ b/src/thermo/src/element/4C_thermo_element.cpp @@ -109,93 +109,93 @@ void Thermo::ElementType::setup_element_definition( using namespace Core::IO::InputSpecBuilders; defs["HEX8"] = all_of({ - entry>("HEX8", {.size = 8}), - entry("MAT"), + parameter>("HEX8", {.size = 8}), + parameter("MAT"), }); defs["HEX20"] = all_of({ - entry>("HEX20", {.size = 20}), - entry("MAT"), + parameter>("HEX20", {.size = 20}), + parameter("MAT"), }); defs["HEX27"] = all_of({ - entry>("HEX27", {.size = 27}), - entry("MAT"), + parameter>("HEX27", {.size = 27}), + parameter("MAT"), }); defs["TET4"] = all_of({ - entry>("TET4", {.size = 4}), - entry("MAT"), + parameter>("TET4", {.size = 4}), + parameter("MAT"), }); defs["TET10"] = all_of({ - entry>("TET10", {.size = 10}), - entry("MAT"), + parameter>("TET10", {.size = 10}), + parameter("MAT"), }); defs["WEDGE6"] = all_of({ - entry>("WEDGE6", {.size = 6}), - entry("MAT"), + parameter>("WEDGE6", {.size = 6}), + parameter("MAT"), }); defs["WEDGE15"] = all_of({ - entry>("WEDGE15", {.size = 15}), - entry("MAT"), + parameter>("WEDGE15", {.size = 15}), + parameter("MAT"), }); defs["PYRAMID5"] = all_of({ - entry>("PYRAMID5", {.size = 5}), - entry("MAT"), + parameter>("PYRAMID5", {.size = 5}), + parameter("MAT"), }); defs["NURBS27"] = all_of({ - entry>("NURBS27", {.size = 27}), - entry("MAT"), + parameter>("NURBS27", {.size = 27}), + parameter("MAT"), }); defs["QUAD4"] = all_of({ - entry>("QUAD4", {.size = 4}), - entry("MAT"), + parameter>("QUAD4", {.size = 4}), + parameter("MAT"), }); defs["QUAD8"] = all_of({ - entry>("QUAD8", {.size = 8}), - entry("MAT"), + parameter>("QUAD8", {.size = 8}), + parameter("MAT"), }); defs["QUAD9"] = all_of({ - entry>("QUAD9", {.size = 9}), - entry("MAT"), + parameter>("QUAD9", {.size = 9}), + parameter("MAT"), }); defs["TRI3"] = all_of({ - entry>("TRI3", {.size = 3}), - entry("MAT"), + parameter>("TRI3", {.size = 3}), + parameter("MAT"), }); defs["TRI6"] = all_of({ - entry>("TRI6", {.size = 6}), - entry("MAT"), + parameter>("TRI6", {.size = 6}), + parameter("MAT"), }); defs["NURBS4"] = all_of({ - entry>("NURBS4", {.size = 4}), - entry("MAT"), + parameter>("NURBS4", {.size = 4}), + parameter("MAT"), }); defs["NURBS9"] = all_of({ - entry>("NURBS9", {.size = 9}), - entry("MAT"), + parameter>("NURBS9", {.size = 9}), + parameter("MAT"), }); defs["LINE2"] = all_of({ - entry>("LINE2", {.size = 2}), - entry("MAT"), + parameter>("LINE2", {.size = 2}), + parameter("MAT"), }); defs["LINE3"] = all_of({ - entry>("LINE3", {.size = 3}), - entry("MAT"), + parameter>("LINE3", {.size = 3}), + parameter("MAT"), }); } // setup_element_definition() diff --git a/src/thermo/src/utils/4C_thermo_input.cpp b/src/thermo/src/utils/4C_thermo_input.cpp index cb74dba97d3..27f02249c65 100644 --- a/src/thermo/src/utils/4C_thermo_input.cpp +++ b/src/thermo/src/utils/4C_thermo_input.cpp @@ -216,13 +216,13 @@ void Thermo::set_valid_conditions(std::vector Tempnp (current temperature solution T_n+1) with linearisation cond.add_component(selection( "temperature_state", {"Tempnp", "Tempn"}, {.description = "temperature state"})); - cond.add_component(entry("coeff", {.description = "heat transfer coefficient h"})); + cond.add_component(parameter("coeff", {.description = "heat transfer coefficient h"})); cond.add_component( - entry("surtemp", {.description = "surrounding (fluid) temperature T_oo"})); - cond.add_component(entry>("surtempfunct", + parameter("surtemp", {.description = "surrounding (fluid) temperature T_oo"})); + cond.add_component(parameter>("surtempfunct", {.description = "time curve to increase the surrounding (fluid) temperature T_oo in time"})); - cond.add_component(entry>("funct", + cond.add_component(parameter>("funct", {.description = "time curve to increase the complete boundary condition, i.e., the heat flux"})); condlist.push_back(cond); @@ -243,11 +243,11 @@ void Thermo::set_valid_conditions(std::vector("NUMSCAL")); - cond.add_component(entry>( + cond.add_component(parameter("NUMSCAL")); + cond.add_component(parameter>( "ONOFF", {.description = "", .size = from_parameter("NUMSCAL")})); - cond.add_component(entry("PREFACTOR")); - cond.add_component(entry("REFVALUE")); + cond.add_component(parameter("PREFACTOR")); + cond.add_component(parameter("REFVALUE")); condlist.push_back(cond); }; diff --git a/src/torsion3/4C_torsion3.cpp b/src/torsion3/4C_torsion3.cpp index 41b77c51889..fd990414055 100644 --- a/src/torsion3/4C_torsion3.cpp +++ b/src/torsion3/4C_torsion3.cpp @@ -74,9 +74,9 @@ void Discret::Elements::Torsion3Type::setup_element_definition( using namespace Core::IO::InputSpecBuilders; defs["LINE3"] = all_of({ - entry>("LINE3", {.size = 3}), - entry("MAT"), - entry("BENDINGPOTENTIAL"), + parameter>("LINE3", {.size = 3}), + parameter("MAT"), + parameter("BENDINGPOTENTIAL"), }); } diff --git a/src/truss3/4C_truss3.cpp b/src/truss3/4C_truss3.cpp index 6dcfe16d1e0..58d8d810de1 100644 --- a/src/truss3/4C_truss3.cpp +++ b/src/truss3/4C_truss3.cpp @@ -75,10 +75,10 @@ void Discret::Elements::Truss3Type::setup_element_definition( using namespace Core::IO::InputSpecBuilders; defs["LINE2"] = all_of({ - entry>("LINE2", {.size = 2}), - entry("MAT"), - entry("CROSS"), - entry("KINEM"), + parameter>("LINE2", {.size = 2}), + parameter("MAT"), + parameter("CROSS"), + parameter("KINEM"), }); } diff --git a/src/truss3/4C_truss3_scatra.cpp b/src/truss3/4C_truss3_scatra.cpp index 8bfb0248a4f..9e9a8fb7412 100644 --- a/src/truss3/4C_truss3_scatra.cpp +++ b/src/truss3/4C_truss3_scatra.cpp @@ -81,7 +81,7 @@ void Discret::Elements::Truss3ScatraType::setup_element_definition( // copy definitions of standard truss element to truss element for scalar transport coupling defs["LINE2"] = all_of({ defs_truss["LINE2"], - entry("TYPE"), + parameter("TYPE"), }); } diff --git a/src/w1/4C_w1.cpp b/src/w1/4C_w1.cpp index bc9974720f4..9de8cf63b8a 100644 --- a/src/w1/4C_w1.cpp +++ b/src/w1/4C_w1.cpp @@ -72,73 +72,73 @@ void Discret::Elements::Wall1Type::setup_element_definition( using namespace Core::IO::InputSpecBuilders; defs["QUAD4"] = all_of({ - entry>("QUAD4", {.size = 4}), - entry("MAT"), - entry("KINEM"), - entry("EAS"), - entry("THICK"), - entry("STRESS_STRAIN"), - entry>("GP", {.size = 2}), + parameter>("QUAD4", {.size = 4}), + parameter("MAT"), + parameter("KINEM"), + parameter("EAS"), + parameter("THICK"), + parameter("STRESS_STRAIN"), + parameter>("GP", {.size = 2}), }); defs["QUAD8"] = all_of({ - entry>("QUAD8", {.size = 8}), - entry("MAT"), - entry("KINEM"), - entry("EAS"), - entry("THICK"), - entry("STRESS_STRAIN"), - entry>("GP", {.size = 2}), + parameter>("QUAD8", {.size = 8}), + parameter("MAT"), + parameter("KINEM"), + parameter("EAS"), + parameter("THICK"), + parameter("STRESS_STRAIN"), + parameter>("GP", {.size = 2}), }); defs["QUAD9"] = all_of({ - entry>("QUAD9", {.size = 9}), - entry("MAT"), - entry("KINEM"), - entry("EAS"), - entry("THICK"), - entry("STRESS_STRAIN"), - entry>("GP", {.size = 2}), + parameter>("QUAD9", {.size = 9}), + parameter("MAT"), + parameter("KINEM"), + parameter("EAS"), + parameter("THICK"), + parameter("STRESS_STRAIN"), + parameter>("GP", {.size = 2}), }); defs["TRI3"] = all_of({ - entry>("TRI3", {.size = 3}), - entry("MAT"), - entry("KINEM"), - entry("EAS"), - entry("THICK"), - entry("STRESS_STRAIN"), - entry>("GP", {.size = 2}), + parameter>("TRI3", {.size = 3}), + parameter("MAT"), + parameter("KINEM"), + parameter("EAS"), + parameter("THICK"), + parameter("STRESS_STRAIN"), + parameter>("GP", {.size = 2}), }); defs["TRI6"] = all_of({ - entry>("TRI6", {.size = 6}), - entry("MAT"), - entry("KINEM"), - entry("EAS"), - entry("THICK"), - entry("STRESS_STRAIN"), - entry>("GP", {.size = 2}), + parameter>("TRI6", {.size = 6}), + parameter("MAT"), + parameter("KINEM"), + parameter("EAS"), + parameter("THICK"), + parameter("STRESS_STRAIN"), + parameter>("GP", {.size = 2}), }); defs["NURBS4"] = all_of({ - entry>("NURBS4", {.size = 4}), - entry("MAT"), - entry("KINEM"), - entry("EAS"), - entry("THICK"), - entry("STRESS_STRAIN"), - entry>("GP", {.size = 2}), + parameter>("NURBS4", {.size = 4}), + parameter("MAT"), + parameter("KINEM"), + parameter("EAS"), + parameter("THICK"), + parameter("STRESS_STRAIN"), + parameter>("GP", {.size = 2}), }); defs["NURBS9"] = all_of({ - entry>("NURBS9", {.size = 9}), - entry("MAT"), - entry("KINEM"), - entry("EAS"), - entry("THICK"), - entry("STRESS_STRAIN"), - entry>("GP", {.size = 2}), + parameter>("NURBS9", {.size = 9}), + parameter("MAT"), + parameter("KINEM"), + parameter("EAS"), + parameter("THICK"), + parameter("STRESS_STRAIN"), + parameter>("GP", {.size = 2}), }); } diff --git a/src/w1/4C_w1_nurbs.cpp b/src/w1/4C_w1_nurbs.cpp index 58a5d3a3c9b..ed952699eab 100644 --- a/src/w1/4C_w1_nurbs.cpp +++ b/src/w1/4C_w1_nurbs.cpp @@ -71,23 +71,23 @@ void Discret::Elements::Nurbs::Wall1NurbsType::setup_element_definition( using namespace Core::IO::InputSpecBuilders; defs["NURBS4"] = all_of({ - entry>("NURBS4", {.size = 4}), - entry("MAT"), - entry("KINEM"), - entry("EAS"), - entry("THICK"), - entry("STRESS_STRAIN"), - entry>("GP", {.size = 2}), + parameter>("NURBS4", {.size = 4}), + parameter("MAT"), + parameter("KINEM"), + parameter("EAS"), + parameter("THICK"), + parameter("STRESS_STRAIN"), + parameter>("GP", {.size = 2}), }); defs["NURBS9"] = all_of({ - entry>("NURBS9", {.size = 9}), - entry("MAT"), - entry("KINEM"), - entry("EAS"), - entry("THICK"), - entry("STRESS_STRAIN"), - entry>("GP", {.size = 2}), + parameter>("NURBS9", {.size = 9}), + parameter("MAT"), + parameter("KINEM"), + parameter("EAS"), + parameter("THICK"), + parameter("STRESS_STRAIN"), + parameter>("GP", {.size = 2}), }); } diff --git a/src/w1/4C_w1_poro_eletypes.cpp b/src/w1/4C_w1_poro_eletypes.cpp index 50b9c620884..880674506fc 100644 --- a/src/w1/4C_w1_poro_eletypes.cpp +++ b/src/w1/4C_w1_poro_eletypes.cpp @@ -66,10 +66,10 @@ void Discret::Elements::WallQuad4PoroType::setup_element_definition( defs["QUAD4"] = all_of({ defs_wall["QUAD4"], - entry>("POROANISODIR1", {.required = false, .size = 2}), - entry>("POROANISODIR2", {.required = false, .size = 2}), - entry>("POROANISONODALCOEFFS1", {.required = false, .size = 4}), - entry>("POROANISONODALCOEFFS2", {.required = false, .size = 4}), + parameter>("POROANISODIR1", {.required = false, .size = 2}), + parameter>("POROANISODIR2", {.required = false, .size = 2}), + parameter>("POROANISONODALCOEFFS1", {.required = false, .size = 4}), + parameter>("POROANISONODALCOEFFS2", {.required = false, .size = 4}), }); } @@ -139,8 +139,8 @@ void Discret::Elements::WallQuad9PoroType::setup_element_definition( defs["QUAD9"] = all_of({ defs_wall["QUAD9"], - entry>("POROANISODIR1", {.required = false, .size = 2}), - entry>("POROANISODIR2", {.required = false, .size = 2}), + parameter>("POROANISODIR1", {.required = false, .size = 2}), + parameter>("POROANISODIR2", {.required = false, .size = 2}), }); } @@ -211,8 +211,8 @@ void Discret::Elements::WallNurbs4PoroType::setup_element_definition( defs["NURBS4"] = all_of({ defs_wall["NURBS4"], - entry>("POROANISODIR1", {.required = false, .size = 2}), - entry>("POROANISODIR2", {.required = false, .size = 2}), + parameter>("POROANISODIR1", {.required = false, .size = 2}), + parameter>("POROANISODIR2", {.required = false, .size = 2}), }); } @@ -283,8 +283,8 @@ void Discret::Elements::WallNurbs9PoroType::setup_element_definition( defs["NURBS9"] = all_of({ defs_wall["NURBS9"], - entry>("POROANISODIR1", {.required = false, .size = 2}), - entry>("POROANISODIR2", {.required = false, .size = 2}), + parameter>("POROANISODIR1", {.required = false, .size = 2}), + parameter>("POROANISODIR2", {.required = false, .size = 2}), }); } @@ -355,10 +355,10 @@ void Discret::Elements::WallTri3PoroType::setup_element_definition( defs["TRI3"] = all_of({ defs_wall["TRI3"], - entry>("POROANISODIR1", {.required = false, .size = 2}), - entry>("POROANISODIR2", {.required = false, .size = 2}), - entry>("POROANISONODALCOEFFS1", {.required = false, .size = 3}), - entry>("POROANISONODALCOEFFS2", {.required = false, .size = 3}), + parameter>("POROANISODIR1", {.required = false, .size = 2}), + parameter>("POROANISODIR2", {.required = false, .size = 2}), + parameter>("POROANISONODALCOEFFS1", {.required = false, .size = 3}), + parameter>("POROANISONODALCOEFFS2", {.required = false, .size = 3}), }); } diff --git a/src/w1/4C_w1_poro_p1_scatra_eletypes.cpp b/src/w1/4C_w1_poro_p1_scatra_eletypes.cpp index 1afbe3a6c85..5d1a6f02522 100644 --- a/src/w1/4C_w1_poro_p1_scatra_eletypes.cpp +++ b/src/w1/4C_w1_poro_p1_scatra_eletypes.cpp @@ -78,7 +78,7 @@ void Discret::Elements::WallQuad4PoroP1ScatraType::setup_element_definition( defs["QUAD4"] = all_of({ defs_wallporo["QUAD4"], - entry("TYPE"), + parameter("TYPE"), }); } @@ -148,7 +148,7 @@ void Discret::Elements::WallQuad9PoroP1ScatraType::setup_element_definition( defs["QUAD9"] = all_of({ defs_wallporo["QUAD9"], - entry("TYPE"), + parameter("TYPE"), }); } @@ -215,7 +215,7 @@ void Discret::Elements::WallTri3PoroP1ScatraType::setup_element_definition( defs["TRI3"] = all_of({ defs_wallporo["TRI3"], - entry("TYPE"), + parameter("TYPE"), }); } diff --git a/src/w1/4C_w1_poro_scatra_eletypes.cpp b/src/w1/4C_w1_poro_scatra_eletypes.cpp index c09e3969663..308ae7a172a 100644 --- a/src/w1/4C_w1_poro_scatra_eletypes.cpp +++ b/src/w1/4C_w1_poro_scatra_eletypes.cpp @@ -75,7 +75,7 @@ void Discret::Elements::WallQuad4PoroScatraType::setup_element_definition( defs["QUAD4"] = all_of({ defs_wall["QUAD4"], - entry("TYPE"), + parameter("TYPE"), }); } @@ -142,7 +142,7 @@ void Discret::Elements::WallQuad9PoroScatraType::setup_element_definition( defs["QUAD9"] = all_of({ defs_wall["QUAD9"], - entry("TYPE"), + parameter("TYPE"), }); } @@ -209,7 +209,7 @@ void Discret::Elements::WallNurbs4PoroScatraType::setup_element_definition( defs["NURBS4"] = all_of({ defs_wall["NURBS4"], - entry("TYPE"), + parameter("TYPE"), }); } @@ -276,7 +276,7 @@ void Discret::Elements::WallNurbs9PoroScatraType::setup_element_definition( defs["NURBS9"] = all_of({ defs_wall["NURBS9"], - entry("TYPE"), + parameter("TYPE"), }); } @@ -343,7 +343,7 @@ void Discret::Elements::WallTri3PoroScatraType::setup_element_definition( defs["TRI3"] = all_of({ defs_wall["TRI3"], - entry("TYPE"), + parameter("TYPE"), }); } diff --git a/src/w1/4C_w1_scatra.cpp b/src/w1/4C_w1_scatra.cpp index 3823a853683..f58c6b0524a 100644 --- a/src/w1/4C_w1_scatra.cpp +++ b/src/w1/4C_w1_scatra.cpp @@ -63,7 +63,7 @@ void Discret::Elements::Wall1ScatraType::setup_element_definition( { defs[key] = all_of({ wall_line_def, - entry("TYPE"), + parameter("TYPE"), }); } }