Solution Controls

<< Click to Display Table of Contents >>

Navigation:  Problem Descriptor Reference > The Sections of a Descriptor > Select >

Solution Controls

Previous pageReturn to chapter overviewNext page

The following controls can be used in the SELECT section to modify the solution methods of FlexPDE.

Logical selectors can be turned on by selector = ON, or merely mentioning the selector.

Logical selectors can be turned off by selector = OFF.

Numeric selectors are set by selector = number.

 

PRIMARY SOLUTION CONTROLS
 

AUTOSTAGE                type: Logical        default: On

In STAGED problems, this selector causes all stages to be run consecutively without pause. Turning this selector OFF causes FlexPDE to pause at the end of each stage, so that results can be examined before proceeding.

 

CHANGELIM                type: Numeric        default: 2.0(steady state), 0.5(time dependent)

Steady state: Specifies the maximum change in any variable allowed on any Newton iteration step (measured relative to the variable norm).  In severely nonlinear problems, it may be necessary to force a slow progress (small CHANGELIM) toward the solution in order to avoid pathological behavior of the nonlinear functions.
Time dependent: Specifies the maximum change in one timestep of any variable derived from a steady-state equation. Changes larger than CHANGELIM will cause the timestep to be cut.
 

CHECK_TABLES        type: Logical        default: On

Check table references for access out of the defined range. Issue an error diagnostic if accessed out of the defined range. See also TABLE.

 

CUBIC                type: Logical        default: On

Use cubic Finite Element basis (same as ORDER=3).  The default selection can be changed in the General Settings tab of the Preferences Window.        

 

DELAY                type: Numeric        default: 0

In STAGED problems using AUTOSTAGE, this selector causes each stage to pause for this many seconds before proceeding to the next stage. This allows for casual examination of the results at each stage without needing to click the continue button. In BATCH scripts, this selector causes each problem to pause before running the next problem.
 

DIRECT                type: Logical        default: Off

This selects use of a direct matrix solver instead of the default iterative solver. There is an internal limit to the size of the matrix that FlexPDE will allow using this method. The limit is based on the number of unknowns in the model. The direct solver requires a large amount of memory and problems larger than this can cause the system to go to virtual memory which is extremely slow. The default limit can be dictated by the selector DIRECTLIMIT.

 

DIRECTLIMIT                type: Numeric        default: 20,000

Sets the internal limit to the size of the matrix that FlexPDE will allow when using the DIRECT matrix solver.

 

ERRLIM                type: Numeric        default: 0.002        

This is the primary accuracy control.  Both the spatial error control XERRLIM the temporal error control TERRLIM are set to this value unless over-ridden by explicit declaration.  This selector can be STAGED.

[Note: ERRLIM is an estimate of the relative error in the dependent variables.  The solution is not guaranteed to lie within this error.  It may be necessary to adjust ERRLIM or manually force greater mesh density to achieve the desired solution accuracy.]

 

FIRSTPARTS                type: Logical        default: Off

By default, FlexPDE integrates all second-order terms by parts, creating the surface terms represented by the Natural boundary condition.  This selector causes first-order terms to be integrated by parts as well. Use of this option may require adding terms to Natural boundary condition statements.        

 

FIXDT                type: Logical        default: Off

Disables the automatic timestep control.  The timestep is fixed at the value given in the TIME section. (In most cases, this is not advisable, as it is difficult to choose a single timestep value that is both accurate and efficient over the entire time range of a problem.  Consider modifying the ERRLIM control instead.)

                                         

ITERATE                type: Numeric        default: 4000

Primary conjugate gradient iteration limit.  This count may be enlarged automatically for large systems.  Iteration may terminate before this count if convergence criteria are met.

 

LINUPDATE                type: Numeric        default: 5

In linear steady-state problems, FlexPDE repeats the linear system solution until the computed residuals are below tolerance, up to a maximum of LINUPDATE passes.        

 

