Nektar++
|
#include <CompressibleFlowSystemImplicit.h>
Protected Member Functions | |
void | v_InitObject (bool DeclareFields=true) override |
Initialization object for CFSImplicit class. More... | |
void | InitialiseNonlinSysSolver () |
void | v_DoSolve () override |
Solves an unsteady problem. More... | |
void | v_PrintStatusInformation (const int step, const NekDouble cpuTime) override |
Print Status Information. More... | |
void | v_PrintSummaryStatistics (const NekDouble intTime) override |
Print Summary Statistics. More... | |
void | NonlinSysEvaluatorCoeff1D (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &out, const bool &flag=true) |
void | NonlinSysEvaluatorCoeff (const Array< OneD, const Array< OneD, NekDouble > > &inarray, Array< OneD, Array< OneD, NekDouble > > &out) |
void | DoOdeImplicitRhs (const Array< OneD, const Array< OneD, NekDouble > > &inarray, Array< OneD, Array< OneD, NekDouble > > &outarray, const NekDouble time) |
void | DoOdeRhsCoeff (const Array< OneD, const Array< OneD, NekDouble > > &inarray, Array< OneD, Array< OneD, NekDouble > > &outarray, const NekDouble time) |
Compute the right-hand side. More... | |
void | DoAdvectionCoeff (const Array< OneD, const Array< OneD, NekDouble > > &inarray, Array< OneD, Array< OneD, NekDouble > > &outarray, const NekDouble time, const Array< OneD, const Array< OneD, NekDouble > > &pFwd, const Array< OneD, const Array< OneD, NekDouble > > &pBwd) |
Compute the advection terms for the right-hand side. More... | |
void | DoDiffusionCoeff (const Array< OneD, const Array< OneD, NekDouble > > &inarray, Array< OneD, Array< OneD, NekDouble > > &outarray, const Array< OneD, const Array< OneD, NekDouble > > &pFwd, const Array< OneD, const Array< OneD, NekDouble > > &pBwd) |
Add the diffusions terms to the right-hand side Similar to DoDiffusion() but with outarray in coefficient space. More... | |
void | DoImplicitSolve (const Array< OneD, const Array< OneD, NekDouble > > &inpnts, Array< OneD, Array< OneD, NekDouble > > &outpnt, const NekDouble time, const NekDouble lambda) |
void | DoImplicitSolveCoeff (const Array< OneD, const Array< OneD, NekDouble > > &inpnts, const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &out, const NekDouble time, const NekDouble lambda) |
void | MatrixMultiplyMatrixFreeCoeff (const Array< OneD, const NekDouble > &inarray, Array< OneD, NekDouble > &out, const bool &flag=false) |
void | CalcRefValues (const Array< OneD, const NekDouble > &inarray) |
void | PreconCoeff (const Array< OneD, NekDouble > &inarray, Array< OneD, NekDouble > &outarray, const bool &flag) |
template<typename DataType , typename TypeNekBlkMatSharedPtr > | |
void | AddMatNSBlkDiagVol (const Array< OneD, const Array< OneD, NekDouble > > &inarray, const Array< OneD, const TensorOfArray2D< NekDouble > > &qfield, Array< OneD, Array< OneD, TypeNekBlkMatSharedPtr > > &gmtxarray, TensorOfArray4D< DataType > &StdMatDataDBB, TensorOfArray5D< DataType > &StdMatDataDBDB) |
template<typename DataType > | |
void | CalcVolJacStdMat (TensorOfArray4D< DataType > &StdMatDataDBB, TensorOfArray5D< DataType > &StdMatDataDBDB) |
template<typename DataType , typename TypeNekBlkMatSharedPtr > | |
void | AddMatNSBlkDiagBnd (const Array< OneD, const Array< OneD, NekDouble > > &inarray, TensorOfArray3D< NekDouble > &qfield, TensorOfArray2D< TypeNekBlkMatSharedPtr > &gmtxarray, Array< OneD, TypeNekBlkMatSharedPtr > &TraceJac, Array< OneD, TypeNekBlkMatSharedPtr > &TraceJacDeriv, Array< OneD, Array< OneD, DataType > > &TraceJacDerivSign, TensorOfArray5D< DataType > &TraceIPSymJacArray) |
template<typename DataType , typename TypeNekBlkMatSharedPtr > | |
void | ElmtVarInvMtrx (Array< OneD, Array< OneD, TypeNekBlkMatSharedPtr > > &gmtxarray, TypeNekBlkMatSharedPtr &gmtVar, const DataType &tmpDatatype) |
template<typename DataType , typename TypeNekBlkMatSharedPtr > | |
void | GetTraceJac (const Array< OneD, const Array< OneD, NekDouble > > &inarray, TensorOfArray3D< NekDouble > &qfield, Array< OneD, TypeNekBlkMatSharedPtr > &TraceJac, Array< OneD, TypeNekBlkMatSharedPtr > &TraceJacDeriv, Array< OneD, Array< OneD, DataType > > &TraceJacDerivSign, TensorOfArray5D< DataType > &TraceIPSymJacArray) |
template<typename DataType , typename TypeNekBlkMatSharedPtr > | |
void | NumCalcRiemFluxJac (const int nConvectiveFields, const Array< OneD, MultiRegions::ExpListSharedPtr > &fields, const Array< OneD, const Array< OneD, NekDouble > > &AdvVel, const Array< OneD, const Array< OneD, NekDouble > > &inarray, TensorOfArray3D< NekDouble > &qfield, const NekDouble &time, const Array< OneD, const Array< OneD, NekDouble > > &Fwd, const Array< OneD, const Array< OneD, NekDouble > > &Bwd, TypeNekBlkMatSharedPtr &FJac, TypeNekBlkMatSharedPtr &BJac, TensorOfArray5D< DataType > &TraceIPSymJacArray) |
void | PointFluxJacobianPoint (const Array< OneD, NekDouble > &Fwd, const Array< OneD, NekDouble > &normals, DNekMatSharedPtr &FJac, const NekDouble efix, const NekDouble fsw) |
template<typename DataType , typename TypeNekBlkMatSharedPtr > | |
void | TranSamesizeBlkDiagMatIntoArray (const TypeNekBlkMatSharedPtr &BlkMat, TensorOfArray3D< DataType > &MatArray) |
template<typename DataType , typename TypeNekBlkMatSharedPtr > | |
void | TransTraceJacMatToArray (const Array< OneD, TypeNekBlkMatSharedPtr > &TraceJac, TensorOfArray4D< DataType > &TraceJacDerivArray) |
template<typename DataType , typename TypeNekBlkMatSharedPtr > | |
void | Fill2DArrayOfBlkDiagonalMat (Array< OneD, Array< OneD, TypeNekBlkMatSharedPtr > > &gmtxarray, const DataType valu) |
template<typename DataType , typename TypeNekBlkMatSharedPtr > | |
void | Fill1DArrayOfBlkDiagonalMat (Array< OneD, TypeNekBlkMatSharedPtr > &gmtxarray, const DataType valu) |
void | AllocateNekBlkMatDig (SNekBlkMatSharedPtr &mat, const Array< OneD, unsigned int > nrow, const Array< OneD, unsigned int > ncol) |
void | CalcPreconMatBRJCoeff (const Array< OneD, const Array< OneD, NekDouble > > &inarray, Array< OneD, Array< OneD, SNekBlkMatSharedPtr > > &gmtxarray, SNekBlkMatSharedPtr &gmtVar, Array< OneD, SNekBlkMatSharedPtr > &TraceJac, Array< OneD, SNekBlkMatSharedPtr > &TraceJacDeriv, Array< OneD, Array< OneD, NekSingle > > &TraceJacDerivSign, TensorOfArray4D< NekSingle > &TraceJacArray, TensorOfArray4D< NekSingle > &TraceJacDerivArray, TensorOfArray5D< NekSingle > &TraceIPSymJacArray) |
template<typename DataType , typename TypeNekBlkMatSharedPtr > | |
void | MultiplyElmtInvMassPlusSource (Array< OneD, Array< OneD, TypeNekBlkMatSharedPtr > > &gmtxarray, const NekDouble dtlamda) |
void | GetFluxVectorJacDirElmt (const int nConvectiveFields, const int nElmtPnt, const Array< OneD, const Array< OneD, NekDouble > > &locVars, const Array< OneD, NekDouble > &normals, DNekMatSharedPtr &wspMat, Array< OneD, Array< OneD, NekDouble > > &PntJacArray) |
void | GetFluxVectorJacPoint (const int nConvectiveFields, const Array< OneD, NekDouble > &conservVar, const Array< OneD, NekDouble > &normals, DNekMatSharedPtr &fluxJac) |
void | CalcTraceNumericalFlux (const int nConvectiveFields, const int nDim, const int nPts, const int nTracePts, const NekDouble PenaltyFactor2, const Array< OneD, MultiRegions::ExpListSharedPtr > &fields, const Array< OneD, const Array< OneD, NekDouble > > &AdvVel, const Array< OneD, const Array< OneD, NekDouble > > &inarray, const NekDouble time, TensorOfArray3D< NekDouble > &qfield, const Array< OneD, const Array< OneD, NekDouble > > &vFwd, const Array< OneD, const Array< OneD, NekDouble > > &vBwd, const Array< OneD, const TensorOfArray2D< NekDouble > > &qFwd, const Array< OneD, const TensorOfArray2D< NekDouble > > &qBwd, const Array< OneD, NekDouble > &MuVarTrace, Array< OneD, int > &nonZeroIndex, Array< OneD, Array< OneD, NekDouble > > &traceflux) |
void | MinusDiffusionFluxJacPoint (const int nConvectiveFields, const int nElmtPnt, const Array< OneD, const Array< OneD, NekDouble > > &locVars, const TensorOfArray3D< NekDouble > &locDerv, const Array< OneD, NekDouble > &locmu, const Array< OneD, NekDouble > &locDmuDT, const Array< OneD, NekDouble > &normals, DNekMatSharedPtr &wspMat, Array< OneD, Array< OneD, NekDouble > > &PntJacArray) |
void | GetFluxDerivJacDirctn (const MultiRegions::ExpListSharedPtr &explist, const Array< OneD, const Array< OneD, NekDouble > > &normals, const int nDervDir, const Array< OneD, const Array< OneD, NekDouble > > &inarray, TensorOfArray5D< NekDouble > &ElmtJacArray, const int nFluxDir) |
void | GetFluxDerivJacDirctnElmt (const int nConvectiveFields, const int nElmtPnt, const int nDervDir, const Array< OneD, const Array< OneD, NekDouble > > &locVars, const Array< OneD, NekDouble > &locmu, const Array< OneD, const Array< OneD, NekDouble > > &locnormal, DNekMatSharedPtr &wspMat, Array< OneD, Array< OneD, NekDouble > > &PntJacArray) |
void | GetFluxDerivJacDirctn (const MultiRegions::ExpListSharedPtr &explist, const Array< OneD, const Array< OneD, NekDouble > > &normals, const int nDervDir, const Array< OneD, const Array< OneD, NekDouble > > &inarray, Array< OneD, Array< OneD, DNekMatSharedPtr > > &ElmtJac) |
void | CalcPhysDeriv (const Array< OneD, const Array< OneD, NekDouble > > &inarray, TensorOfArray3D< NekDouble > &qfield) |
void | CalcMuDmuDT (const Array< OneD, const Array< OneD, NekDouble > > &inarray, Array< OneD, NekDouble > &mu, Array< OneD, NekDouble > &DmuDT) |
virtual void | v_DoDiffusionCoeff (const Array< OneD, const Array< OneD, NekDouble > > &inarray, Array< OneD, Array< OneD, NekDouble > > &outarray, const Array< OneD, const Array< OneD, NekDouble > > &pFwd, const Array< OneD, const Array< OneD, NekDouble > > &pBwd) |
virtual void | v_CalcMuDmuDT (const Array< OneD, const Array< OneD, NekDouble > > &inarray, Array< OneD, NekDouble > &mu, Array< OneD, NekDouble > &DmuDT) |
virtual void | v_CalcPhysDeriv (const Array< OneD, const Array< OneD, NekDouble > > &inarray, TensorOfArray3D< NekDouble > &qfield) |
virtual void | v_MinusDiffusionFluxJacPoint (const int nConvectiveFields, const int nElmtPnt, const Array< OneD, const Array< OneD, NekDouble > > &locVars, const TensorOfArray3D< NekDouble > &locDerv, const Array< OneD, NekDouble > &locmu, const Array< OneD, NekDouble > &locDmuDT, const Array< OneD, NekDouble > &normals, DNekMatSharedPtr &wspMat, Array< OneD, Array< OneD, NekDouble > > &PntJacArray) |
virtual void | v_GetFluxDerivJacDirctn (const MultiRegions::ExpListSharedPtr &explist, const Array< OneD, const Array< OneD, NekDouble > > &normals, const int nDervDir, const Array< OneD, const Array< OneD, NekDouble > > &inarray, TensorOfArray5D< NekDouble > &ElmtJacArray, const int nFluxDir) |
virtual void | v_GetFluxDerivJacDirctnElmt (const int nConvectiveFields, const int nElmtPnt, const int nDervDir, const Array< OneD, const Array< OneD, NekDouble > > &locVars, const Array< OneD, NekDouble > &locmu, const Array< OneD, const Array< OneD, NekDouble > > &locnormal, DNekMatSharedPtr &wspMat, Array< OneD, Array< OneD, NekDouble > > &PntJacArray) |
virtual void | v_GetFluxDerivJacDirctn (const MultiRegions::ExpListSharedPtr &explist, const Array< OneD, const Array< OneD, NekDouble > > &normals, const int nDervDir, const Array< OneD, const Array< OneD, NekDouble > > &inarray, Array< OneD, Array< OneD, DNekMatSharedPtr > > &ElmtJac) |
bool | v_UpdateTimeStepCheck () override |
![]() | |
CompressibleFlowSystem (const LibUtilities::SessionReaderSharedPtr &pSession, const SpatialDomains::MeshGraphSharedPtr &pGraph) | |
void | v_InitObject (bool DeclareFields=true) override |
Initialization object for CompressibleFlowSystem class. More... | |
void | v_GetPressure (const Array< OneD, const Array< OneD, NekDouble > > &physfield, Array< OneD, NekDouble > &pressure) override |
void | v_GetDensity (const Array< OneD, const Array< OneD, NekDouble > > &physfield, Array< OneD, NekDouble > &density) override |
bool | v_HasConstantDensity () override |
void | v_GetVelocity (const Array< OneD, const Array< OneD, NekDouble > > &physfield, Array< OneD, Array< OneD, NekDouble > > &velocity) override |
void | InitialiseParameters () |
Load CFS parameters from the session file. More... | |
void | InitAdvection () |
Create advection and diffusion objects for CFS. More... | |
void | DoOdeRhs (const Array< OneD, const Array< OneD, NekDouble > > &inarray, Array< OneD, Array< OneD, NekDouble > > &outarray, const NekDouble time) |
Compute the right-hand side. More... | |
void | DoOdeProjection (const Array< OneD, const Array< OneD, NekDouble > > &inarray, Array< OneD, Array< OneD, NekDouble > > &outarray, const NekDouble time) |
Compute the projection and call the method for imposing the boundary conditions in case of discontinuous projection. More... | |
void | DoAdvection (const Array< OneD, Array< OneD, NekDouble > > &inarray, Array< OneD, Array< OneD, NekDouble > > &outarray, const NekDouble time, const Array< OneD, Array< OneD, NekDouble > > &pFwd, const Array< OneD, Array< OneD, NekDouble > > &pBwd) |
Compute the advection terms for the right-hand side. More... | |
void | DoDiffusion (const Array< OneD, Array< OneD, NekDouble > > &inarray, Array< OneD, Array< OneD, NekDouble > > &outarray, const Array< OneD, Array< OneD, NekDouble > > &pFwd, const Array< OneD, Array< OneD, NekDouble > > &pBwd) |
Add the diffusions terms to the right-hand side. More... | |
void | GetFluxVector (const Array< OneD, const Array< OneD, NekDouble > > &physfield, TensorOfArray3D< NekDouble > &flux) |
Return the flux vector for the compressible Euler equations. More... | |
void | GetFluxVectorDeAlias (const Array< OneD, const Array< OneD, NekDouble > > &physfield, TensorOfArray3D< NekDouble > &flux) |
Return the flux vector for the compressible Euler equations by using the de-aliasing technique. More... | |
void | SetBoundaryConditions (Array< OneD, Array< OneD, NekDouble > > &physarray, NekDouble time) |
void | SetBoundaryConditionsBwdWeight () |
Set up a weight on physical boundaries for boundary condition applications. More... | |
void | GetElmtTimeStep (const Array< OneD, const Array< OneD, NekDouble > > &inarray, Array< OneD, NekDouble > &tstep) |
Calculate the maximum timestep on each element subject to CFL restrictions. More... | |
NekDouble | v_GetTimeStep (const Array< OneD, const Array< OneD, NekDouble > > &inarray) override |
Calculate the maximum timestep subject to CFL restrictions. More... | |
void | v_GenerateSummary (SolverUtils::SummaryList &s) override |
Print a summary of time stepping parameters. More... | |
void | v_SetInitialConditions (NekDouble initialtime=0.0, bool dumpInitialConditions=true, const int domain=0) override |
Set up logic for residual calculation. More... | |
void | v_EvaluateExactSolution (unsigned int field, Array< OneD, NekDouble > &outfield, const NekDouble time=0.0) override |
NekDouble | GetGamma () |
const Array< OneD, const Array< OneD, NekDouble > > & | GetVecLocs () |
const Array< OneD, const Array< OneD, NekDouble > > & | GetNormals () |
MultiRegions::ExpListSharedPtr | v_GetPressure () override |
void | v_ExtraFldOutput (std::vector< Array< OneD, NekDouble > > &fieldcoeffs, std::vector< std::string > &variables) override |
virtual void | v_DoDiffusion (const Array< OneD, Array< OneD, NekDouble > > &inarray, Array< OneD, Array< OneD, NekDouble > > &outarray, const Array< OneD, Array< OneD, NekDouble > > &pFwd, const Array< OneD, Array< OneD, NekDouble > > &pBwd)=0 |
Array< OneD, NekDouble > | v_GetMaxStdVelocity (const NekDouble SpeedSoundFactor) override |
Compute the advection velocity in the standard space for each element of the expansion. More... | |
void | v_SteadyStateResidual (int step, Array< OneD, NekDouble > &L2) override |
virtual bool | v_SupportsShockCaptType (const std::string type) const =0 |
![]() | |
SOLVER_UTILS_EXPORT bool | v_PostIntegrate (int step) override |
virtual SOLVER_UTILS_EXPORT Array< OneD, NekDouble > | v_GetMaxStdVelocity (const NekDouble SpeedSoundFactor=1.0) |
![]() | |
SOLVER_UTILS_EXPORT | UnsteadySystem (const LibUtilities::SessionReaderSharedPtr &pSession, const SpatialDomains::MeshGraphSharedPtr &pGraph) |
Initialises UnsteadySystem class members. More... | |
SOLVER_UTILS_EXPORT void | v_InitObject (bool DeclareField=true) override |
Init object for UnsteadySystem class. More... | |
SOLVER_UTILS_EXPORT void | v_DoSolve () override |
Solves an unsteady problem. More... | |
virtual SOLVER_UTILS_EXPORT void | v_PrintStatusInformation (const int step, const NekDouble cpuTime) |
Print Status Information. More... | |
virtual SOLVER_UTILS_EXPORT void | v_PrintSummaryStatistics (const NekDouble intTime) |
Print Summary Statistics. More... | |
SOLVER_UTILS_EXPORT void | v_DoInitialise (bool dumpInitialConditions=true) override |
Sets up initial conditions. More... | |
SOLVER_UTILS_EXPORT void | v_GenerateSummary (SummaryList &s) override |
Print a summary of time stepping parameters. More... | |
virtual SOLVER_UTILS_EXPORT NekDouble | v_GetTimeStep (const Array< OneD, const Array< OneD, NekDouble > > &inarray) |
Return the timestep to be used for the next step in the time-marching loop. More... | |
virtual SOLVER_UTILS_EXPORT bool | v_PreIntegrate (int step) |
virtual SOLVER_UTILS_EXPORT bool | v_PostIntegrate (int step) |
virtual SOLVER_UTILS_EXPORT bool | v_RequireFwdTrans () |
virtual SOLVER_UTILS_EXPORT void | v_SteadyStateResidual (int step, Array< OneD, NekDouble > &L2) |
virtual SOLVER_UTILS_EXPORT bool | v_UpdateTimeStepCheck () |
SOLVER_UTILS_EXPORT NekDouble | MaxTimeStepEstimator () |
Get the maximum timestep estimator for cfl control. More... | |
SOLVER_UTILS_EXPORT void | CheckForRestartTime (NekDouble &time, int &nchk) |
SOLVER_UTILS_EXPORT void | SVVVarDiffCoeff (const Array< OneD, Array< OneD, NekDouble > > vel, StdRegions::VarCoeffMap &varCoeffMap) |
Evaluate the SVV diffusion coefficient according to Moura's paper where it should proportional to h time velocity. More... | |
SOLVER_UTILS_EXPORT void | DoDummyProjection (const Array< OneD, const Array< OneD, NekDouble > > &inarray, Array< OneD, Array< OneD, NekDouble > > &outarray, const NekDouble time) |
Perform dummy projection. More... | |
![]() | |
SOLVER_UTILS_EXPORT | EquationSystem (const LibUtilities::SessionReaderSharedPtr &pSession, const SpatialDomains::MeshGraphSharedPtr &pGraph) |
Initialises EquationSystem class members. More... | |
virtual SOLVER_UTILS_EXPORT void | v_InitObject (bool DeclareFeld=true) |
Initialisation object for EquationSystem. More... | |
virtual SOLVER_UTILS_EXPORT void | v_DoInitialise (bool dumpInitialConditions=true) |
Virtual function for initialisation implementation. More... | |
virtual SOLVER_UTILS_EXPORT void | v_DoSolve () |
Virtual function for solve implementation. More... | |
virtual SOLVER_UTILS_EXPORT NekDouble | v_LinfError (unsigned int field, const Array< OneD, NekDouble > &exactsoln=NullNekDouble1DArray) |
Virtual function for the L_inf error computation between fields and a given exact solution. More... | |
virtual SOLVER_UTILS_EXPORT NekDouble | v_L2Error (unsigned int field, const Array< OneD, NekDouble > &exactsoln=NullNekDouble1DArray, bool Normalised=false) |
Virtual function for the L_2 error computation between fields and a given exact solution. More... | |
virtual SOLVER_UTILS_EXPORT void | v_TransCoeffToPhys () |
Virtual function for transformation to physical space. More... | |
virtual SOLVER_UTILS_EXPORT void | v_TransPhysToCoeff () |
Virtual function for transformation to coefficient space. More... | |
virtual SOLVER_UTILS_EXPORT void | v_GenerateSummary (SummaryList &l) |
Virtual function for generating summary information. More... | |
virtual SOLVER_UTILS_EXPORT void | v_SetInitialConditions (NekDouble initialtime=0.0, bool dumpInitialConditions=true, const int domain=0) |
virtual SOLVER_UTILS_EXPORT void | v_EvaluateExactSolution (unsigned int field, Array< OneD, NekDouble > &outfield, const NekDouble time) |
virtual SOLVER_UTILS_EXPORT void | v_Output (void) |
virtual SOLVER_UTILS_EXPORT MultiRegions::ExpListSharedPtr | v_GetPressure (void) |
virtual SOLVER_UTILS_EXPORT bool | v_NegatedOp (void) |
Virtual function to identify if operator is negated in DoSolve. More... | |
virtual SOLVER_UTILS_EXPORT void | v_ExtraFldOutput (std::vector< Array< OneD, NekDouble > > &fieldcoeffs, std::vector< std::string > &variables) |
![]() | |
virtual SOLVER_UTILS_EXPORT void | v_GetVelocity (const Array< OneD, const Array< OneD, NekDouble > > &physfield, Array< OneD, Array< OneD, NekDouble > > &velocity)=0 |
virtual SOLVER_UTILS_EXPORT bool | v_HasConstantDensity ()=0 |
virtual SOLVER_UTILS_EXPORT void | v_GetDensity (const Array< OneD, const Array< OneD, NekDouble > > &physfield, Array< OneD, NekDouble > &density)=0 |
virtual SOLVER_UTILS_EXPORT void | v_GetPressure (const Array< OneD, const Array< OneD, NekDouble > > &physfield, Array< OneD, NekDouble > &pressure)=0 |
virtual SOLVER_UTILS_EXPORT void | v_SetMovingFrameVelocities (const Array< OneD, NekDouble > &vFrameVels) |
virtual SOLVER_UTILS_EXPORT void | v_GetMovingFrameVelocities (Array< OneD, NekDouble > &vFrameVels) |
virtual SOLVER_UTILS_EXPORT void | v_SetMovingFrameProjectionMat (const boost::numeric::ublas::matrix< NekDouble > &vProjMat) |
virtual SOLVER_UTILS_EXPORT void | v_GetMovingFrameProjectionMat (boost::numeric::ublas::matrix< NekDouble > &vProjMat) |
virtual SOLVER_UTILS_EXPORT void | v_SetMovingFrameDisp (const Array< OneD, NekDouble > &vFrameDisp) |
virtual SOLVER_UTILS_EXPORT void | v_GetMovingFrameDisp (Array< OneD, NekDouble > &vFrameDisp) |
virtual SOLVER_UTILS_EXPORT void | v_SetAeroForce (Array< OneD, NekDouble > forces) |
virtual SOLVER_UTILS_EXPORT void | v_GetAeroForce (Array< OneD, NekDouble > forces) |
Protected Attributes | |
bool | m_viscousJacFlag |
bool | m_advectionJacFlag |
bool | m_flagImplicitItsStatistics |
int | m_nPadding = 1 |
int | m_TotNewtonIts = 0 |
int | m_TotLinIts = 0 |
int | m_TotImpStages = 0 |
Array< OneD, NekDouble > | m_magnitdEstimat |
Estimate the magnitude of each conserved varibles. More... | |
Array< OneD, Array< OneD, NekDouble > > | m_solutionPhys |
NekDouble | m_TimeIntegLambda = 0.0 |
coefff of spacial derivatives(rhs or m_F in GLM) in calculating the residual of the whole equation(used in unsteady time integrations) More... | |
NekDouble | m_inArrayNorm = -1.0 |
NekDouble | m_jacobiFreeEps |
NekDouble | m_newtonRelativeIteTol |
TensorOfArray4D< NekSingle > | m_stdSMatDataDBB |
TensorOfArray5D< NekSingle > | m_stdSMatDataDBDB |
LibUtilities::NekNonlinSysSharedPtr | m_nonlinsol |
PreconCfsSharedPtr | m_preconCfs |
bool | m_updateShockCaptPhys {true} |
![]() | |
SolverUtils::DiffusionSharedPtr | m_diffusion |
ArtificialDiffusionSharedPtr | m_artificialDiffusion |
Array< OneD, Array< OneD, NekDouble > > | m_vecLocs |
NekDouble | m_gamma |
std::string | m_shockCaptureType |
NekDouble | m_filterAlpha |
NekDouble | m_filterExponent |
NekDouble | m_filterCutoff |
bool | m_useFiltering |
bool | m_useLocalTimeStep |
Array< OneD, NekDouble > | m_muav |
Array< OneD, NekDouble > | m_muavTrace |
VariableConverterSharedPtr | m_varConv |
std::vector< CFSBndCondSharedPtr > | m_bndConds |
NekDouble | m_bndEvaluateTime |
std::vector< SolverUtils::ForcingSharedPtr > | m_forcing |
![]() | |
SolverUtils::AdvectionSharedPtr | m_advObject |
Advection term. More... | |
![]() | |
LibUtilities::TimeIntegrationSchemeSharedPtr | m_intScheme |
Wrapper to the time integration scheme. More... | |
LibUtilities::TimeIntegrationSchemeOperators | m_ode |
The time integration scheme operators to use. More... | |
Array< OneD, Array< OneD, NekDouble > > | m_previousSolution |
Storage for previous solution for steady-state check. More... | |
std::vector< int > | m_intVariables |
NekDouble | m_cflSafetyFactor |
CFL safety factor (comprise between 0 to 1). More... | |
NekDouble | m_CFLGrowth |
CFL growth rate. More... | |
NekDouble | m_CFLEnd |
Maximun cfl in cfl growth. More... | |
int | m_abortSteps |
Number of steps between checks for abort conditions. More... | |
bool | m_explicitDiffusion |
Indicates if explicit or implicit treatment of diffusion is used. More... | |
bool | m_explicitAdvection |
Indicates if explicit or implicit treatment of advection is used. More... | |
bool | m_explicitReaction |
Indicates if explicit or implicit treatment of reaction is used. More... | |
int | m_steadyStateSteps |
Check for steady state at step interval. More... | |
NekDouble | m_steadyStateTol |
Tolerance to which steady state should be evaluated at. More... | |
int | m_filtersInfosteps |
Number of time steps between outputting filters information. More... | |
std::vector< std::pair< std::string, FilterSharedPtr > > | m_filters |
bool | m_homoInitialFwd |
Flag to determine if simulation should start in homogeneous forward transformed state. More... | |
std::ofstream | m_errFile |
NekDouble | m_epsilon |
Diffusion coefficient. More... | |
![]() | |
LibUtilities::CommSharedPtr | m_comm |
Communicator. More... | |
bool | m_verbose |
LibUtilities::SessionReaderSharedPtr | m_session |
The session reader. More... | |
std::map< std::string, SolverUtils::SessionFunctionSharedPtr > | m_sessionFunctions |
Map of known SessionFunctions. More... | |
LibUtilities::FieldIOSharedPtr | m_fld |
Field input/output. More... | |
Array< OneD, MultiRegions::ExpListSharedPtr > | m_fields |
Array holding all dependent variables. More... | |
SpatialDomains::BoundaryConditionsSharedPtr | m_boundaryConditions |
Pointer to boundary conditions object. More... | |
SpatialDomains::MeshGraphSharedPtr | m_graph |
Pointer to graph defining mesh. More... | |
std::string | m_sessionName |
Name of the session. More... | |
NekDouble | m_time |
Current time of simulation. More... | |
int | m_initialStep |
Number of the step where the simulation should begin. More... | |
NekDouble | m_fintime |
Finish time of the simulation. More... | |
NekDouble | m_timestep |
Time step size. More... | |
NekDouble | m_lambda |
Lambda constant in real system if one required. More... | |
NekDouble | m_checktime |
Time between checkpoints. More... | |
NekDouble | m_lastCheckTime |
NekDouble | m_TimeIncrementFactor |
int | m_nchk |
Number of checkpoints written so far. More... | |
int | m_steps |
Number of steps to take. More... | |
int | m_checksteps |
Number of steps between checkpoints. More... | |
int | m_infosteps |
Number of time steps between outputting status information. More... | |
int | m_iterPIT = 0 |
Number of parallel-in-time time iteration. More... | |
int | m_windowPIT = 0 |
Index of windows for parallel-in-time time iteration. More... | |
int | m_spacedim |
Spatial dimension (>= expansion dim). More... | |
int | m_expdim |
Expansion dimension. More... | |
bool | m_singleMode |
Flag to determine if single homogeneous mode is used. More... | |
bool | m_halfMode |
Flag to determine if half homogeneous mode is used. More... | |
bool | m_multipleModes |
Flag to determine if use multiple homogenenous modes are used. More... | |
bool | m_useFFT |
Flag to determine if FFT is used for homogeneous transform. More... | |
bool | m_homogen_dealiasing |
Flag to determine if dealiasing is used for homogeneous simulations. More... | |
bool | m_specHP_dealiasing |
Flag to determine if dealisising is usde for the Spectral/hp element discretisation. More... | |
enum MultiRegions::ProjectionType | m_projectionType |
Type of projection; e.g continuous or discontinuous. More... | |
Array< OneD, Array< OneD, NekDouble > > | m_traceNormals |
Array holding trace normals for DG simulations in the forwards direction. More... | |
Array< OneD, bool > | m_checkIfSystemSingular |
Flag to indicate if the fields should be checked for singularity. More... | |
LibUtilities::FieldMetaDataMap | m_fieldMetaDataMap |
Map to identify relevant solver info to dump in output fields. More... | |
Array< OneD, NekDouble > | m_movingFrameVelsxyz |
Moving frame of reference velocities (u, v, w, omega_x, omega_y, omega_z, a_x, a_y, a_z, domega_x, domega_y, domega_z) More... | |
Array< OneD, NekDouble > | m_movingFrameData |
Moving frame of reference angles with respect to the. More... | |
boost::numeric::ublas::matrix< NekDouble > | m_movingFrameProjMat |
Projection matrix for transformation between inertial and moving. More... | |
int | m_NumQuadPointsError |
Number of Quadrature points used to work out the error. More... | |
enum HomogeneousType | m_HomogeneousType |
NekDouble | m_LhomX |
physical length in X direction (if homogeneous) More... | |
NekDouble | m_LhomY |
physical length in Y direction (if homogeneous) More... | |
NekDouble | m_LhomZ |
physical length in Z direction (if homogeneous) More... | |
int | m_npointsX |
number of points in X direction (if homogeneous) More... | |
int | m_npointsY |
number of points in Y direction (if homogeneous) More... | |
int | m_npointsZ |
number of points in Z direction (if homogeneous) More... | |
int | m_HomoDirec |
number of homogenous directions More... | |
Additional Inherited Members | |
![]() | |
static std::string | cmdSetStartTime |
static std::string | cmdSetStartChkNum |
![]() | |
enum | HomogeneousType { eHomogeneous1D , eHomogeneous2D , eHomogeneous3D , eNotHomogeneous } |
Parameter for homogeneous expansions. More... | |
![]() | |
static std::string | equationSystemTypeLookupIds [] |
static std::string | projectionTypeLookupIds [] |
Definition at line 46 of file CompressibleFlowSystemImplicit.h.
Nektar::CFSImplicit::CFSImplicit | ( | const LibUtilities::SessionReaderSharedPtr & | pSession, |
const SpatialDomains::MeshGraphSharedPtr & | pGraph | ||
) |
Definition at line 44 of file CompressibleFlowSystemImplicit.cpp.
|
overridedefault |
|
protected |
Definition at line 1050 of file CompressibleFlowSystemImplicit.cpp.
References Nektar::LibUtilities::Timer::AccumulateRegion(), GetTraceJac(), Nektar::SolverUtils::AdvectionSystem::m_advObject, Nektar::SolverUtils::EquationSystem::m_fields, Nektar::SolverUtils::EquationSystem::m_spacedim, Nektar::LibUtilities::Timer::Start(), and Nektar::LibUtilities::Timer::Stop().
Referenced by CalcPreconMatBRJCoeff().
|
protected |
Definition at line 578 of file CompressibleFlowSystemImplicit.cpp.
References Nektar::MemoryManager< DataType >::AllocateSharedPtr(), CalcMuDmuDT(), CalcVolJacStdMat(), Vmath::Fill(), Blas::Ger(), GetFluxDerivJacDirctnElmt(), GetFluxVectorJacDirElmt(), Nektar::SolverUtils::EquationSystem::GetPhys_Offset(), m_advectionJacFlag, Nektar::SolverUtils::EquationSystem::m_fields, Nektar::SolverUtils::EquationSystem::m_graph, m_nPadding, Nektar::SolverUtils::EquationSystem::m_spacedim, m_viscousJacFlag, MinusDiffusionFluxJacPoint(), Vmath::Vadd(), Vmath::Vcopy(), and Vmath::Zero().
Referenced by CalcPreconMatBRJCoeff().
|
inlineprotected |
Definition at line 220 of file CompressibleFlowSystemImplicit.h.
References Nektar::MemoryManager< DataType >::AllocateSharedPtr(), and Nektar::eDIAGONAL.
Referenced by ElmtVarInvMtrx(), and GetTraceJac().
|
inlineprotected |
Definition at line 333 of file CompressibleFlowSystemImplicit.h.
References v_CalcMuDmuDT().
Referenced by AddMatNSBlkDiagVol().
|
inlineprotected |
Definition at line 327 of file CompressibleFlowSystemImplicit.h.
References v_CalcPhysDeriv().
Referenced by CalcPreconMatBRJCoeff().
|
protected |
Definition at line 1492 of file CompressibleFlowSystemImplicit.cpp.
References Nektar::LibUtilities::Timer::AccumulateRegion(), AddMatNSBlkDiagBnd(), AddMatNSBlkDiagVol(), CalcPhysDeriv(), ElmtVarInvMtrx(), Fill2DArrayOfBlkDiagonalMat(), m_stdSMatDataDBB, m_stdSMatDataDBDB, m_TimeIntegLambda, m_viscousJacFlag, Nektar::LibUtilities::Timer::Start(), Nektar::LibUtilities::Timer::Stop(), and TransTraceJacMatToArray().
Referenced by InitialiseNonlinSysSolver().
Definition at line 461 of file CompressibleFlowSystemImplicit.cpp.
References Vmath::Dot(), Nektar::SolverUtils::EquationSystem::m_comm, Nektar::SolverUtils::EquationSystem::m_fields, m_inArrayNorm, m_magnitdEstimat, Nektar::SolverUtils::EquationSystem::m_verbose, Nektar::LibUtilities::ReduceSum, and tinysimd::sqrt().
Referenced by DoImplicitSolveCoeff().
|
protected |
Definition at line 1417 of file CompressibleFlowSystemImplicit.cpp.
References ASSERTL0, ASSERTL1, m_advectionJacFlag, Nektar::SolverUtils::AdvectionSystem::m_advObject, Nektar::CompressibleFlowSystem::m_bndEvaluateTime, Nektar::CompressibleFlowSystem::m_diffusion, Nektar::SolverUtils::EquationSystem::m_fields, Nektar::SolverUtils::EquationSystem::m_session, m_viscousJacFlag, Nektar::NullNekDoubleTensorOfArray3D, and Vmath::Vsub().
Referenced by NumCalcRiemFluxJac().
|
protected |
Definition at line 915 of file CompressibleFlowSystemImplicit.cpp.
References Nektar::StdRegions::eBwdMat, Nektar::StdRegions::eDerivBase0, Nektar::StdRegions::eDerivBase1, Nektar::StdRegions::eDerivBase2, Nektar::SolverUtils::EquationSystem::m_fields, m_nPadding, and Nektar::SolverUtils::EquationSystem::m_spacedim.
Referenced by AddMatNSBlkDiagVol().
|
protected |
Compute the advection terms for the right-hand side.
Definition at line 374 of file CompressibleFlowSystemImplicit.cpp.
References ASSERTL0, Nektar::SolverUtils::AdvectionSystem::m_advObject, Nektar::SolverUtils::EquationSystem::m_fields, and Nektar::SolverUtils::EquationSystem::m_spacedim.
Referenced by DoOdeRhsCoeff().
|
protected |
Add the diffusions terms to the right-hand side Similar to DoDiffusion() but with outarray in coefficient space.
Definition at line 395 of file CompressibleFlowSystemImplicit.cpp.
References v_DoDiffusionCoeff().
Referenced by DoOdeRhsCoeff().
|
protected |
Definition at line 404 of file CompressibleFlowSystemImplicit.cpp.
References DoImplicitSolveCoeff(), Nektar::SolverUtils::EquationSystem::m_fields, and m_updateShockCaptPhys.
Referenced by v_InitObject().
|
protected |
Definition at line 437 of file CompressibleFlowSystemImplicit.cpp.
References CalcRefValues(), Nektar::CompressibleFlowSystem::m_bndEvaluateTime, m_inArrayNorm, m_newtonRelativeIteTol, m_nonlinsol, m_solutionPhys, m_TimeIntegLambda, m_TotImpStages, m_TotLinIts, m_TotNewtonIts, and tinysimd::sqrt().
Referenced by DoImplicitSolve().
|
protected |
Definition at line 267 of file CompressibleFlowSystemImplicit.cpp.
References DoOdeRhsCoeff(), and Nektar::SolverUtils::EquationSystem::m_fields.
Referenced by v_InitObject().
|
protected |
Compute the right-hand side.
Definition at line 291 of file CompressibleFlowSystemImplicit.cpp.
References Nektar::LibUtilities::Timer::AccumulateRegion(), DoAdvectionCoeff(), DoDiffusionCoeff(), Nektar::SolverUtils::EquationSystem::eHomogeneous1D, Nektar::CompressibleFlowSystem::GetElmtTimeStep(), Nektar::SolverUtils::EquationSystem::GetNcoeffs(), Nektar::SolverUtils::EquationSystem::GetTraceTotPoints(), Nektar::CompressibleFlowSystem::m_bndEvaluateTime, Nektar::SolverUtils::EquationSystem::m_fields, Nektar::CompressibleFlowSystem::m_forcing, Nektar::SolverUtils::EquationSystem::m_HomogeneousType, Nektar::SolverUtils::EquationSystem::m_timestep, Nektar::CompressibleFlowSystem::m_useLocalTimeStep, Vmath::Neg(), Nektar::NullNekDoubleArrayOfArray, Vmath::Smul(), Nektar::LibUtilities::Timer::Start(), and Nektar::LibUtilities::Timer::Stop().
Referenced by DoOdeImplicitRhs(), and NonlinSysEvaluatorCoeff().
|
protected |
Definition at line 1079 of file CompressibleFlowSystemImplicit.cpp.
References AllocateNekBlkMatDig(), ASSERTL0, and Vmath::Vcopy().
Referenced by CalcPreconMatBRJCoeff().
|
protected |
Definition at line 1847 of file CompressibleFlowSystemImplicit.cpp.
References Vmath::Fill().
Referenced by Fill2DArrayOfBlkDiagonalMat().
|
protected |
Definition at line 1834 of file CompressibleFlowSystemImplicit.cpp.
References Fill1DArrayOfBlkDiagonalMat().
Referenced by CalcPreconMatBRJCoeff().
|
inlineprotected |
Definition at line 317 of file CompressibleFlowSystemImplicit.h.
References v_GetFluxDerivJacDirctn().
|
inlineprotected |
Definition at line 293 of file CompressibleFlowSystemImplicit.h.
References v_GetFluxDerivJacDirctn().
|
inlineprotected |
Definition at line 304 of file CompressibleFlowSystemImplicit.h.
References v_GetFluxDerivJacDirctnElmt().
Referenced by AddMatNSBlkDiagVol().
|
protected |
Definition at line 1712 of file CompressibleFlowSystemImplicit.cpp.
References GetFluxVectorJacPoint(), and Vmath::Vcopy().
Referenced by AddMatNSBlkDiagVol().
|
protected |
Definition at line 1738 of file CompressibleFlowSystemImplicit.cpp.
References Nektar::MemoryManager< DataType >::AllocateSharedPtr(), Nektar::ErrorUtil::efatal, Nektar::SolverUtils::EquationSystem::m_spacedim, NEKERROR, and PointFluxJacobianPoint().
Referenced by GetFluxVectorJacDirElmt().
|
protected |
Definition at line 1169 of file CompressibleFlowSystemImplicit.cpp.
References AllocateNekBlkMatDig(), Nektar::SolverUtils::EquationSystem::eHomogeneous1D, Nektar::SolverUtils::EquationSystem::GetTraceTotPoints(), Nektar::CompressibleFlowSystem::m_bndEvaluateTime, Nektar::SolverUtils::EquationSystem::m_fields, Nektar::SolverUtils::EquationSystem::m_HomogeneousType, Nektar::SolverUtils::EquationSystem::m_spacedim, Nektar::NullNekDoubleArrayOfArray, and NumCalcRiemFluxJac().
Referenced by AddMatNSBlkDiagBnd().
|
protected |
Definition at line 87 of file CompressibleFlowSystemImplicit.cpp.
References ASSERTL0, CalcPreconMatBRJCoeff(), Nektar::LibUtilities::NekFactory< tKey, tBase, tParam >::CreateInstance(), Nektar::NekPreconCfsOperators::DefineCalcPreconMatBRJCoeff(), Nektar::LibUtilities::NekSysOperators::DefineNekSysLhsEval(), Nektar::LibUtilities::NekSysOperators::DefineNekSysPrecon(), Nektar::LibUtilities::NekSysOperators::DefineNekSysResEval(), Nektar::LibUtilities::GetNekNonlinSysFactory(), Nektar::GetPreconCfsFactory(), Nektar::SolverUtils::EquationSystem::m_comm, Nektar::LibUtilities::NekSysKey::m_DifferenceFlag0, Nektar::LibUtilities::NekSysKey::m_DifferenceFlag1, Nektar::SolverUtils::EquationSystem::m_fields, Nektar::LibUtilities::NekSysKey::m_KrylovMaxHessMatBand, Nektar::LibUtilities::NekSysKey::m_LinSysIterSolverTypeInNonlin, Nektar::LibUtilities::NekSysKey::m_LinSysMaxStorage, Nektar::LibUtilities::NekSysKey::m_LinSysRelativeTolInNonlin, Nektar::LibUtilities::NekSysKey::m_NekLinSysLeftPrecon, Nektar::LibUtilities::NekSysKey::m_NekLinSysMaxIterations, Nektar::LibUtilities::NekSysKey::m_NekLinSysRightPrecon, Nektar::LibUtilities::NekSysKey::m_NekNonlinSysMaxIterations, Nektar::LibUtilities::NekSysKey::m_NonlinIterTolRelativeL2, m_nonlinsol, m_preconCfs, Nektar::SolverUtils::EquationSystem::m_session, Nektar::SolverUtils::EquationSystem::m_spacedim, MatrixMultiplyMatrixFreeCoeff(), NonlinSysEvaluatorCoeff1D(), and PreconCoeff().
Referenced by v_InitObject().
|
protected |
Definition at line 515 of file CompressibleFlowSystemImplicit.cpp.
References Vmath::Dot(), Nektar::SolverUtils::EquationSystem::m_comm, m_inArrayNorm, m_jacobiFreeEps, m_nonlinsol, NonlinSysEvaluatorCoeff1D(), Nektar::LibUtilities::ReduceSum, Vmath::Smul(), tinysimd::sqrt(), Vmath::Svtvp(), and Vmath::Vsub().
Referenced by InitialiseNonlinSysSolver().
|
inlineprotected |
Definition at line 279 of file CompressibleFlowSystemImplicit.h.
References v_MinusDiffusionFluxJacPoint().
Referenced by AddMatNSBlkDiagVol().
|
protected |
Definition at line 1550 of file CompressibleFlowSystemImplicit.cpp.
References Nektar::MemoryManager< DataType >::AllocateSharedPtr(), Nektar::StdRegions::eBwdTrans, Nektar::LibUtilities::eNoShapeType, Vmath::Fill(), Nektar::SolverUtils::EquationSystem::GetNcoeffs(), Nektar::SolverUtils::EquationSystem::GetTotPoints(), Nektar::SolverUtils::EquationSystem::m_fields, Nektar::Array< OneD, const DataType >::size(), Vmath::Smul(), Vmath::Vadd(), and Vmath::Vcopy().
|
protected |
Definition at line 231 of file CompressibleFlowSystemImplicit.cpp.
References Nektar::LibUtilities::Timer::AccumulateRegion(), Nektar::CompressibleFlowSystem::DoOdeProjection(), DoOdeRhsCoeff(), Nektar::CompressibleFlowSystem::m_bndEvaluateTime, Nektar::SolverUtils::EquationSystem::m_fields, m_nonlinsol, m_TimeIntegLambda, Nektar::LibUtilities::Timer::Start(), Nektar::LibUtilities::Timer::Stop(), Vmath::Svtvp(), and Vmath::Vsub().
Referenced by NonlinSysEvaluatorCoeff1D().
|
protected |
Definition at line 209 of file CompressibleFlowSystemImplicit.cpp.
References Nektar::LibUtilities::Timer::AccumulateRegion(), Nektar::SolverUtils::EquationSystem::m_fields, NonlinSysEvaluatorCoeff(), Nektar::LibUtilities::Timer::Start(), and Nektar::LibUtilities::Timer::Stop().
Referenced by InitialiseNonlinSysSolver(), and MatrixMultiplyMatrixFreeCoeff().
|
protected |
Definition at line 1226 of file CompressibleFlowSystemImplicit.cpp.
References CalcTraceNumericalFlux(), Nektar::SolverUtils::EquationSystem::GetNpoints(), Nektar::SolverUtils::EquationSystem::GetTraceTotPoints(), Nektar::CompressibleFlowSystem::m_bndConds, Nektar::SolverUtils::EquationSystem::m_fields, m_magnitdEstimat, Nektar::SolverUtils::EquationSystem::m_spacedim, m_viscousJacFlag, Nektar::NullNekDouble1DArray, Vmath::Sadd(), Vmath::Smul(), Vmath::Vcopy(), and Vmath::Vsub().
Referenced by GetTraceJac().
|
protected |
Definition at line 1878 of file CompressibleFlowSystemImplicit.cpp.
References tinysimd::abs(), Nektar::CompressibleFlowSystem::m_gamma, Nektar::CompressibleFlowSystem::m_varConv, and tinysimd::sqrt().
Referenced by GetFluxVectorJacPoint().
|
protected |
Definition at line 538 of file CompressibleFlowSystemImplicit.cpp.
References Nektar::LibUtilities::Timer::AccumulateRegion(), Nektar::CompressibleFlowSystem::DoOdeProjection(), Nektar::CompressibleFlowSystem::m_bndEvaluateTime, Nektar::SolverUtils::EquationSystem::m_fields, m_preconCfs, m_solutionPhys, m_TimeIntegLambda, Nektar::NullNekDouble1DArray, Nektar::LibUtilities::Timer::Start(), and Nektar::LibUtilities::Timer::Stop().
Referenced by InitialiseNonlinSysSolver().
|
protected |
Definition at line 1807 of file CompressibleFlowSystemImplicit.cpp.
Referenced by TransTraceJacMatToArray().
|
protected |
Definition at line 1638 of file CompressibleFlowSystemImplicit.cpp.
References TranSamesizeBlkDiagMatIntoArray().
Referenced by CalcPreconMatBRJCoeff().
|
inlineprotectedvirtual |
Reimplemented in Nektar::NavierStokesImplicitCFE.
Definition at line 348 of file CompressibleFlowSystemImplicit.h.
Referenced by CalcMuDmuDT().
|
inlineprotectedvirtual |
Reimplemented in Nektar::NavierStokesImplicitCFE.
Definition at line 356 of file CompressibleFlowSystemImplicit.h.
Referenced by CalcPhysDeriv().
|
inlineprotectedvirtual |
Reimplemented in Nektar::NavierStokesImplicitCFE.
Definition at line 339 of file CompressibleFlowSystemImplicit.h.
Referenced by DoDiffusionCoeff().
Solves an unsteady problem.
Initialises the time integration scheme (as specified in the session file), and perform the time integration.
Reimplemented from Nektar::SolverUtils::UnsteadySystem.
Definition at line 172 of file CompressibleFlowSystemImplicit.cpp.
References m_TotImpStages, m_TotLinIts, m_TotNewtonIts, and Nektar::SolverUtils::UnsteadySystem::v_DoSolve().
|
protectedvirtual |
Reimplemented in Nektar::NavierStokesImplicitCFE.
|
protectedvirtual |
Reimplemented in Nektar::NavierStokesImplicitCFE.
Definition at line 1680 of file CompressibleFlowSystemImplicit.cpp.
References Nektar::ErrorUtil::efatal, and NEKERROR.
Referenced by GetFluxDerivJacDirctn().
|
protectedvirtual |
Reimplemented in Nektar::NavierStokesImplicitCFE.
Definition at line 1691 of file CompressibleFlowSystemImplicit.cpp.
References Nektar::ErrorUtil::efatal, and NEKERROR.
Referenced by GetFluxDerivJacDirctnElmt().
|
overrideprotectedvirtual |
Initialization object for CFSImplicit class.
Reimplemented from Nektar::CompressibleFlowSystem.
Reimplemented in Nektar::EulerImplicitCFE, and Nektar::NavierStokesImplicitCFE.
Definition at line 53 of file CompressibleFlowSystemImplicit.cpp.
References Nektar::LibUtilities::TimeIntegrationSchemeOperators::DefineImplicitSolve(), Nektar::LibUtilities::TimeIntegrationSchemeOperators::DefineOdeRhs(), DoImplicitSolve(), DoOdeImplicitRhs(), InitialiseNonlinSysSolver(), m_advectionJacFlag, Nektar::SolverUtils::UnsteadySystem::m_explicitAdvection, Nektar::SolverUtils::UnsteadySystem::m_explicitDiffusion, m_flagImplicitItsStatistics, m_jacobiFreeEps, m_newtonRelativeIteTol, m_nPadding, Nektar::SolverUtils::UnsteadySystem::m_ode, Nektar::SolverUtils::EquationSystem::m_session, m_viscousJacFlag, Nektar::CompressibleFlowSystem::v_InitObject(), and WARNINGL0.
Referenced by Nektar::EulerImplicitCFE::v_InitObject(), and Nektar::NavierStokesImplicitCFE::v_InitObject().
|
protectedvirtual |
Reimplemented in Nektar::NavierStokesImplicitCFE.
Definition at line 1535 of file CompressibleFlowSystemImplicit.cpp.
Referenced by MinusDiffusionFluxJacPoint().
|
overrideprotectedvirtual |
Print Status Information.
Reimplemented from Nektar::SolverUtils::UnsteadySystem.
Definition at line 180 of file CompressibleFlowSystemImplicit.cpp.
References m_flagImplicitItsStatistics, Nektar::SolverUtils::EquationSystem::m_infosteps, Nektar::SolverUtils::EquationSystem::m_session, m_TotImpStages, m_TotLinIts, m_TotNewtonIts, and Nektar::SolverUtils::UnsteadySystem::v_PrintStatusInformation().
|
overrideprotectedvirtual |
Print Summary Statistics.
Reimplemented from Nektar::SolverUtils::UnsteadySystem.
Definition at line 195 of file CompressibleFlowSystemImplicit.cpp.
References m_flagImplicitItsStatistics, Nektar::SolverUtils::EquationSystem::m_session, m_TotImpStages, m_TotLinIts, m_TotNewtonIts, and Nektar::SolverUtils::UnsteadySystem::v_PrintSummaryStatistics().
|
overrideprotectedvirtual |
Reimplemented from Nektar::SolverUtils::UnsteadySystem.
Definition at line 1995 of file CompressibleFlowSystemImplicit.cpp.
References Nektar::SolverUtils::EquationSystem::m_checktime, Nektar::SolverUtils::EquationSystem::m_fintime, Nektar::SolverUtils::EquationSystem::m_lastCheckTime, m_preconCfs, Nektar::SolverUtils::EquationSystem::m_time, m_TimeIntegLambda, Nektar::SolverUtils::EquationSystem::m_timestep, and Nektar::NullNekDouble1DArray.
|
protected |
Definition at line 57 of file CompressibleFlowSystemImplicit.h.
Referenced by AddMatNSBlkDiagVol(), CalcTraceNumericalFlux(), and v_InitObject().
|
protected |
Definition at line 58 of file CompressibleFlowSystemImplicit.h.
Referenced by v_InitObject(), v_PrintStatusInformation(), and v_PrintSummaryStatistics().
|
protected |
Definition at line 75 of file CompressibleFlowSystemImplicit.h.
Referenced by CalcRefValues(), DoImplicitSolveCoeff(), and MatrixMultiplyMatrixFreeCoeff().
|
protected |
Definition at line 76 of file CompressibleFlowSystemImplicit.h.
Referenced by MatrixMultiplyMatrixFreeCoeff(), and v_InitObject().
Estimate the magnitude of each conserved varibles.
Definition at line 68 of file CompressibleFlowSystemImplicit.h.
Referenced by CalcRefValues(), and NumCalcRiemFluxJac().
|
protected |
Definition at line 77 of file CompressibleFlowSystemImplicit.h.
Referenced by DoImplicitSolveCoeff(), and v_InitObject().
|
protected |
Definition at line 82 of file CompressibleFlowSystemImplicit.h.
Referenced by DoImplicitSolveCoeff(), InitialiseNonlinSysSolver(), MatrixMultiplyMatrixFreeCoeff(), and NonlinSysEvaluatorCoeff().
|
protected |
Definition at line 60 of file CompressibleFlowSystemImplicit.h.
Referenced by AddMatNSBlkDiagVol(), CalcVolJacStdMat(), and v_InitObject().
|
protected |
Definition at line 84 of file CompressibleFlowSystemImplicit.h.
Referenced by InitialiseNonlinSysSolver(), PreconCoeff(), and v_UpdateTimeStepCheck().
Definition at line 70 of file CompressibleFlowSystemImplicit.h.
Referenced by DoImplicitSolveCoeff(), and PreconCoeff().
|
protected |
Definition at line 79 of file CompressibleFlowSystemImplicit.h.
Referenced by CalcPreconMatBRJCoeff().
|
protected |
Definition at line 80 of file CompressibleFlowSystemImplicit.h.
Referenced by CalcPreconMatBRJCoeff().
|
protected |
coefff of spacial derivatives(rhs or m_F in GLM) in calculating the residual of the whole equation(used in unsteady time integrations)
Definition at line 74 of file CompressibleFlowSystemImplicit.h.
Referenced by CalcPreconMatBRJCoeff(), DoImplicitSolveCoeff(), NonlinSysEvaluatorCoeff(), PreconCoeff(), and v_UpdateTimeStepCheck().
|
protected |
Definition at line 65 of file CompressibleFlowSystemImplicit.h.
Referenced by DoImplicitSolveCoeff(), v_DoSolve(), v_PrintStatusInformation(), and v_PrintSummaryStatistics().
|
protected |
Definition at line 64 of file CompressibleFlowSystemImplicit.h.
Referenced by DoImplicitSolveCoeff(), v_DoSolve(), v_PrintStatusInformation(), and v_PrintSummaryStatistics().
|
protected |
Definition at line 63 of file CompressibleFlowSystemImplicit.h.
Referenced by DoImplicitSolveCoeff(), v_DoSolve(), v_PrintStatusInformation(), and v_PrintSummaryStatistics().
|
protected |
Definition at line 89 of file CompressibleFlowSystemImplicit.h.
Referenced by DoImplicitSolve(), and Nektar::NavierStokesImplicitCFE::v_DoDiffusionCoeff().
|
protected |
Definition at line 56 of file CompressibleFlowSystemImplicit.h.
Referenced by AddMatNSBlkDiagVol(), CalcPreconMatBRJCoeff(), CalcTraceNumericalFlux(), NumCalcRiemFluxJac(), v_InitObject(), and Nektar::EulerImplicitCFE::v_InitObject().