📄 variablestepdoubleintegration.h
字号:
#pragma once
#include <stdlib.h>
#include <limits>
#include <math.h>
using namespace std;
class CVariableStepDoubleIntegration
{
public:
CVariableStepDoubleIntegration(void);
public:
~CVariableStepDoubleIntegration(void);
public:
bool Init(int iEqNums, double *pTime, double dEndTime, double *pInitPos, double *pInitVel);
bool StartIntegration(int iEqNums, double *pTime, double dEndTime, double *pPos, double *pVel);
void _2ndODEs(int iEqNums, double dTime, double *pPos, double *pVel, double *pAcc);
private:
int m_iMaxIntpNums, m_iIntpNums, m_iLastIntpNums;
int m_iIntDir, m_iFail;
private:
double m_dAbsErr, m_dRelErr, m_dEps, m_dAbsEps, m_dRelEps;
double m_dSTempErr, m_dDTempErr, m_dSErr, m_dDErr;
double m_dRho, m_dIntStep, m_dIntStepSq, m_dIntpStep, m_dIntpStepSq;
double m_dIntTime, m_dEndTime;
double *m_pGammaStars, *m_pLamdaStars;
double *m_pAcc;
double *m_pLastPos, *m_pLastVel, *m_pPos2Back;
double *m_pIntPos, *m_pIntVel;
double *m_pPsi, *m_pPsiN, *m_pPsiNm1;
double *m_pPhi, *m_pPhiN, *m_pPhiNSave;
double *m_pSWeight, *m_pDWeight;
double *m_pIntStepArray;
double *m_pAlpha, *m_pBeta;
double *m_pGCoeff, *m_pGpCoeff, *m_pGIntpCoeff, *m_pGpIntpCoeff;
double *m_pGamma1, *m_pGammaIntp;
private:
FILE *m_pStream;
};
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -