📄 factortableforpq.h
字号:
#ifndef FACTORTABLEFORPQ_h
#define FACTORTABLEFORPQ_h
#include "SparseMatrix.h"
#include "CResolveEqOnLUDecomp.h"
//牛拉法的雅可比矩阵类
class JacPQ
{
public:
JacPQ();
JacPQ(int );
~JacPQ();
void Initialize(int );
void SetBElement(int r,int c,double value);
double GetBElement(int r,int c);
void SetBStatus(bool bBuilded){ bBBuilded=bBuilded;};
bool CountElement(); //第一次输入元素后作统计并设置上下三角变量
bool BuildFactorTable();
bool ResolveEquation(double *);
private:
bool bInitalized; //是否初始化了
bool bBBuilded; //是否形成了稀疏的B矩阵
bool bReadyForFactorize; //准备好形成因子表了
bool bFirstTime; //是不是第一次输入值
bool bFactorized;
int rows,cols; // 行=列
SparseMatrix<double> B; //稀疏的原始的矩阵,只是在第一次形成时用到
double * D; //对角元素
double * LA; //下三角的元素值
int * Ljs; //每列开始元素的序号
int * Lj; //所有非零元素对应的行号,按列存储
SolveEqOnLU SolveEqs;
int EstimateElemNum; //估计的非零元素值
int SumLnum;
double ZeroFlagValue; //标志零元素位置的值
};
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -