SERiF v0.0.1a
Stellar Evolution and Rotation in Four Dimensions
Loading...
Searching...
No Matches
serif::compile_time_checks::eos_meanfield::consumer_contracts::SingleRelationEOS< Output, Input, HasDerivative > Struct Template Reference

Describe exactly one EOS relation; unrelated consumer capabilities remain absent. More...

Public Types

using Relation = eos::relations::Relation<Output, Input>
 
using Relations = eos::relations::RelationCatalog<Relation>
 

Public Member Functions

constexpr dimensions::QuantityValue< Output > evaluate (Relation, dimensions::QuantityValue< Input > value) const
 Preserve strong physical input/output types in the minimal consumer probe.
 
constexpr dimensions::PartialDerivative< Output, Input > partial_derivative (Relation, dimensions::WithRespectTo< Input >, dimensions::QuantityValue< Input >) const
 Make derivative availability independent of value evaluation.
 

Detailed Description

template<typename Output, typename Input, bool HasDerivative>
struct serif::compile_time_checks::eos_meanfield::consumer_contracts::SingleRelationEOS< Output, Input, HasDerivative >

Describe exactly one EOS relation; unrelated consumer capabilities remain absent.

Member Typedef Documentation

◆ Relation

template<typename Output, typename Input, bool HasDerivative>
using serif::compile_time_checks::eos_meanfield::consumer_contracts::SingleRelationEOS< Output, Input, HasDerivative >::Relation = eos::relations::Relation<Output, Input>

◆ Relations

template<typename Output, typename Input, bool HasDerivative>
using serif::compile_time_checks::eos_meanfield::consumer_contracts::SingleRelationEOS< Output, Input, HasDerivative >::Relations = eos::relations::RelationCatalog<Relation>

Member Function Documentation

◆ evaluate()

template<typename Output, typename Input, bool HasDerivative>
dimensions::QuantityValue< Output > serif::compile_time_checks::eos_meanfield::consumer_contracts::SingleRelationEOS< Output, Input, HasDerivative >::evaluate ( Relation ,
dimensions::QuantityValue< Input > value ) const
inlinenodiscardconstexpr

Preserve strong physical input/output types in the minimal consumer probe.

◆ partial_derivative()

template<typename Output, typename Input, bool HasDerivative>
dimensions::PartialDerivative< Output, Input > serif::compile_time_checks::eos_meanfield::consumer_contracts::SingleRelationEOS< Output, Input, HasDerivative >::partial_derivative ( Relation ,
dimensions::WithRespectTo< Input > ,
dimensions::QuantityValue< Input >  ) const
inlinenodiscardconstexpr

Make derivative availability independent of value evaluation.


The documentation for this struct was generated from the following file: