DPsim
Loading...
Searching...
No Matches
DPsim::GpuDenseAdapter Class Reference
Inheritance diagram for DPsim::GpuDenseAdapter:
[legend]
Collaboration diagram for DPsim::GpuDenseAdapter:
[legend]

Classes

struct  GpuData
 Variables for solving one Equation-system (All pointer are device-pointer) More...
 

Public Member Functions

virtual ~GpuDenseAdapter ()
 Destructor.
 
 GpuDenseAdapter ()
 Constructor.
 
virtual void preprocessing (SparseMatrix &systemMatrix, std::vector< std::pair< UInt, UInt > > &listVariableSystemMatrixEntries) override
 preprocessing function pre-ordering and scaling the matrix
 
virtual void factorize (SparseMatrix &systemMatrix) override
 factorization function with partial pivoting
 
virtual void refactorize (SparseMatrix &systemMatrix) override
 refactorization without partial pivoting
 
virtual void partialRefactorize (SparseMatrix &systemMatrix, std::vector< std::pair< UInt, UInt > > &listVariableSystemMatrixEntries) override
 partial refactorization withouth partial pivoting
 
virtual Matrix solve (Matrix &rightSideVector) override
 solution function for a right hand side
 
 DirectLinearSolver ()=default
 Constructor with logging.
 
 DirectLinearSolver (const DirectLinearSolver &)=default
 Constructor with logging.
 
 DirectLinearSolver (DirectLinearSolver &&)=default
 Constructor with logging.
 
 DirectLinearSolver (CPS::Logger::Log log)
 Constructor with logging.
 
- Public Member Functions inherited from DPsim::DirectLinearSolver
 DirectLinearSolver ()=default
 Constructor.
 
virtual ~DirectLinearSolver ()=default
 Destructor.
 
 DirectLinearSolver (const DirectLinearSolver &)=default
 Copy Constructor.
 
DirectLinearSolveroperator= (const DirectLinearSolver &)=default
 Copy Assignment Operator.
 
 DirectLinearSolver (DirectLinearSolver &&)=default
 Move Constructor.
 
DirectLinearSolveroperator= (DirectLinearSolver &&)=default
 Move Assignment Operator.
 
 DirectLinearSolver (CPS::Logger::Log log)
 Constructor with Logger.
 
virtual void setConfiguration (DirectLinearSolverConfiguration &configuration)
 

Protected Member Functions

void allocateDeviceMemory ()
 
void copySystemMatrixToDevice (Matrix systemMatrix)
 
void LUfactorization ()
 
- Protected Member Functions inherited from DPsim::DirectLinearSolver
virtual void applyConfiguration ()
 

Protected Attributes

cusolverDnHandle_t mCusolverHandle = nullptr
 Solver-Handle.
 
cudaStream_t mStream = nullptr
 Stream.
 
struct DPsim::GpuDenseAdapter::GpuData mDeviceCopy
 
- Protected Attributes inherited from DPsim::DirectLinearSolver
CPS::Logger::Log mSLog
 Stores logger of solver class.
 
DirectLinearSolverConfiguration mConfiguration
 Object that carries configuration options.
 

Detailed Description

Definition at line 33 of file GpuDenseAdapter.h.

Constructor & Destructor Documentation

◆ ~GpuDenseAdapter()

DPsim::GpuDenseAdapter::~GpuDenseAdapter ( )
virtual

Destructor.

Definition at line 14 of file GpuDenseAdapter.cpp.

◆ GpuDenseAdapter()

DPsim::GpuDenseAdapter::GpuDenseAdapter ( )

Constructor.

Definition at line 31 of file GpuDenseAdapter.cpp.

Member Function Documentation

◆ allocateDeviceMemory()

void DPsim::GpuDenseAdapter::allocateDeviceMemory ( )
protected

Definition at line 47 of file GpuDenseAdapter.cpp.

◆ copySystemMatrixToDevice()

void DPsim::GpuDenseAdapter::copySystemMatrixToDevice ( Matrix systemMatrix)
protected

Definition at line 75 of file GpuDenseAdapter.cpp.

◆ DirectLinearSolver()

DPsim::DirectLinearSolver::DirectLinearSolver ( CPS::Logger::Log log)
inline

Constructor with logging.

Definition at line 44 of file DirectLinearSolver.h.

◆ factorize()

void DPsim::GpuDenseAdapter::factorize ( SparseMatrix & systemMatrix)
overridevirtual

factorization function with partial pivoting

Implements DPsim::DirectLinearSolver.

Definition at line 125 of file GpuDenseAdapter.cpp.

◆ LUfactorization()

void DPsim::GpuDenseAdapter::LUfactorization ( )
protected

Definition at line 83 of file GpuDenseAdapter.cpp.

◆ partialRefactorize()

void DPsim::GpuDenseAdapter::partialRefactorize ( SparseMatrix & systemMatrix,
std::vector< std::pair< UInt, UInt > > & listVariableSystemMatrixEntries )
overridevirtual

partial refactorization withouth partial pivoting

Implements DPsim::DirectLinearSolver.

Definition at line 143 of file GpuDenseAdapter.cpp.

◆ preprocessing()

void DPsim::GpuDenseAdapter::preprocessing ( SparseMatrix & systemMatrix,
std::vector< std::pair< UInt, UInt > > & listVariableSystemMatrixEntries )
overridevirtual

preprocessing function pre-ordering and scaling the matrix

Implements DPsim::DirectLinearSolver.

Definition at line 107 of file GpuDenseAdapter.cpp.

◆ refactorize()

void DPsim::GpuDenseAdapter::refactorize ( SparseMatrix & systemMatrix)
overridevirtual

refactorization without partial pivoting

Implements DPsim::DirectLinearSolver.

Definition at line 134 of file GpuDenseAdapter.cpp.

◆ solve()

Matrix DPsim::GpuDenseAdapter::solve ( Matrix & rightSideVector)
overridevirtual

solution function for a right hand side

Implements DPsim::DirectLinearSolver.

Definition at line 154 of file GpuDenseAdapter.cpp.

Member Data Documentation

◆ mCusolverHandle

cusolverDnHandle_t DPsim::GpuDenseAdapter::mCusolverHandle = nullptr
protected

Solver-Handle.

Definition at line 37 of file GpuDenseAdapter.h.

◆ mStream

cudaStream_t DPsim::GpuDenseAdapter::mStream = nullptr
protected

Stream.

Definition at line 39 of file GpuDenseAdapter.h.


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