calculate stress command
Purpose
Calculates the stress of a collection of particles
Synatx
calculate stress keyword/value pairs
The following keyword/value pairs are allowed:
Keywords |
Description |
|---|---|
id |
user-assigned name for the calculate stress command |
region in which the stress tensor is calculated |
|
particle group for which the stress tensor is calculated |
|
radius of the smoothing kernel
default: 4*maximum radius; range: (0,∞); units: [length]
|
|
type of the smoothing kernel, must be one of:
Gaussian, Top_Hat, Wendlanddefault: Gaussian;
|
Examples
calculate stress id cs
calculate stress id cs kernel_radius 1e-2 kernel_type Wendland region outlet
# calculate average xx stress:
calculate average id cs_xx quantity id_stressTensor_cs.xx
Description
The stress tensor is calculated for each particle according to Goldhirsch. The formula is given by:

where

and
is the velocity vector
force acting from j onto i
vector from center of j to center of i
mass of particle i
is the Heaviside function
In case solid boundaries are present the last term is given according to Weinhart et al. by

where

and
is the contact point of particle j with wall k and the sum runs over all particles j and walls k.
The following three kernel_type values are implemented at the moment:
Top_Hat- Top hat kernel

Gaussian- Gaussian kernel

Wendland- Quintic radial polynomial

Note that all kernels are equal to zero if
is greater than kernel_radius (this implies a cut-off for the Gaussian). The constants
(different for each kernel) are chosen such that the integral of
over the ball of radius kernel_radius is equal to one. In case of the top hat kernel
is equal to the volume of this sphere.
The command can be restricted to work on a specific group of particles or a specific region by using the particle_group or region keywords, respectively.
The stress tensor is written to a per-particle property which can be accessed using id_stressTensor_ID, where ID is the id of the calculate command. It has nine components which can be accessed using .xx, .xy, .xz, .yx, .yy, .yz, .zx, .zy and .zz for the respective components.
References
(Goldhirsch) Goldhirsch; Stress, stress asymmetry and couple stress: from discrete particles to continuous fields, Granular Matter (2010)
(Weinhart) Weinhart, Thornton, Luding, Bokhove; From discrete particles to continuum fields near a boundary (2012)
is the velocity vector
force acting from j onto i
vector from center of j to center of i
mass of particle i
is the Heaviside function