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.
|
#include <fic_data.h>
Public Types | |
Type Definitions | |
using | NodalScalarData = typename FluidElementData< TDim, TNumNodes, false >::NodalScalarData |
using | NodalVectorData = typename FluidElementData< TDim, TNumNodes, false >::NodalVectorData |
Public Types inherited from Kratos::FluidElementData< TDim, TNumNodes, false > | |
using | NodalScalarData = array_1d< double, TNumNodes > |
using | NodalVectorData = BoundedMatrix< double, TNumNodes, TDim > |
using | NodalTensorData = std::array< BoundedMatrix< double, TDim, TDim >, TNumNodes > |
using | ShapeFunctionsType = array_1d< double, TNumNodes > |
using | ShapeDerivativesType = BoundedMatrix< double, TNumNodes, TDim > |
using | MatrixRowType = MatrixRow< Matrix > |
Public Attributes | |
Public Members | |
NodalVectorData | Velocity |
NodalVectorData | MeshVelocity |
NodalVectorData | BodyForce |
NodalScalarData | Pressure |
double | Density |
double | DeltaTime |
double | FICBeta |
double | DynamicTau |
BoundedMatrix< double, TNumNodes *(TDim+1), TNumNodes *(TDim+1)> | LHS |
Auxiliary container for the local matrix at the integration point (stored to save reallocation at each point) More... | |
Public Attributes inherited from Kratos::FluidElementData< TDim, TNumNodes, false > | |
unsigned int | IntegrationPointIndex |
double | Weight |
ShapeFunctionsType | N |
ShapeDerivativesType | DN_DX |
Vector | StrainRate |
Strain rate (symmetric gradient of velocity) vector in Voigt notation. More... | |
Vector | ShearStress |
Shear stress vector in Voigt notation. More... | |
Matrix | C |
Constitutive tensor C (expressed as a Matrix). More... | |
ConstitutiveLaw::Parameters | ConstitutiveLawValues |
Constitutive law configuration (stored here to avoid re-initialization within the element). More... | |
double | EffectiveViscosity |
Effective viscosity (in dynamic units) produced by the constitutive law. More... | |
Public Operations | |
void | Initialize (const Element &rElement, const ProcessInfo &rProcessInfo) override |
static int | Check (const Element &rElement, const ProcessInfo &rProcessInfo) |
Additional Inherited Members | |
Public Member Functions inherited from Kratos::FluidElementData< TDim, TNumNodes, false > | |
FluidElementData () | |
Default constructor. More... | |
FluidElementData (FluidElementData const &rOther)=delete | |
(deleted) copy constructor. More... | |
virtual | ~FluidElementData () |
Destructor. More... | |
FluidElementData & | operator= (FluidElementData const &rOther)=delete |
(deleted) assignment operator. More... | |
virtual void | UpdateGeometryValues (unsigned int IntegrationPointIndex, double NewWeight, const MatrixRowType &rN, const ShapeDerivativesType &rDN_DX) |
Static Public Member Functions inherited from Kratos::FluidElementData< TDim, TNumNodes, false > | |
static int | Check (const Element &rElement, const ProcessInfo &rProcessInfo) |
Static Public Attributes inherited from Kratos::FluidElementData< TDim, TNumNodes, false > | |
constexpr static unsigned int | Dim |
Physical space dimension for the problem. More... | |
constexpr static unsigned int | NumNodes |
Number of nodes of the element. More... | |
constexpr static unsigned int | StrainSize |
Size of the strain and stress vectors (in Voigt notation) for the formulation. More... | |
constexpr static bool | ElementManagesTimeIntegration |
This lets FluidElement know wether this element requires an external time scheme or not. More... | |
Protected Member Functions inherited from Kratos::FluidElementData< TDim, TNumNodes, false > | |
void | FillFromNodalData (NodalScalarData &rData, const Variable< double > &rVariable, const Geometry< Node > &rGeometry) |
void | FillFromNodalData (NodalVectorData &rData, const Variable< array_1d< double, 3 >> &rVariable, const Geometry< Node > &rGeometry) |
void | FillFromHistoricalNodalData (NodalScalarData &rData, const Variable< double > &rVariable, const Geometry< Node > &rGeometry) |
void | FillFromHistoricalNodalData (NodalVectorData &rData, const Variable< array_1d< double, 3 >> &rVariable, const Geometry< Node > &rGeometry) |
void | FillFromHistoricalNodalData (NodalTensorData &rData, const Variable< Matrix > &rVariable, const Geometry< Node > &rGeometry) |
void | FillFromHistoricalNodalData (NodalScalarData &rData, const Variable< double > &rVariable, const Geometry< Node > &rGeometry, const unsigned int Step) |
void | FillFromHistoricalNodalData (NodalVectorData &rData, const Variable< array_1d< double, 3 >> &rVariable, const Geometry< Node > &rGeometry, const unsigned int Step) |
void | FillFromNonHistoricalNodalData (NodalScalarData &rData, const Variable< double > &rVariable, const Geometry< Node > &rGeometry) |
void | FillFromNonHistoricalNodalData (NodalVectorData &rData, const Variable< array_1d< double, 3 >> &rVariable, const Geometry< Node > &rGeometry) |
void | FillFromProcessInfo (double &rData, const Variable< double > &rVariable, const ProcessInfo &rProcessInfo) |
void | FillFromProcessInfo (int &rData, const Variable< int > &rVariable, const ProcessInfo &rProcessInfo) |
void | FillFromElementData (double &rData, const Variable< double > &rVariable, const Element &rElement) |
void | FillFromElementData (Vector &rData, const Variable< Vector > &rVariable, const Element &rElement) |
void | FillFromElementData (NodalScalarData &rData, const Variable< Vector > &rVariable, const Element &rElement) |
void | FillFromProperties (double &rData, const Variable< double > &rVariable, const Properties &rProperties) |
using Kratos::FICData< TDim, TNumNodes, TElementIntegratesInTime >::NodalScalarData = typename FluidElementData<TDim,TNumNodes, false>::NodalScalarData |
using Kratos::FICData< TDim, TNumNodes, TElementIntegratesInTime >::NodalVectorData = typename FluidElementData<TDim,TNumNodes, false>::NodalVectorData |
|
inlinestatic |
|
inlineoverridevirtual |
Reimplemented from Kratos::FluidElementData< TDim, TNumNodes, false >.
NodalVectorData Kratos::FICData< TDim, TNumNodes, TElementIntegratesInTime >::BodyForce |
double Kratos::FICData< TDim, TNumNodes, TElementIntegratesInTime >::DeltaTime |
double Kratos::FICData< TDim, TNumNodes, TElementIntegratesInTime >::Density |
double Kratos::FICData< TDim, TNumNodes, TElementIntegratesInTime >::DynamicTau |
double Kratos::FICData< TDim, TNumNodes, TElementIntegratesInTime >::FICBeta |
BoundedMatrix<double,TNumNodes*(TDim+1),TNumNodes*(TDim+1)> Kratos::FICData< TDim, TNumNodes, TElementIntegratesInTime >::LHS |
Auxiliary container for the local matrix at the integration point (stored to save reallocation at each point)
NodalVectorData Kratos::FICData< TDim, TNumNodes, TElementIntegratesInTime >::MeshVelocity |
NodalScalarData Kratos::FICData< TDim, TNumNodes, TElementIntegratesInTime >::Pressure |
NodalVectorData Kratos::FICData< TDim, TNumNodes, TElementIntegratesInTime >::Velocity |