The Advanced node (
) is an attribute node that handles advanced settings for solver nodes, such as a
Stationary Solver,
Eigenvalue Solver, and
Time-Dependent Solver. Also see
About the Advanced Attribute Settings.
Use the Matrix symmetry list to control how the solver handles matrix symmetry of linear system matrices. Select:
•
|
Automatic to perform automatic symmetry detection. Both symmetric and Hermitian matrices can be detected.
|
•
|
Nonsymmetric to override the automatic symmetry detection and force the solver to assume that matrices are nonsymmetric.
|
•
|
Symmetric to override the automatic symmetry detection and force the solver to assume that matrices are symmetric.
|
•
|
Hermitian to override the automatic symmetry detection and force the solver to assume that matrices are Hermitian.
|
The matrix format can be a sparse matrix or a
full matrix, which you choose as
Sparse or
Filled, respectively, from the
Matrix format list. The default format is
Automatic; this setting chooses a sparse or filled matrix format based on the solver used. In addition, you can choose a matrix-free format, which you choose as
Free. This option assembles the matrix vector product when needed. This can reduce the memory usage significantly for solvers that support the following formats:
Even if variables are well scaled, equations can have very different scales. The Row equilibration check box is selected to balance the equations using row equilibration. Even when this check box is selected, row equilibration is not used in the following situations in order to preserve matrix symmetry:
•
|
Symmetric or Hermitian is selected in the Matrix symmetry list.
|
Use the Null-space function list to select a method for the computation of matrices needed for constraint handling (see
Elimination Constraint Handling). Select:
•
|
Automatic to let the software automatically determine the most appropriate method, which uses an explicit handling of nodal constraints and one of the Orthonormal or Sparse methods for the remaining constraints.
|
•
|
Orthonormal to compute the needed matrices using singular value decomposition.
|
•
|
Sparse to handle constraint matrices with nonlocal couplings using a sparse algorithm.
|
•
|
Explicit — Orthonormal to handle constraints by explicitly eliminating the DOFs on the destination side of the explicit constraints. The remaining constraints are handled using the Orthonormal method.
|
•
|
Explicit — Sparse to handle constraints by explicitly eliminating the DOFs on the destination side of the explicit constraints. The remaining constraints are handled using the Sparse method.
|
For the Automatic null-space function method, you can specify an Orthonormal block limit, which is used in the automatic choice between Orthonormal and Sparse handling (for elemental constraints). If an estimate of the complexity (the number of operations) needed to SVD factorize the largest constraint block exceeds this limit, the Sparse method is used. Else the Orthonormal method is used. The limit is 10
7 per default. To SVD factorize a block with this complexity is usually fast, so you might want to increase this limit for increased constraint handling stability.
You can store the last residual while solving and also in the solver output, if you want to access it using the residual operator during postprocessing. Storing the residual in the output increases the memory requirements for the simulations. From the Store last residual list, choose
•
|
Off (the default), to not store any data for the latest assembled residual.
|
•
|
While solving, to make the last residual available while solving.
|
•
|
While solving and in output, to make the last residual available while solving and also in the solver’s output so that you can access it during postprocessing.
|
•
|
Minimal, which reports a minimal amount of information (for example, warnings and nonstandard feedback). The normal output (once per “step” and so forth) is turned off.
|
•
|
Normal (the default), which reports information about the main solver (the time-dependent solver, for example).
|
•
|
Detailed, which reports information about the main solver and also information about the solver on the level below (a nonlinear stationary solver, for example).
|
For the time-dependent solvers, you can also specify an interval for the log sampling (in seconds) in the Log sampling (wall-clock) field when the
Solver log list is set to
Normal. The default is 0.005 s, which means that the log is updated at most every 0.005 s. Increasing the sampling interval can reduce the overhead associated with the log when solving problems with many small time steps. Set the value to 0 to make the log contain every time step regardless of their size.
When the Automatic rescaling of linear equations check box is selected, then under certain circumstances the scaling of the equations for the linear solvers can be changed to scales that are taken from the current solution. These circumstances are the following:
Select the Reuse sparsity pattern check box to store the sparsity patterns of the assembled matrices and try to reuse them for successive assembly processes within the same solution process. In many cases, the sparsity pattern of the system matrices does not change from one nonlinear iteration or time step to the others. Reusing the sparsity pattern from the previous iteration or step can then improve the solution performance at the cost of a usually small amount of memory. This functionality is enabled by default when using physics interfaces that can benefit from it. When active, the functionality can also detect whether the stored pattern cannot be used in the current assembly process (that is, when a “pattern mismatch” occurs) and reassemble it. If such a mismatch occurs, a message is added to the solver log. Pattern mismatches have no consequence on the solution process except for a small impact on the assembly performance during the current step or iteration due to the reassembling. Pattern mismatches can occur, for example, when solving a model with identity pairs and sliding meshes.
Select the Allow complex-valued output from functions with real input check box to control whether the solver treats such complex-valued output as an error or not.
The Stop when undefined mathematical operation is detected check box controls how the solver handles undefined mathematical operations such as division by zero.
Select the Check for undefined numerical values after each operation check box to make COMSOL Multiphysics check intermediate results for undefined numerical values (Inf or NaN) when numerical overflow occurs, for example. Selecting this option gives more accurate error messages when such undefined numerical values occur.
Select the Manual control of reassembly check box to be able to override the solver mechanism that automatically detects which quantities need to be reassembled. This can be useful to improve efficiency in situations when the automatic mechanism is too sensitive and reassembles quantities that do not need to be reassembled.
If the Manual control of reassembly check box is selected, the
Constant load is
On by default.
and that L0,
K,
D, and the mass matrix
E are constant.
If you choose to turn Off the
Constant load, it instructs the solver to perform a reassembly process for the computation of the residual vector (when
Off) or not. However, even if it is off, you might still want to treat some of the matrices as constant. Manual control of reassembly of these quantities can be controlled with the available check boxes, which makes the assembly only occur once for the corresponding matrix.
•
|
Select the Constant stiffness check box to treat the stiffness matrix K as constant.
|
•
|
Select the Constant damping or mass check box if you want to treat the coefficients of the first-order time-derivative terms or the second-order time-derivative terms as constant. In the discretized model, this means that the damping (sometimes called mass) matrix D or the mass matrix E is treated as constant.
|
•
|
Select the Constant mass check box to treat the mass matrix E as constant.
|
If the Manual control of reassembly check box is selected, you can control reassembly of the constraint residual. By default the
Constant constraint is
On. The constraint is constant if the Dirichlet boundary conditions (constraints) are linear and time independent. For the discretized model, this means that the constraint residual
M depends linearly on
U (
M = M0 − NU) and that
M0 and
N are constant. It is also assumed that the constraint Jacobian
N is correct.
If you choose to turn Off the
Constant constraint, it instructs the solver to perform a reassembly process for the computation of the constraint residual vector (when
Off) or not. However, even if it is off, the constraint Jacobian might still be constant. To control the reassembly of this quantity, select the
Constant constraint Jacobian check box if the Dirichlet boundary conditions are linear with time-independent coefficients (not right-hand side). For the discretized model this means that
N is constant.