17 fim.Setup(rs, LSolver, ctrl);
20 void ThermalSolver::InitReservoir(
Reservoir& rs)
const { fim.InitReservoir(rs); }
24 fim.Prepare(rs, ctrl);
34 fim.AssembleMat(LSolver, rs, ctrl.
GetCurTime() + dt, dt);
41 fim.SolveLinearSystem(LSolver, rs, ctrl);
47 return fim.UpdateProperty(rs, ctrl);
53 return fim.FinishNR(rs, ctrl);
59 fim.FinishStep(rs, ctrl);
double OCP_DBL
Double precision.
unsigned int OCP_BOOL
OCP_BOOL in OCP.
ThermalSolver class declaration.
Get elapsed wall-time in millisecond.
__inline__ double Stop() const
Stop the timer and return duration from start() in ms.
__inline__ void Start()
Start the timer.
All control parameters except for well controllers.
OCP_DBL GetCurDt() const
Return current time step size.
void RecordTimeAssembleMat(const OCP_DBL &t)
Record time used for assemble matrix.
OCP_DBL GetCurTime() const
Return the current time.
void SolveLinearSystem(Reservoir &rs, OCPControl &ctrl)
Solve the linear system in single problem.
OCP_BOOL FinishNR(Reservoir &rs, OCPControl &ctrl)
Finish the Newton-Raphson iteration.
void FinishStep(Reservoir &rs, OCPControl &ctrl)
Finish the current time step.
OCP_BOOL UpdateProperty(Reservoir &rs, OCPControl &ctrl)
Update properties of fluid.