KratosMultiphysics
KRATOS Multiphysics (Kratos) is a framework for building parallel, multi-disciplinary simulation software, aiming at modularity, extensibility, and high performance. Kratos is written in C++, and counts with an extensive Python interface.
List of all members
Kratos::SolverSettings< TSparseSpace, TDenseSpace, TLinearSolver > Class Template Referenceabstract

Helper class to define solution strategies for FS_Strategy. More...

#include <solver_settings.h>

Inheritance diagram for Kratos::SolverSettings< TSparseSpace, TDenseSpace, TLinearSolver >:
Collaboration diagram for Kratos::SolverSettings< TSparseSpace, TDenseSpace, TLinearSolver >:

Public Member Functions

Life Cycle
 SolverSettings (ModelPart &rModelPart, const unsigned int ThisDomainSize, const unsigned int ThisTimeOrder, const bool UseSlip, const bool MoveMeshFlag, const bool ReformDofSet)
 Constructor. More...
 
virtual ~SolverSettings ()
 Destructor. More...
 
Access
virtual StrategyPointerType pGetStrategy (StrategyLabel const &rStrategyLabel)
 
virtual void SetStrategy (StrategyLabel const &rStrategyLabel, StrategyPointerType pStrategy)
 
virtual void SetStrategy (StrategyLabel const &rStrategyLabel, typename TLinearSolver::Pointer pLinearSolver, const double Tolerance, const unsigned int MaxIter)=0
 
virtual void SetTurbulenceModel (TurbulenceModelLabel const &rTurbulenceModel, typename TLinearSolver::Pointer pLinearSolver, const double Tolerance, const unsigned int MaxIter)
 
virtual void SetTurbulenceModel (ProcessPointerType pTurbulenceModel)
 
virtual bool GetTurbulenceModel (ProcessPointerType &pTurbulenceModel)
 
virtual unsigned int GetDomainSize () const
 
virtual unsigned int GetTimeOrder () const
 
virtual bool UseSlipConditions () const
 
virtual bool MoveMesh () const
 
virtual bool FindStrategy (StrategyLabel const &rStrategyLabel, StrategyPointerType &pThisStrategy)
 
virtual bool FindTolerance (StrategyLabel const &rStrategyLabel, double &rTolerance)
 
virtual bool FindMaxIter (StrategyLabel const &rStrategyLabel, unsigned int &rMaxIter)
 
virtual void SetEchoLevel (unsigned int EchoLevel)
 
virtual unsigned int GetEchoLevel ()
 
bool GetReformDofSet ()
 
Input and output
virtual std::string Info () const
 Turn back information as a string. More...
 
virtual void PrintInfo (std::ostream &rOStream) const
 Print information about this object. More...
 
virtual void PrintData (std::ostream &rOStream) const
 Print object's data. More...
 

Type Definitions

enum  StrategyLabel { Velocity , Pressure , NumLabels }
 
enum  TurbulenceModelLabel { SpalartAllmaras , NumTurbModels }
 
typedef ImplicitSolvingStrategy< TSparseSpace, TDenseSpace, TLinearSolver > StrategyType
 
typedef StrategyType::Pointer StrategyPointerType
 
typedef Process::Pointer ProcessPointerType
 
typedef BuilderAndSolver< TSparseSpace, TDenseSpace, TLinearSolver > TBuilderAndSolverType
 
 KRATOS_CLASS_POINTER_DEFINITION (SolverSettings)
 Pointer definition of SolverSettings. More...
 

Protected Access

std::map< StrategyLabel, StrategyPointerTypemStrategies
 
std::map< StrategyLabel, doublemTolerances
 
std::map< StrategyLabel, unsigned intmMaxIter
 
ProcessPointerType mpTurbulenceModel
 
bool mHaveTurbulenceModel
 
ModelPartGetModelPart ()
 

Detailed Description

template<class TSparseSpace, class TDenseSpace, class TLinearSolver>
class Kratos::SolverSettings< TSparseSpace, TDenseSpace, TLinearSolver >

Helper class to define solution strategies for FS_Strategy.

Member Typedef Documentation

◆ ProcessPointerType

template<class TSparseSpace , class TDenseSpace , class TLinearSolver >
typedef Process::Pointer Kratos::SolverSettings< TSparseSpace, TDenseSpace, TLinearSolver >::ProcessPointerType

◆ StrategyPointerType

template<class TSparseSpace , class TDenseSpace , class TLinearSolver >
typedef StrategyType::Pointer Kratos::SolverSettings< TSparseSpace, TDenseSpace, TLinearSolver >::StrategyPointerType

◆ StrategyType

template<class TSparseSpace , class TDenseSpace , class TLinearSolver >
typedef ImplicitSolvingStrategy<TSparseSpace,TDenseSpace,TLinearSolver> Kratos::SolverSettings< TSparseSpace, TDenseSpace, TLinearSolver >::StrategyType

