concepts.hpp serif/eos/models/traits.hpp serif/eos/relations/relations.hpp src/compile_time_checks/serif/eos/consumers_meanfield.cpp src/compile_time_checks/serif/eos/models/traits.cpp src/include/serif/eos/evaluation.hpp src/include/serif/geometry/surface/detail/relations.hpp serif serif::eos serif::eos::models File containing concepts for the eos module. These concepts are used to constrain template parameters in the eos module. Emily M. Boudreaux #pragmaonce #include"serif/eos/models/traits.hpp" #include"serif/eos/relations/relations.hpp" namespaceserif::eos::models{ template<typenameEOSCandidate> conceptEOSModel=is_equation_of_state_model_v<EOSCandidate>; template<typenameEOS,typenameRelationT> conceptEOSSupportingRelation=supports_relation_v<EOS, RelationT>; template<typenameEOS,typenameRelationT,typenameInputQuantity> conceptEOSSupportingPartialDerivative=supports_partial_derivative_v<EOS, RelationT, InputQuantity>; template<typenameEOS,typenameRelationT,typenameFirstInput,typenameSecondInput> conceptEOSSupportingSecondPartialDerivative=EOSSupportingRelation<EOS, RelationT>&& ImplementsSecondPartialDerivative_t<std::remove_cvref_t<EOS>,std::remove_cvref_t<RelationT>,FirstInput,SecondInput>::value; template<typenameEOSCandidate> conceptStructureSeedEOS=EOSModel<EOSCandidate>&& EOSSupportingRelation<EOSCandidate, relations::SpecificEnthalpyFromDensity>; }