MFEM  v4.6.0
Finite element discretization library
Public Member Functions | Public Attributes | Protected Member Functions | List of all members
mfem::ComplexFactors Class Reference

#include <complex_densemat.hpp>

Inheritance diagram for mfem::ComplexFactors:
[legend]
Collaboration diagram for mfem::ComplexFactors:
[legend]

Public Member Functions

 ComplexFactors ()
 
 ComplexFactors (double *data_r_, double *data_i_)
 
void SetComplexData (int m)
 
void ResetComplexData (int m)
 
virtual bool Factor (int m, double TOL=0.0)
 
virtual std::complex< double > Det (int m) const
 
virtual void Solve (int m, int n, double *X_r, double *X_i) const
 
virtual void GetInverseMatrix (int m, double *X_r, double *X_i) const
 
virtual ~ComplexFactors ()
 

Public Attributes

double * data_r = nullptr
 
double * data_i = nullptr
 
std::complex< double > * data = nullptr
 

Protected Member Functions

std::complex< double > * RealToComplex (int m, const double *x_r, const double *x_i) const
 
void ComplexToReal (int m, const std::complex< double > *x, double *x_r, double *x_i) const
 

Detailed Description

Abstract class that can compute factorization of external data and perform various operations with the factored data.

Definition at line 63 of file complex_densemat.hpp.

Constructor & Destructor Documentation

◆ ComplexFactors() [1/2]

mfem::ComplexFactors::ComplexFactors ( )
inline

Definition at line 80 of file complex_densemat.hpp.

◆ ComplexFactors() [2/2]

mfem::ComplexFactors::ComplexFactors ( double *  data_r_,
double *  data_i_ 
)
inline

Definition at line 82 of file complex_densemat.hpp.

◆ ~ComplexFactors()

virtual mfem::ComplexFactors::~ComplexFactors ( )
inlinevirtual

Definition at line 115 of file complex_densemat.hpp.

Member Function Documentation

◆ ComplexToReal()

void mfem::ComplexFactors::ComplexToReal ( int  m,
const std::complex< double > *  x,
double *  x_r,
double *  x_i 
) const
protected

Definition at line 428 of file complex_densemat.cpp.

◆ Det()

virtual std::complex<double> mfem::ComplexFactors::Det ( int  m) const
inlinevirtual

Reimplemented in mfem::ComplexCholeskyFactors, and mfem::ComplexLUFactors.

Definition at line 99 of file complex_densemat.hpp.

◆ Factor()

virtual bool mfem::ComplexFactors::Factor ( int  m,
double  TOL = 0.0 
)
inlinevirtual

Reimplemented in mfem::ComplexCholeskyFactors, and mfem::ComplexLUFactors.

Definition at line 93 of file complex_densemat.hpp.

◆ GetInverseMatrix()

virtual void mfem::ComplexFactors::GetInverseMatrix ( int  m,
double *  X_r,
double *  X_i 
) const
inlinevirtual

Reimplemented in mfem::ComplexCholeskyFactors, and mfem::ComplexLUFactors.

Definition at line 110 of file complex_densemat.hpp.

◆ RealToComplex()

std::complex< double > * mfem::ComplexFactors::RealToComplex ( int  m,
const double *  x_r,
const double *  x_i 
) const
protected

Definition at line 396 of file complex_densemat.cpp.

◆ ResetComplexData()

void mfem::ComplexFactors::ResetComplexData ( int  m)
inline

Definition at line 87 of file complex_densemat.hpp.

◆ SetComplexData()

void mfem::ComplexFactors::SetComplexData ( int  m)

Definition at line 439 of file complex_densemat.cpp.

◆ Solve()

virtual void mfem::ComplexFactors::Solve ( int  m,
int  n,
double *  X_r,
double *  X_i 
) const
inlinevirtual

Reimplemented in mfem::ComplexCholeskyFactors, and mfem::ComplexLUFactors.

Definition at line 105 of file complex_densemat.hpp.

Member Data Documentation

◆ data

std::complex<double>* mfem::ComplexFactors::data = nullptr

Definition at line 78 of file complex_densemat.hpp.

◆ data_i

double* mfem::ComplexFactors::data_i = nullptr

Definition at line 77 of file complex_densemat.hpp.

◆ data_r

double* mfem::ComplexFactors::data_r = nullptr

Definition at line 76 of file complex_densemat.hpp.


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