31 #if defined(DiscreteExteriorCalculusSolver_RECURSES)
32 #error Recursive header files inclusion detected in DiscreteExteriorCalculusSolver.h
35 #define DiscreteExteriorCalculusSolver_RECURSES
37 #if !defined DiscreteExteriorCalculusSolver_h
39 #define DiscreteExteriorCalculusSolver_h
44 #include "DGtal/base/Common.h"
45 #include "DGtal/base/ConstAlias.h"
46 #include "DGtal/base/Clone.h"
47 #include "DGtal/dec/KForm.h"
48 #include "DGtal/dec/LinearOperator.h"
68 template <
typename TCalculus,
typename TLinearAlgebraSolver, Order order_in, Duality duality_in, Order order_out, Duality duality_out>
146 template <
typename C,
typename S, Order order_in, Duality duality_in, Order order_out, Duality duality_out>
155 #include "DGtal/dec/DiscreteExteriorCalculusSolver.ih"
162 #undef DiscreteExteriorCalculusSolver_RECURSES
Aim: This wraps a linear algebra solver around a discrete exterior calculus.
BOOST_STATIC_ASSERT((order_out<=TCalculus::dimensionEmbedded))
TLinearAlgebraSolver LinearAlgebraSolver
BOOST_STATIC_ASSERT((order_in >=0))
KForm< Calculus, order_out, duality_out > InputKForm
BOOST_STATIC_ASSERT((order_in<=TCalculus::dimensionEmbedded))
SolutionKForm solve(const InputKForm &input_kform) const
DiscreteExteriorCalculusSolver()
DiscreteExteriorCalculusSolver & compute(const Operator &linear_operator)
LinearOperator< Calculus, order_in, duality_in, order_out, duality_out > Operator
void selfDisplay(std::ostream &out) const
LinearAlgebraSolver myLinearAlgebraSolver
KForm< Calculus, order_in, duality_in > SolutionKForm
BOOST_STATIC_ASSERT((order_out >=0))
const Calculus * myCalculus
Aim: LinearOperator represents discrete linear operator between discrete kforms in the DEC package.
DGtal is the top-level namespace which contains all DGtal functions and types.
std::ostream & operator<<(std::ostream &out, const ATu0v1< TKSpace, TLinearAlgebra > &object)