SERiF v0.0.1a
Stellar Evolution and Rotation in Four Dimensions
Loading...
Searching...
No Matches
serif::equations::CenteringConstraint Struct Referencefinal

Equation that fixes the material point at the computational origin. More...

#include <centering.hpp>

Inheritance diagram for serif::equations::CenteringConstraint:
[legend]
Collaboration diagram for serif::equations::CenteringConstraint:
[legend]

Public Types

using Operands = utils::types::TypeList<TestOperand>
 The list of operands for the centering constraint equation.
 
- Public Types inherited from serif::equations::Contribution< discretization::forms::Operand< discretization::blocks::displacement::vector > >
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)
 

Static Public Member Functions

static PointLinearization< Operands, discretization::forms::VectorValue > evaluate (const EquationPoint< Operands > &point)
 Evaluate the centering constraint equation at a given point. Fundamentally all this this is doing is returning the displacement of the material point at the origin since to center that the displacement of that point should be zero. The derivative of the residual with respect to displacement along each axis is then just the identity matrix.
 

Static Public Attributes

static constexpr std::string_view name = "centering constraint"
 Compile time name for the centering constraint equation, used for debugging and logging.
 
static constexpr bool position_independent = true
 A centering constraint is position independent, as it does not depend on the spatial location of the material point. This member is only used for compile-time checks.
 
static constexpr std::array< double, 3 > reference_position {}
 The reference position for the centering constraint equation, which is the origin (0, 0, 0). This member is only used for compile-time checks.
 

Detailed Description

Equation that fixes the material point at the computational origin.

Equation Contributions
  • Residuals to the global displacement vector.
Note
This is a translational gauge, not a center-of-mass constraint.

Member Typedef Documentation

◆ Operands

The list of operands for the centering constraint equation.

Member Function Documentation

◆ evaluate()

static PointLinearization< Operands, discretization::forms::VectorValue > serif::equations::CenteringConstraint::evaluate ( const EquationPoint< Operands > & point)
inlinestaticnodiscard

Evaluate the centering constraint equation at a given point. Fundamentally all this this is doing is returning the displacement of the material point at the origin since to center that the displacement of that point should be zero. The derivative of the residual with respect to displacement along each axis is then just the identity matrix.

Parameters
pointThe point at which to evaluate the centering constraint equation.
Returns
A PointLinearization object containing the residual and field derivatives for the centering constraint equation at the given point.

Member Data Documentation

◆ name

std::string_view serif::equations::CenteringConstraint::name = "centering constraint"
staticconstexpr

Compile time name for the centering constraint equation, used for debugging and logging.

◆ position_independent

bool serif::equations::CenteringConstraint::position_independent = true
staticconstexpr

A centering constraint is position independent, as it does not depend on the spatial location of the material point. This member is only used for compile-time checks.

◆ reference_position

std::array<double, 3> serif::equations::CenteringConstraint::reference_position {}
staticconstexpr

The reference position for the centering constraint equation, which is the origin (0, 0, 0). This member is only used for compile-time checks.


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