#ifndef NMCALCULATIONSOLVER_H #define NMCALCULATIONSOLVER_H #include #include #include "nmCalculation_global.h" #include "singlePhaseSolver.h" using namespace std; class CWell; class NMCALCULATION_EXPORT nmCalculationSolver { public: nmCalculationSolver(); // 执行求解,需要 vtk文件,井的信息,包括每个井的圆心、半径 bool execSolve(QString vtkFilePath, QString reservoirParamFilePath, QString wellsParamFilePath, QString dllDir, QString outputFile); private: // 为求解器读取所有需要的数据 void readVTK(QString vtkFlePath); // 读取网格信息,包括:点、cell等信息 bool readMesh(std::string fname, std::vector &points, std::vector &cells); // 读取油藏属性 bool readReservoirParamters(std::string fname, double* pBaseData); // 读取井的信息,包括:文件名、几口井、每口井的物理参数 bool readWells(std::string fname, int& numWell, CWell* well); }; #endif // NMCALCULATIONSOLVER_H