initial upload
This commit is contained in:
128
documentation/lagrit_manual/commands/smooth.txt
Executable file
128
documentation/lagrit_manual/commands/smooth.txt
Executable file
@@ -0,0 +1,128 @@
|
||||
.. _smooth :
|
||||
|
||||
 _place_holder;
|
||||
|
||||
> **_SMOOTH_**
|
||||
|
||||
The **smooth** command smooths 2D or 3D mesh objects. For adaptive smoothing
|
||||
see the **[radapt](RADAPT.html)** command. **smooth **takes a 2D or 3D mesh
|
||||
object and moves nodes, without changing the connectivity of the grid, in
|
||||
order to improve the aspect ratios and distribution of elements in the mesh.
|
||||
|
||||
An optional control value between zero and one for options **esug**, **mega**,
|
||||
**geometry**, **elliptical** and **random** affects the amount of node
|
||||
movement. The default (control =0.) results in the standard smoothing scheme.
|
||||
Increasing control towards 1. causes the scheme to be progressively more
|
||||
controlled (moving the mesh less), until at control =1., there is no mesh
|
||||
movement whatsoever.
|
||||
|
||||
By default, the second argument is **position**. This results in the positions
|
||||
of the nodes being changed. (Other options will be added in the future for
|
||||
implementation of smoothing using node velocities.)
|
||||
|
||||
There are nine smoothing algorithms available. **esug**, **elliptic** and
|
||||
**random** _place_holder; are for 2D grids, **laplace**, **aspect** and
|
||||
**lpfilte**r _place_holder; for 2D or 3D grids, **mega, network** and
|
||||
**geometry **are for 3D grids:
|
||||
|
||||
1. **esug** --- Elliptic Smoothing for Unstructured Grids. This is the default
|
||||
for 2D mesh objects. It can only be used on triangular 2D mesh objects. (Ref.:
|
||||
Ahmed Khamayseh and Andrew Kuprat, "[Anisotropic Smoothing and Solution
|
||||
Adaption for Unstructured Grids](../../pdfs/ahmandrew1.pdf)", Int. J. Num.
|
||||
Meth. Eng., Vol. 39, pp. 3163-3174 (1996).)
|
||||
|
||||
2.**elliptic** --- Similar to esug but the 'guards' which prevent a grid from
|
||||
folding are turned off. (Thus esug is preferred.)
|
||||
|
||||
3. **random **-- a node's position is set to a randomly weighted average
|
||||
position of its neighbors. 'Guards' keep the elements from inverting.
|
||||
|
||||
4. **laplace** ---On a 3D tetahedral mesh moves a node to the average position
|
||||
of its neighbors where neighbor is defined as the set of nodes connected to
|
||||
the candidate node by an edge where the node types (itp1) and node constraints
|
||||
(icr1) are a 'subset' of the candidate node type and
|
||||
constraints. _place_holder; A node will not be moved if the result is an
|
||||
inverted element. The following controls may be supplied:
|
||||
|
||||
 _place_holder;
|
||||
|
||||
> rlxwt default(0.5)
|
||||
|
||||
> weight for underrelaxed Laplacian smothing
|
||||
|
||||
> ntimes default(5)
|
||||
|
||||
> number of smoothing iterations
|
||||
|
||||
> nwttry default(3)
|
||||
|
||||
> number of attempts to not tangle the mesh by halving the smoothing weight.
|
||||
|
||||
> useisn default(1)
|
||||
|
||||
> 1 means interface nodes are smoothed based alonga multimaterial edge with
|
||||
all the same materials as the candidate node. 0 means interface nodes are
|
||||
smoothed based on all interface neighbors
|
||||
|
||||
> extrnbr default(**inclusive**)
|
||||
|
||||
> **inclusive** means do not restrict neighbors _place_holder;
|
||||
|
||||
**exclusive** means restrict neighbors to nodes in pset _place_holder;
|
||||
|
||||
 _place_holder;5.** aspect**---Adjusts node positions such that the aspect
