SERiF v0.0.1a
Stellar Evolution and Rotation in Four Dimensions
Loading...
Searching...
No Matches
operators.hpp File Reference
#include <cstddef>
#include <cstdint>
#include <span>
#include "mfem/linalg/operator.hpp"
#include "mfem/linalg/vector.hpp"
#include "serif/solver/normalization/diagonal.hpp"
Include dependency graph for operators.hpp:
This graph shows which files directly or indirectly include this file:

Classes

class  serif::solver::normalization::backend::mfem::detail::ScaledOperator< Inverse >
 Common algebra for a Jacobian L J S^-1 and an inverse S M^-1 L^-1. More...
 
struct  serif::solver::normalization::backend::mfem::ScaledPreconditionerStatistics
 Counts physical bindings and normalized applications without instrumenting the inverse itself. More...
 
class  serif::solver::normalization::backend::mfem::ScaledPreconditioner
 MFEM solver adapter which always binds the physical inverse to its dimensional Jacobian. More...
 

Namespaces

namespace  serif
 
namespace  serif::solver
 
namespace  serif::solver::normalization
 
namespace  serif::solver::normalization::backend
 
namespace  serif::solver::normalization::backend::mfem
 
namespace  serif::solver::normalization::backend::mfem::detail
 

Typedefs

using serif::solver::normalization::backend::mfem::ScaledJacobianOperator = detail::ScaledOperator<false>
 Normalized Jacobian L J S^-1.
 
using serif::solver::normalization::backend::mfem::ScaledInverseOperator = detail::ScaledOperator<true>
 Normalized physical inverse S M^-1 L^-1.
 

Functions

int serif::solver::normalization::backend::mfem::detail::mfem_size (std::size_t size)
 Translate a prepared coordinate size without narrowing beyond MFEM's index range.
 
void serif::solver::normalization::backend::mfem::detail::scale_vector (std::span< const double > factors, const ::mfem::Vector &input, ::mfem::Vector &output, bool inverse)
 Apply a diagonal to MFEM host storage, resizing only after the input has been checked.