Sculpt Smoothing

Sculpt options for specifying how the mesh will be smoothed following mesh generation.

Sculpt includes a tiered approach to smoothing to improve element quality. It starts by applying smoothing to all nodes in the mesh and progressively restricts the smoothing operations to only those nodes that fall below a user-defined scaled Jacobian threshold. Default numbers of iterations and thresholds for each smoothing phase have been tuned for general use, however it may be worthwhile to adjust these parameters. The three smoothing phases include:


Smoothing                    -smo     --smoothing
  --smooth                   -S    <arg> Smoothing method                                    
  --csmooth                  -CS   <arg> Curve smoothing method                              
  --laplacian_iters          -LI   <arg> Number of Laplacian smoothing iterations            
  --max_opt_iters            -OI   <arg> Max. number of parallel Jacobi opt. iters.          
  --opt_threshold            -OT   <arg> Stopping criteria for Jacobi opt. smoothing         
  --curve_opt_thresh         -COT  <arg> Min metric at which curves won't be honored         
  --max_pcol_iters           -CI   <arg> Max. number of parallel coloring smooth iters.      
  --pcol_threshold           -CT   <arg> Stopping criteria for parallel color smooth         
  --max_gq_iters             -GQI  <arg> Max. number of guaranteed quality smooth iters.     
  --gq_threshold             -GQT  <arg> Guaranteed quality minimum SJ threshold             
  --geo_smooth_max_deviation -GSM  <arg> Geo Smoothing Maximum Deviation                     

Sculpt Command Summary

Smooth

Command: smooth     Smoothing method

Input file command:   smooth <arg>
Command line options: -S <arg>
Argument Type:        integer (0, 1, 2, 3) 
Input arguments: off (0)
                 default (1)
                 on (1)
                 fixed_bbox (2)
                 no_surface_projections (3)
                 to_geometry (4)
                 to_geom (4)
                 geo_smooth (5)
                 geometry_smoothing (5)
                 geo_smoothing (5)
Command Description:

Automatic adjustment of node locations following meshing to improve element quality. Controls the combined Laplacian and optimization smoothing procedures applied to volume and surface nodes (see csmooth for curve smoothing options) Uses the laplacian_iters, max_opt_iters, opt_threshold, max_pcol_iters, pcol_threshold, mqx_gq_iters and gq_threshold arguments to control the sensitivity and aggressiveness of the smoothing operations. In most cases, the default options for these parameters are sufficient, however increasing iterations or threshold values, while potentially causing longer run times, may result in improved mesh quality.

Smoothing will adjust the location of nodes on surfaces, projecting them to an approximated surface representation defined by interface reconstruction from volume fractions. In addition to turning smoothing on and off, the surface projection characteristics can be adjusted using the bbox_fixed and no_surface_projections options.

Boundary Buffer Improvement: Sculpt's smoothing procedures will use an automatic boundary buffer improvement method. It will attempt to improve the quality of hexes where interior surfaces are close to tangent with the bounding box. This can result in nodes that may not lie precisely on the planes of the domain boundary. The fixed_bbox (2) and no_surface_projections (3) options will turn off the automatic boundary buffer improvement.


Curve Smoothing

Command: csmooth     Curve smoothing method

Input file command:   csmooth <arg>
Command line options: -CS <arg>
Argument Type:        integer (0, 1, 2, ...6) 
Input arguments: off (0)
                 circle (1)
                 hermite (2)
                 average_tangent (3)
                 neighbor_surface_normal (4)
                 vfrac (5)
                 linear (6)
Command Description:

The csmooth option controls the smoothing method used on curves. In most cases the default should be sufficient, however it may be useful to experiment with different options. The default curve smoothing option is vfrac (5). The following curve smoothing options are available:


Laplacian Iterations

Command: laplacian_iters     Number of Laplacian smoothing iterations

Input file command:   laplacian_iters <arg>
Command line options: -LI <arg>
Argument Type:        integer >= 0 
Command Description:

Number of Laplacian smoothing iterations performed when Hybrid smoothing option is used. Default value is 2.


Maximum Optimization Iterations

Command: max_opt_iters     Max. number of parallel Jacobi opt. iters.

Input file command:   max_opt_iters <arg>
Command line options: -OI <arg>
Argument Type:        integer >= 0 
Command Description:

Indicates the maximum number of iterations of optimization-based smoothing to perform. May complete sooner if no further improvement can be made. Default is 5


