Plugins
ug::SuperLUSolver< TAlgebra > Class Template Reference

#include <super_lu.h>

+ Inheritance diagram for ug::SuperLUSolver< TAlgebra >:

Public Member Functions

void col_perm_approximate ()
 
void col_perm_mdo_AT_plus_A ()
 
void col_perm_mdo_ATA ()
 
void col_perm_natural ()
 
virtual bool double_apply (CPUAlgebra::vector_type &c, const CPUAlgebra::vector_type &d)
 
virtual void double_init (const CPUAlgebra::matrix_type &mat)
 
virtual const char * double_name () const
 
void equil (bool b)
 
void print_stat (bool b)
 
 SuperLUSolver ()
 
- Public Member Functions inherited from ug::IExternalSolver< TAlgebra >
SmartPtr< ILinearIterator< vector_type > > clone ()
 
bool copy_pos (std::vector< MathVector< dim1 > > &dest, const std::vector< MathVector< dim2 > > &src)
 
void enable_consistent_interfaces (bool enable)
 
int get_dim ()
 
const std::vector< MathVector< dim > > & get_positions ()
 
bool get_positions (std::vector< MathVector< Tdim > > &coord)
 
bool get_positions3 (std::vector< MathVector< 3 > > &coord)
 
 IExternalSolver ()
 
virtual bool init (SmartPtr< MatrixOperator< matrix_type, vector_type > > Op)
 
void mat_preprocess (const matrix_type &A)
 
virtual const char * name () const
 
void set_disable_preprocessing (bool bDisable)
 
virtual bool supports_parallel () const
 
- Public Member Functions inherited from IMatrixOperatorInverse< TAlgebra::matrix_type, TAlgebra::vector_type >
virtual bool init (SmartPtr< ILinearOperator< TAlgebra::vector_type, TAlgebra::vector_type > > A)
 
virtual bool init (SmartPtr< ILinearOperator< TAlgebra::vector_type, TAlgebra::vector_type > > A, const TAlgebra::vector_type &u)
 
virtual bool init (SmartPtr< MatrixOperator< TAlgebra::matrix_type, TAlgebra::vector_type, TAlgebra::vector_type > > A)=0
 
virtual ~IMatrixOperatorInverse ()
 
- Public Member Functions inherited from ILinearOperatorInverse< TAlgebra::vector_type, TAlgebra::vector_type >
virtual bool apply_update_defect (TAlgebra::vector_type &u, TAlgebra::vector_type &f)
 
virtual std::string config_string () const
 
SmartPtr< IConvergenceCheck< TAlgebra::vector_type > > convergence_check ()
 
ConstSmartPtr< IConvergenceCheck< TAlgebra::vector_type > > convergence_check () const
 
number defect () const
 
 ILinearOperatorInverse ()
 
 ILinearOperatorInverse (SmartPtr< IConvergenceCheck< TAlgebra::vector_type > > spConvCheck)
 
SmartPtr< ILinearOperator< TAlgebra::vector_type, TAlgebra::vector_type > > linear_operator ()
 
number reduction () const
 
void set_convergence_check (SmartPtr< IConvergenceCheck< TAlgebra::vector_type > > spConvCheck)
 
virtual int standard_offset () const
 
int step () const
 
virtual ~ILinearOperatorInverse ()
 
- Public Member Functions inherited from ug::ILinearIterator< class, class >
virtual bool apply (Y &c, const X &d)=0
 
virtual bool apply_update_defect (Y &c, X &d)=0
 
SmartPtr< IDamping< X, Y > > damping ()
 
 ILinearIterator ()
 
 ILinearIterator (const ILinearIterator< X, Y > &parent)
 
virtual bool init (SmartPtr< ILinearOperator< Y, X > > J, const Y &u)=0
 
virtual bool init (SmartPtr< ILinearOperator< Y, X > > L)=0
 
void set_damp (number factor)
 
void set_damp (SmartPtr< IDamping< X, Y > > spScaling)
 
virtual ~ILinearIterator ()
 
- Public Member Functions inherited from VectorDebugWritingObject< TAlgebra::vector_type >
virtual void set_debug (SmartPtr< IVectorDebugWriter< vector_type > > spDebugWriter)
 
SmartPtr< IVectorDebugWriter< vector_type > > vector_debug_writer ()
 
ConstSmartPtr< IVectorDebugWriter< vector_type > > vector_debug_writer () const
 
bool vector_debug_writer_valid () const
 
 VectorDebugWritingObject ()
 
 VectorDebugWritingObject (SmartPtr< IVectorDebugWriter< vector_type > > spDebugWriter)
 
void write_debug (const vector_type &vec, const char *filename)
 
virtual ~VectorDebugWritingObject ()
 

Private Attributes

SuperLUConfiguration config
 
IExternalSolverImplementationimpl
 

Additional Inherited Members

