# model solve command

Syntax

model solve keyword ...

Primary keywords:

Solve to a specified limit. The solve logic provides a mechanism to continue cycling a model until specified criteria are met, oftentimes resulting in a model that is in equilibrium to some tolerance. Any combination of the keywords below can be given in a single model.solve command.

Note

If multiple solve limits are given, then cycling will continue until one of the limits is met, unless the and keyword is used, in which case all criteria must be met before cycling stops.

and

Specify that when multiple solve limits are given, all must be met before cycling is stopped. The default behavior is to stop once any solve limit is met.

calm i

Specify that every i cycles, the model will be calmed. For mechanical processes, all velocities (both linear and angular) that are not fixed are nulled during a calm.

clock f

Limit the computer run time to f in minutes. By default, there is no limit to the run time.

convergence f

Limit based on the maximum convergence value of all gridpoints, zones, balls, clumps, or rigid blocks. The convergence value is defined as the ratio of the current mechanical force ratio to the target force ratio of the gridpoint. See the zone gridpoint initialize ratio-target and structure node initialize ratio-target commands. A convergence value of 1.0 is therefore considered “converged”, but it is possible to restrict or relax that by using a value greater or less than 1.0.

creep keyword

Specify a solve limit for the creep process specifically.

cycles i

Limit of the number of cycles to take with creep active during this solve operation.

cycles-total i

Total number of cycles taken with creep active since model creation.

cycles-total-zone i

Total number of cycles taken with creep active in the zone module.

time f

Limit of the time accumulated while this process is active during this solve operation.

time-total f

Limit of the time accumulated while this process is active since model creation.

time-total-zone f

Total accumulated creep time in the zone module.

cycles-super i

A solve limit based on the number of “Super-Cycles” taken during the current solve command. One “Super-Cycle” cycle includes all master and slave steps taken as part of a loosely coupled solve system.

cycles-total i

A solve limit based on the total number of accumulated cycles.

dynamic

Specify a solve limit for the dynamic process specifically.

cycles i

Limit of the number of cycles to take with dynamic active during this solve operation.

cycles-total i

Total number of cycles taken with dynamic active since model creation.

cycles-total-zone i

Total number of cycles taken with dynamic active in the zone module.

time f

Limit of the time accumulated while this process is active during this solve operation.

time-total f

Limit of the time accumulated while this process is active since model creation.

time-total-zone f

Total accumulated dynamic time in the zone module.

elastic <only>

Perform a mechanical calculation in two steps: first, assuming elastic behavior; then, using the actual strength values of the material. The cohesion and tensile strength for all materials in the model are set to high values for the first step. For the second step, the cohesion and tensile strength are reset to their original values. If the optional only keyword is provided, then only the elastic portion (i.e., the first step) is undertaken. This keyword only applies to the mechanical process.

fish-call f s <keyword>

Add the FISH function s to the Fish-Call list at location f, as with the fish callback command. See the section FISH Callback Events for a discussion of FISH callbacks. The following keywords are available to reduce the frequency of the callback.

interval i

If specified, then the function will only be called every i steps.

process keyword

If specified, then the function will only be called if the process indicated is active during that particular cycle.

creep

The callback will only execute if the creep and mechanical process is active

dynamic

The callback will only execute if the dynamic and mechanical process is active

fluid

The callback will only execute if the fluid process is active

mechanical

The callback will only execute if the mechanical process is active

thermal

The callback will only execute if the thermal process is active

fish-halt s

The FISH function s is called during every cycle to determine whether cycling should continue. If s returns false, cycling continues; otherwise, cycling terminates.

fluid keyword

Specifies a solve limit for the fluid process specifically.

cycles i

Limit of the number of cycles to take with fluid-flow active during this solve operation.

cycles-total i

Total number of cycles taken with fluid-flow active since model creation.

cycles-total-zone i

Total number of cycles taken with fluid-flow active in the zone module.

ratio-flow f (FLAC3D only)

Specifies a limiting convergence ratio as defined by the fluid-flow logic. See section xxx of the fluid discussion — CS on 3/7/17 still don’t know where this should go

time f

Limit of the time accumulated while this process is active during this solve operation.

time-total f

Limit of the time accumulated while this process is active since model creation.

time-total-zone f

Total accumulated dynamic time in the zone module.

mechanical keyword

Specifies a solve limit for the mechanical process specifically.

convergence f

Limit based on the maximum convergence value of all gridpoints and zones in the model (note that currently PFC balls do not support this keyword). The convergence value for a gridpoint or node is defined as the ratio of the current mechanical force ratio to the target force ratio of the gridpoint. See the zone gridpoint initialize ratio-target and structure node initialize ratio-target commands. A convergence value of 1.0 is therefore considered “converged”, but it is possible to restrict or relax that by using a value greater or less than 1.0.

cycles i

Limit of the number of cycles to take with mechanical active during this solve operation.

cycles-total i

Total number of cycles taken with mechanical active since model creation.

cycles-total-zone i

Total number of cycles taken with mechanical active in the zone module.

ratio f

Limit based on the current convergence ratio value, as defined by the various modules that use it. By default this is the same as ratio-average. See ref-equilibrium-.

ratio-average f

Limited based on the average convergence ratio. See ref-equilibrium-.

ratio-local f

Limited based on the local convergence ratio. See ref-equilibrium-.

ratio-maximum f

Limited based on the maximum convergence ratio. See ref-equilibrium-. CS: Common trouble

time f

Limit of the time accumulated while this process is active during this solve operation.

time-total f

Limit of the time accumulated while this process is active since model creation.

time-total-zone f

Total accumulated mechanical time in the zone module.

unbalanced-maximum f

Limit based on the maximum unbalanced force among model objects.

or

Specify that when multiple solve limits are set, cycling should stop when any one limit is met. This is the default behavior.

ratio f

Limit based on the convergence ratio returned by all active modules.

ratio-average f

Limit based on the average convergence ratio returned by all active modules.

ratio-local f

Limit based on the local convergence ratio returned by all active modules.

ratio-maximum f

Limit based on the maximum convergence ratio returned by all active modules.

thermal keyword

Specifies a solve limit for the thermal process specifically.

cycles i

Limit of the number of cycles to take with thermal active during this solve operation.

cycles-total i

Total number of cycles taken with thermal active since model creation.

cycles-total-zone i

Total number of cycles taken with thermal active in the zone module.

ratio f

Specifies a limiting convergence ratio as defined by the thermal logic.

ratio-local f

Specifies a limiting local convergence ratio as defined by the thermal logic.

time f

Limit of the time accumulated while this process is active during this solve operation.

time-total f

Limit of the time accumulated while this process is active since model creation.

time-total-zone f

Total accumulated dynamic time in the zone module.

time f

Cycle until the total time accumulated by any active process after the initiation of the solve meets or exceeds f. This is distinct from the time-total keyword that refers to the total age of the process.

time-total f

Cycle until the total age of any active process meets or exceeds f. This is distinct from the time keyword.

time-total-zone f

Cycle until the total age of any active process in a zone module meets or exceeds f. This is distinct from the time keyword.

unbalanced-average f

Cycle until the average unbalanced quantity, defined by the active processes, is less than or equal to f. For the mechanical process, unbalanced refers to the average unbalanced force (i.e., the unbalanced force is what remains after all forces are applied to a model object).

unbalanced-maximum f

Cycle until the maximum unbalanced quantity, defined by the active processes, is less than or equal to f. For the mechanical process, unbalanced refers to the maximum unbalanced force (i.e., the unbalanced force is what remains after all forces are applied to a model object).