Note for now much of the docs is LLM written. This was done to save time and focus on code development. The docs have been LOOSLEY reviewed. However, the code itself has been either fully written by hand or fully reviewed. Therefore, the docs should at the moment be seen as a loose resource rather than authoratiative (and this is on top of the general ability for docs to drift)
200 lines
9.2 KiB
Groff
200 lines
9.2 KiB
Groff
.TH "serif::equations::BarotropicDensityBalance< EOS >" 3 "Version v0.0.1a" "SERiF" \" -*- nroff -*-
|
|
.ad l
|
|
.nh
|
|
.SH NAME
|
|
serif::equations::BarotropicDensityBalance< EOS > \- 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\&.
|
|
|
|
.SH SYNOPSIS
|
|
.br
|
|
.PP
|
|
.PP
|
|
\fR#include <barotropic_density\&.hpp>\fP
|
|
.PP
|
|
Inherits \fBserif::equations::Contribution< discretization::forms::Operand< discretization::blocks::density::mass > >\fP\&.
|
|
.SS "Public Types"
|
|
|
|
.in +1c
|
|
.ti -1c
|
|
.RI "using \fBDensity\fP = \fBdiscretization::blocks::density::mass\fP"
|
|
.br
|
|
.ti -1c
|
|
.RI "using \fBPotential\fP = \fBdiscretization::blocks::gravity::potential\fP"
|
|
.br
|
|
.ti -1c
|
|
.RI "using \fBSurfaceLevel\fP = \fBdiscretization::blocks::barotropic_constant::mass_normalization\fP"
|
|
.br
|
|
.ti -1c
|
|
.RI "using \fBAngularVelocity\fP = \fBdiscretization::blocks::rotation::angular_velocity\fP"
|
|
.br
|
|
.ti -1c
|
|
.RI "using \fBOperands\fP"
|
|
.br
|
|
.ti -1c
|
|
.RI "using \fBResidualQuantity\fP = \fBdimensions::BarotropicPressurePotential\fP"
|
|
.br
|
|
.ti -1c
|
|
.RI "using \fBIsobaricSurfaceField\fP = \fBDensity\fP"
|
|
.br
|
|
.in -1c
|
|
|
|
Public Types inherited from \fBserif::equations::Contribution< discretization::forms::Operand< discretization::blocks::density::mass > >\fP
|
|
.in +1c
|
|
.ti -1c
|
|
.RI "using \fBTest\fP"
|
|
.br
|
|
.RI "The test type of the contribution\&. "
|
|
.ti -1c
|
|
.RI "using \fBTestOperand\fP"
|
|
.br
|
|
.RI "The operand type of the contribution (associating a test function and a term) "
|
|
.ti -1c
|
|
.RI "using \fBSupport\fP"
|
|
.br
|
|
.RI "The domain support of the contribution (which then boils down to the dofs which are supported by the term on that test function) "
|
|
.in -1c
|
|
.SS "Public Member Functions"
|
|
|
|
.in +1c
|
|
.ti -1c
|
|
.RI "\fBBarotropicDensityBalance\fP (EOS \fBequation_of_state\fP, const \fBdimensions::PressureValue\fP \fBsurface_pressure\fP=\fBdimensions::PressureValue\fP{0\&.0}, const \fBRigidRotation::Vector\fP &axis={0\&.0, 0\&.0, 1\&.0}, const \fBRigidRotation::Vector\fP ¢er={}, std::optional< \fBPointMassCompanion\fP > \fBcompanion\fP=std::nullopt)"
|
|
.br
|
|
.RI "Borrow or own the EOS and fix its surface reference at the model's pressure and rotation convention\&. "
|
|
.ti -1c
|
|
.RI "\fBPointLinearization\fP< \fBOperands\fP > \fBevaluate\fP (const \fBEquationPoint\fP< \fBOperands\fP > &point) const"
|
|
.br
|
|
.RI "Evaluate the local pressure-potential balance and its tangent on the positive density branch\&. "
|
|
.ti -1c
|
|
.RI "const EOS & \fBequation_of_state\fP () const noexcept"
|
|
.br
|
|
.RI "Inspect the EOS supplying the pressure primitive and its slope\&. "
|
|
.ti -1c
|
|
.RI "\fBdimensions::PressureValue\fP \fBsurface_pressure\fP () const noexcept"
|
|
.br
|
|
.RI "Inspect the pressure defining the primitive's surface reference\&. "
|
|
.ti -1c
|
|
.RI "const \fBRigidRotation\fP & \fBrotation\fP () const noexcept"
|
|
.br
|
|
.RI "Inspect the shared physical rotation convention\&. "
|
|
.ti -1c
|
|
.RI "const std::optional< \fBPointMassCompanion\fP > & \fBcompanion\fP () const noexcept"
|
|
.br
|
|
.RI "Inspect the companion, if any\&. "
|
|
.in -1c
|
|
.SS "Static Public Member Functions"
|
|
|
|
.in +1c
|
|
.ti -1c
|
|
.RI "template<typename Operand> static int \fBadditional_order\fP (Operand, const int position_order)"
|
|
.br
|
|
.RI "Reserve a nonlinear coefficient budget; general EOS quadrature remains user-overridable\&. "
|
|
.in -1c
|
|
.SS "Static Public Attributes"
|
|
|
|
.in +1c
|
|
.ti -1c
|
|
.RI "static constexpr std::string_view \fBname\fP = 'barotropic density balance'"
|
|
.br
|
|
.in -1c
|
|
.SS "Private Attributes"
|
|
|
|
.in +1c
|
|
.ti -1c
|
|
.RI "EOS \fBm_eos\fP"
|
|
.br
|
|
.ti -1c
|
|
.RI "\fBdimensions::PressureValue\fP \fBm_surface_pressure\fP"
|
|
.br
|
|
.ti -1c
|
|
.RI "\fBRigidRotation\fP \fBm_rotation\fP"
|
|
.br
|
|
.ti -1c
|
|
.RI "std::optional< \fBPointMassCompanion\fP > \fBm_companion\fP"
|
|
.br
|
|
.ti -1c
|
|
.RI "double \fBm_surface_pressure_potential\fP"
|
|
.br
|
|
.in -1c
|
|
.SH "Detailed Description"
|
|
.PP
|
|
|
|
.SS "template<eos::models::EOSModel EOS>
|
|
.br
|
|
requires eos::models::EOSSupportingRelation<EOS, \fBeos::relations::PressurePotentialFromDensity\fP> && eos::models::EOSSupportingRelation<EOS, \fBeos::relations::DensityFromPressure\fP> && eos::models::EOSSupportingPartialDerivative<EOS, \fBeos::relations::PressureFromDensity\fP, \fBdimensions::MassDensity\fP>
|
|
.br
|
|
class serif::equations::BarotropicDensityBalance< EOS >"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?
|
|
.SH "Member Typedef Documentation"
|
|
.PP
|
|
.SS "template<eos::models::EOSModel EOS> using \fBserif::equations::BarotropicDensityBalance\fP< EOS >::AngularVelocity = \fBdiscretization::blocks::rotation::angular_velocity\fP"
|
|
|
|
.SS "template<eos::models::EOSModel EOS> using \fBserif::equations::BarotropicDensityBalance\fP< EOS >::Density = \fBdiscretization::blocks::density::mass\fP"
|
|
|
|
.SS "template<eos::models::EOSModel EOS> using \fBserif::equations::BarotropicDensityBalance\fP< EOS >::IsobaricSurfaceField = \fBDensity\fP"
|
|
|
|
.SS "template<eos::models::EOSModel EOS> using \fBserif::equations::BarotropicDensityBalance\fP< EOS >::Operands"
|
|
\fBInitial value:\fP
|
|
.nf
|
|
utils::types::TypeList<discretization::forms::Operand<Density>,
|
|
discretization::forms::Operand<Potential>, discretization::forms::Operand<SurfaceLevel>,
|
|
discretization::forms::Operand<AngularVelocity>>
|
|
.PP
|
|
.fi
|
|
|
|
.SS "template<eos::models::EOSModel EOS> using \fBserif::equations::BarotropicDensityBalance\fP< EOS >::Potential = \fBdiscretization::blocks::gravity::potential\fP"
|
|
|
|
.SS "template<eos::models::EOSModel EOS> using \fBserif::equations::BarotropicDensityBalance\fP< EOS >::ResidualQuantity = \fBdimensions::BarotropicPressurePotential\fP"
|
|
|
|
.SS "template<eos::models::EOSModel EOS> using \fBserif::equations::BarotropicDensityBalance\fP< EOS >::SurfaceLevel = \fBdiscretization::blocks::barotropic_constant::mass_normalization\fP"
|
|
|
|
.SH "Constructor & Destructor Documentation"
|
|
.PP
|
|
.SS "template<eos::models::EOSModel EOS> \fBserif::equations::BarotropicDensityBalance\fP< EOS >::BarotropicDensityBalance (EOS equation_of_state, const \fBdimensions::PressureValue\fP surface_pressure = \fR\fBdimensions::PressureValue\fP{0\&.0}\fP, const \fBRigidRotation::Vector\fP & axis = \fR{0\&.0, 0\&.0, 1\&.0}\fP, const \fBRigidRotation::Vector\fP & center = \fR{}\fP, std::optional< \fBPointMassCompanion\fP > companion = \fRstd::nullopt\fP)\fR [inline]\fP, \fR [explicit]\fP"
|
|
|
|
.PP
|
|
Borrow or own the EOS and fix its surface reference at the model's pressure and rotation convention\&.
|
|
.SH "Member Function Documentation"
|
|
.PP
|
|
.SS "template<eos::models::EOSModel EOS> template<typename Operand> static int \fBserif::equations::BarotropicDensityBalance\fP< EOS >::additional_order (Operand , const int position_order)\fR [inline]\fP, \fR [static]\fP, \fR [nodiscard]\fP"
|
|
|
|
.PP
|
|
Reserve a nonlinear coefficient budget; general EOS quadrature remains user-overridable\&.
|
|
.SS "template<eos::models::EOSModel EOS> const std::optional< \fBPointMassCompanion\fP > & \fBserif::equations::BarotropicDensityBalance\fP< EOS >::companion () const\fR [inline]\fP, \fR [nodiscard]\fP, \fR [noexcept]\fP"
|
|
|
|
.PP
|
|
Inspect the companion, if any\&.
|
|
.SS "template<eos::models::EOSModel EOS> const EOS & \fBserif::equations::BarotropicDensityBalance\fP< EOS >::equation_of_state () const\fR [inline]\fP, \fR [nodiscard]\fP, \fR [noexcept]\fP"
|
|
|
|
.PP
|
|
Inspect the EOS supplying the pressure primitive and its slope\&.
|
|
.SS "template<eos::models::EOSModel EOS> \fBPointLinearization\fP< \fBOperands\fP > \fBserif::equations::BarotropicDensityBalance\fP< EOS >::evaluate (const \fBEquationPoint\fP< \fBOperands\fP > & point) const\fR [inline]\fP, \fR [nodiscard]\fP"
|
|
|
|
.PP
|
|
Evaluate the local pressure-potential balance and its tangent on the positive density branch\&.
|
|
.SS "template<eos::models::EOSModel EOS> const \fBRigidRotation\fP & \fBserif::equations::BarotropicDensityBalance\fP< EOS >::rotation () const\fR [inline]\fP, \fR [nodiscard]\fP, \fR [noexcept]\fP"
|
|
|
|
.PP
|
|
Inspect the shared physical rotation convention\&.
|
|
.SS "template<eos::models::EOSModel EOS> \fBdimensions::PressureValue\fP \fBserif::equations::BarotropicDensityBalance\fP< EOS >::surface_pressure () const\fR [inline]\fP, \fR [nodiscard]\fP, \fR [noexcept]\fP"
|
|
|
|
.PP
|
|
Inspect the pressure defining the primitive's surface reference\&.
|
|
.SH "Member Data Documentation"
|
|
.PP
|
|
.SS "template<eos::models::EOSModel EOS> std::optional<\fBPointMassCompanion\fP> \fBserif::equations::BarotropicDensityBalance\fP< EOS >::m_companion\fR [private]\fP"
|
|
|
|
.SS "template<eos::models::EOSModel EOS> EOS \fBserif::equations::BarotropicDensityBalance\fP< EOS >::m_eos\fR [private]\fP"
|
|
|
|
.SS "template<eos::models::EOSModel EOS> \fBRigidRotation\fP \fBserif::equations::BarotropicDensityBalance\fP< EOS >::m_rotation\fR [private]\fP"
|
|
|
|
.SS "template<eos::models::EOSModel EOS> \fBdimensions::PressureValue\fP \fBserif::equations::BarotropicDensityBalance\fP< EOS >::m_surface_pressure\fR [private]\fP"
|
|
|
|
.SS "template<eos::models::EOSModel EOS> double \fBserif::equations::BarotropicDensityBalance\fP< EOS >::m_surface_pressure_potential\fR [private]\fP"
|
|
|
|
.SS "template<eos::models::EOSModel EOS> std::string_view \fBserif::equations::BarotropicDensityBalance\fP< EOS >::name = 'barotropic density balance'\fR [static]\fP, \fR [constexpr]\fP"
|
|
|
|
|
|
.SH "Author"
|
|
.PP
|
|
Generated automatically by Doxygen for SERiF from the source code\&.
|