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::VariableRedistributionUtility Class Reference

Helper utility to transform between point-wise nodal variables and distributed values. More...

#include <variable_redistribution_utility.h>

Collaboration diagram for Kratos::VariableRedistributionUtility:

Public Member Functions

template<>
std::size_t NumberOfLocalEntities (const ModelPart &rModelPart, const ModelPart::ConditionsContainerType &rEntitiesContainer)
 
template<>
std::size_t NumberOfLocalEntities (const ModelPart &rModelPart, const ModelPart::ElementsContainerType &rEntitiesContainer)
 

Static Public Member Functions

Operations
static void ConvertDistributedValuesToPoint (ModelPart &rModelPart, const Variable< double > &rDistributedVariable, const Variable< double > &rPointVariable)
 Tranform a variable distributed over the conditions of rModelPart to a set of concentrated nodal values. The origin and destination values have the same L2 norm over the set of conditions. A typical use case is to transform a distributed load into an equivalent set of point loads. Version for scalar magnitudes. Note that as no container is provided, the values distribution is performed over the conditions. More...
 
static void ConvertDistributedValuesToPoint (ModelPart &rModelPart, ModelPart::ConditionsContainerType &rConditions, const Variable< double > &rDistributedVariable, const Variable< double > &rPointVariable)
 Tranform a variable distributed over the conditions of rModelPart to a set of concentrated nodal values. The origin and destination values have the same L2 norm over the set of conditions. A typical use case is to transform a distributed load into an equivalent set of point loads. Version for scalar magnitudes. More...
 
static void ConvertDistributedValuesToPoint (ModelPart &rModelPart, ModelPart::ElementsContainerType &rElements, const Variable< double > &rDistributedVariable, const Variable< double > &rPointVariable)
 Tranform a variable distributed over the conditions of rModelPart to a set of concentrated nodal values. The origin and destination values have the same L2 norm over the set of conditions. A typical use case is to transform a distributed load into an equivalent set of point loads. Version for scalar magnitudes. More...
 
static void ConvertDistributedValuesToPoint (ModelPart &rModelPart, const Variable< array_1d< double, 3 > > &rDistributedVariable, const Variable< array_1d< double, 3 > > &rPointVariable)
 Tranform a variable distributed over the conditions of rModelPart to a set of concentrated nodal values. The origin and destination values have the same L2 norm over the set of conditions. A typical use case is to transform a distributed load into an equivalent set of point loads. Version for vector magnitudes. Note that as no container is provided, the values distribution is performed over the conditions. More...
 
static void ConvertDistributedValuesToPoint (ModelPart &rModelPart, ModelPart::ConditionsContainerType &rConditions, const Variable< array_1d< double, 3 > > &rDistributedVariable, const Variable< array_1d< double, 3 > > &rPointVariable)
 Tranform a variable distributed over the conditions of rModelPart to a set of concentrated nodal values. The origin and destination values have the same L2 norm over the set of conditions. A typical use case is to transform a distributed load into an equivalent set of point loads. Version for vector magnitudes. More...
 
static void ConvertDistributedValuesToPoint (ModelPart &rModelPart, ModelPart::ElementsContainerType &rElements, const Variable< array_1d< double, 3 > > &rDistributedVariable, const Variable< array_1d< double, 3 > > &rPointVariable)
 Tranform a variable distributed over the conditions of rModelPart to a set of concentrated nodal values. The origin and destination values have the same L2 norm over the set of conditions. A typical use case is to transform a distributed load into an equivalent set of point loads. Version for vector magnitudes. More...
 
static void DistributePointValues (ModelPart &rModelPart, const Variable< double > &rPointVariable, const Variable< double > &rDistributedVariable, double Tolerance, unsigned int MaximumIterations)
 Tranform a set of concentrated nodal values to a variable distributed over the conditions of rModelPart. The origin and destination values have the same L2 norm over the set of conditions. A typical use case is to transform a set of point loads into an equivalent distributed load. Version for scalar magnitudes. Note that as no container is provided, the values distribution is performed over the conditions. More...
 
static void DistributePointValues (ModelPart &rModelPart, ModelPart::ConditionsContainerType &rConditions, const Variable< double > &rPointVariable, const Variable< double > &rDistributedVariable, double Tolerance, unsigned int MaximumIterations)
 Tranform a set of concentrated nodal values to a variable distributed over the conditions of rModelPart. The origin and destination values have the same L2 norm over the set of conditions. A typical use case is to transform a set of point loads into an equivalent distributed load. Version for scalar magnitudes. More...
 