MODES                type: Numeric        default: 0

Selects the Eigenvalue solver and specifies the  desired number of modes.  For computational reasons, FlexPDE will solve the system for more modes than specified (see SUBSPACE), but only the requested number will be reported.

 

NEWTON                type: Numeric        default: 40 (steady_state)

                 default: 1 (time-dependent)

Sets the maximum Newton iteration limit. PREFER_SPEED and PREFER_STABILITY will override this number.        

 

NONLINEAR                type: Logical        default: Automatic

Selects the nonlinear (Newton-Raphson) solver, even if the automatic detection process does not require it.

 

NONSYMMETRIC        type: Logical        default: Automatic

Selects the nonsymmetric Lanczos conjugate gradient solver, even if the automatic detection process does not require it.        

 

NOTIFY_DONE                type: Logical        default: Off        

Requests that FlexPDE emit a beep and a "DONE" message at completion of the run.        

 

NRMINSTEP                type: Numeric        default: 0.009

Sets the minimum fraction of the computed stepsize which will be applied during Newton-Raphson backtracking.  This number only comes into play in difficult nonlinear systems.  Usually the computed step is unmodified.

 

NRSLOPE                type: Numeric        default: 0.1

Sets the minimum acceptable residual improvement in Newton-Raphson backtracking of steady-state solutions.

 

OPTERRLIM                type: Numeric        default: 0.001*ERRLIM        

This is the accuracy control for the optimizer. See MAXIMIZE and MINIMIZE.

[Note: OPTERRLIM is an estimate of the relative error in the optimizer parameter.  The solution is not guaranteed to lie within this error.  It may be necessary to adjust OPTERRLIM to achieve the desired solution accuracy.]

 

ORDER                type: Numeric        default: 3

Selects the order of finite element interpolation (1, 2 or 3).  The selectors QUADRATIC and CUBIC are equivalent to ORDER=2 and ORDER=3, respectively.  This selector can be STAGED.  The default selection can be changed in the General Settings tab of the Preferences Window.

 

OVERSHOOT                type: Numeric        default: 0.0001

Sub-iteration convergence control. Conjugate-Gradient solutions will iterate to a tolerance of OVERSHOOT*ERRLIM.  (Some solution methods may apply additional multipliers.)

 

PRECONDITION        type: Logical        default: On

Use matrix preconditioning in conjugate-gradient solutions.  The default preconditioner is the diagonal-block inverse matrix.        

 

PREFER_SPEED        type: Logical        default: On

This selector chooses parameters for nonlinear time-dependent problems that result in greatest solution speed for well-behaved problems.  Equivalent to NEWTON=1, REMATRIX=Off.        

 

PREFER_STABILITY        type: Logical        default: Off

This selector chooses parameters for nonlinear time-dependent problems that result in greatest solution stability in ill-behaved problems.  Equivalent to NEWTON=3, REMATRIX=On.        

 

QUADRATIC                type: Logical        default: Off        

Selects use of quadratic Finite Element basis. Equivalent to ORDER=2.

         

RANDOM_SEED        type: Numeric        default: random        

Specifies the seed for random number generation.  May be used to create repeatable solution of problems using random numbers.

         

REINITIALIZE        type: Logical        default: Off

Causes each Stage of a STAGED problem to be reinitialized with the INITIAL VALUES specifications, instead of preserving the results of the previous stage.        

         

REMATRIX                type: Logical        default: Off

Forces a re-calculation of the Jacobian matrix for each step of the Newton-Raphson iteration in nonlinear problems.   The matrix is also recomputed whenever the solution changes appreciably, or when the residual is large.  This selector is set by PREFER_STABILITY and cleared by PREFER_SPEED.

 

STAGES                type: Numeric        default: 1

Parameter-studies may be run automatically by selecting a number of stages. Unless the geometric domain parameters change with stage, the mesh and solution of one stage are used as a starting point for the next.  The STAGED qualifier on a parameter definition sets the number of stages, so you need not use STAGES unless you want to override the automatic count.

 

