cMHN 1.2
C++ library for learning MHNs with pRC
Loading...
Searching...
No Matches
pRC::Solver::LU Class Reference

Class representing an LU solver for linear equations A*x=b. More...

#include <lu.hpp>

Public Member Functions

template<Operator::Transform OT = Operator::Transform::None, Operator::Restrict OR = Operator::Restrict::None, Operator::Hint OH = Operator::Hint::None, class XA , class RA = RemoveConstReference<XA>, class XB , class RB = RemoveReference<XB>, class XX = decltype(zero<RB>()), class RX = RemoveReference<XX>>
requires IsInvocable<Apply<OT, OR, OH>, XA, XX>
constexpr auto operator() (XA &&A, XB &&b) const
 Solves the linear system A*x=b using an LU decomposition.
 

Detailed Description

Class representing an LU solver for linear equations A*x=b.

This solver utilizes the LU decomposition to solve linear equations exactly.

Member Function Documentation

◆ operator()()

template<Operator::Transform OT = Operator::Transform::None, Operator::Restrict OR = Operator::Restrict::None, Operator::Hint OH = Operator::Hint::None, class XA , class RA = RemoveConstReference<XA>, class XB , class RB = RemoveReference<XB>, class XX = decltype(zero<RB>()), class RX = RemoveReference<XX>>
requires IsInvocable<Apply<OT, OR, OH>, XA, XX>
auto pRC::Solver::LU::operator() ( XA && A,
XB && b ) const
inlineconstexpr

Solves the linear system A*x=b using an LU decomposition.

Template Parameters
OTOperator::Transform, indicates if the operator should be transformed before application (default is Operator::Transform::None)
OROperator::Restrict, indicates if a restriction should be applied to the operator before application (default is Operator::Restrict::None)
HOperator::Hint, indicates if the matrix has a special format (e.g., lower triangular) (default is Operator::Hint::None)
XApRC tensorish class (inferred)
XBpRC tensorish class (inferred)
Parameters
Aobject of class XA, operator of the linear equation
bobject of class XB, right hand side of the linear equation

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