13 #if !defined(KRATOS_FLUID_ELEMENT_TIME_INTEGRATION_DETAIL_H)
14 #define KRATOS_FLUID_ELEMENT_TIME_INTEGRATION_DETAIL_H
27 template <
class TElementData,
bool TDataKnowsAboutTimeIntegration>
39 template <
class TElementData>
49 KRATOS_ERROR <<
"Trying to use time-integrated element functions with a "
50 "data type that does not know previous time step data"
58 template <
class TElementData>
73 noalias(rLHS) += rData.bdf0*mass_matrix + velocity_lhs;
78 const auto& r_velocities = rData.Velocity;
79 const auto& r_velocities_step1 = rData.Velocity_OldStep1;
80 const auto& r_velocities_step2 = rData.Velocity_OldStep2;
82 for (
unsigned int i = 0;
i < TElementData::NumNodes; ++
i) {
83 for (
unsigned int d = 0;
d < TElementData::Dim; ++
d) {
Large Displacement Lagrangian Element for 3D and 2D geometries. (base class)
Definition: fluid_element.h:61
virtual void AddMassLHS(TElementData &rData, MatrixType &rMassMatrix)
Definition: fluid_element.cpp:792
virtual void AddVelocitySystem(TElementData &rData, MatrixType &rLocalLHS, VectorType &rLocalRHS)
Definition: fluid_element.cpp:777
static void AddTimeIntegratedSystem(FluidElement< TElementData > *pElement, TElementData &rData, Kratos::Matrix &rLHS, Kratos::Vector &rRHS)
Definition: fluid_element_time_integration_detail.h:42
static void AddTimeIntegratedSystem(FluidElement< TElementData > *pElement, TElementData &rData, Kratos::Matrix &rLHS, Kratos::Vector &rRHS)
Definition: fluid_element_time_integration_detail.h:61
Definition: fluid_element_time_integration_detail.h:28
static void AddTimeIntegratedSystem(FluidElement< TElementData > *pElement, TElementData &rData, Kratos::Matrix &rLHS, Kratos::Vector &rRHS)
#define KRATOS_CATCH(MoreInfo)
Definition: define.h:110
#define KRATOS_TRY
Definition: define.h:109
#define KRATOS_ERROR
Definition: exception.h:161
REF: G. R. Cowper, GAUSSIAN QUADRATURE FORMULAS FOR TRIANGLES.
Definition: mesh_condition.cpp:21
KratosZeroVector< double > ZeroVector
Definition: amatrix_interface.h:561
KratosZeroMatrix< double > ZeroMatrix
Definition: amatrix_interface.h:559
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
AMatrix::MatrixRow< const TExpressionType > row(AMatrix::MatrixExpression< TExpressionType, TCategory > const &TheExpression, std::size_t RowIndex)
Definition: amatrix_interface.h:649
tuple acceleration
Definition: generate_droplet_dynamics.py:117
int d
Definition: ode_solve.py:397
integer i
Definition: TensorModule.f:17