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.|
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.
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.
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.
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 is 10,000 unknowns and can be overridden with the selector DIRECTLIMIT.
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.]
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.
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.)
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.
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.
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.
default: 1 (time-dependent)
Selects the nonlinear (Newton-Raphson) solver, even if the automatic detection process does not require it.
Selects the nonsymmetric Lanczos conjugate gradient solver, even if the automatic detection process does not require it.
Requests that FlexPDE emit a beep and a "DONE" message at completion of the run.
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.
Sets the minimum acceptable residual improvement in Newton-Raphson backtracking of steady-state solutions.
[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.]
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.
Sub-iteration convergence control. Conjugate-Gradient solutions will iterate to a tolerance of OVERSHOOT*ERRLIM. (Some solution methods may apply additional multipliers.)
Use matrix preconditioning in conjugate-gradient solutions. The default preconditioner is the diagonal-block inverse matrix.
Selects use of quadratic Finite Element basis. Equivalent to ORDER=2.
Specifies the seed for random number generation. May be used to create repeatable solution of problems using random numbers.
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.
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.
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.
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.
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.
Multiplier on upwind diffusion terms. Larger values can sometimes stabilize a marginal hyperbolic system.
In the presence of convection terms, this adds a diffusion term along the flow direction to stabilize the computation.
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.
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.
Use Orthomin Conjugate-Gradient iteration method of Jea and Young for symmetric system matrices.
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.
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.
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.
Use the inverse of each diagonal block as a preconditioner.
Use the inverse of each diagonal element as a preconditioner.