14 #if !defined(KRATOS_TIME_AVERAGING_PROCESS_H_INCLUDED)
15 #define KRATOS_TIME_AVERAGING_PROCESS_H_INCLUDED
92 const Parameters GetDefaultParameters()
const override;
107 std::string
Info()
const override;
110 void PrintInfo(std::ostream& rOStream)
const override;
113 void PrintData(std::ostream& rOStream)
const override;
162 std::string mModelPartName;
163 std::string mIntegrationControlVariableName;
164 enum TimeAveragingContainers
168 ElementalNonHistorical
170 TimeAveragingContainers mTimeAveragingContainer;
171 enum TimeAveragingMethods
176 TimeAveragingMethods mTimeAveragingMethod;
178 std::vector<std::string> mVariableNamesList;
179 std::vector<std::string> mAveragedVariableNamesList;
192 bool IsIntegrationStep()
const;
194 template <
typename TDataType>
196 const Variable<TDataType>& rVariable,
197 const Variable<TDataType>& rAveragedVariable,
198 const double DeltaTime)
const;
200 template <
typename TDataType,
typename TContainerType>
201 void CalculateTimeIntegratedNonHistoricalQuantity(
202 TContainerType& rContainer,
203 const Variable<TDataType>& rVariable,
204 const Variable<TDataType>& rAveragedVariable,
205 const double DeltaTime)
const;
207 template <
typename TDataType>
208 void AverageMethod(
const TDataType& rTemporalVariable,
209 TDataType& rAveragedVariable,
210 const double DeltaTime)
const;
212 template <
typename TDataType>
213 void RootMeanSquareMethod(
const TDataType& rTemporalVariable,
214 TDataType& rAveragedVariable,
215 const double DeltaTime)
const;
217 template <
typename TDataType>
218 std::function<void(
const TDataType&, TDataType&,
const double)> GetTimeAveragingMethod()
const;
233 TimeAveragingProcess&
operator=(TimeAveragingProcess
const& rOther);
236 TimeAveragingProcess(TimeAveragingProcess
const& rOther);
PeriodicInterfaceProcess & operator=(const PeriodicInterfaceProcess &)=delete
void ExecuteFinalizeSolutionStep() override
this function will be executed at every time step AFTER performing the solve phase
Definition: periodic_interface_process.hpp:55
void ExecuteInitialize() override
Definition: periodic_interface_process.hpp:37
std::string Info() const override
Turn back information as a string.
Definition: periodic_interface_process.hpp:93
Base class for all Elements.
Definition: element.h:60
This class aims to manage different model parts across multi-physics simulations.
Definition: model.h:60
Element ElementType
Definition: model_part.h:120
Node NodeType
Definition: model_part.h:117
MeshType::NodesContainerType NodesContainerType
Nodes container. Which is a vector set of nodes with their Id's as key.
Definition: model_part.h:128
This class defines the node.
Definition: node.h:65
This class provides to Kratos a data structure for I/O based on the standard of JSON.
Definition: kratos_parameters.h:59
The base class for all processes in Kratos.
Definition: process.h:49
Definition: time_averaging_process.h:53
KRATOS_CLASS_POINTER_DEFINITION(TimeAveragingProcess)
Pointer definition of TimeAveragingProcess.
REF: G. R. Cowper, GAUSSIAN QUADRATURE FORMULAS FOR TRIANGLES.
Definition: mesh_condition.cpp:21
std::ostream & operator<<(std::ostream &rOStream, const LinearMasterSlaveConstraint &rThis)
output stream function
Definition: linear_master_slave_constraint.h:432
def Average(vector_container, current_values, k_calc, pp)
Definition: initial_time_bounds.py:102