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 <cmath>
#include <variant>
#include <numeric>
#include <type_traits>
#include "expression/variable_expression_data_io.h"
#include "expression/container_data_io.h"
#include "expression/container_expression.h"
#include "expression/variable_expression_io.h"
#include "includes/define.h"
#include "includes/model_part.h"
#include "utilities/atomic_utilities.h"
#include "utilities/parallel_utilities.h"
#include "utilities/reduction_utilities.h"
#include "utilities/variable_utils.h"
#include "optimization_application_variables.h"
#include "container_expression_utils.h"
Namespaces | |
Kratos | |
REF: G. R. Cowper, GAUSSIAN QUADRATURE FORMULAS FOR TRIANGLES. | |
Kratos::ContainerVariableDataHolderUtilsHelper | |
Macros | |
#define | KRATOS_INSTANTIATE_UTILITY_METHOD_FOR_CONTAINER_TYPE(ContainerType) |
#define | KRATOS_INSTANTIATE_NON_NODAL_UTILITY_METHOD_FOR_CONTAINER_TYPE(ContainerType) |
Typedefs | |
using | Kratos::ContainerVariableDataHolderUtilsHelper::VariableVariantType = std::variant< const Variable< double > *, const Variable< array_1d< double, 3 > > * > |
using | Kratos::ContainerVariableDataHolderUtilsHelper::VariablePairVariantType = std::variant< std::pair< const Variable< double > *, const Variable< double > * >, std::pair< const Variable< array_1d< double, 3 > > *, const Variable< array_1d< double, 3 > > * > > |
Functions | |
VariableVariantType | Kratos::ContainerVariableDataHolderUtilsHelper::GetTemporaryVariable (const std::vector< IndexType > &rShape) |
VariablePairVariantType | Kratos::ContainerVariableDataHolderUtilsHelper::GetTemporaryVariable1And2 (const std::vector< IndexType > &rShape) |
template<class TDataType1 , class TDataType2 , std::enable_if_t< std::disjunction_v< std::is_arithmetic< TDataType1 >, std::is_same< TDataType1, Vector >, std::is_same< TDataType1, Matrix >>, bool > = true> | |
void | Kratos::ContainerVariableDataHolderUtilsHelper::GenericAtomicAdd (TDataType1 &rOutput, const TDataType2 &rInput) |
template<class TDataType , std::size_t TSize, class TDataType2 > | |
void | Kratos::ContainerVariableDataHolderUtilsHelper::GenericAtomicAdd (array_1d< TDataType, TSize > &rOutput, const TDataType2 &rInput) |
template<class TDataType > | |
VariableExpressionDataIO< TDataType >::Pointer | Kratos::ContainerVariableDataHolderUtilsHelper::GetVariableExpressionDataIO (const Variable< TDataType > &rVaraible, const std::vector< IndexType > &rShape) |
void | Kratos::ContainerVariableDataHolderUtilsHelper::ComputeMatrixExpressionProduct (LiteralFlatExpression< double > &rOutputExpression, const Matrix &rMatrix, const LiteralFlatExpression< double > &rInputExpression, const IndexType NumberOfEntities, const IndexType ExpressionLocalSize) |
#define KRATOS_INSTANTIATE_NON_NODAL_UTILITY_METHOD_FOR_CONTAINER_TYPE | ( | ContainerType | ) |
#define KRATOS_INSTANTIATE_UTILITY_METHOD_FOR_CONTAINER_TYPE | ( | ContainerType | ) |