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.
|
Base class for geometry perturbation utilities. More...
#include <perturb_geometry_base_utility.h>
Public Member Functions | |
Life Cycle | |
PerturbGeometryBaseUtility (ModelPart &rInitialModelPart, Parameters Settings) | |
Constructor. More... | |
virtual | ~PerturbGeometryBaseUtility () |
Destructor. More... | |
Operations | |
virtual int | CreateRandomFieldVectors ()=0 |
void | ApplyRandomFieldVectorsToGeometry (ModelPart &rThisModelPart, const std::vector< double > &variables) |
Assemble random field and apply to initial geometry. More... | |
Input and output | |
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... | |
Protected Member Functions | |
Protected Operations | |
double | CorrelationFunction (ModelPart::NodeType &itNode1, ModelPart::NodeType &itNode2, double CorrelationLenth) |
Correlation function. More... | |
Protected Attributes | |
Protected member Variables | |
DenseMatrixPointerType | mpPerturbationMatrix |
ModelPart & | mrInitialModelPart |
double | mCorrelationLength |
double | mTruncationError |
int | mEchoLevel |
Type Definitions | |
typedef TUblasSparseSpace< double > | TSparseSpaceType |
typedef TUblasDenseSpace< double > | TDenseSpaceType |
typedef TDenseSpaceType::MatrixPointerType | DenseMatrixPointerType |
typedef TDenseSpaceType::VectorType | DenseVectorType |
typedef TDenseSpaceType::MatrixType | DenseMatrixType |
KRATOS_CLASS_POINTER_DEFINITION (PerturbGeometryBaseUtility) | |
Pointer definition of PerturbGeometryBaseUtility. More... | |
Base class for geometry perturbation utilities.
typedef TDenseSpaceType::MatrixPointerType Kratos::PerturbGeometryBaseUtility::DenseMatrixPointerType |
Kratos::PerturbGeometryBaseUtility::PerturbGeometryBaseUtility | ( | ModelPart & | rInitialModelPart, |
Parameters | Settings | ||
) |
Constructor.
|
inlinevirtual |
Destructor.
void Kratos::PerturbGeometryBaseUtility::ApplyRandomFieldVectorsToGeometry | ( | ModelPart & | rThisModelPart, |
const std::vector< double > & | variables | ||
) |
Assemble random field and apply to initial geometry.
rPerturbationMatrix | Perturbation matrix. Stores eigenvectors of correlation matrix (colum-wise). |
random_field | Random field vector. Stores nodal deviations. |
|
protected |
Correlation function.
|
pure virtual |
Implemented in Kratos::PerturbGeometrySubgridUtility, and Kratos::PerturbGeometrySparseUtility.
|
inlinevirtual |
Turn back information as a string.
Reimplemented in Kratos::PerturbGeometrySubgridUtility, and Kratos::PerturbGeometrySparseUtility.
Kratos::PerturbGeometryBaseUtility::KRATOS_CLASS_POINTER_DEFINITION | ( | PerturbGeometryBaseUtility | ) |
Pointer definition of PerturbGeometryBaseUtility.
|
inlinevirtual |
Print object's data.
Reimplemented in Kratos::PerturbGeometrySubgridUtility, and Kratos::PerturbGeometrySparseUtility.
|
inlinevirtual |
Print information about this object.
Reimplemented in Kratos::PerturbGeometrySubgridUtility, and Kratos::PerturbGeometrySparseUtility.
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |