21#define override_property(want, prop1, prop2) \
22 template <typename CppType> \
23 CppType want##_from_##prop1##_##prop2##_templ( \
24 const CppType & prop1, const CppType & prop2, const std::vector<CppType> & x) const; \
25 virtual Real want##_from_##prop1##_##prop2(Real prop1, Real prop2, const std::vector<Real> & x) \
27 virtual ADReal want##_from_##prop1##_##prop2( \
28 const ADReal & prop1, const ADReal & prop2, const std::vector<ADReal> & x) const override
53 template <
typename CppType>
66 template <
typename CppType>
69 const std::vector<CppType> &
x)
const;
88 template <
typename CppType>
98 template <
typename CppType>
116#undef override_property
127 unsigned int j)
const override;
174 template <
typename CppType>
176 const std::vector<CppType> &
y,
177 const std::vector<CppType> &
mu)
const;
180 template <
typename CppType>
184 unsigned int j)
const;
187 template <
typename CppType>
DualNumber< Real, DNDerivativeType, true > ADReal
const std::vector< double > y
const std::vector< double > x
Class for fluid properties of an ideal gas mixture.
std::vector< ADReal > secondaryToAllMassFractions(const std::vector< ADReal > &x_secondary) const
std::vector< CppType > molarFractionsFromMassFractions_templ(const std::vector< CppType > &x) const
Computes molar fractions.
CppType mixtureMolarMass_templ(const std::vector< CppType > &x) const
Computes the mixture molar mass.
override_property(v, p, T)
CppType mixtureSpecificHeatRatio_templ(const CppType &p, const CppType &T, const std::vector< CppType > &x) const
Computes the mixture specific heat ratio.
virtual const SinglePhaseFluidProperties & getPrimaryFluidProperties() const override
Gets the primary component single-phase fluid properties.
ADReal mixtureMolarMass(const std::vector< ADReal > &x) const
override_property(mu, p, T)
std::vector< const GasTransportUtils::LennardJonesParameters * > _lennard_jones
Lennard-Jones parameters of the components, or nullptr for components without them.
const TransportMixingRule _transport_mixing_rule
Rule that combines the viscosities and thermal conductivities of the components.
std::vector< CppType > secondaryToAllMassFractions_templ(const std::vector< CppType > &x_secondary) const
Computes all mass fractions.
override_property(cp, p, T)
override_property(s, p, T)
std::vector< const SinglePhaseFluidProperties * > _component_fps
Component fluid properties objects.
CppType mixTransportProperty(const std::vector< CppType > &psi, const std::vector< CppType > &y, const std::vector< CppType > &mu) const
Combines a transport property of the components with the transport mixing rule.
override_property(k, p, T)
override_property(c, p, T)
const unsigned int _n_secondary_components
Number of secondary components.
usingVaporMixtureFluidPropertiesMembers
CppType binaryDiffusionCoefficient_templ(const CppType &p, const CppType &T, unsigned int i, unsigned int j) const
Implements binaryDiffusionCoefficient for Real and AD arguments.
override_property(e, p, T)
override_property(e, p, rho)
virtual Real binaryDiffusionCoefficient(Real p, Real T, unsigned int i, unsigned int j) const override
Computes the Chapman-Enskog binary diffusion coefficient of a pair of components, which must both hav...
bool _constant_specific_heats
Whether all components have constant specific heats, so that the internal energy is linear in tempera...
std::vector< std::vector< Real > > _wilke_molar_mass_factor
override_property(T, v, e)
std::vector< std::vector< Real > > _wilke_normalization
TransportMixingRule
Rules that combine the viscosities and thermal conductivities of the components.
virtual unsigned int numberOfComponents() const override
Returns the number of components in the mixture.
Real _T_newton_start
Temperature at which Newton's method starts to compute the temperature from the internal energy when ...
std::vector< ADReal > molarFractionsFromMassFractions(const std::vector< ADReal > &x) const
const std::vector< UserObjectName > _component_fp_names
Names of component fluid properties.
ADReal mixtureSpecificHeatRatio(const ADReal &p, const ADReal &T, const std::vector< ADReal > &x) const
static InputParameters validParams()
virtual const SinglePhaseFluidProperties & getSecondaryFluidProperties(unsigned int i=0) const override
Gets a secondary component single-phase fluid properties.
override_property(rho, p, T)
const unsigned int _n_components
Number of components.
override_property(p, v, e)
CppType constantSpecificHeatRatio(const std::vector< CppType > &x) const
Implements the deprecated mixtureSpecificHeatRatio(x)
override_property(cv, p, T)
const InputParameters & parameters() const
Interface class for producing errors, warnings, or just quiet NaNs.
Common class for single phase fluid properties.
Base class for fluid properties of vapor mixtures.