30 lines
1.2 KiB
C++
30 lines
1.2 KiB
C++
/***************************************************************************
|
|
* Copyright (c) 2023 Ondsel, Inc. *
|
|
* *
|
|
* This file is part of OndselSolver. *
|
|
* *
|
|
* See LICENSE file for details about copyright. *
|
|
***************************************************************************/
|
|
|
|
#pragma once
|
|
|
|
#include "MatrixSolver.h"
|
|
|
|
namespace MbD {
|
|
class MatrixDecomposition : public MatrixSolver
|
|
{
|
|
//
|
|
public:
|
|
virtual FColDsptr forAndBackSubsaveOriginal(FColDsptr fullCol, bool saveOriginal);
|
|
virtual void applyRowOrderOnRightHandSideB();
|
|
virtual void forwardSubstituteIntoL();
|
|
virtual void backSubstituteIntoU();
|
|
FColDsptr basicSolvewithsaveOriginal(FMatDsptr aMatrix, FColDsptr aVector, bool saveOriginal) override;
|
|
virtual void forwardSubstituteIntoLD();
|
|
void postSolve() override;
|
|
virtual void preSolvesaveOriginal(FMatDsptr aMatrix, bool saveOriginal);
|
|
|
|
};
|
|
}
|
|
|