◆ TBuilderAndSolverType

template<class TSparseSpace , class TDenseSpace , class TLinearSolver >
typedef BuilderAndSolver<TSparseSpace,TDenseSpace,TLinearSolver> Kratos::SolverSettings< TSparseSpace, TDenseSpace, TLinearSolver >::TBuilderAndSolverType

Member Enumeration Documentation

◆ StrategyLabel

template<class TSparseSpace , class TDenseSpace , class TLinearSolver >
enum Kratos::SolverSettings::StrategyLabel
Enumerator
Velocity 
Pressure 
NumLabels 

◆ TurbulenceModelLabel

template<class TSparseSpace , class TDenseSpace , class TLinearSolver >
enum Kratos::SolverSettings::TurbulenceModelLabel
Enumerator
SpalartAllmaras 
NumTurbModels 

Constructor & Destructor Documentation

◆ SolverSettings()

template<class TSparseSpace , class TDenseSpace , class TLinearSolver >
Kratos::SolverSettings< TSparseSpace, TDenseSpace, TLinearSolver >::SolverSettings ( ModelPart rModelPart,
const unsigned int  ThisDomainSize,
const unsigned int  ThisTimeOrder,
const bool  UseSlip,
const bool  MoveMeshFlag,
const bool  ReformDofSet 
)
inline

Constructor.

◆ ~SolverSettings()

template<class TSparseSpace , class TDenseSpace , class TLinearSolver >
virtual Kratos::SolverSettings< TSparseSpace, TDenseSpace, TLinearSolver >::~SolverSettings ( )
inlinevirtual

Destructor.

Member Function Documentation

◆ FindMaxIter()

template<class TSparseSpace , class TDenseSpace , class TLinearSolver >
virtual bool Kratos::SolverSettings< TSparseSpace, TDenseSpace, TLinearSolver >::FindMaxIter ( StrategyLabel const &  rStrategyLabel,
unsigned int rMaxIter 
)
inlinevirtual

◆ FindStrategy()

template<class TSparseSpace , class TDenseSpace , class TLinearSolver >
virtual bool Kratos::SolverSettings< TSparseSpace, TDenseSpace, TLinearSolver >::FindStrategy ( StrategyLabel const &  rStrategyLabel,
StrategyPointerType pThisStrategy 
)
inlinevirtual

◆ FindTolerance()

template<class TSparseSpace , class TDenseSpace , class TLinearSolver >
virtual bool Kratos::SolverSettings< TSparseSpace, TDenseSpace, TLinearSolver >::FindTolerance ( StrategyLabel const &  rStrategyLabel,
double rTolerance 
)
inlinevirtual

◆ GetDomainSize()

template<class TSparseSpace , class TDenseSpace , class TLinearSolver >
virtual unsigned int Kratos::SolverSettings< TSparseSpace, TDenseSpace, TLinearSolver >::GetDomainSize ( ) const
inlinevirtual

◆ GetEchoLevel()

template<class TSparseSpace , class TDenseSpace , class TLinearSolver >
virtual unsigned int Kratos::SolverSettings< TSparseSpace, TDenseSpace, TLinearSolver >::GetEchoLevel ( )
inlinevirtual

◆ GetModelPart()

template<class TSparseSpace , class TDenseSpace , class TLinearSolver >
ModelPart& Kratos::SolverSettings< TSparseSpace, TDenseSpace, TLinearSolver >::GetModelPart ( )
inlineprotected

◆ GetReformDofSet()

template<class TSparseSpace , class TDenseSpace , class TLinearSolver >
bool Kratos::SolverSettings< TSparseSpace, TDenseSpace, TLinearSolver >::GetReformDofSet ( )
inline

◆ GetTimeOrder()

template<class TSparseSpace , class TDenseSpace , class TLinearSolver >
virtual unsigned int Kratos::SolverSettings< TSparseSpace, TDenseSpace, TLinearSolver >::GetTimeOrder ( ) const
inlinevirtual

◆ GetTurbulenceModel()

template<class TSparseSpace , class TDenseSpace , class TLinearSolver >
virtual bool Kratos::SolverSettings< TSparseSpace, TDenseSpace, TLinearSolver >::GetTurbulenceModel ( ProcessPointerType pTurbulenceModel)
inlinevirtual

◆ Info()

template<class TSparseSpace , class TDenseSpace , class TLinearSolver >
virtual std::string Kratos::SolverSettings< TSparseSpace, TDenseSpace, TLinearSolver >::Info ( ) const
inlinevirtual

◆ KRATOS_CLASS_POINTER_DEFINITION()

template<class TSparseSpace , class TDenseSpace , class TLinearSolver >
Kratos::SolverSettings< TSparseSpace, TDenseSpace, TLinearSolver >::KRATOS_CLASS_POINTER_DEFINITION ( SolverSettings< TSparseSpace, TDenseSpace, TLinearSolver >  )

