![]() |
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.
|
This class generates a random field based on a sparse correlation matrix. More...
#include <perturb_geometry_sparse_utility.h>
Public Member Functions | |
Life Cycle | |
| PerturbGeometrySparseUtility (ModelPart &rInitialModelPart, LinearSolverPointerType pEigenSolver, Parameters Settings) | |
| Constructor. More... | |
| ~PerturbGeometrySparseUtility () override=default | |
| Destructor. More... | |
Operations | |
| int | CreateRandomFieldVectors () override |
| Creates Eigenvectors of a sparse correlation matrix. More... | |
| std::string | Info () const override |
| Turn back information as a string. More... | |
| void | PrintInfo (std::ostream &rOStream) const override |
| Print information about this object. More... | |
| void | PrintData (std::ostream &rOStream) const override |
| Print object's data. More... | |
Public Member Functions inherited from Kratos::PerturbGeometryBaseUtility | |
| PerturbGeometryBaseUtility (ModelPart &rInitialModelPart, Parameters Settings) | |
| Constructor. More... | |
| virtual | ~PerturbGeometryBaseUtility () |
| Destructor. More... | |
| void | ApplyRandomFieldVectorsToGeometry (ModelPart &rThisModelPart, const std::vector< double > &variables) |
| Assemble random field and apply to initial geometry. More... | |
| KRATOS_CLASS_POINTER_DEFINITION (PerturbGeometryBaseUtility) | |
| Pointer definition of PerturbGeometryBaseUtility. More... | |
Type Definitions | |
| typedef LinearSolver< TSparseSpaceType, TDenseSpaceType > | LinearSolverType |
| typedef LinearSolverType::Pointer | LinearSolverPointerType |
| typedef ModelPart::NodesContainerType::ContainerType | ResultNodesContainerType |
| typedef TSparseSpaceType::MatrixType | SparseMatrixType |
| KRATOS_CLASS_POINTER_DEFINITION (PerturbGeometrySparseUtility) | |
| Pointer definition of PerturbGeometrySparseUtility. More... | |
Additional Inherited Members | |
Public Types inherited from Kratos::PerturbGeometryBaseUtility | |
| typedef TUblasSparseSpace< double > | TSparseSpaceType |
| typedef TUblasDenseSpace< double > | TDenseSpaceType |
| typedef TDenseSpaceType::MatrixPointerType | DenseMatrixPointerType |
| typedef TDenseSpaceType::VectorType | DenseVectorType |
| typedef TDenseSpaceType::MatrixType | DenseMatrixType |
Protected Member Functions inherited from Kratos::PerturbGeometryBaseUtility | |
| double | CorrelationFunction (ModelPart::NodeType &itNode1, ModelPart::NodeType &itNode2, double CorrelationLenth) |
| Correlation function. More... | |
Protected Attributes inherited from Kratos::PerturbGeometryBaseUtility | |
| DenseMatrixPointerType | mpPerturbationMatrix |
| ModelPart & | mrInitialModelPart |
| double | mCorrelationLength |
| double | mTruncationError |
| int | mEchoLevel |
This class generates a random field based on a sparse correlation matrix.
Random field is used to perturb initial geometry.
| typedef LinearSolverType::Pointer Kratos::PerturbGeometrySparseUtility::LinearSolverPointerType |
| typedef LinearSolver<TSparseSpaceType, TDenseSpaceType> Kratos::PerturbGeometrySparseUtility::LinearSolverType |
| typedef ModelPart::NodesContainerType::ContainerType Kratos::PerturbGeometrySparseUtility::ResultNodesContainerType |
|
inline |
Constructor.
|
overridedefault |
Destructor.
|
overridevirtual |
Creates Eigenvectors of a sparse correlation matrix.
Generates sparse correlation matrix. Decomposes correlation matrix.
| correlation_matrix | Correlation matrix. Stores correlation value for all nodes. |
| rPerturbationMatrix | Perturbation matrix. Stores eigenvectors of correlation matrix (colum-wise). |
Implements Kratos::PerturbGeometryBaseUtility.
|
inlineoverridevirtual |
Turn back information as a string.
Reimplemented from Kratos::PerturbGeometryBaseUtility.
| Kratos::PerturbGeometrySparseUtility::KRATOS_CLASS_POINTER_DEFINITION | ( | PerturbGeometrySparseUtility | ) |
Pointer definition of PerturbGeometrySparseUtility.
|
inlineoverridevirtual |
Print object's data.
Reimplemented from Kratos::PerturbGeometryBaseUtility.
|
inlineoverridevirtual |
Print information about this object.
Reimplemented from Kratos::PerturbGeometryBaseUtility.