static void DistributePointValues (ModelPart &rModelPart, ModelPart::ElementsContainerType &rElements, const Variable< double > &rPointVariable, const Variable< double > &rDistributedVariable, double Tolerance, unsigned int MaximumIterations)
 Tranform a set of concentrated nodal values to a variable distributed over the conditions of rModelPart. The origin and destination values have the same L2 norm over the set of conditions. A typical use case is to transform a set of point loads into an equivalent distributed load. Version for scalar magnitudes. More...
 
static void DistributePointValues (ModelPart &rModelPart, const Variable< array_1d< double, 3 >> &rPointVariable, const Variable< array_1d< double, 3 >> &rDistributedVariable, double Tolerance, unsigned int MaximumIterations)
 Tranform a set of concentrated nodal values to a variable distributed over the conditions of rModelPart. The origin and destination values have the same L2 norm over the set of conditions. A typical use case is to transform a set of point loads into an equivalent distributed load. Version for vector magnitudes. Note that as no container is provided, the values distribution is performed over the conditions. More...
 
static void DistributePointValues (ModelPart &rModelPart, ModelPart::ConditionsContainerType &rConditions, const Variable< array_1d< double, 3 >> &rPointVariable, const Variable< array_1d< double, 3 >> &rDistributedVariable, double Tolerance, unsigned int MaximumIterations)
 Tranform a set of concentrated nodal values to a variable distributed over the conditions of rModelPart. The origin and destination values have the same L2 norm over the set of conditions. A typical use case is to transform a set of point loads into an equivalent distributed load. Version for vector magnitudes. More...
 
static void DistributePointValues (ModelPart &rModelPart, ModelPart::ElementsContainerType &rElements, const Variable< array_1d< double, 3 >> &rPointVariable, const Variable< array_1d< double, 3 >> &rDistributedVariable, double Tolerance, unsigned int MaximumIterations)
 Tranform a set of concentrated nodal values to a variable distributed over the conditions of rModelPart. The origin and destination values have the same L2 norm over the set of conditions. A typical use case is to transform a set of point loads into an equivalent distributed load. Version for vector magnitudes. Note that as no container is provided, the values distribution is performed over the conditions. More...
 
static void ConvertDistributedValuesToPointNonHistorical (ModelPart &rModelPart, ModelPart::ConditionsContainerType &rConditions, const Variable< double > &rDistributedVariable, const Variable< double > &rPointVariable)
 Tranform a variable distributed over the conditions of rModelPart to a set of concentrated nodal values. The origin and destination values have the same L2 norm over the set of conditions. A typical use case is to transform a distributed load into an equivalent set of point loads. Version for scalar magnitudes. More...
 
static void ConvertDistributedValuesToPointNonHistorical (ModelPart &rModelPart, ModelPart::ElementsContainerType &rElements, const Variable< double > &rDistributedVariable, const Variable< double > &rPointVariable)
 Tranform a variable distributed over the conditions of rModelPart to a set of concentrated nodal values. The origin and destination values have the same L2 norm over the set of conditions. A typical use case is to transform a distributed load into an equivalent set of point loads. Version for scalar magnitudes. More...
 
static void ConvertDistributedValuesToPointNonHistorical (ModelPart &rModelPart, ModelPart::ConditionsContainerType &rConditions, const Variable< array_1d< double, 3 > > &rDistributedVariable, const Variable< array_1d< double, 3 > > &rPointVariable)
 Tranform a variable distributed over the conditions of rModelPart to a set of concentrated nodal values. The origin and destination values have the same L2 norm over the set of conditions. A typical use case is to transform a distributed load into an equivalent set of point loads. Version for vector magnitudes. More...
 
static void ConvertDistributedValuesToPointNonHistorical (ModelPart &rModelPart, ModelPart::ElementsContainerType &rElements, const Variable< array_1d< double, 3 > > &rDistributedVariable, const Variable< array_1d< double, 3 > > &rPointVariable)
 Tranform a variable distributed over the conditions of rModelPart to a set of concentrated nodal values. The origin and destination values have the same L2 norm over the set of conditions. A typical use case is to transform a distributed load into an equivalent set of point loads. Version for vector magnitudes. More...
 