Pointer definition of SolverSettings.

◆ MoveMesh()

template<class TSparseSpace , class TDenseSpace , class TLinearSolver >
virtual bool Kratos::SolverSettings< TSparseSpace, TDenseSpace, TLinearSolver >::MoveMesh ( ) const
inlinevirtual

◆ pGetStrategy()

template<class TSparseSpace , class TDenseSpace , class TLinearSolver >
virtual StrategyPointerType Kratos::SolverSettings< TSparseSpace, TDenseSpace, TLinearSolver >::pGetStrategy ( StrategyLabel const &  rStrategyLabel)
inlinevirtual

◆ PrintData()

template<class TSparseSpace , class TDenseSpace , class TLinearSolver >
virtual void Kratos::SolverSettings< TSparseSpace, TDenseSpace, TLinearSolver >::PrintData ( std::ostream &  rOStream) const
inlinevirtual

◆ PrintInfo()

template<class TSparseSpace , class TDenseSpace , class TLinearSolver >
virtual void Kratos::SolverSettings< TSparseSpace, TDenseSpace, TLinearSolver >::PrintInfo ( std::ostream &  rOStream) const
inlinevirtual

◆ SetEchoLevel()

template<class TSparseSpace , class TDenseSpace , class TLinearSolver >
virtual void Kratos::SolverSettings< TSparseSpace, TDenseSpace, TLinearSolver >::SetEchoLevel ( unsigned int  EchoLevel)
inlinevirtual

◆ SetStrategy() [1/2]

template<class TSparseSpace , class TDenseSpace , class TLinearSolver >
virtual void Kratos::SolverSettings< TSparseSpace, TDenseSpace, TLinearSolver >::SetStrategy ( StrategyLabel const &  rStrategyLabel,
StrategyPointerType  pStrategy 
)
inlinevirtual

◆ SetStrategy() [2/2]

template<class TSparseSpace , class TDenseSpace , class TLinearSolver >
virtual void Kratos::SolverSettings< TSparseSpace, TDenseSpace, TLinearSolver >::SetStrategy ( StrategyLabel const &  rStrategyLabel,
typename TLinearSolver::Pointer  pLinearSolver,
const double  Tolerance,
const unsigned int  MaxIter 
)
pure virtual

◆ SetTurbulenceModel() [1/2]

template<class TSparseSpace , class TDenseSpace , class TLinearSolver >
virtual void Kratos::SolverSettings< TSparseSpace, TDenseSpace, TLinearSolver >::SetTurbulenceModel ( ProcessPointerType  pTurbulenceModel)
inlinevirtual

◆ SetTurbulenceModel() [2/2]

template<class TSparseSpace , class TDenseSpace , class TLinearSolver >
virtual void Kratos::SolverSettings< TSparseSpace, TDenseSpace, TLinearSolver >::SetTurbulenceModel ( TurbulenceModelLabel const &  rTurbulenceModel,
typename TLinearSolver::Pointer  pLinearSolver,
const double  Tolerance,
const unsigned int  MaxIter 
)
inlinevirtual

◆ UseSlipConditions()

template<class TSparseSpace , class TDenseSpace , class TLinearSolver >
virtual bool Kratos::SolverSettings< TSparseSpace, TDenseSpace, TLinearSolver >::UseSlipConditions ( ) const
inlinevirtual

Member Data Documentation

◆ mHaveTurbulenceModel

template<class TSparseSpace , class TDenseSpace , class TLinearSolver >
bool Kratos::SolverSettings< TSparseSpace, TDenseSpace, TLinearSolver >::mHaveTurbulenceModel
protected

◆ mMaxIter

template<class TSparseSpace , class TDenseSpace , class TLinearSolver >
std::map< StrategyLabel, unsigned int > Kratos::SolverSettings< TSparseSpace, TDenseSpace, TLinearSolver >::mMaxIter
protected

◆ mpTurbulenceModel

template<class TSparseSpace , class TDenseSpace , class TLinearSolver >
ProcessPointerType Kratos::SolverSettings< TSparseSpace, TDenseSpace, TLinearSolver >::mpTurbulenceModel
protected

◆ mStrategies

template<class TSparseSpace , class TDenseSpace , class TLinearSolver >
std::map< StrategyLabel, StrategyPointerType > Kratos::SolverSettings< TSparseSpace, TDenseSpace, TLinearSolver >::mStrategies
protected

◆ mTolerances

template<class TSparseSpace , class TDenseSpace , class TLinearSolver >
std::map< StrategyLabel, double > Kratos::SolverSettings< TSparseSpace, TDenseSpace, TLinearSolver >::mTolerances
protected

The documentation for this class was generated from the following file: