-
Notifications
You must be signed in to change notification settings - Fork 19
Adaptive context
<adaptive>
<maxstep>3</maxstep>
<beta type="truebeta">7</beta>
<maxdof>10000</maxdof>
<errtol>0.000001</errtol>
<knot_mult>1</knot_mult>
<scheme>isotropic_function</scheme>
<use_norm>1</use_norm>
<use_sub_norm>1</use_sub_norm>
<store_eps_mesh/>
<test_linear_independence/>
</adaptive>
The <adaptive> context is used for everything related to adaptive simulations. It can have the following sub-contexts:
Termination criterion. The maximum number of adaptive steps to perform.
Attributes: None
Value: The maximum number of steps to perform.
Example:
<maxstep>10</maxstep>
Termination criterion. The maximum number of degrees of freedom to allow in model.
Attributes: None
Value: The number of degrees of freedom.
Example:
<maxdof>10000</maxdof>
Termination criterion. The error tolerance measured in percentage.
Attributes: None
Value: The error tolerance.
Example:
<errtol>0.00001</errtol>
How many elements shall be refined in each iteration. Measured in percentage.
Attributes: type - How to interpret the specified β value. There are 7 variations on this:
- "none" : Tags the β percent elements with largest error and refines these as according to the selected scheme (this is the default).
- "threshold" : Tags all elements with error larger than β times max{err} and refines these according to the selected scheme (β<100).
- "maximum" : Same as "threshold".
- "average" : Tags all elements with error larger than beta times avg{err} and refines these according to the selected scheme.
- "minimum" : Tags all elements with error larger than beta times min{err} and refines these according to the selected scheme (β>100).
- "truebeta" : The growth rate of the number of basis functions in the solution space measured in percentage. That is, if you have n DOFs at iteration i, you will have (at least) n(1+β/100) functions at iteration i+1. Note that β is not the number of elements to be refined as this makes convergence plots impossible to compare since the ratio between DOFs and elements is very dependent on the refinement scheme and knot multiplicity.
- "dorfel" : Use Dorfel's strategy.
- "symmetrized" : Same as "none" except symmetry is attempted enforced by selecting all functions that have the same error as the last function that was initially selected.
Value: The percentage β.
Example:
<beta>10</beta>
<beta type="truebeta">10</beta>
<beta type="threshold">50</beta>
<beta type="average">100</beta>
<beta type="minimum">200</beta>
Knot multiplicity. All inserted mesh lines will have this multiplicity. The continuity across mesh lines is given as , where p is the polynomial degree of the spline and m is the multiplicity of the line.
Attributes: None
Value: The mesh line multiplicity.
Example:
<knot_mult>1</knot_mult>
Output the mesh to files for inspection or publication. Up to 5 files can be stored for each adaptive step.
Attribute: type - defines which file(s) to write for each adaptive step. The value is considered as a binary number where each 2-based digit have the following interpretation:
- 1 - Write NAME_XXX.lr containing the entire model (all patches in the same file). This is the default value.
- 2 - Write PATCH_param_NAME_XXX.eps, one postscript file for each patch with all mesh lines (elements) in the parametric space
- 4 - Write PATCH_physical_NAME_XXX.eps, one postscript file for each patch with all mesh lines (elements) mapped to the physical space
- 8 - Write PATCH_param_dot_NAME_XXX.eps, one postscript file for each patch with mesh lines in parametric space, and each basis function marked with a yellow dot at its Greville point
- 16 - Write PATCH_physical_dot_NAME_XXX.eps, one postscript file for each patch with mesh lines in physical space and each control point marked with a grey dot at its coordinates
In the above, XXX is the adaptive step number and PATCH is the one-based patch index. For single-patch models, the PATCH prefix is omitted.
Value: The base name of the the files (NAME above).
Example:
<store_mesh>domain</store_mesh>
<store_mesh type="16">domain</store_mesh>
Outputs all available mesh postscript file types. Equivalent to
<store_mesh type="30">mesh</store_mesh>
Check that the obtained LR spline space satisfies the linear independence requirement. This is done through rational integer arithmetics and a dense matrix of size DOF x N, where N is the number of basis function in the tensor product expansion of the LR spline. Warning: Costly operation, and high memory consumption (max 3000-4000 DOF using 4GB RAM machines)!
Attributes: None
Value: None
Example:
<test_linear_independence/>
The refinement scheme to use.
Attributes: Options for post-processing the mesh.
- maxAspectRatio - Maximum aspect ratio, defined as the ratio of the height to width of each element (measured in the parametric space).
- maxTjoints - Maximum number of T-joints (hanging nodes) on an element. Mesh lines will be extended until all elements satisfy this.
- closeGaps - If true, gaps will be closed. Gaps are defined as an element with a T-joint on each side but lacking the mesh line connecting them.
Value: The refinement scheme. The following are available (see the LR paper for a complete description):
- fullspan - This will refine all functions with support on an element.
- minspan - This will refine only one function.
- isotropic_function - This will ensure isotropic elements by refining a net for each refined basis function.
fullspan | minspan | isotropic_function |
Example:
<scheme>fullspan</scheme>
<scheme maxAspectRatio="2.0" maxTjoints="1" closeGaps="true">minspan</scheme>
<scheme maxTjoints="1" closeGaps="true">isotropic_function</scheme>
Index of the element norm to use for refinement. Value "0" will use analytic solution (if present), any other value will use the projection technique listed in the post-processing tag.
Attributes: None
Value: The index of the element norm to use.
Example:
<use_norm>1</use_norm>
Index of the element sub norm to use for refinement.
Attributes: None
Value: The index of the element sub-norm to use.
Example:
<use_sub_norm>1</use_sub_norm>