static void DistributePointValuesNonHistorical (ModelPart &rModelPart, ModelPart::ConditionsContainerType &rConditions, const Variable< double > &rPointVariable, const Variable< double > &rDistributedVariable, double Tolerance, unsigned int MaximumIterations)
 Tranform a set of concentrated nodal values to a variable distributed over the conditions of rModelPart. The origin and destination values have the same L2 norm over the set of conditions. A typical use case is to transform a set of point loads into an equivalent distributed load. Version for scalar magnitudes. More...
 
static void DistributePointValuesNonHistorical (ModelPart &rModelPart, ModelPart::ElementsContainerType &rElements, const Variable< double > &rPointVariable, const Variable< double > &rDistributedVariable, double Tolerance, unsigned int MaximumIterations)
 Tranform a set of concentrated nodal values to a variable distributed over the conditions of rModelPart. The origin and destination values have the same L2 norm over the set of conditions. A typical use case is to transform a set of point loads into an equivalent distributed load. Version for scalar magnitudes. More...
 
static void DistributePointValuesNonHistorical (ModelPart &rModelPart, ModelPart::ConditionsContainerType &rConditions, const Variable< array_1d< double, 3 >> &rPointVariable, const Variable< array_1d< double, 3 >> &rDistributedVariable, double Tolerance, unsigned int MaximumIterations)
 Tranform a set of concentrated nodal values to a variable distributed over the conditions of rModelPart. The origin and destination values have the same L2 norm over the set of conditions. A typical use case is to transform a set of point loads into an equivalent distributed load. Version for vector magnitudes. More...
 
static void DistributePointValuesNonHistorical (ModelPart &rModelPart, ModelPart::ElementsContainerType &rElements, const Variable< array_1d< double, 3 >> &rPointVariable, const Variable< array_1d< double, 3 >> &rDistributedVariable, double Tolerance, unsigned int MaximumIterations)
 Tranform a set of concentrated nodal values to a variable distributed over the conditions of rModelPart. The origin and destination values have the same L2 norm over the set of conditions. A typical use case is to transform a set of point loads into an equivalent distributed load. Version for vector magnitudes. Note that as no container is provided, the values distribution is performed over the conditions. More...
 

Type Definitions

typedef Node NodeType
 
 KRATOS_CLASS_POINTER_DEFINITION (VariableRedistributionUtility)
 Pointer definition of VariableRedistributionUtility. More...
 

Detailed Description

Helper utility to transform between point-wise nodal variables and distributed values.

The functions are desinged so that both sets of values have the same L2 norm over the conditions of the provided ModelPart (up to tolerance). A typical use case is to transform a set of point forces to area-distributed loads or vice-versa.

Member Typedef Documentation

◆ NodeType

Member Function Documentation

◆ ConvertDistributedValuesToPoint() [1/6]

void Kratos::VariableRedistributionUtility::ConvertDistributedValuesToPoint ( ModelPart rModelPart,
const Variable< array_1d< double, 3 > > &  rDistributedVariable,
const Variable< array_1d< double, 3 > > &  rPointVariable 
)
static

Tranform a variable distributed over the conditions of rModelPart to a set of concentrated nodal values. The origin and destination values have the same L2 norm over the set of conditions. A typical use case is to transform a distributed load into an equivalent set of point loads. Version for vector magnitudes. Note that as no container is provided, the values distribution is performed over the conditions.

Parameters
rModelPartThe model part of the problem
rDistributedVariableThe variable containing the distributed (origin) values.
rPointVariableThe variable that will contain the point (destination) values.

◆ ConvertDistributedValuesToPoint() [2/6]

void Kratos::VariableRedistributionUtility::ConvertDistributedValuesToPoint ( ModelPart rModelPart,
const Variable< double > &  rDistributedVariable,
const Variable< double > &  rPointVariable 
)
static

Tranform a variable distributed over the conditions of rModelPart to a set of concentrated nodal values. The origin and destination values have the same L2 norm over the set of conditions. A typical use case is to transform a distributed load into an equivalent set of point loads. Version for scalar magnitudes. Note that as no container is provided, the values distribution is performed over the conditions.

Parameters
rModelPartThe model part of the problem
rDistributedVariableThe variable containing the distributed (origin) values.
rPointVariableThe variable that will contain the point (destination) values.

