|
AGX Dynamics 2.42.3.0
|
Class containing the soil bulk properties of and agxTerrain object. More...
#include <TerrainMaterial.h>
Inheritance diagram for agxTerrain::TerrainMaterial::BulkProperties:Public Member Functions | |
| BulkProperties (TerrainMaterial *terrainMaterial) | |
| Default constructor. | |
| agx::Real | getCohesion () const |
| agx::Real | getDeltaReposeAngle () const |
| agx::Real | getDensity () const |
| agx::Real | getDilatancyAngle () const |
| agx::Real | getFrictionAngle () const |
| agx::Real | getMaximumDensity () const |
| agx::Real | getPoissonsRatio () const |
| agx::Real | getSwellFactor () const |
| agx::Real | getTangentialCohesion () const |
| agx::Real | getYoungsModulus () const |
| void | setCohesion (agx::Real cohesion) |
| Set the bulk cohesion (Pa) of the bulk material. | |
| void | setDeltaReposeAngle (agx::Real deltaReposeAngle) |
| Set the delta repose angle. | |
| void | setDensity (agx::Real density) |
| Set the bulk density (kg/m^3) of the bulk material. | |
| void | setDilatancyAngle (agx::Real dilatancyAngle) |
| Set the dilatancy angle (rad) of the bulk material. | |
| void | setFrictionAngle (agx::Real frictionAngle) |
| Set the internal friction angle (rad) of the bulk material. | |
| void | setMaximumDensity (agx::Real maxDensity) |
| Set the maximum density (kg/m^3) of the bulk material. | |
| void | setPoissonsRatio (agx::Real poissonsRatio) |
| Set the bulk Poisson's ratio of the bulk material. | |
| void | setSwellFactor (agx::Real swellFactor) |
| Set the swell factor of the material, i.e how much the material will expand during excavation. | |
| void | setTangentialCohesion (agx::Real tangentialCohesion) |
| void | setYoungsModulus (agx::Real youngsModulus) |
| Set the bulk Young's modulus (Pa) of the bulk material. | |
Public Member Functions inherited from agx::Referenced | |
| Referenced () | |
| Default constructor. | |
| Referenced (const Referenced &) | |
| template<typename T > | |
| T * | as () |
| Subclass casting. | |
| template<typename T > | |
| const T * | as () const |
| template<typename T > | |
| T * | asSafe () |
| Safe subclass casting, return nullptr if template type does not match. | |
| template<typename T > | |
| const T * | asSafe () const |
| int | getReferenceCount () const |
| template<typename T > | |
| bool | is () const |
| Subclass test. | |
| Referenced & | operator= (const Referenced &) |
| Assignment operator. Will increment the number of references to the referenced object. | |
| void | reference (void *ptr=nullptr) const |
| Explicitly increment the reference count by one, indicating that this object has another pointer which is referencing it. | |
| void | unreference (void *ptr=nullptr) const |
| Decrement the reference count by one, indicating that a pointer to this object is referencing it. | |
| void | unreference_nodelete () const |
| Decrement the reference count by one, indicating that a pointer to this object is referencing it. | |
Protected Member Functions | |
| virtual | ~BulkProperties () |
| void | onChanged () |
Protected Member Functions inherited from agx::Referenced | |
| virtual | ~Referenced () |
| Destructor. | |
| void | allocateObserverVector () const |
| void | deleteUsingDeleteHandler () const |
Additional Inherited Members | |
Static Public Member Functions inherited from agx::Referenced | |
| template<typename T > | |
| static bool | ValidateCast (const Referenced *object) |
Static Protected Member Functions inherited from agx::Referenced | |
| static DeleteHandler * | getDeleteHandler () |
| static void | setDeleteHandler (DeleteHandler *handler) |
| Internal: Set a DeleteHandler to which deletion of all referenced counted objects will be delegated to. | |
Protected Attributes inherited from agx::Referenced | |
| Mutex | m_mutex |
| ObserverContainer | m_observers |
| AtomicValue | m_refCount |
Class containing the soil bulk properties of and agxTerrain object.
These properties typically affect the shape and force feedback of the failure zones that appear during excavation but also affect the shovel penetration resistance.
The bulk material properties governs the following internal contact material parameters:
YoungsModulus - The stiffness of the material in Pa. This affects the Young's Modulus parameter of the contact materials. Cohesion - Describes the internal cohesion of the material in Newton. This translates to the adhesion parameter of the internal contact material. Density - Describes the density of the soil in kg/m3. This translates to the specific density of the solid soil material and the bulk density of the dynamic soil (i.e Soil Particles). FrictionAngle - Describes the internal friction angle of the material. This affects the angle of repose in a 1-to 1 ration for the avalanching algorithm. PoissonsRatio - Describes the Poisson's ratio of the material. This affects the soil penetration force calculations. DilatancyAngle - Describes the dilatancy angle of the material. This affects the soil penetration force calculations.
Definition at line 152 of file TerrainMaterial.h.
| agxTerrain::TerrainMaterial::BulkProperties::BulkProperties | ( | TerrainMaterial * | terrainMaterial | ) |
Default constructor.
|
inlineprotectedvirtual |
Definition at line 287 of file TerrainMaterial.h.
|
inline |
Definition at line 1125 of file TerrainMaterial.h.
|
inline |
setDeltaReposeAngle. Definition at line 1140 of file TerrainMaterial.h.
|
inline |
Definition at line 1091 of file TerrainMaterial.h.
|
inline |
Definition at line 1120 of file TerrainMaterial.h.
|
inline |
Definition at line 1115 of file TerrainMaterial.h.
|
inline |
Definition at line 1097 of file TerrainMaterial.h.
|
inline |
Definition at line 1109 of file TerrainMaterial.h.
|
inline |
Definition at line 1135 of file TerrainMaterial.h.
|
inline |
Definition at line 1130 of file TerrainMaterial.h.
|
inline |
Definition at line 1103 of file TerrainMaterial.h.
|
protected |
| void agxTerrain::TerrainMaterial::BulkProperties::setCohesion | ( | agx::Real | cohesion | ) |
Set the bulk cohesion (Pa) of the bulk material.
| cohesion | - the specified bulk cohesion to set to the bulk material. (Default: 0.0 Pa) |
| void agxTerrain::TerrainMaterial::BulkProperties::setDeltaReposeAngle | ( | agx::Real | deltaReposeAngle | ) |
Set the delta repose angle.
This will increase the angle of repose of the material according to the following formula:
angle_of_repose = atan( tan(internal_friction angle + delta_repose_angle) * compaction_factor )
| deltaReposeAngle | - the specified delta repose to set to the material. |
| void agxTerrain::TerrainMaterial::BulkProperties::setDensity | ( | agx::Real | density | ) |
Set the bulk density (kg/m^3) of the bulk material.
| density | - the specified bulk density to set to the bulk material. (Default: 1.4e3 kg/m^3) |
| void agxTerrain::TerrainMaterial::BulkProperties::setDilatancyAngle | ( | agx::Real | dilatancyAngle | ) |
Set the dilatancy angle (rad) of the bulk material.
This determines the material properties during expansion and compression. This affects the soil penetration force calculations.
| dilatancyAngle | - the specified dilatancy angle to set to the bulk material. (Default: 15.0 * agx::PI / 180.0 radians) |
| void agxTerrain::TerrainMaterial::BulkProperties::setFrictionAngle | ( | agx::Real | frictionAngle | ) |
Set the internal friction angle (rad) of the bulk material.
This affects the shape of the active zones during excavations and also the angle of repose in a 1-to 1 ration for the avalanching algorithm.
| frictionAngle | - the specified internal friction angle to set to the bulk material. (Default: 45.0 * agx::PI / 180.0 radians) |
| void agxTerrain::TerrainMaterial::BulkProperties::setMaximumDensity | ( | agx::Real | maxDensity | ) |
Set the maximum density (kg/m^3) of the bulk material.
This is the upper limit for the soil compaction.
| maxDensity | - the specified density to set to the bulk material. (Default: 1.6e3 kg/m^3) |
| void agxTerrain::TerrainMaterial::BulkProperties::setPoissonsRatio | ( | agx::Real | poissonsRatio | ) |
Set the bulk Poisson's ratio of the bulk material.
This affects the soil penetration force calculations.
| poissonsRatio | - the specified bulk Poisson's ratio to set to the bulk material. (Default: 0.1) |
| void agxTerrain::TerrainMaterial::BulkProperties::setSwellFactor | ( | agx::Real | swellFactor | ) |
Set the swell factor of the material, i.e how much the material will expand during excavation.
The volume of the dynamic material created will increase according to the swell factor: volume dynamic = volume excavated * swellFactor
| swellFactor | - The specified swell factor to set to the material. (Default: 1.0) |
| void agxTerrain::TerrainMaterial::BulkProperties::setTangentialCohesion | ( | agx::Real | tangentialCohesion | ) |
| void agxTerrain::TerrainMaterial::BulkProperties::setYoungsModulus | ( | agx::Real | youngsModulus | ) |
Set the bulk Young's modulus (Pa) of the bulk material.
| youngsModulus | - the specified bulk Young's modulus to set to the bulk material. (Default: 1e7 Pa) |
| agxTerrain::TerrainMaterial::BulkProperties::AGXTERRAIN_STORE_RESTORE_INTERFACE |
Definition at line 284 of file TerrainMaterial.h.
| agx::Real agxTerrain::TerrainMaterial::BulkProperties::m_cohesion |
Definition at line 296 of file TerrainMaterial.h.
| agx::Real agxTerrain::TerrainMaterial::BulkProperties::m_deltaReposeAngle |
Definition at line 300 of file TerrainMaterial.h.
| agx::Real agxTerrain::TerrainMaterial::BulkProperties::m_density |
Definition at line 291 of file TerrainMaterial.h.
| agx::Real agxTerrain::TerrainMaterial::BulkProperties::m_dilatancyAngle |
Definition at line 298 of file TerrainMaterial.h.
| agx::Real agxTerrain::TerrainMaterial::BulkProperties::m_frictionAngle |
Definition at line 295 of file TerrainMaterial.h.
| agx::Real agxTerrain::TerrainMaterial::BulkProperties::m_maxDensity |
Definition at line 292 of file TerrainMaterial.h.
| agx::Real agxTerrain::TerrainMaterial::BulkProperties::m_poissonsRatio |
Definition at line 294 of file TerrainMaterial.h.
| agx::Real agxTerrain::TerrainMaterial::BulkProperties::m_swellFactor |
Definition at line 299 of file TerrainMaterial.h.
| agx::Real agxTerrain::TerrainMaterial::BulkProperties::m_tangentialCohesion |
Definition at line 297 of file TerrainMaterial.h.
| TerrainMaterial* agxTerrain::TerrainMaterial::BulkProperties::m_terrainMaterial |
Definition at line 302 of file TerrainMaterial.h.
| agx::Real agxTerrain::TerrainMaterial::BulkProperties::m_youngsModulus |
Definition at line 293 of file TerrainMaterial.h.