9 #if !defined(DEM_ROLLING_FRICTION_MODEL_H_INCLUDED)
10 #define DEM_ROLLING_FRICTION_MODEL_H_INCLUDED
18 #include "custom_utilities/AuxiliaryFunctions.h"
30 class SphericParticle;
43 virtual void SetAPrototypeOfThisInProperties(Properties::Pointer pProp,
bool verbose =
true);
45 virtual void Check(Properties::Pointer pProp)
const;
49 virtual DEMRollingFrictionModel::Pointer Clone()
const;
51 virtual std::unique_ptr<DEMRollingFrictionModel> CloneUnique();
73 virtual void save(
Serializer& rSerializer)
const {
Base class for all Conditions.
Definition: condition.h:59
Definition: DEM_rolling_friction_model.h:32
virtual void CalculateInelasticRollingResistanceEnergy(double &inelastic_rollingresistance_energy, const array_1d< double, 3 > &rolling_friction_moment, const array_1d< double, 3 > &relative_angular_velocity, double dt)
Definition: DEM_rolling_friction_model.h:65
virtual void DoFinalOperations(SphericParticle *p_element, double dt, array_1d< double, 3 > &mContactMoment)
Definition: DEM_rolling_friction_model.h:63
virtual bool CheckIfThisModelRequiresRecloningForEachNeighbour()
Definition: DEM_rolling_friction_model.h:39
virtual void InitializeSolutionStep()
Definition: DEM_rolling_friction_model.h:53
virtual void ComputeRollingFrictionWithWall(SphericParticle *p_element, Condition *const wall, const ProcessInfo &r_process_info, double LocalContactForce[3], double indentation, array_1d< double, 3 > &mContactMoment)
Definition: DEM_rolling_friction_model.h:57
virtual void ComputeRollingResistance(SphericParticle *p_element, SphericParticle *p_neighbor, double LocalContactForce[3])
Definition: DEM_rolling_friction_model.h:59
virtual void CalculateInelasticRollingResistanceEnergyWithWall(double &inelastic_rollingresistance_energy, const array_1d< double, 3 > &rolling_friction_moment, const array_1d< double, 3 > &relative_angular_velocity, double dt)
Definition: DEM_rolling_friction_model.h:67
virtual void ComputeRollingFriction(SphericParticle *p_element, SphericParticle *p_neighbor, const ProcessInfo &r_process_info, double LocalContactForce[3], double indentation, array_1d< double, 3 > &mContactMoment)
Definition: DEM_rolling_friction_model.h:55
KRATOS_CLASS_POINTER_DEFINITION(DEMRollingFrictionModel)
virtual void ComputeRollingResistanceWithWall(SphericParticle *p_element, Condition *const wall, double LocalContactForce[3])
Definition: DEM_rolling_friction_model.h:61
ProcessInfo holds the current value of different solution parameters.
Definition: process_info.h:59
The serialization consists in storing the state of an object into a storage format like data file or ...
Definition: serializer.h:123
Definition: spheric_particle.h:31
dt
Definition: DEM_benchmarks.py:173
REF: G. R. Cowper, GAUSSIAN QUADRATURE FORMULAS FOR TRIANGLES.
Definition: mesh_condition.cpp:21
KRATOS_DEFINE_APPLICATION_VARIABLE(CHIMERA_APPLICATION, double, CHIMERA_DISTANCE)
def load(f)
Definition: ode_solve.py:307