◆ ConvertDistributedValuesToPoint() [3/6]

void Kratos::VariableRedistributionUtility::ConvertDistributedValuesToPoint ( ModelPart rModelPart,
ModelPart::ConditionsContainerType rConditions,
const Variable< array_1d< double, 3 > > &  rDistributedVariable,
const Variable< array_1d< double, 3 > > &  rPointVariable 
)
static

Tranform a variable distributed over the conditions of rModelPart to a set of concentrated nodal values. The origin and destination values have the same L2 norm over the set of conditions. A typical use case is to transform a distributed load into an equivalent set of point loads. Version for vector magnitudes.

Parameters
rModelPartThe model part of the problem
rConditionsConditions container to calculate the point values
rDistributedVariableThe variable containing the distributed (origin) values.
rPointVariableThe variable that will contain the point (destination) values.

◆ ConvertDistributedValuesToPoint() [4/6]

void Kratos::VariableRedistributionUtility::ConvertDistributedValuesToPoint ( ModelPart rModelPart,
ModelPart::ConditionsContainerType rConditions,
const Variable< double > &  rDistributedVariable,
const Variable< double > &  rPointVariable 
)
static

Tranform a variable distributed over the conditions of rModelPart to a set of concentrated nodal values. The origin and destination values have the same L2 norm over the set of conditions. A typical use case is to transform a distributed load into an equivalent set of point loads. Version for scalar magnitudes.

Parameters
rModelPartThe model part of the problem
rConditionsConditions container to calculate the point values
rDistributedVariableThe variable containing the distributed (origin) values.
rPointVariableThe variable that will contain the point (destination) values.

◆ ConvertDistributedValuesToPoint() [5/6]

void Kratos::VariableRedistributionUtility::ConvertDistributedValuesToPoint ( ModelPart rModelPart,
ModelPart::ElementsContainerType rElements,
const Variable< array_1d< double, 3 > > &  rDistributedVariable,
const Variable< array_1d< double, 3 > > &  rPointVariable 
)
static

Tranform a variable distributed over the conditions of rModelPart to a set of concentrated nodal values. The origin and destination values have the same L2 norm over the set of conditions. A typical use case is to transform a distributed load into an equivalent set of point loads. Version for vector magnitudes.

Parameters
rModelPartThe model part of the problem
rElementsElements container to calculate the point values
rDistributedVariableThe variable containing the distributed (origin) values.
rPointVariableThe variable that will contain the point (destination) values.

◆ ConvertDistributedValuesToPoint() [6/6]

void Kratos::VariableRedistributionUtility::ConvertDistributedValuesToPoint ( ModelPart rModelPart,
ModelPart::ElementsContainerType rElements,
const Variable< double > &  rDistributedVariable,
const Variable< double > &  rPointVariable 
)
static

Tranform a variable distributed over the conditions of rModelPart to a set of concentrated nodal values. The origin and destination values have the same L2 norm over the set of conditions. A typical use case is to transform a distributed load into an equivalent set of point loads. Version for scalar magnitudes.

Parameters
rModelPartThe model part of the problem
rElementsElements container to calculate the point values
rDistributedVariableThe variable containing the distributed (origin) values.
rPointVariableThe variable that will contain the point (destination) values.

◆ ConvertDistributedValuesToPointNonHistorical() [1/4]

void Kratos::VariableRedistributionUtility::ConvertDistributedValuesToPointNonHistorical ( ModelPart rModelPart,
ModelPart::ConditionsContainerType rConditions,
const Variable< array_1d< double, 3 > > &  rDistributedVariable,
const Variable< array_1d< double, 3 > > &  rPointVariable 
)
static

Tranform a variable distributed over the conditions of rModelPart to a set of concentrated nodal values. The origin and destination values have the same L2 norm over the set of conditions. A typical use case is to transform a distributed load into an equivalent set of point loads. Version for vector magnitudes.

Parameters
rModelPartThe model part of the problem
rConditionsConditions container to calculate the point values
rDistributedVariableThe variable containing the distributed (origin) values.
rPointVariableThe variable that will contain the point (destination) values.

◆ ConvertDistributedValuesToPointNonHistorical() [2/4]