- Public Types inherited from ug::IExternalSolver< TAlgebra >
typedef TAlgebra algebra_type
 
typedef TAlgebra::matrix_type matrix_type
 
typedef TAlgebra::vector_type vector_type
 
- Public Types inherited from IMatrixOperatorInverse< TAlgebra::matrix_type, TAlgebra::vector_type >
typedef TAlgebra::vector_type codomain_function_type
 
typedef TAlgebra::vector_type domain_function_type
 
typedef TAlgebra::matrix_type matrix_type
 
- Public Types inherited from ILinearOperatorInverse< TAlgebra::vector_type, TAlgebra::vector_type >
typedef TAlgebra::vector_type codomain_function_type
 
typedef TAlgebra::vector_type domain_function_type
 
- Public Types inherited from ug::ILinearIterator< class, class >
typedef Y codomain_function_type
 
typedef X domain_function_type
 
- Public Types inherited from VectorDebugWritingObject< TAlgebra::vector_type >
typedef TAlgebra::vector_type vector_type
 
- Public Attributes inherited from ug::IExternalSolver< TAlgebra >
SmartPtr< MatrixOperator< matrix_type, vector_type > > m_spOperator
 
- Protected Member Functions inherited from ug::IExternalSolver< TAlgebra >
virtual bool apply (vector_type &c, const vector_type &d)
 
virtual bool apply_return_defect (vector_type &u, vector_type &f)
 
void get_vector (CPUAlgebra::vector_type &v_scalar, const vector_type &v)
 
virtual bool postprocess ()
 
virtual bool preprocess (SmartPtr< MatrixOperator< matrix_type, vector_type > > pOp)
 
void set_vector (CPUAlgebra::vector_type &v_scalar, vector_type &v)
 
- Protected Member Functions inherited from VectorDebugWritingObject< TAlgebra::vector_type >
void enter_vector_debug_writer_section (const char *secDir)
 
void enter_vector_debug_writer_section (std::string secDir)
 
void leave_vector_debug_writer_section ()
 
void print_debugger_message (const char *msg)
 
void print_debugger_message (std::string msg)
 
virtual void write_debug (const vector_type &vec, std::string name)
 
- Protected Attributes inherited from ug::IExternalSolver< TAlgebra >
bool m_bDisablePreprocessing
 
size_t m_blockSize
 
bool m_bUseConsistentInterfaces
 
CPUAlgebra::vector_type m_c
 
CPUAlgebra::vector_type m_d
 
size_t m_size
 
- Protected Attributes inherited from ILinearOperatorInverse< TAlgebra::vector_type, TAlgebra::vector_type >
SmartPtr< IConvergenceCheck< TAlgebra::vector_type > > m_spConvCheck
 
SmartPtr< ILinearOperator< TAlgebra::vector_type, TAlgebra::vector_type > > m_spLinearOperator
 
- Protected Attributes inherited from ug::ILinearIterator< class, class >
SmartPtr< IDamping< X, Y > > m_spDamping
 
- Protected Attributes inherited from VectorDebugWritingObject< TAlgebra::vector_type >
SmartPtr< IVectorDebugWriter< vector_type > > m_spVectorDebugWriter
 

Constructor & Destructor Documentation

◆ SuperLUSolver()

Member Function Documentation

◆ col_perm_approximate()

template<typename TAlgebra >
void ug::SuperLUSolver< TAlgebra >::col_perm_approximate ( )
inline

◆ col_perm_mdo_AT_plus_A()

template<typename TAlgebra >
void ug::SuperLUSolver< TAlgebra >::col_perm_mdo_AT_plus_A ( )
inline

◆ col_perm_mdo_ATA()

template<typename TAlgebra >
void ug::SuperLUSolver< TAlgebra >::col_perm_mdo_ATA ( )
inline

◆ col_perm_natural()

template<typename TAlgebra >
void ug::SuperLUSolver< TAlgebra >::col_perm_natural ( )
inline

◆ double_apply()

template<typename TAlgebra >
virtual bool ug::SuperLUSolver< TAlgebra >::double_apply ( CPUAlgebra::vector_type c,
const CPUAlgebra::vector_type d 
)
inlinevirtual

◆ double_init()

template<typename TAlgebra >
virtual void ug::SuperLUSolver< TAlgebra >::double_init ( const CPUAlgebra::matrix_type mat)
inlinevirtual

◆ double_name()

template<typename TAlgebra >
virtual const char* ug::SuperLUSolver< TAlgebra >::double_name ( ) const
inlinevirtual

◆ equil()

template<typename TAlgebra >
void ug::SuperLUSolver< TAlgebra >::equil ( bool  b)
inline

◆ print_stat()

template<typename TAlgebra >
void ug::SuperLUSolver< TAlgebra >::print_stat ( bool  b)
inline

Member Data Documentation

◆ config

◆ impl


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