SERiF v0.0.1a
Stellar Evolution and Rotation in Four Dimensions
Loading...
Searching...
No Matches
serif::equations::PressureSurfaceConstraint< EOST > Class Template Referencefinal

Compatibility equation for the existing enthalpy boundary rows, using the shared isobaric calculation. More...

#include <pressure_surface.hpp>

Inheritance diagram for serif::equations::PressureSurfaceConstraint< EOST >:
[legend]
Collaboration diagram for serif::equations::PressureSurfaceConstraint< EOST >:
[legend]

Public Types

using Enthalpy = discretization::blocks::enthalpy::specific
 
using Formulation = geometry::surface::PressureSurfaceFormulation<EOST, utils::dependencies::Bindings<utils::dependencies::Binding<dimensions::SpecificEnthalpy, Enthalpy>>>
 
using Operands = typename Formulation::Operands
 
using ResidualQuantity = typename Formulation::ResidualQuantity
 
- Public Types inherited from serif::equations::Contribution< discretization::forms::Operand< discretization::blocks::enthalpy::specific >, discretization::domain::StellarSurfaceBoundary >
using Test
 The test type of the contribution.
 
using TestOperand
 The operand type of the contribution (associating a test function and a term)
 
using Support
 The domain support of the contribution (which then boils down to the dofs which are supported by the term on that test function)
 

Public Member Functions

 PressureSurfaceConstraint (const EOST &equation_of_state, dimensions::PressureValue target_pressure)
 Freeze the EOS response at construction, preserving the existing boundary equation's value semantics.
 
PointLinearization< Operands > evaluate (const EquationPoint< Operands > &point) const
 Reuse the surface residual and derivative without reevaluating the frozen EOS.
 
dimensions::PressureValue target_pressure () const noexcept
 Retain the prescribed physical pressure independently of its enthalpy representation.
 

Static Public Attributes

static constexpr std::string_view name = "pressure surface constraint"
 
static constexpr bool position_independent = true
 

Private Attributes

geometry::surface::Isobaric m_condition
 
geometry::surface::SurfaceEOSResponse< Formulation > m_response
 

Detailed Description

template<eos::models::EOSModel EOST>
requires eos::models::EOSSupportingRelation<EOST, eos::relations::SpecificEnthalpyFromPressure>
class serif::equations::PressureSurfaceConstraint< EOST >

Compatibility equation for the existing enthalpy boundary rows, using the shared isobaric calculation.

Member Typedef Documentation

◆ Enthalpy

template<eos::models::EOSModel EOST>
using serif::equations::PressureSurfaceConstraint< EOST >::Enthalpy = discretization::blocks::enthalpy::specific

◆ Formulation

◆ Operands

template<eos::models::EOSModel EOST>
using serif::equations::PressureSurfaceConstraint< EOST >::Operands = typename Formulation::Operands

◆ ResidualQuantity

template<eos::models::EOSModel EOST>
using serif::equations::PressureSurfaceConstraint< EOST >::ResidualQuantity = typename Formulation::ResidualQuantity

Constructor & Destructor Documentation

◆ PressureSurfaceConstraint()

template<eos::models::EOSModel EOST>
serif::equations::PressureSurfaceConstraint< EOST >::PressureSurfaceConstraint ( const EOST & equation_of_state,
dimensions::PressureValue target_pressure )
inline

Freeze the EOS response at construction, preserving the existing boundary equation's value semantics.

Member Function Documentation

◆ evaluate()

template<eos::models::EOSModel EOST>
PointLinearization< Operands > serif::equations::PressureSurfaceConstraint< EOST >::evaluate ( const EquationPoint< Operands > & point) const
inlinenodiscard

Reuse the surface residual and derivative without reevaluating the frozen EOS.

◆ target_pressure()

template<eos::models::EOSModel EOST>
dimensions::PressureValue serif::equations::PressureSurfaceConstraint< EOST >::target_pressure ( ) const
inlinenodiscardnoexcept

Retain the prescribed physical pressure independently of its enthalpy representation.

Member Data Documentation

◆ m_condition

template<eos::models::EOSModel EOST>
geometry::surface::Isobaric serif::equations::PressureSurfaceConstraint< EOST >::m_condition
private

◆ m_response

template<eos::models::EOSModel EOST>
geometry::surface::SurfaceEOSResponse<Formulation> serif::equations::PressureSurfaceConstraint< EOST >::m_response
private

◆ name

template<eos::models::EOSModel EOST>
std::string_view serif::equations::PressureSurfaceConstraint< EOST >::name = "pressure surface constraint"
staticconstexpr

◆ position_independent

template<eos::models::EOSModel EOST>
bool serif::equations::PressureSurfaceConstraint< EOST >::position_independent = true
staticconstexpr

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