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.
Public Member Functions | List of all members
Kratos::VectorField< TDim > Class Template Reference

#include <vector_field.h>

Collaboration diagram for Kratos::VectorField< TDim >:

Public Member Functions

 KRATOS_CLASS_POINTER_DEFINITION (VectorField)
 
 VectorField ()
 Default constructor. More...
 
 VectorField (RealFunction &u_x, RealFunction &u_y, RealFunction &u_z)
 
virtual ~VectorField ()
 Destructor. More...
 
virtual void Evaluate (const double time, const array_1d< double, 3 > &coor, array_1d< double, 3 > &vector, const int i_thread=0)
 
virtual void CalculateTimeDerivative (const double time, const array_1d< double, 3 > &coor, array_1d< double, 3 > &deriv, const int i_thread=0)
 
virtual void CalculateGradient (const double time, const array_1d< double, 3 > &coor, array_1d< array_1d< double, 3 >, 3 > &gradient, const int i_thread=0)
 
virtual double CalculateDivergence (const double time, const array_1d< double, 3 > &coor, const int i_thread=0)
 
virtual void CalculateRotational (const double time, const array_1d< double, 3 > &coor, array_1d< double, 3 > &rot, const int i_thread=0)
 
virtual void CalculateLaplacian (const double time, const array_1d< double, 3 > &coor, array_1d< double, 3 > &lapl, const int i_thread=0)
 
virtual void Evaluate (const double time, const DenseVector< double > &coor, DenseVector< double > &result, const int i_thread=0)
 
virtual void CalculateTimeDerivative (const double time, const DenseVector< double > &coor, DenseVector< double > &result, const int i_thread=0)
 
virtual double CalculateDivergence (const double time, const DenseVector< double > &coor, const int i_thread=0)
 
virtual void CalculateRotational (const double time, const DenseVector< double > &coor, DenseVector< double > &result, const int i_thread=0)
 
virtual void CalculateLaplacian (const double time, const DenseVector< double > &coor, DenseVector< double > &result, const int i_thread=0)
 
virtual void ResizeVectorsForParallelism (const int n_threads)
 
virtual void ImposeFieldOnNodes (ModelPart &r_model_part, const VariablesList &variables_to_be_imposed)
 
Input and output
virtual std::string Info () const
 Turn back information as a stemplate<class T, std::size_t dim> tring. 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...
 

Constructor & Destructor Documentation

◆ VectorField() [1/2]

template<std::size_t TDim>
Kratos::VectorField< TDim >::VectorField ( )
inline

Default constructor.

◆ VectorField() [2/2]

template<std::size_t TDim>
Kratos::VectorField< TDim >::VectorField ( RealFunction u_x,
RealFunction u_y,
RealFunction u_z 
)
inline

◆ ~VectorField()

template<std::size_t TDim>
virtual Kratos::VectorField< TDim >::~VectorField ( )
inlinevirtual

Destructor.

Member Function Documentation

◆ CalculateDivergence() [1/2]

template<std::size_t TDim>
virtual double Kratos::VectorField< TDim >::CalculateDivergence ( const double  time,
const array_1d< double, 3 > &  coor,
const int  i_thread = 0 
)
inlinevirtual

Reimplemented in Kratos::VelocityField.

◆ CalculateDivergence() [2/2]

template<std::size_t TDim>
virtual double Kratos::VectorField< TDim >::CalculateDivergence ( const double  time,
const DenseVector< double > &  coor,
const int  i_thread = 0 
)
inlinevirtual

Reimplemented in Kratos::VelocityField.

◆ CalculateGradient()

template<std::size_t TDim>
virtual void Kratos::VectorField< TDim >::CalculateGradient ( const double  time,
const array_1d< double, 3 > &  coor,
array_1d< array_1d< double, 3 >, 3 > &  gradient,
const int  i_thread = 0 
)
inlinevirtual

Reimplemented in Kratos::VelocityField.

◆ CalculateLaplacian() [1/2]

