
2D Control/Smoothing (Niederdrenk)
The 2d elliptic control/smoothing function was developed and now enhanced
by Dr. P. Niederdrenk for grids with low and high aspect ratio cells (Navier-Stokes).
It allows the angle and orthogonality control for a user specified number
of grid lines. The main features are :
-
Grid generation from weighed superposition of line-wise central target
points
-
no control functions involved
-
Dirichlet BC
-
control relative to surfaces (i,j=const) being fixed (boundaries) or evolving
with the solution
-
controlled are spacings and angles (unit tangents to the grid lines or
orthogonality requirement)
-
spacings may be taken from algebraic grid or from the boundaries with subsquent
interpolation into the field
-
either unit tangents from algebraic grid (ic,jc =2) or other angle specifications(ic,jc
.ne. 2)
-
limiter on grid control to avoid grid overlap
-
off-boundary spacing correction for unfavourable aspect ratio
-
automatized relaxation
If the current working
surface is a Coons
surface the grid will be projected otherwise the grid z coordinate
has to be zero. The projection may strongly affect the quality of the grid.
The user should modify the following main parameter:
-
iter: total number of outer iterations (1...1000)
-
boundary condition imin: 1=straight line, 2=unit direction, 3= normal to
imin
-
boundary condition imax: 1=straight line, 2=unit direction, 3= normal to
imin
-
boundary condition jmin: 1=straight line, 2=unit direction, 3= normal to
imin
-
boundary condition jmax: 1=straight line, 2=unit direction, 3= normal to
imin
-
I-direction spacing objective: 0=from start grid , 1=interpolated from
boundaries
-
J-direction spacing objective: 0=from start grid , 1=interpolated from
boundaries
-
imin no of lines for control (3...imax-imin)
-
imax no of lines for control (3...imax-imin)
-
jmin no of lines for control (3...jmax-jmin)
-
jmax no of lines for control (3...jmax-jmin)
-
grid dimensions imin,imax,jmin,jmax; subdomains can be controlled
Advanced parameters:
-
epsrat: stops iterations for relative changes (0.1)
-
omega: maximal under/over-relaxation coefficient 0.9/1.8
-
I-direction Laplace control: Weight on control in the interior relative
to Laplace (0.0 ... 1.0)
-
J-direction Laplace control: iWeight on control in the interior relative
to Laplace (0.0 ... 1.0)
-
jacobi: 0:Gauss-Seidel local omega, 1:Jacobi const.omega, 2:Jacobi loc.omega
-
I-direction nwarci 0/1: control weight in comput./physical space (phys.
space more exact; comp. space smoother)
-
J-direction nwarcj 0/1: control weight in comput./physical space (phys.
space more exact; comp. space smoother)
-
I-direction ndecayi: 0/1: strong/weak initial decay of control
-
J-direction ndecayj: 0/1: strong/weak initial decay of control
-
I-direction alpi: Exponent for decay of control (2.0)
-
J-direction alpj: Exponent for decay of control (2.0)
-
nLimNegativeVol : 0/1 no/with limiter; automatically switched on after
n iterations, when negative volumes appear
-
nVolCheckIter : volume check after n iterations
-
nCorrecAspectRatioBC: 0/1 correction of ar-effect on off-boundary spacing
Usage:
-
Select 2d grid entity
-
Choose number of iterations
-
Choose number of lines for control in i,j direction
-
Change default parameter if necessary
Result:
Script process and parameter: smooth_elliptic2_pn
-
Index of 2d grid entity
-
iter, Number of iterations
-
dEpsrat
-
dOmega
-
dLaplaceControl_I
-
dLaplaceControl_J
-
nSpacingObjective_I
-
nSpacingObjective_J
-
nIcu, bnd cond imin
-
nIcd, bnd cond imax
-
nJcu, bnd cond jmin
-
nJcd, bnd cond jmax
-
Block, Subblock imin
-
Block, Subblock imax
-
Block, Subblock jmin
-
Block, Subblock jmax
-
no of lines for control imin
-
no of lines for control imax
-
no of lines for control jmin
-
no of lines for control jmax
-
control weight comput./physical space i-direction (0/1)
-
control weight comput./physical space j-direction (0/1)
-
strong/weak decay of control (0/1), i-direction
-
strong/weak decay of control (0/1), j-direction
-
decay exponent, i-direction (2.0)
-
decay exponent, j-direction (2.0)
-
nLimNegativeVol: 0/1 no/with limiter; automatically switched on after ..iterations,
when negative volumes appear
-
nCorrecAspectRatioBC: 0/1 correction of ar-effect on off-boundary spacing
-
nJacobi: 0:Gauss-Seidel local omega, 1:Jacobi const.omega, 2:Jacobi loc.omega
-
nIcm: 0 for internal faces in 3d only
-
nJcm: 0 for internal faces in 3d only
3D Control/Smoothing (Niederdrenk)
The user can control the spacing and orthogonality of the grid easily by
specifying boundary conditions on six faces (spacing, orthogonality, and
no of lines for control). The main features are :
-
Grid generation from weighted superposition of line-wise objective central
points
-
no control functions involved
-
Dirichlet BC
-
control relative to surfaces (i,j,k=const) being fixed (boundaries) or
evolving with the solution
-
controlled are spacings and angles (unit tangents to the grid lines or
orthogonality requirement or partial orthogonality requirement by projection
onto a grid surface)
-
spacings may be taken from algebraic grid or from the boundaries with subsquent
interpolation into the field
-
either unit tangents from algebraic grid (ic,jc,kc =2) or other angle specifications(ic,jc,kc
.ne. 2)
-
in an interior domain to be defined by the user
-
equally weighted superpositions from up- and downstream objectives or additionally
Laplace smoothing of v(i,j,k,3)
-
controll from the six boundary faces and from up to 3 internal faces in
each i,j,k direction possible
Numerical parameter:
-
iter: total number of outer iterations (1...1000)
-
boundary condition i,j,k min/max: 1=straight line, 2=unit direction, 3=
normal to face, 4= normal to edge m+1, 5= normal to edge m+2
-
I,J,K-direction spacing objective: 0=from start grid , 1=interpolated from
boundaries
-
i,j,k, min/max no of lines for control (3...max-min)
-
grid dimensions ij,k, min/max; subdomains can be controlled
Advanced parameters:
-
epsrat: stops iterations for relative changes (0.1)
-
omega: maximal under/over-relaxation coefficient 0.9/1.8
-
I,J,K-direction Laplace control: Weight on control in the interior relative
to Laplace (0.0 ... 1.0)
-
jacobi: 0:Gauss-Seidel local omega, 1:Jacobi const.omega, 2:Jacobi loc.omega
-
I,J,K-direction nwarci 0/1: control weight in comput./physical space (phys.
space more exact; comp. space smoother)
-
I,J,K-direction ndecayi: 0/1: strong/weak initial decay of control
-
I,J,K-direction : Exponent for decay of control (2.0)
-
nLimNegativeVol : 0/1 no/with limiter; automatically switched on after
n iterations, when negative volumes appear
-
nVolCheckIter : volume check after n iterations
-
nCorrecAspectRatioBC: 0/1 correction of ar-effect on off-boundary spacing
-
I,J,K internal control faces (max 3 in each direction)
Usage:
-
Select 3d grid entity
-
Choose number of iterations
-
Choose number of lines for control in i,j,k direction
-
Change default parameter if necessary
Result:
Script process and parameter: smooth_elliptic3_pn_aver
-
Index of 3d grid entity
-
iter, Number of iterations
-
dEpsrat
-
dOmega
-
dLaplaceControl_I
-
nSpacingObjective_I
-
nIcu, bnd cond imin
-
nIcd, bnd cond imax
-
nJcu, bnd cond jmin
-
nJcd, bnd cond jmax
-
nKcu, bnd cond kmin
-
nKcd, bnd cond kmax
-
Block, Subblock imin
-
Block, Subblock imax
-
Block, Subblock jmin
-
Block, Subblock jmax
-
Block, Subblock kmin
-
Block, Subblock kmax
-
no of lines for control imin
-
no of lines for control imax
-
no of lines for control jmin
-
no of lines for control jmax
-
no of lines for control kmin
-
no of lines for control kmax
-
control weight comput./physical space i-direction (0/1)
-
control weight comput./physical space j-direction (0/1)
-
control weight comput./physical space k-direction (0/1)
-
strong/weak decay of control (0/1), i-direction
-
strong/weak decay of control (0/1), j-direction
-
strong/weak decay of control (0/1), k-direction
-
decay exponent, i-direction (2.0)
-
decay exponent, j-direction (2.0)
-
decay exponent, k-direction (2.0)
-
dLaplaceControl_J
-
dLaplaceControl_K
-
nSpacingObjective_J
-
nSpacingObjective_K
-
nLimNegativeVol: 0/1 no/with limiter; automatically switched on after ..iterations,
when negative volumes appear
-
nCorrecAspectRatioBC: 0/1 correction of ar-effect on off-boundary spacing
-
nJacobi: 0:Gauss-Seidel local omega, 1:Jacobi const.omega, 2:Jacobi loc.omega
-
nIcm: no. of internal faces (0...3)
-
nJcm: no. of internal faces (0...3)
-
nKcm: no. of internal faces (0...3)
-
Face I_1_up
-
Face I_1
-
Face I_1_down
-
Face I_2_up
-
Face I_2
-
Face I_2_down
-
Face I_3_up
-
Face I_3
-
Face I_3_down
-
Face J_1_up
-
Face J_1
-
Face J_1_down
-
Face J_2_up
-
Face J_2
-
Face J_2_down
-
Face J_3_up
-
Face J_3
-
Face J_3_down
-
Face K_1_up
-
Face K_1
-
Face K_1_down
-
Face K_2_up
-
Face K_2
-
Face K_2_down
-
Face K_3_up
-
Face K_3
-
Face K_3_down
2D Surface Control/Smoothing (Niederdrenk)
The 2d elliptic control/smoothing function for surfaces was developed by
Dr. P. Niederdrenk for grids with low and high aspect ratio cells (Navier-Stokes).
It has nearly the same features as the previous described 2d function,
but now after a user specified number of iterations the grid is projected
to the surface several times. Additional features are :
-
projection to the working surface during iterations
-
smoothing of non-planar grids in 3d space
If the current working
surface is a Coons
surface the grid will be projected during the iterations. The resulting
grid is mainly indepented of the underlaying Coons surface.
The user should modify the following main parameter:
-
iter: total number of outer iterations (1...1000)
-
iter_project: number of iterations after projection is applied
-
omega: maximal under/over-relaxation coefficient 0.9/1.8
-
boundary control type (No/Angle/Angle+Spacing)
-
no of lines for control at imin (3...imax-imin)
-
no of lines for control at imax (3...imax-imin)
-
no of lines for control at jmin (3...jmax-jmin)
-
no of lines for control at jmax (3...jmax-jmin)
-
decay exponent for spacing control, i-direction (default 2.0)
-
decay exponent for spacing control, j-direction (default 2.0)
-
decay exponent for orthogonality control, i-direction (default 2.0)
-
decay exponent for orthogonality control, j-direction (default 2.0)
Usage:
-
Select 2d grid entity
-
Choose number of iterations
-
Choose number of iterations after which projection is applied
Result:
Script process and parameter: smooth_elliptic2_pn_surf
-
Index of 2d grid entity
-
dOmega
-
nIterations_out
-
nIterations_min (=0)
-
nIterations_inner (=1)
-
nIterations_project
-
nSpacingObjective (=2)
-
nCurveMode (=0)
-
nControl
-
nMode (=5)
-
CorrectWeight (=2.0)
-
nCurveSpac (=1)
-
nIcu
-
nIcd
-
nJcu
-
nJcd
-
dDecayExpSpac_I
-
dDecayExpSpac_J
-
dDecayExpOrth_I
-
dDecayExpOrth_J