void Kratos::VariableRedistributionUtility::ConvertDistributedValuesToPointNonHistorical ( ModelPart rModelPart,
ModelPart::ConditionsContainerType rConditions,
const Variable< double > &  rDistributedVariable,
const Variable< double > &  rPointVariable 
)
static

Tranform a variable distributed over the conditions of rModelPart to a set of concentrated nodal values. The origin and destination values have the same L2 norm over the set of conditions. A typical use case is to transform a distributed load into an equivalent set of point loads. Version for scalar magnitudes.

Parameters
rModelPartThe model part of the problem
rConditionsConditions container to calculate the point values
rDistributedVariableThe variable containing the distributed (origin) values.
rPointVariableThe variable that will contain the point (destination) values.

◆ ConvertDistributedValuesToPointNonHistorical() [3/4]

void Kratos::VariableRedistributionUtility::ConvertDistributedValuesToPointNonHistorical ( ModelPart rModelPart,
ModelPart::ElementsContainerType rElements,
const Variable< array_1d< double, 3 > > &  rDistributedVariable,
const Variable< array_1d< double, 3 > > &  rPointVariable 
)
static

Tranform a variable distributed over the conditions of rModelPart to a set of concentrated nodal values. The origin and destination values have the same L2 norm over the set of conditions. A typical use case is to transform a distributed load into an equivalent set of point loads. Version for vector magnitudes.

Parameters
rModelPartThe model part of the problem
rElementsElements container to calculate the point values
rDistributedVariableThe variable containing the distributed (origin) values.
rPointVariableThe variable that will contain the point (destination) values.

◆ ConvertDistributedValuesToPointNonHistorical() [4/4]

void Kratos::VariableRedistributionUtility::ConvertDistributedValuesToPointNonHistorical ( ModelPart rModelPart,
ModelPart::ElementsContainerType rElements,
const Variable< double > &  rDistributedVariable,
const Variable< double > &  rPointVariable 
)
static

Tranform a variable distributed over the conditions of rModelPart to a set of concentrated nodal values. The origin and destination values have the same L2 norm over the set of conditions. A typical use case is to transform a distributed load into an equivalent set of point loads. Version for scalar magnitudes.

Parameters
rModelPartThe model part of the problem
rElementsElements container to calculate the point values
rDistributedVariableThe variable containing the distributed (origin) values.
rPointVariableThe variable that will contain the point (destination) values.

◆ DistributePointValues() [1/6]

static void Kratos::VariableRedistributionUtility::DistributePointValues ( ModelPart rModelPart,
const Variable< array_1d< double, 3 >> &  rPointVariable,
const Variable< array_1d< double, 3 >> &  rDistributedVariable,
double  Tolerance,
unsigned int  MaximumIterations 
)
static

Tranform a set of concentrated nodal values to a variable distributed over the conditions of rModelPart. The origin and destination values have the same L2 norm over the set of conditions. A typical use case is to transform a set of point loads into an equivalent distributed load. Version for vector magnitudes. Note that as no container is provided, the values distribution is performed over the conditions.

Parameters
rModelPartThe model part of the problem
rPointVariableThe variable that will contain the point (origin) values.
rDistributedVariableThe variable containing the distributed (destination) values.
ToleranceMaximum allowed difference (in L2 norm) between origin and destination values.
MaximumIterationsMaximum number of iterations for the procedure.

◆ DistributePointValues() [2/6]

void Kratos::VariableRedistributionUtility::DistributePointValues ( ModelPart rModelPart,
const Variable< double > &  rPointVariable,
const Variable< double > &  rDistributedVariable,
double  Tolerance,
unsigned int  MaximumIterations 
)
static

Tranform a set of concentrated nodal values to a variable distributed over the conditions of rModelPart. The origin and destination values have the same L2 norm over the set of conditions. A typical use case is to transform a set of point loads into an equivalent distributed load. Version for scalar magnitudes. Note that as no container is provided, the values distribution is performed over the conditions.

Parameters
rModelPartThe model part of the problem
rPointVariableThe variable that will contain the point (origin) values.
rDistributedVariableThe variable containing the distributed (destination) values.
ToleranceMaximum allowed difference (in L2 norm) between origin and destination values.
MaximumIterationsMaximum number of iterations for the procedure.

◆ DistributePointValues() [3/6]