template<std::size_t TDim>
virtual void Kratos::VectorField< TDim >::CalculateLaplacian ( const double  time,
const array_1d< double, 3 > &  coor,
array_1d< double, 3 > &  lapl,
const int  i_thread = 0 
)
inlinevirtual

Reimplemented in Kratos::VelocityField.

◆ CalculateLaplacian() [2/2]

template<std::size_t TDim>
virtual void Kratos::VectorField< TDim >::CalculateLaplacian ( const double  time,
const DenseVector< double > &  coor,
DenseVector< double > &  result,
const int  i_thread = 0 
)
inlinevirtual

Reimplemented in Kratos::VelocityField.

◆ CalculateRotational() [1/2]

template<std::size_t TDim>
virtual void Kratos::VectorField< TDim >::CalculateRotational ( const double  time,
const array_1d< double, 3 > &  coor,
array_1d< double, 3 > &  rot,
const int  i_thread = 0 
)
inlinevirtual

Reimplemented in Kratos::VelocityField.

◆ CalculateRotational() [2/2]

template<std::size_t TDim>
virtual void Kratos::VectorField< TDim >::CalculateRotational ( const double  time,
const DenseVector< double > &  coor,
DenseVector< double > &  result,
const int  i_thread = 0 
)
inlinevirtual

Reimplemented in Kratos::VelocityField.

◆ CalculateTimeDerivative() [1/2]

template<std::size_t TDim>
virtual void Kratos::VectorField< TDim >::CalculateTimeDerivative ( const double  time,
const array_1d< double, 3 > &  coor,
array_1d< double, 3 > &  deriv,
const int  i_thread = 0 
)
inlinevirtual

Reimplemented in Kratos::VelocityField.

◆ CalculateTimeDerivative() [2/2]

template<std::size_t TDim>
virtual void Kratos::VectorField< TDim >::CalculateTimeDerivative ( const double  time,
const DenseVector< double > &  coor,
DenseVector< double > &  result,
const int  i_thread = 0 
)
inlinevirtual

Reimplemented in Kratos::VelocityField.

◆ Evaluate() [1/2]

template<std::size_t TDim>
virtual void Kratos::VectorField< TDim >::Evaluate ( const double  time,
const array_1d< double, 3 > &  coor,
array_1d< double, 3 > &  vector,
const int  i_thread = 0 
)
inlinevirtual

◆ Evaluate() [2/2]

template<std::size_t TDim>
virtual void Kratos::VectorField< TDim >::Evaluate ( const double  time,
const DenseVector< double > &  coor,
DenseVector< double > &  result,
const int  i_thread = 0 
)
inlinevirtual

Reimplemented in Kratos::VelocityField.

◆ ImposeFieldOnNodes()

template<std::size_t TDim>
virtual void Kratos::VectorField< TDim >::ImposeFieldOnNodes ( ModelPart r_model_part,
const VariablesList variables_to_be_imposed 
)
inlinevirtual

Reimplemented in Kratos::VelocityField.

◆ Info()

template<std::size_t TDim>
virtual std::string Kratos::VectorField< TDim >::Info ( ) const
inlinevirtual

◆ KRATOS_CLASS_POINTER_DEFINITION()

template<std::size_t TDim>
Kratos::VectorField< TDim >::KRATOS_CLASS_POINTER_DEFINITION ( VectorField< TDim >  )

◆ PrintData()

template<std::size_t TDim>
virtual void Kratos::VectorField< TDim >::PrintData ( std::ostream &  rOStream) const
inlinevirtual

◆ PrintInfo()

template<std::size_t TDim>
virtual void Kratos::VectorField< TDim >::PrintInfo ( std::ostream &  rOStream) const
inlinevirtual

◆ ResizeVectorsForParallelism()

template<std::size_t TDim>
virtual void Kratos::VectorField< TDim >::ResizeVectorsForParallelism ( const int  n_threads)
inlinevirtual

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