SUBSPACE                type: Numeric        default: MIN(2*modes,modes+8)

If MODES has been set to select an eigenvalue problem, this selector sets the dimension of the subspace used to calculate eigenvalues. Normally, it is not necessary to use this selector, as the default is usually sufficient.        

 

TERRLIM                type: Numeric        default: 0.002        

This is the primary temporal accuracy control.  In time dependent problems, the timestep will be cut if the estimated relative error in time integration exceeds this value. The timestep will be increased if the estimated temporal error is smaller than this value. TERRLIM is automatically set by the ERRLIM control.  This selector can be STAGED.

Note: TERRLIM is an estimate of the relative error in the dependent variables. The solution is not guaranteed to lie within this error.  It may be necessary to adjust TERRLIM to achieve the desired solution accuracy.

 

THREADS                type: Numeric        default: 1

Selects the number of worker threads to use during the computation.  This control is useful in increasing computation speed on computers with multiple shared-memory processors.  FlexPDE does not support clusters.  The maximum number of threads for a script is 24, but increasing the thread count doesn't always increase computation speed. See "Using Multiple Processors"for more information.  The default selection can be changed in the General Settings tab of the Preferences Window.

         

UPFACTOR                type: Numeric        default: 1

Multiplier on upwind diffusion terms.  Larger values can sometimes stabilize a marginal hyperbolic system.

 

UPWIND                type: Logical        default: On

In the presence of convection terms, this adds a diffusion term along the flow direction to stabilize the computation.        

 

XERRLIM                type: Numeric        default: 0.002        

This is the primary spatial accuracy control.  Any cell in which the estimated relative spatial error in the dependent variables exceeds this value will be split (unless CELL_LIMIT is exceeded). XERRLIM is set automatically by the ERRLIM selector.   This selector can be STAGED.

Note: XERRLIM is an estimate of the relative error in the dependent variables. The solution is not guaranteed to lie within this error.  It may be necessary to adjust XERRLIM or manually force greater mesh density to achieve the desired solution accuracy.        
 

CONJUGATE GRADIENT METHOD CONTROLS

 

LANCZOS        type: Logical        default: On for nonsymmetric systems

Use the Lanczos/Orthomin Conjugate-Gradient iteration method of Jea and Young for nonsymmetric system matrices.  This method essentially solves the extended system instead of Ax = r.

 

ORTHOMIN        type: Logical        default: On for symmetric systems

Use Orthomin Conjugate-Gradient iteration method of Jea and Young for symmetric system matrices.  

 

VANDENBERG        type: Logical        default: Off

Use Vandenberg Conjugate-Gradient iteration (useful if hyperbolic systems fail to converge).  This method essentially solves (AtA)x = (At)b instead of Ax=b.  This squares the condition number and slows convergence, but it makes all the eigenvalues positive when the standard CG methods fail.        

 

CONJUGATE GRADIENT PRECONDITIONING METHOD CONTROLS

 

ICCG        type: Logical        default: On for symmetric systems

Use an Incomplete Choleski factorization as a preconditioner in symmetric problems. This method usually converges much more quickly. If ICCG=OFF or the factorization fails, then a block-inverse preconditioner will be used. ICCG=ON is equivalent to ILUPRECON below.        

 

ILUPRECON        type: Logical        default: On for symmetric systems

Use an incomplete LU factorization as a preconditioner.  With symmetric systems this is an incomplete Choleski factorization, equivalent to ICCG above.  If the factorization fails, a block-inverse preconditioner will be used.

 

BIPRECON        type: Logical        default: On for nonsymmetric systems

Use the inverse of each diagonal block as a preconditioner.  

 

DIPRECON        type: Logical        default: On for single-variable systems

Use the inverse of each diagonal element as a preconditioner.