static void Kratos::VariableRedistributionUtility::DistributePointValues ( ModelPart rModelPart,
ModelPart::ConditionsContainerType rConditions,
const Variable< array_1d< double, 3 >> &  rPointVariable,
const Variable< array_1d< double, 3 >> &  rDistributedVariable,
double  Tolerance,
unsigned int  MaximumIterations 
)
static

Tranform a set of concentrated nodal values to a variable distributed over the conditions of rModelPart. The origin and destination values have the same L2 norm over the set of conditions. A typical use case is to transform a set of point loads into an equivalent distributed load. Version for vector magnitudes.

Parameters
rModelPartThe model part of the problem
rConditionsConditions container to distribute the values
rPointVariableThe variable that will contain the point (origin) values.
rDistributedVariableThe variable containing the distributed (destination) values.
ToleranceMaximum allowed difference (in L2 norm) between origin and destination values.
MaximumIterationsMaximum number of iterations for the procedure.

◆ DistributePointValues() [4/6]

void Kratos::VariableRedistributionUtility::DistributePointValues ( ModelPart rModelPart,
ModelPart::ConditionsContainerType rConditions,
const Variable< double > &  rPointVariable,
const Variable< double > &  rDistributedVariable,
double  Tolerance,
unsigned int  MaximumIterations 
)
static

Tranform a set of concentrated nodal values to a variable distributed over the conditions of rModelPart. The origin and destination values have the same L2 norm over the set of conditions. A typical use case is to transform a set of point loads into an equivalent distributed load. Version for scalar magnitudes.

Parameters
rModelPartThe model part of the problem
rConditionsConditions container to distribute the values
rPointVariableThe variable that will contain the point (origin) values.
rDistributedVariableThe variable containing the distributed (destination) values.
ToleranceMaximum allowed difference (in L2 norm) between origin and destination values.
MaximumIterationsMaximum number of iterations for the procedure.

◆ DistributePointValues() [5/6]

static void Kratos::VariableRedistributionUtility::DistributePointValues ( ModelPart rModelPart,
ModelPart::ElementsContainerType rElements,
const Variable< array_1d< double, 3 >> &  rPointVariable,
const Variable< array_1d< double, 3 >> &  rDistributedVariable,
double  Tolerance,
unsigned int  MaximumIterations 
)
static

Tranform a set of concentrated nodal values to a variable distributed over the conditions of rModelPart. The origin and destination values have the same L2 norm over the set of conditions. A typical use case is to transform a set of point loads into an equivalent distributed load. Version for vector magnitudes. Note that as no container is provided, the values distribution is performed over the conditions.

Parameters
rModelPartThe model part of the problem
rElementsElements container to distribute the values
rPointVariableThe variable that will contain the point (origin) values.
rDistributedVariableThe variable containing the distributed (destination) values.
ToleranceMaximum allowed difference (in L2 norm) between origin and destination values.
MaximumIterationsMaximum number of iterations for the procedure.

◆ DistributePointValues() [6/6]

void Kratos::VariableRedistributionUtility::DistributePointValues ( ModelPart rModelPart,
ModelPart::ElementsContainerType rElements,
const Variable< double > &  rPointVariable,
const Variable< double > &  rDistributedVariable,
double  Tolerance,
unsigned int  MaximumIterations 
)
static

Tranform a set of concentrated nodal values to a variable distributed over the conditions of rModelPart. The origin and destination values have the same L2 norm over the set of conditions. A typical use case is to transform a set of point loads into an equivalent distributed load. Version for scalar magnitudes.

Parameters
rModelPartThe model part of the problem
rElementsElements container to distribute the values
rPointVariableThe variable that will contain the point (origin) values.
rDistributedVariableThe variable containing the distributed (destination) values.
ToleranceMaximum allowed difference (in L2 norm) between origin and destination values.
MaximumIterationsMaximum number of iterations for the procedure.

◆ DistributePointValuesNonHistorical() [1/4]

static void Kratos::VariableRedistributionUtility::DistributePointValuesNonHistorical ( ModelPart rModelPart,
ModelPart::ConditionsContainerType rConditions,
const Variable< array_1d< double, 3 >> &  rPointVariable,
const Variable< array_1d< double, 3 >> &  rDistributedVariable,
double  Tolerance,
unsigned int  MaximumIterations 
)
static

