In file terrainMaterial.h:

class terrainMaterial

Class for describing terrain (soil/rock/snow) mechanical properties for improved contact simulation

Public Fields

[more] General properties
[more] Soil constants
Constants for Terzaghi's equation

Public Methods

[more]void computeDerivedConstants(double gravity)
computes constants needed for later calculations, some of which depend on gravity
[more]double computeSinkage(double &force, double width, double area, double zwMax, int assumeCohesionless = -1)
returns the sinkage of a wheel supporting a given force over a given area, which has a given width.
[more]double computeSinkage(double &force, double width, double area, double dwDz, double zwMax, int assumeCohesionless = -1)
returns the sinkage of a wheel supporting a given force over a given area, which has a given width.
[more]inline double computeRollingResistance(double force, double width, double area, double sinkage)
Computes the rolling resistance (in Newtons) for the given contact patch.
[more]double computeMaximumTraction(double area, double force)
Computes the maximum traction that can be supported by the given contact area and force, based on soil cohesion and internal friction
[more]int readParams(paramParser* p)
reads parameters from the current context of a parser.

Public Members

[more]enum terrainMaterialType
Different classes of terrain materials.


Documentation

Class for describing terrain (soil/rock/snow) mechanical properties for improved contact simulation
oenum terrainMaterialType
Different classes of terrain materials.

o General properties

oint materialType
Type of material

odouble grainSize
size of particles in material (m)

odouble bulkDensity
density of material

odouble cohesion
Cohesion, in kPa

odouble internalFriction
internal friction (degrees).

o Soil constants
Tergazhi's equation for bearing capacity requires several coefficients which depend on the angle of internal friction and whether a soil is cohesionless or not. These coefficients are usually obtained from a table, such as that on p. 375 of "Essentials of Soil Mechanics and Foundations" by McCarthy.

odouble Nc
Constant for cohesion in Terzaghi equation. Reasonable values are 3.5 to 18 for cohesionless soils and 5-70 for others. Worst case cohesionless Martian drift materials has Nc = 3.5 (though cohension is 0, so this term is not used)

odouble Nq
Constant for soil surcharge in Terzaghi equation. Reasonable values are 0-16 for cohesionless soils and 0-70 for others. Worst case cohesionless Martian drift materials has Nq = 3.5.

odouble Ng
Constant for gamma in Terzaghi equation. Reasonable values are 0-16 for cohesionless soilds and 0-70 for others. For phi <= 14 deg, Ng is 0. Worst case cohesionless Martian drift materials has Ng = 1.0.

odouble gamma
soil specific weight; equals density * gravity. Units = Newtons

odouble cNc
cohesion * Nc

odouble tanPhi
tangent of angle of internal friction

oint cohesionlessSinkage
indicates whether or not cohesion should be considered when computing sinkage. cohesionlessSinkage = 1 is worst case (conservative)

ovoid computeDerivedConstants(double gravity)
computes constants needed for later calculations, some of which depend on gravity

odouble computeSinkage(double &force, double width, double area, double zwMax, int assumeCohesionless = -1)
returns the sinkage of a wheel supporting a given force over a given area, which has a given width. Sinkage is computed using Terzaghi's equation. If the computed sinkage required to support the supplied force is greater than zwMax, then force will be clipped to the maximum force supportable at zwMax. Three different useful values for assumeCohesionless can be supplied:

odouble computeSinkage(double &force, double width, double area, double dwDz, double zwMax, int assumeCohesionless = -1)
returns the sinkage of a wheel supporting a given force over a given area, which has a given width. Sinkage is computed using Terzaghi's equation, with a trapezoidal approximation to tire deflection. If the computed sinkage required to support the supplied force is greater than zwMax, then force will be clipped to the maximum force supportable at zwMax. Three different useful values for assumeCohesionless can be supplied:

oinline double computeRollingResistance(double force, double width, double area, double sinkage)
Computes the rolling resistance (in Newtons) for the given contact patch. The value for 'sinkage' can be obtained from terrainMaterial::computeSinkage().

odouble computeMaximumTraction(double area, double force)
Computes the maximum traction that can be supported by the given contact area and force, based on soil cohesion and internal friction

oint readParams(paramParser* p)
reads parameters from the current context of a parser. The parameters are:

For materials of type SOIL or SNOW, the following additional parameters are read:

These last three coefficients (bearing capacity factors) depend on the angle of internal friction and can be found in texts on foundations and soil mechanics (e.g. "Essentials of Soil Mechanics and Foundations", McCarthy, p. 375).


This class has no child classes.

Alphabetic index HTML hierarchy of classes or Java



This page was generated with the help of DOC++.