|
||||
ratio of the elements is improved. _place_holder; The default damage
|
||||
tolerance for** smooth//****aspect** is infinity, so it can be used as a
|
||||
general smooth which has the effect of improving worst aspect ratio. 6.
|
||||
**lpfilter**---This smooths surface networks by a low-pass filtering of the
|
||||
coordinate data.
|
||||
|
||||
(filtdeg default = 30, k_pb default = 0.1)  _place_holder;7**. mega ---**
|
||||
Minimum Error Gradient Adaption. This option creates a smoothed grid which is
|
||||
adapted to the standard function with constant Hessian f(x,y,z)=x2+y2+z2. Can
|
||||
be used on hybrid 3D meshes and guards against mesh folding. Adaption to this
|
||||
function creates a uniform isotropic mesh. _place_holder; The code
|
||||
variable **maxiter_sm** (default=25) controls the maximum number of **mega**
|
||||
iterations. _place_holder; The value of **maxiter_sm** may be changed
|
||||
using the **[assign](ASSIGN.html)** command
|
||||
(**assign**///**maxiter_sm**/10). _place_holder; (Ref.: Randolph E. Bank
|
||||
and R. Kent Smith, "Mesh Smoothing Using A Posteriori Error Estimates", SIAM
|
||||
J. Num. Anal. tol. 34, Issue 3, pp. 979-997 (1997).)
|
||||
|
||||
8. **geometry **--- Geometry ("plump element") adaption. Default for 3D. Can
|
||||
be used on hybrid 3D meshes It uses the **mega** algorithm but retains only
|
||||
the leading geometry term; the term containing the Hessian has been dropped.
|
||||
This algorithm guards against mesh folding.
|
||||
|
||||
9. **network** --- This option smooths the surface network of a 3D tetrahedral
|
||||
grid. _place_holder; Volume nodes are not moved. _place_holder; The
|
||||
material volumes are conserved. _place_holder; By default a check is
|
||||
performed to verify that no elements are inverted; the user may turn this
|
||||
check off with the **nocheck** option. _place_holder; This option will not
|
||||
work correctly (will not conserve volume) on grids which have two areas of a
|
||||
material connected at a single node or edge; each material region must have
|
||||
face connectivity. _place_holder; The number of iterations is controlled
|
||||
by the niter argument (default is 10) and the weight argument controls the
|
||||
amount of movement (from 0. to 1. default is 1.). _place_holder; Combining
|
||||
this type of smooth with volume smoothing will help to avoid element
|
||||
inversions. FORMAT: **smooth**/**position**/**esug**|**mega**|**geometry**|**e
|
||||
lliptic|**|**random**/ [ifirst,ilast,istride ]/[control]
|
||||
|
||||
**smooth**/**position**/**lpfilter/**/ [ifirst,ilast,istride] /[filtdeg]/[k_pb]/**network** **network** smoothing applies to a network of curves in 2D or 3D, or to a network of surfaces in 3D. _place_holder; The materiality of the cells (if any) is ignored. **smooth**/**position**/**aspect**//[ifirst,ilast,istride/toldamage]
|
||||
**smooth**/**position/laplace/**[ifisrt,ilast,istride]/[rlxwt]/[ntimes]/[nwtty]/[useisn]/[extrnbr]
|
||||
**smooth**/**position/network/**[ifisrt,ilast,istride]/[niter]/[weight]/[**check**|**nocheck**} EXAMPLES:
|
||||
 _place_holder; 1. Smooth all nodes in the mesh using **esug** in 2D or
|
||||
**geometry** in 3D.
|
||||
|
||||
**smooth**
|
||||
2. Smooth all nodes in the mesh, using controlled smoothing with control =0.5
|
||||
|
||||
**smooth** / / / 1,0,0 / 0.5
|
||||
3. Smooth a 3D grid by combining network and volume smooths.
|
||||
|
||||
**pset**/p2/**attribute**/itp1/1,0,0/0/**eq**
|
||||
**smooth**/**position**/**network**/1,0,0/3/1./**check**
|
||||
**smooth/position/geometry/pset,get,**p2
|
||||
**smooth**/**position**/**network**/1,0,0/3/1./**check**
|
||||
**smooth/position/geometry/pset,get,**p2
|
||||
|
||||
Reference in New Issue
Block a user