Optimization Threshold

Command: opt_threshold     Stopping criteria for Jacobi opt. smoothing

Input file command:   opt_threshold <arg>
Command line options: -OT <arg>
Argument Type:        floating point value (-1.0 -> 1.0) 
Command Description:

Indicates the value for scaled Jacobian where Optimization smoothing will be performed. Elements with scaled Jacobian less than opt_threshold and their neighbors will be smoothed. Default value is 0.6


Curve Optimization Threshold

Command: curve_opt_thresh     Min metric at which curves won't be honored

Input file command:   curve_opt_thresh <arg>
Command line options: -COT <arg>
Argument Type:        floating point value (-1.0 -> 1.0) 
Command Description:

Indicates the value for scaled Jacobian where if a node that falls on a curve has neighboring quads less than this value, then the smoothing will no longer honor the curve definition. Instead the optimization smoother will attempt to place the node to optimize the neighboring mesh quality, without regard for its placement on its owning curve.

Normally this value should be set close to zero to avoid too many nodes from floating off of their owning curves, however, if mesh quality is constrained by curve geometry, setting this value higher can help to avoid bad or poor quality elements. Default for this value is 0.1.


Maximum Parallel Coloring Iterations

Command: max_pcol_iters     Max. number of parallel coloring smooth iters.

Input file command:   max_pcol_iters <arg>
Command line options: -CI <arg>
Argument Type:        integer >= 0 
Command Description:

Maximum number of spot smoothing (also known as parallel coloring) iterations to perform. May complete sooner if no further improvement can be made. Default is 100. See also pcol_threshold.


Parallel Coloring Threshold

Command: pcol_threshold     Stopping criteria for parallel color smooth

Input file command:   pcol_threshold <arg>
Command line options: -CT <arg>
Argument Type:        floating point value (-1.0 -> 1.0) 
Command Description:

Indicates scaled Jacobian threshold for spot smoothing (also known as parallel coloring). A parallel coloring algorithm is used to uniquely identify and isolate nodes to be improved using optimization. Default is 0.2.


Maximum Guaranteed Quality Iterations

Command: max_gq_iters     Max. number of guaranteed quality smooth iters.

Input file command:   max_gq_iters <arg>
Command line options: -GQI <arg>
Argument Type:        integer >= 0 
Command Description:

Maximum number of guaranteed quality smoothing iterations to perform. Guaranteed quality smoothing performs a constrained Laplacian smoothing algorithm to adjust node locations. If the result of a smoothing operation results in adjacent element quality falling below the specified gq_threshold value, then move distance is cut until minimum threshold is achieved or the metric is improved. To achieve parallel consistency, a parallel coloring methodology is employed. The max_gq_iters defines the maximum number of parallel color iterations employed. Default is 0 (off).

Note that guaranteed quality can be utilized in conjunction with other smoothing methods (Laplacian, Optimization and Parallel Coloring), however to be effective it is normally used independent from other smoothing. For example, to use guaranteed quality the following is suggested:

    laplacian_iters = 0
    max_opt_iters = 0
    max_pcol_iters = 0
    max_gq_iters = 100

Guaranteed Quality Threshold

Command: gq_threshold     Guaranteed quality minimum SJ threshold

Input file command:   gq_threshold <arg>
Command line options: -GQT <arg>
Argument Type:        floating point value (-1.0 -> 1.0) 
Command Description:

Indicates scaled Jacobian threshold for guaranteed quality smoothing. Default is 0.2. see also max_gq_iters


Geo Smooth Max Deviation

Command: geo_smooth_max_deviation     Geo Smoothing Maximum Deviation

Input file command:   geo_smooth_max_deviation <arg>
Command line options: -GSM <arg>
Argument Type:        floating point value (>= 0.0 
Command Description:

Used only in conjunction with the smooth = geo_smooth option. It controls the maximum distance any individual node can deviate from the geometry definition. If a smoothing operation computes a location that will move a node further than the prescribed geo_smooth_max_deviation value from the geometry, the node movement will be artificially limited by this value. If not specificied, no limitations will be placed on node movement due to smoothing operations when the smooth = geo_smooth is used. A value of zero (0) will constrain all nodes at interfaces to lie on the geometry, similar to the smooth = to_geometry option. When using this option, the maximum deviation from the geometry for any individual node will be reported in the MESH SUMMARY in the Sculpt ouput.