SERiF v0.0.1a
Stellar Evolution and Rotation in Four Dimensions
Loading...
Searching...
No Matches
default_preconditioners.hpp File Reference
Include dependency graph for default_preconditioners.hpp:
This graph shows which files directly or indirectly include this file:

Classes

struct  serif::solver::preconditioner::detail::PrimalCoordinates< utils::dependencies::KeyList< Coordinates... >, Shape >
 

Namespaces

namespace  serif
 
namespace  serif::solver
 
namespace  serif::solver::preconditioner
 
namespace  serif::solver::preconditioner::detail
 

Concepts

concept  serif::solver::preconditioner::PrimalPreconditionerLayout
 Require density and potential fields with paired optional shape and scalar constraints.
 

Typedefs

using serif::solver::preconditioner::detail::PrimalFields = utils::dependencies::KeyList<discretization::blocks::density::mass, discretization::blocks::gravity::potential>
 
template<typename Layout>
using serif::solver::preconditioner::detail::PrimalValues = PrimalCoordinates<typename std::remove_cvref_t<Layout>::Values, discretization::blocks::surface_deformation::coefficients>
 
template<typename Layout>
using serif::solver::preconditioner::detail::PrimalRows = PrimalCoordinates<typename std::remove_cvref_t<Layout>::Residuals, discretization::blocks::surface_deformation::shape_equilibrium>
 

Functions

template<PrimalPreconditionerLayout Layout, typename PotentialInverse = strategies::inverse::FixedAMG>
auto serif::solver::preconditioner::make_primal_preconditioner (const Layout &, PotentialInverse potential_inverse=strategies::inverse::FixedAMG{.cycles=3})
 Couple scalar density and potential responses, then correct every shape and global constraint together.