Tranform a set of concentrated nodal values to a variable distributed over the conditions of rModelPart. The origin and destination values have the same L2 norm over the set of conditions. A typical use case is to transform a set of point loads into an equivalent distributed load. Version for vector magnitudes.

Parameters
rModelPartThe model part of the problem
rConditionsConditions container to distribute the values
rPointVariableThe variable that will contain the point (origin) values.
rDistributedVariableThe variable containing the distributed (destination) values.
ToleranceMaximum allowed difference (in L2 norm) between origin and destination values.
MaximumIterationsMaximum number of iterations for the procedure.

◆ DistributePointValuesNonHistorical() [2/4]

void Kratos::VariableRedistributionUtility::DistributePointValuesNonHistorical ( ModelPart rModelPart,
ModelPart::ConditionsContainerType rConditions,
const Variable< double > &  rPointVariable,
const Variable< double > &  rDistributedVariable,
double  Tolerance,
unsigned int  MaximumIterations 
)
static

Tranform a set of concentrated nodal values to a variable distributed over the conditions of rModelPart. The origin and destination values have the same L2 norm over the set of conditions. A typical use case is to transform a set of point loads into an equivalent distributed load. Version for scalar magnitudes.

Parameters
rModelPartThe model part of the problem
rConditionsConditions container to distribute the values
rPointVariableThe variable that will contain the point (origin) values.
rDistributedVariableThe variable containing the distributed (destination) values.
ToleranceMaximum allowed difference (in L2 norm) between origin and destination values.
MaximumIterationsMaximum number of iterations for the procedure.

◆ DistributePointValuesNonHistorical() [3/4]

static void Kratos::VariableRedistributionUtility::DistributePointValuesNonHistorical ( ModelPart rModelPart,
ModelPart::ElementsContainerType rElements,
const Variable< array_1d< double, 3 >> &  rPointVariable,
const Variable< array_1d< double, 3 >> &  rDistributedVariable,
double  Tolerance,
unsigned int  MaximumIterations 
)
static

Tranform a set of concentrated nodal values to a variable distributed over the conditions of rModelPart. The origin and destination values have the same L2 norm over the set of conditions. A typical use case is to transform a set of point loads into an equivalent distributed load. Version for vector magnitudes. Note that as no container is provided, the values distribution is performed over the conditions.

Parameters
rModelPartThe model part of the problem
rElementsElements container to distribute the values
rPointVariableThe variable that will contain the point (origin) values.
rDistributedVariableThe variable containing the distributed (destination) values.
ToleranceMaximum allowed difference (in L2 norm) between origin and destination values.
MaximumIterationsMaximum number of iterations for the procedure.

◆ DistributePointValuesNonHistorical() [4/4]

void Kratos::VariableRedistributionUtility::DistributePointValuesNonHistorical ( ModelPart rModelPart,
ModelPart::ElementsContainerType rElements,
const Variable< double > &  rPointVariable,
const Variable< double > &  rDistributedVariable,
double  Tolerance,
unsigned int  MaximumIterations 
)
static

Tranform a set of concentrated nodal values to a variable distributed over the conditions of rModelPart. The origin and destination values have the same L2 norm over the set of conditions. A typical use case is to transform a set of point loads into an equivalent distributed load. Version for scalar magnitudes.

Parameters
rModelPartThe model part of the problem
rElementsElements container to distribute the values
rPointVariableThe variable that will contain the point (origin) values.
rDistributedVariableThe variable containing the distributed (destination) values.
ToleranceMaximum allowed difference (in L2 norm) between origin and destination values.
MaximumIterationsMaximum number of iterations for the procedure.

◆ KRATOS_CLASS_POINTER_DEFINITION()

Kratos::VariableRedistributionUtility::KRATOS_CLASS_POINTER_DEFINITION ( VariableRedistributionUtility  )

Pointer definition of VariableRedistributionUtility.

◆ NumberOfLocalEntities() [1/2]

template<>
std::size_t Kratos::VariableRedistributionUtility::NumberOfLocalEntities ( const ModelPart rModelPart,
const ModelPart::ConditionsContainerType rEntitiesContainer 
)

◆ NumberOfLocalEntities() [2/2]

template<>
std::size_t Kratos::VariableRedistributionUtility::NumberOfLocalEntities ( const ModelPart rModelPart,
const ModelPart::ElementsContainerType rEntitiesContainer 
)

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