Generic dynamically allocated resizable storage.
Simplified implementation of std::unique_ptr, using only default deleter.
#define NAMESPACE_SPH_END
Symmetric traceless 2nd order tensor.
Pressure dependent failure modes .
virtual void integrate(IScheduler &scheduler, Storage &storage, const MaterialView material) override
Computes derivatives of the time-dependent quantities of the rheological model.
virtual void initialize(IScheduler &scheduler, Storage &storage, const MaterialView material) override
Evaluates the stress tensor reduction factors.
DruckerPragerRheology()
Constructs a rheology with no fragmentation model.
virtual void create(Storage &storage, IMaterial &material, const MaterialInitialContext &context) const override
Creates all the necessary quantities and material parameters needed by the rheology.
Perfectly elastic material, no yielding nor fragmentation.
virtual void integrate(IScheduler &scheduler, Storage &storage, const MaterialView material) override
Computes derivatives of the time-dependent quantities of the rheological model.
virtual void initialize(IScheduler &scheduler, Storage &storage, const MaterialView material) override
Evaluates the stress tensor reduction factors.
virtual void create(Storage &storage, IMaterial &material, const MaterialInitialContext &context) const override
Creates all the necessary quantities and material parameters needed by the rheology.
Interface representing a fragmentation model.
Material settings and functions specific for one material.
Base class of rheological models.
virtual void create(Storage &storage, IMaterial &material, const MaterialInitialContext &context) const =0
Creates all the necessary quantities and material parameters needed by the rheology.
virtual void integrate(IScheduler &scheduler, Storage &storage, const MaterialView material)=0
Computes derivatives of the time-dependent quantities of the rheological model.
virtual void initialize(IScheduler &scheduler, Storage &storage, const MaterialView material)=0
Evaluates the stress tensor reduction factors.
Interface that allows unified implementation of sequential and parallelized versions of algorithms.
Non-owning wrapper of a material and particles with this material.
Container storing all quantities used within the simulations.
Introduces plastic behavior for stress tensor, using von Mises yield criterion .
VonMisesRheology()
Constructs a rheology with no fragmentation model.
virtual void create(Storage &storage, IMaterial &settings, const MaterialInitialContext &context) const override
Creates all the necessary quantities and material parameters needed by the rheology.
virtual void integrate(IScheduler &scheduler, Storage &storage, const MaterialView material) override
Computes derivatives of the time-dependent quantities of the rheological model.
virtual void initialize(IScheduler &scheduler, Storage &storage, const MaterialView material) override
Evaluates the stress tensor reduction factors.
Shared data used when creating all bodies in the simulation.
Base class for all polymorphic objects.