|
SERiF v0.0.1a
Stellar Evolution and Rotation in Four Dimensions
|
Enforce A(rho) - A(rho_surface) + Phi - Omega^2 Psi - U_surface = 0 using density test values. This closure assumes a connected barotrope in rigid rotation. More...
#include <barotropic_density.hpp>
Public Types | |
| using | Density = discretization::blocks::density::mass |
| using | Potential = discretization::blocks::gravity::potential |
| using | SurfaceLevel = discretization::blocks::barotropic_constant::mass_normalization |
| using | AngularVelocity = discretization::blocks::rotation::angular_velocity |
| using | Operands |
| using | ResidualQuantity = dimensions::BarotropicPressurePotential |
| using | IsobaricSurfaceField = Density |
Public Types inherited from serif::equations::Contribution< discretization::forms::Operand< discretization::blocks::density::mass > > | |
| 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 | |
| BarotropicDensityBalance (EOS equation_of_state, const dimensions::PressureValue surface_pressure=dimensions::PressureValue{0.0}, const RigidRotation::Vector &axis={0.0, 0.0, 1.0}, const RigidRotation::Vector ¢er={}, std::optional< PointMassCompanion > companion=std::nullopt) | |
| Borrow or own the EOS and fix its surface reference at the model's pressure and rotation convention. | |
| PointLinearization< Operands > | evaluate (const EquationPoint< Operands > &point) const |
| Evaluate the local pressure-potential balance and its tangent on the positive density branch. | |
| const EOS & | equation_of_state () const noexcept |
| Inspect the EOS supplying the pressure primitive and its slope. | |
| dimensions::PressureValue | surface_pressure () const noexcept |
| Inspect the pressure defining the primitive's surface reference. | |
| const RigidRotation & | rotation () const noexcept |
| Inspect the shared physical rotation convention. | |
| const std::optional< PointMassCompanion > & | companion () const noexcept |
| Inspect the companion, if any. | |
Static Public Member Functions | |
| template<typename Operand> | |
| static int | additional_order (Operand, const int position_order) |
| Reserve a nonlinear coefficient budget; general EOS quadrature remains user-overridable. | |
Static Public Attributes | |
| static constexpr std::string_view | name = "barotropic density balance" |
Private Attributes | |
| EOS | m_eos |
| dimensions::PressureValue | m_surface_pressure |
| RigidRotation | m_rotation |
| std::optional< PointMassCompanion > | m_companion |
| double | m_surface_pressure_potential |
Enforce A(rho) - A(rho_surface) + Phi - Omega^2 Psi - U_surface = 0 using density test values. This closure assumes a connected barotrope in rigid rotation.
TODO: Add more detail to this comment, pull from the paper?
| using serif::equations::BarotropicDensityBalance< EOS >::AngularVelocity = discretization::blocks::rotation::angular_velocity |
| using serif::equations::BarotropicDensityBalance< EOS >::Density = discretization::blocks::density::mass |
| using serif::equations::BarotropicDensityBalance< EOS >::IsobaricSurfaceField = Density |
| using serif::equations::BarotropicDensityBalance< EOS >::Operands |
| using serif::equations::BarotropicDensityBalance< EOS >::Potential = discretization::blocks::gravity::potential |
| using serif::equations::BarotropicDensityBalance< EOS >::ResidualQuantity = dimensions::BarotropicPressurePotential |
| using serif::equations::BarotropicDensityBalance< EOS >::SurfaceLevel = discretization::blocks::barotropic_constant::mass_normalization |
|
inlineexplicit |
Borrow or own the EOS and fix its surface reference at the model's pressure and rotation convention.
|
inlinestaticnodiscard |
Reserve a nonlinear coefficient budget; general EOS quadrature remains user-overridable.
|
inlinenodiscardnoexcept |
Inspect the companion, if any.
|
inlinenodiscardnoexcept |
Inspect the EOS supplying the pressure primitive and its slope.
|
inlinenodiscard |
Evaluate the local pressure-potential balance and its tangent on the positive density branch.
|
inlinenodiscardnoexcept |
Inspect the shared physical rotation convention.
|
inlinenodiscardnoexcept |
Inspect the pressure defining the primitive's surface reference.
|
private |
|
private |
|
private |
|
private |
|
private |
|
staticconstexpr |