|
|
| ExplicitBuilderAndSolver () |
| Default Constructor. More...
|
|
| ~ExplicitBuilderAndSolver () override |
| Destructor. More...
|
|
|
void | BuildLHS (SchemePointerType pScheme, ModelPart &rModelPart, SystemMatrixType &rA) override |
| Function to perform the building of the LHS,. More...
|
|
void | BuildRHS (SchemePointerType pScheme, ModelPart &rModelPart, SystemVectorType &rb) override |
| Function to perform the build of the RHS. More...
|
|
void | CalculateAndAddConditionsRHS (SchemePointerType pScheme, ModelPart &rModelPart) |
|
void | CalculateAndAddElementsRHS (SchemePointerType pScheme, ModelPart &rModelPart) |
|
void | Clear () override |
| This function is intended to be called at the end of the solution step to clean up memory storage not needed. More...
|
|
int | Check (ModelPart &rModelPart) override |
|
Public Member Functions inherited from Kratos::SolutionBuilderAndSolver< TSparseSpace, TDenseSpace, TLinearSolver > |
| SolutionBuilderAndSolver () |
| Default Constructor. More...
|
|
| SolutionBuilderAndSolver (LinearSolverPointerType pLinearSystemSolver) |
| Constructor. More...
|
|
| ~SolutionBuilderAndSolver () override |
| Destructor. More...
|
|
virtual void | Build (SchemePointerType pScheme, ModelPart &rModelPart, SystemMatrixType &rA, SystemVectorType &rb) |
| Function to perform the building of the LHS and RHS. More...
|
|
virtual void | SystemSolve (SystemMatrixType &rA, SystemVectorType &rDx, SystemVectorType &rb) |
| This is a call to the linear system solver. More...
|
|
virtual void | BuildAndSolve (SchemePointerType pScheme, ModelPart &rModelPart, SystemMatrixType &rA, SystemVectorType &rDx, SystemVectorType &rb) |
| Function to perform the building and solving phase at the same time. More...
|
|
virtual void | BuildRHSAndSolve (SchemePointerType pScheme, ModelPart &rModelPart, SystemMatrixType &rA, SystemVectorType &rDx, SystemVectorType &rb) |
| Function to perform the building of the RHS and solving phase at the same time. More...
|
|
virtual void | ApplyDirichletConditions (SchemePointerType pScheme, ModelPart &rModelPart, SystemMatrixType &rA, SystemVectorType &rDx, SystemVectorType &rb) |
| applies the dirichlet conditions. More...
|
|
virtual void | SetUpDofSet (SchemePointerType pScheme, ModelPart &rModelPart) |
| Builds the list of the DofSets involved in the problem by "asking" to each element and condition its Dofs. More...
|
|
virtual void | SetUpSystem () |
| organises the dofset in order to speed up the building phase More...
|
|
virtual void | SetUpSystemMatrices (SchemePointerType pScheme, ModelPart &rModelPart, SystemMatrixPointerType &pA, SystemVectorPointerType &pDx, SystemVectorPointerType &pb) |
| Resizes and Initializes the system vectors and matrices after SetUpDofSet and SetUpSytem has been called. More...
|
|
virtual void | InitializeSolutionStep (SchemePointerType pScheme, ModelPart &rModelPart, SystemMatrixPointerType &pA, SystemVectorPointerType &pDx, SystemVectorPointerType &pb) |
| Performs all the required operations that should be done (for each step) before solving the solution step. More...
|
|
virtual void | FinalizeSolutionStep (SchemePointerType pScheme, ModelPart &rModelPart, SystemMatrixPointerType &pA, SystemVectorPointerType &pDx, SystemVectorPointerType &pb) |
| Performs all the required operations that should be done (for each step) after solving the solution step. More...
|
|
virtual void | CalculateReactions (SchemePointerType pScheme, ModelPart &rModelPart, SystemMatrixType &rA, SystemVectorType &rDx, SystemVectorType &rb) |
| Calculates system reactions. More...
|
|
unsigned int | GetEquationSystemSize () |
| Get size of the system. More...
|
|
LinearSolverPointerType | GetLinearSystemSolver () |
| Get linear solver. More...
|
|
void | SetOptions (Flags &rOptions) |
| Sets strategy options. More...
|
|
Flags & | GetOptions () |
| Get strategy options. More...
|
|
virtual void | SetEchoLevel (const int Level) |
| This sets the level of echo for the builder and solver. More...
|
|
virtual int | GetEchoLevel () |
|
virtual void | EchoInfo (ModelPart &rModelPart, SystemMatrixType &rA, SystemVectorType &rDx, SystemVectorType &rb) |
| This method returns the components of the system of equations depending of the echo level. More...
|
|
virtual DofsArrayType & | GetDofSet () |
| Allows to get the list of system Dofs. More...
|
|
| KRATOS_CLASS_POINTER_DEFINITION (SolutionBuilderAndSolver) |
| Pointer definition of SolutionBuilderAndSolver. More...
|
|
Flags & | operator= (Flags const &rOther) |
| Assignment operator. More...
|
|
| operator bool () const |
|
Flags | operator~ () const |
|
bool | operator! () const |
|
void | AssignFlags (Flags const &rOther) |
|
void | Set (const Flags ThisFlag) |
|
void | Set (const Flags ThisFlag, bool Value) |
|
void | Reset (const Flags ThisFlag) |
|
void | Flip (const Flags ThisFlag) |
|
void | SetPosition (IndexType Position, bool Value=true) |
|
bool | GetPosition (IndexType Position) const |
|
void | FlipPosition (IndexType Position) |
|
void | ClearPosition (IndexType Position) |
|
void | Clear () |
|
Flags | AsFalse () const |
|
bool | Is (Flags const &rOther) const |
|
bool | IsDefined (Flags const &rOther) const |
|
bool | IsNot (Flags const &rOther) const |
|
bool | IsNotDefined (Flags const &rOther) const |
|
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...
|
|
| KRATOS_CLASS_POINTER_DEFINITION (Flags) |
| Pointer definition of Flags. More...
|
|
const Flags & | operator|= (const Flags &Other) |
|
const Flags & | operator&= (const Flags &Other) |
|
| Flags () |
| Default constructor. More...
|
|
| Flags (Flags const &rOther) |
| Copy constructor. More...
|
|
virtual | ~Flags () |
| Destructor. More...
|
|
|
Public Types inherited from Kratos::SolutionBuilderAndSolver< TSparseSpace, TDenseSpace, TLinearSolver > |
typedef SolverLocalFlags | LocalFlagType |
|
typedef ModelPart::DofsArrayType | DofsArrayType |
|
typedef TSparseSpace::MatrixType | SystemMatrixType |
|
typedef TSparseSpace::VectorType | SystemVectorType |
|
typedef TSparseSpace::MatrixPointerType | SystemMatrixPointerType |
|
typedef TSparseSpace::VectorPointerType | SystemVectorPointerType |
|
typedef TDenseSpace::MatrixType | LocalSystemMatrixType |
|
typedef TDenseSpace::VectorType | LocalSystemVectorType |
|
typedef SolutionScheme< TSparseSpace, TDenseSpace > | SchemeType |
|
typedef SchemeType::Pointer | SchemePointerType |
|
typedef TLinearSolver::Pointer | LinearSolverPointerType |
|
enum | FlagsList {
Flag0 = BlockType(1)
, Flag1 = BlockType(1) << 1
, Flag2 = BlockType(1) << 2
, Flag3 = BlockType(1) << 3
,
Flag4 = BlockType(1) << 4
, Flag5 = BlockType(1) << 5
, Flag6 = BlockType(1) << 6
, Flag7 = BlockType(1) << 7
,
Flag8 = BlockType(1) << 8
, Flag9 = BlockType(1) << 9
, Flag10 = BlockType(1) << 10
, Flag11 = BlockType(1) << 11
,
Flag12 = BlockType(1) << 12
, Flag13 = BlockType(1) << 13
, Flag14 = BlockType(1) << 14
, Flag15 = BlockType(1) << 15
,
Flag16 = BlockType(1) << 16
, Flag17 = BlockType(1) << 17
, Flag18 = BlockType(1) << 18
, Flag19 = BlockType(1) << 19
,
Flag20 = BlockType(1) << 20
, Flag21 = BlockType(1) << 21
, Flag22 = BlockType(1) << 22
, Flag23 = BlockType(1) << 23
,
Flag24 = BlockType(1) << 24
, Flag25 = BlockType(1) << 25
, Flag26 = BlockType(1) << 26
, Flag27 = BlockType(1) << 27
,
Flag28 = BlockType(1) << 28
, Flag29 = BlockType(1) << 29
, Flag30 = BlockType(1) << 30
} |
|
typedef int64_t | BlockType |
|
typedef int64_t | FlagType |
|
typedef std::size_t | IndexType |
|
static const Flags | AllDefined () |
|
static const Flags | AllTrue () |
|
static Flags | Create (IndexType ThisPosition, bool Value=true) |
|
Protected Attributes inherited from Kratos::SolutionBuilderAndSolver< TSparseSpace, TDenseSpace, TLinearSolver > |
LinearSolverPointerType | mpLinearSystemSolver |
|
DofsArrayType | mDofSet |
|
Flags | mOptions |
|
unsigned int | mEquationSystemSize |
|
int | mEchoLevel |
|
SystemVectorPointerType | mpReactionsVector |
|
template<class TSparseSpace, class TDenseSpace, class TLinearSolver>
class Kratos::ExplicitBuilderAndSolver< TSparseSpace, TDenseSpace, TLinearSolver >
Explicit Solution Buider and Solver base class.
This is the explicit builder and solver