EQUATION
Specifies the equation systems present in the problem.
Type
AcuTrace Command
Syntax
EQUATION {parameters}
Qualifier
This command has no qualifier.
Parameters
- particle (enumerated) [=massless]
- Type of the particle motion equation.
- massless
- Massless particle equation.
- finite_mass
- Finite mass particle equation.
- stretch (enumerated) [=none]
- Type of the stretch equation.
- none
- No stretch equation present.
- standard
- Standard stretch equation.
- user_equations (list) [={}]
- List of user equations to be used.
- number_particle_components or num_part_comps (integer) >=0 [=0]
- Number of particle components.
Description
EQUATION {
particle = massless
stretch = standard
}
EQUATION {
particle = finite_mass
stretch = standard
}
In the massless model, the velocity of a particle always equals the flow velocity at the particle's location. In the finite mass model, the particle velocity does not necessarily equal the flow velocity. Instead, the particles have mass and are subject to forces such as drag and gravity.

where DDt denotes the derivative in the particle frame of reference, t is time, →xp is the particle position, →uf is the flow velocity, ∇⇀ufT is the transpose of the velocity gradient, and ⇀lp is the stretch vector.

where ⇀uturb is a random perturbation to the particle velocity based on the eddy viscosity.

where →up is the particle velocity, mp is the particle mass, and →F is the sum of the forces acting on the particle. If the parameter turbulence_trace in the TRACE_PARAMETERS command is set to on, then the values of →uf used in evaluating →F are replaced by →uf+→uturb . Note that particles are assumed to be spherical of constant (subgrid scale) size.


The user equations present in the problem are specified by the user_equations parameter. Each user equation specified by the user_equations parameter must be defined by a USER_EQUATION command.
EQUATION {
...
user_equations = {tparticle, cparticle}
}
USER_EQUATION( "tparticle" ) {
user_function = "usrTparticle"
num_variables = 1
...
}
USER_EQUATION( "cparticle" ) {
user_function = "usrCparticle"
num_variables = 2 # 2 species example
...
}
EQUATION {
particle = massless
stretch = standard
}
TIME_SEQUENCE {
staggers = { "particle", "stretch" }
...
}
STAGGER( "particle" ) {
equation = particle
...
}
STAGGER( "stretch" ) {
equation = stretch
...
}
EQUATION {
particle = massless
user_equations = {tparticle, cparticle}
}
TIME_SEQUENCE {
staggers = { "particle", "tparticle", "cparticle"}
...
}
STAGGER( "particle" ) {
equation = particle
...
}
STAGGER( "tparticle" ) {
equation = user_equation
user_equation = "cparticle"
...
}
STAGGER( "cparticle" ) {
equation = user_equation
user_equation = "tparticle"
...
}
USER_EQUATION( "tparticle" ) {
user_function = "usrTparticle"
num_variables = 1
...
}
USER_EQUATION( "cparticle" ) {
user_function = "usrCparticle"
num_variables = 2
...
}
If an equation is defined by the EQUATION command, but no active stagger references that equation, the solution field of that equation is unaltered throughout the analysis.
Particle components are a generalization of a marker variable; they can also be considered a generalization of species or composition. When number_particle_components is greater than zero, particle components are initialized in the PARTICLE_SEED command. The values of the particle components are constant in time but they may vary over the particles in the problem according to how they are initialized.