10 #if !defined(KRATOS_SET_MATERIAL_PROPERTIES_TO_FLUID_NODES_PROCESS_H_INCLUDED)
11 #define KRATOS_SET_MATERIAL_PROPERTIES_TO_FLUID_NODES_PROCESS_H_INCLUDED
112 double flow_index = 1;
113 double yield_shear = 0;
114 double adaptive_exponent = 0;
115 double static_friction = 0;
116 double dynamic_friction = 0;
117 double inertial_number_zero = 0;
118 double grain_diameter = 0;
119 double grain_density = 0;
120 double regularization_coefficient = 0;
121 double friction_angle = 0;
124 double density = elemProperties[DENSITY];
126 double viscosity = elemProperties[DYNAMIC_VISCOSITY];
127 unsigned int elem_property_id = elemProperties.
Id();
129 if (elemProperties.
Has(YIELD_SHEAR))
131 flow_index = elemProperties[FLOW_INDEX];
132 yield_shear = elemProperties[YIELD_SHEAR];
133 adaptive_exponent = elemProperties[ADAPTIVE_EXPONENT];
135 else if (elemProperties.
Has(INTERNAL_FRICTION_ANGLE))
137 friction_angle = elemProperties[INTERNAL_FRICTION_ANGLE];
138 cohesion = elemProperties[COHESION];
139 adaptive_exponent = elemProperties[ADAPTIVE_EXPONENT];
141 else if (elemProperties.
Has(STATIC_FRICTION))
143 static_friction = elemProperties[STATIC_FRICTION];
144 dynamic_friction = elemProperties[DYNAMIC_FRICTION];
145 inertial_number_zero = elemProperties[INERTIAL_NUMBER_ZERO];
146 grain_diameter = elemProperties[GRAIN_DIAMETER];
147 grain_density = elemProperties[GRAIN_DENSITY];
148 regularization_coefficient = elemProperties[REGULARIZATION_COEFFICIENT];
158 rGeom[
i].FastGetSolutionStepValue(PROPERTY_ID) = elem_property_id;
162 rGeom[
i].FastGetSolutionStepValue(BULK_MODULUS) =
bulk_modulus;
165 rGeom[
i].FastGetSolutionStepValue(DENSITY) =
density;
168 rGeom[
i].FastGetSolutionStepValue(DYNAMIC_VISCOSITY) =
viscosity;
171 rGeom[
i].FastGetSolutionStepValue(YIELD_SHEAR) = yield_shear;
174 rGeom[
i].FastGetSolutionStepValue(FLOW_INDEX) = flow_index;
177 rGeom[
i].FastGetSolutionStepValue(ADAPTIVE_EXPONENT) = adaptive_exponent;
180 rGeom[
i].FastGetSolutionStepValue(INTERNAL_FRICTION_ANGLE) = friction_angle;
183 rGeom[
i].FastGetSolutionStepValue(COHESION) = cohesion;
186 rGeom[
i].FastGetSolutionStepValue(ADAPTIVE_EXPONENT) = adaptive_exponent;
189 rGeom[
i].FastGetSolutionStepValue(STATIC_FRICTION) = static_friction;
192 rGeom[
i].FastGetSolutionStepValue(DYNAMIC_FRICTION) = dynamic_friction;
195 rGeom[
i].FastGetSolutionStepValue(INERTIAL_NUMBER_ZERO) = inertial_number_zero;
198 rGeom[
i].FastGetSolutionStepValue(GRAIN_DIAMETER) = grain_diameter;
201 rGeom[
i].FastGetSolutionStepValue(GRAIN_DENSITY) = grain_density;
204 rGeom[
i].FastGetSolutionStepValue(REGULARIZATION_COEFFICIENT) = regularization_coefficient;
230 std::string
Info()
const override
232 return "SetMaterialPropertiesToFluidNodesProcess";
238 rOStream <<
"SetMaterialPropertiesToFluidNodesProcess";
320 rOStream << std::endl;
Geometry base class.
Definition: geometry.h:71
SizeType PointsNumber() const
Definition: geometry.h:528
PointerVector< TPointType > PointsArrayType
Definition: geometry.h:118
IndexType Id() const
Definition: indexed_object.h:107
The base class for processes passed to the solution scheme.
Definition: mesher_process.hpp:37
void PrintData(std::ostream &rOStream) const override
Print object's data.
Definition: mesher_process.hpp:157
This class aims to manage meshes for multi-physics simulations.
Definition: model_part.h:77
MeshType::ElementsContainerType ElementsContainerType
Element container. A vector set of Elements with their Id's as key.
Definition: model_part.h:168
ElementsContainerType & Elements(IndexType ThisIndex=0)
Definition: model_part.h:1189
MeshType::NodesContainerType NodesContainerType
Nodes container. Which is a vector set of nodes with their Id's as key.
Definition: model_part.h:128
MeshType::ElementIterator ElementIterator
Definition: model_part.h:174
VariablesList & GetNodalSolutionStepVariablesList()
Definition: model_part.h:549
static void PartitionedIterators(TVector &rVector, typename TVector::iterator &rBegin, typename TVector::iterator &rEnd)
Generate a partition for an std::vector-like array, providing iterators to the begin and end position...
Definition: openmp_utils.h:179
Properties encapsulates data shared by different Elements or Conditions. It can store any type of dat...
Definition: properties.h:69
bool Has(TVariableType const &rThisVariable) const
Definition: properties.h:578
Short class definition.
Definition: set_material_properties_to_fluid_nodes_process.hpp:67
virtual ~SetMaterialPropertiesToFluidNodesProcess()
Destructor.
Definition: set_material_properties_to_fluid_nodes_process.hpp:86
std::string Info() const override
Turn back information as a string.
Definition: set_material_properties_to_fluid_nodes_process.hpp:230
void Execute() override
Execute method is used to execute the MesherProcess algorithms.
Definition: set_material_properties_to_fluid_nodes_process.hpp:99
ModelPart & mrModelPart
Definition: set_material_properties_to_fluid_nodes_process.hpp:252
SetMaterialPropertiesToFluidNodesProcess(ModelPart &rModelPart)
Default constructor.
Definition: set_material_properties_to_fluid_nodes_process.hpp:80
void PrintInfo(std::ostream &rOStream) const override
Print information about this object.
Definition: set_material_properties_to_fluid_nodes_process.hpp:236
void operator()()
Definition: set_material_properties_to_fluid_nodes_process.hpp:90
KRATOS_CLASS_POINTER_DEFINITION(SetMaterialPropertiesToFluidNodesProcess)
Pointer definition of SetMaterialPropertiesToFluidNodesProcess.
bool Has(const VariableData &rThisVariable) const
Definition: variables_list.h:372
#define KRATOS_CATCH(MoreInfo)
Definition: define.h:110
#define KRATOS_TRY
Definition: define.h:109
REF: G. R. Cowper, GAUSSIAN QUADRATURE FORMULAS FOR TRIANGLES.
Definition: mesh_condition.cpp:21
ModelPart::NodesContainerType NodesContainerType
Definition: find_conditions_neighbours_process.h:44
std::size_t SizeType
The definition of the size type.
Definition: mortar_classes.h:43
std::istream & operator>>(std::istream &rIStream, LinearMasterSlaveConstraint &rThis)
input stream function
ModelPart::ElementsContainerType ElementsContainerType
Definition: clear_contact_conditions_mesher_process.hpp:43
std::ostream & operator<<(std::ostream &rOStream, const LinearMasterSlaveConstraint &rThis)
output stream function
Definition: linear_master_slave_constraint.h:432
GeometryType::PointsArrayType PointsArrayType
Definition: settle_model_structure_process.hpp:48
float viscosity
Definition: edgebased_var.py:8
float density
Definition: face_heat.py:56
bulk_modulus
Definition: script.py:97
integer i
Definition: TensorModule.f:17