23 template <
class TSparseSpace,
class TDenseSpace>
56 this->
AddDampingToLHS(LHS_Contribution, mDampingMatrix[thread], CurrentProcessInfo);
58 this->
AddDampingToRHS(rCurrentElement, RHS_Contribution, mDampingMatrix[thread], CurrentProcessInfo);
78 this->
AddDampingToRHS(rCurrentElement, RHS_Contribution, mDampingMatrix[thread], CurrentProcessInfo);
98 this->
AddDampingToLHS(LHS_Contribution, mDampingMatrix[thread], CurrentProcessInfo);
121 if (
C.size1() != 0) {
123 noalias(RHS_Contribution) -=
prod(
C, mVelocityVector[thread]);
128 std::vector<Matrix> mDampingMatrix;
129 std::vector<Vector> mVelocityVector;
Base class for all Elements.
Definition: element.h:60
virtual void GetFirstDerivativesVector(Vector &values, int Step=0) const
Definition: element.h:310
virtual void CalculateLeftHandSide(MatrixType &rLeftHandSideMatrix, const ProcessInfo &rCurrentProcessInfo)
Definition: element.h:423
virtual void CalculateRightHandSide(VectorType &rRightHandSideVector, const ProcessInfo &rCurrentProcessInfo)
Definition: element.h:437
virtual void CalculateDampingMatrix(MatrixType &rDampingMatrix, const ProcessInfo &rCurrentProcessInfo)
Definition: element.h:583
virtual void EquationIdVector(EquationIdVectorType &rResult, const ProcessInfo &rCurrentProcessInfo) const
Definition: element.h:258
virtual void CalculateLocalSystem(MatrixType &rLeftHandSideMatrix, VectorType &rRightHandSideVector, const ProcessInfo &rCurrentProcessInfo)
Definition: element.h:405
std::vector< std::size_t > EquationIdVectorType
Definition: element.h:98
double GetGamma() const
Definition: generalized_newmark_scheme.hpp:96
double GetBeta() const
Definition: generalized_newmark_scheme.hpp:94
void EquationId(const Element &rElement, Element::EquationIdVectorType &rEquationId, const ProcessInfo &rCurrentProcessInfo) override
This method gets the eqaution id corresponding to the current element.
Definition: geomechanics_time_integration_scheme.hpp:96
double GetDeltaTime() const
Definition: geomechanics_time_integration_scheme.hpp:331
Definition: newmark_quasistatic_damped_U_Pw_scheme.hpp:25
void AddDampingToRHS(Element &rCurrentElement, LocalSystemVectorType &RHS_Contribution, LocalSystemMatrixType &C, const ProcessInfo &CurrentProcessInfo)
Definition: newmark_quasistatic_damped_U_Pw_scheme.hpp:113
void AddDampingToLHS(LocalSystemMatrixType &LHS_Contribution, LocalSystemMatrixType &C, const ProcessInfo &CurrentProcessInfo)
Definition: newmark_quasistatic_damped_U_Pw_scheme.hpp:106
KRATOS_CLASS_POINTER_DEFINITION(NewmarkQuasistaticDampedUPwScheme)
void CalculateSystemContributions(Element &rCurrentElement, LocalSystemMatrixType &LHS_Contribution, LocalSystemVectorType &RHS_Contribution, Element::EquationIdVectorType &EquationId, const ProcessInfo &CurrentProcessInfo) override
This function is designed to be called in the builder and solver to introduce the selected time integ...
Definition: newmark_quasistatic_damped_U_Pw_scheme.hpp:42
NewmarkQuasistaticDampedUPwScheme(double beta, double gamma, double theta)
Definition: newmark_quasistatic_damped_U_Pw_scheme.hpp:33
void CalculateLHSContribution(Element &rCurrentElement, LocalSystemMatrixType &LHS_Contribution, Element::EquationIdVectorType &EquationId, const ProcessInfo &CurrentProcessInfo) override
This function is designed to calculate just the LHS contribution.
Definition: newmark_quasistatic_damped_U_Pw_scheme.hpp:85
void CalculateRHSContribution(Element &rCurrentElement, LocalSystemVectorType &RHS_Contribution, Element::EquationIdVectorType &EquationId, const ProcessInfo &CurrentProcessInfo) override
This function is designed to calculate just the RHS contribution.
Definition: newmark_quasistatic_damped_U_Pw_scheme.hpp:65
Definition: newmark_quasistatic_U_Pw_scheme.hpp:27
static int ThisThread()
Wrapper for omp_get_thread_num().
Definition: openmp_utils.h:108
static int GetNumThreads()
Returns the current number of threads.
Definition: parallel_utilities.cpp:34
ProcessInfo holds the current value of different solution parameters.
Definition: process_info.h:59
This class provides the implementation of the basic tasks that are needed by the solution strategy.
Definition: scheme.h:56
typename TDenseSpace::VectorType LocalSystemVectorType
Local system vector type definition.
Definition: scheme.h:80
typename TDenseSpace::MatrixType LocalSystemMatrixType
Local system matrix type definition.
Definition: scheme.h:77
#define KRATOS_CATCH(MoreInfo)
Definition: define.h:110
#define KRATOS_TRY
Definition: define.h:109
REF: G. R. Cowper, GAUSSIAN QUADRATURE FORMULAS FOR TRIANGLES.
Definition: mesh_condition.cpp:21
AMatrix::MatrixProductExpression< TExpression1Type, TExpression2Type > prod(AMatrix::MatrixExpression< TExpression1Type, TCategory1 > const &First, AMatrix::MatrixExpression< TExpression2Type, TCategory2 > const &Second)
Definition: amatrix_interface.h:568
T & noalias(T &TheMatrix)
Definition: amatrix_interface.h:484
int C
Definition: generate_hyper_elastic_simo_taylor_neo_hookean.py:27
float gamma
Definition: generate_two_fluid_navier_stokes.py:131
def num_threads
Definition: script.py:75