KTH framework for Nek5000 toolboxes; testing version  0.0.1
meshsmoother.f File Reference

Go to the source code of this file.

Functions/Subroutines

subroutine meshsmoother
 
subroutine smoothmesh (mtyp, nouter, nlap, nopt, nbc, dcbc, idftyp, alpha, beta)
 
subroutine gen_int_lx1_to_3
 
subroutine int_fine_to_coarse_2d (u1, u2, n1, n2)
 
subroutine int_fine_to_coarse_3d (u1, u2, n1, n2)
 
subroutine int_coarse_to_fine_2d (u1, u2, n1, n2)
 
subroutine int_coarse_to_fine_3d (u1, u2, n1, n2)
 
subroutine genbackupmesh
 
subroutine restbackmesh
 
subroutine optcg (itmax, nodmask, mlt, gshl, dis, opt, optinv, mltc, gshlc)
 
subroutine dolsalpha (xe, ye, ze, sk, alpha, siz, opt, mlt, gshl, nodmask, iter)
 
subroutine getglobsum (xe, ye, ze, mlt, gshl, siz, opt, fl)
 
subroutine disfun (dis, funtype, alpha, beta, dcbc, nbc)
 
subroutine restbndrlayer (dx, dy, dz, dis, mltc, gshlc)
 
subroutine masklayers (nodmask, nlayers)
 
subroutine fixcurs (mltc, gshlc)
 
subroutine fixedgs (xyz, nx, ny, nz)
 
subroutine gradf (f2, dfdx, x8, y8, z8, mlt, gshl, siz, opt, h)
 
subroutine get_jac (val, x, y, z, siz, el, dire)
 
subroutine get_len (val, x, y, z, siz)
 
subroutine get_nodscale (scalek, x8, y8, z8, gshl)
 
subroutine genmask (nodmask, mlt, gshl, mltc, gshlc)
 
subroutine setupds_center (gs_handle, nx, ny, nz, nel, melg, vertex, glo_num)
 
subroutine fastlap (iter, nodmask, mlt, gshl, dis, lapinv, mltc, gshlc)
 
subroutine dsavg_general (u, mlt, gshl)
 
subroutine xmtox8 (xd, x8)
 
subroutine x8toxm (xd, x8)
 
subroutine col3c (a, b, c, d, n)
 
subroutine glmapm1chkinv (kerr)
 
subroutine chkjacinv (jac, n, iel, X, Y, Z, ND, IERR)
 
subroutine xyzrstc (xrmc, yrmc, zrmc, xsmc, ysmc, zsmc, XTMc, YTMc, ZTMc, IFAXIS)
 
subroutine xm1toxmc
 
subroutine xmctoxm1
 
subroutine my_mv_mesh (dx, dy, dz)
 
subroutine laplaceh (name, u, h1, h2, mask, mult, ifld, tli, maxi, approx, napprox)
 
subroutine sm_cheap_dist (d, ifld, b)
 

Function/Subroutine Documentation

◆ chkjacinv()

subroutine chkjacinv ( real, dimension(n)  jac,
  n,
  iel,
real, dimension(1)  X,
real, dimension(1)  Y,
real, dimension(1)  Z,
  ND,
integer  IERR 
)

Definition at line 1509 of file meshsmoother.f.

+ Here is the caller graph for this function:

◆ col3c()

subroutine col3c ( real, dimension(1)  a,
real, dimension(1)  b,
real, dimension(1)  c,
real  d,
  n 
)

Definition at line 1411 of file meshsmoother.f.

+ Here is the caller graph for this function:

◆ disfun()

subroutine disfun ( real, dimension((2**ldim)*lelv*(2**ldim))  dis,
integer  funtype,
real  alpha,
real  beta,
character*3, dimension(nbc)  dcbc,
integer  nbc 
)

Definition at line 619 of file meshsmoother.f.

References cmult(), exitti(), glamax(), int_fine_to_coarse_2d(), int_fine_to_coarse_3d(), rone(), sm_cheap_dist(), and xmtox8().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ dolsalpha()

subroutine dolsalpha ( real, dimension(2**ldim,lelv*(2**ldim))  xe,
real, dimension(2**ldim,lelv*(2**ldim))  ye,
real, dimension(2**ldim,lelv*(2**ldim))  ze,
real, dimension((2**ldim),lelv*(2**ldim),ldim)  sk,
real  alpha,
integer  siz,
integer  opt,
real, dimension(2**ldim,lelv*(2**ldim))  mlt,
integer  gshl,
real, dimension(2**ldim,lelv*(2**ldim))  nodmask,
integer  iter 
)

Definition at line 474 of file meshsmoother.f.

References add3(), col3c(), copy(), getglobsum(), glmapm1chkinv(), gop(), rzero(), vlsum(), and x8toxm().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ dsavg_general()

subroutine dsavg_general ( real, dimension(2**ldim,lelv*(2**ldim))  u,
real, dimension(2**ldim,lelv*(2**ldim))  mlt,
integer  gshl 
)

Definition at line 1334 of file meshsmoother.f.

References col2().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ fastlap()

subroutine fastlap (   iter,
real, dimension(2**ldim,lelv*(2**ldim))  nodmask,
real, dimension(2**ldim,lelv*(2**ldim))  mlt,
integer  gshl,
real, dimension(2**ldim,lelv*(2**ldim))  dis,
integer  lapinv,
real, dimension(lxc*lyc*lzc,lelv)  mltc,
integer  gshlc 
)

Definition at line 1243 of file meshsmoother.f.

References add2(), col2(), dsavg_general(), fixcurs(), genbackupmesh(), glamax(), glmapm1chkinv(), vlsum(), x8toxm(), and xmtox8().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ fixcurs()

subroutine fixcurs ( real, dimension(lxc*lyc*lzc*lelv)  mltc,
integer  gshlc 
)

Definition at line 776 of file meshsmoother.f.

References copy(), facev(), fixedgs(), gh_face_extend(), rone(), and rzero().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ fixedgs()

subroutine fixedgs ( real, dimension(3,0:2)  xyz,
real  nx,
real  ny,
real  nz 
)

Definition at line 862 of file meshsmoother.f.

References cmult2(), copy(), dot(), sub3(), and vlsc2().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gen_int_lx1_to_3()

subroutine gen_int_lx1_to_3

Definition at line 159 of file meshsmoother.f.

References dgll(), igllm(), rzero(), xm1toxmc(), and zwgll().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ genbackupmesh()

subroutine genbackupmesh

Definition at line 300 of file meshsmoother.f.

References copy().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ genmask()

subroutine genmask ( real, dimension(2**ldim,lelv*(2**ldim))  nodmask,
real, dimension(2**ldim,lelv*(2**ldim))  mlt,
integer  gshl,
real, dimension(lxc*lyc*lzc*lelv)  mltc,
integer  gshlc 
)

Definition at line 1152 of file meshsmoother.f.

References facev(), glmax(), invcol1(), rone(), setupds_center(), and xmtox8().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ get_jac()

subroutine get_jac ( real  val,
real, dimension(2**ldim)  x,
real, dimension(2**ldim)  y,
real, dimension(2**ldim)  z,
integer  siz,
integer  el,
integer  dire 
)

Definition at line 988 of file meshsmoother.f.

References cmult(), col3(), exitt(), rzero(), and vlsum().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ get_len()

subroutine get_len ( real  val,
real, dimension(2**ldim)  x,
real, dimension(2**ldim)  y,
real, dimension(2**ldim)  z,
integer  siz 
)

Definition at line 1082 of file meshsmoother.f.

References vlsum().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ get_nodscale()

subroutine get_nodscale ( real, dimension(2**ldim,lelv*(2**ldim))  scalek,
real, dimension(2**ldim,lelv*(2**ldim))  x8,
real, dimension(2**ldim,lelv*(2**ldim))  y8,
real, dimension(2**ldim,lelv*(2**ldim))  z8,
integer  gshl 
)

Definition at line 1109 of file meshsmoother.f.

References cmult(), and rone().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getglobsum()

subroutine getglobsum ( real, dimension(2**ldim,lelv*(2**ldim))  xe,
real, dimension(2**ldim,lelv*(2**ldim))  ye,
real, dimension(2**ldim,lelv*(2**ldim))  ze,
real, dimension(2**ldim,lelv*(2**ldim))  mlt,
integer  gshl,
integer  siz,
integer  opt,
real  fl 
)

Definition at line 597 of file meshsmoother.f.

References get_jac(), get_len(), and gop().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ glmapm1chkinv()

subroutine glmapm1chkinv ( integer  kerr)

Definition at line 1421 of file meshsmoother.f.

References addcol3(), addcol4(), ascol5(), chkjacinv(), chsign(), copy(), iglsum(), rone(), rzero(), subcol3(), subcol4(), and xyzrstc().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gradf()

subroutine gradf ( real  f2,
real, dimension(2**ldim,lelv*(2**ldim),ldim)  dfdx,
real, dimension(2**ldim,lelv*(2**ldim))  x8,
real, dimension(2**ldim,lelv*(2**ldim))  y8,
real, dimension(2**ldim,lelv*(2**ldim))  z8,
real, dimension(2**ldim,lelv*(2**ldim))  mlt,
integer  gshl,
integer  siz,
integer  opt,
real, dimension(2**ldim,lelv*(2**ldim))  h 
)

Definition at line 923 of file meshsmoother.f.

References copy(), get_jac(), get_len(), and glsum().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ int_coarse_to_fine_2d()

subroutine int_coarse_to_fine_2d ( real, dimension(n1,n1)  u1,
real, dimension(n2,n2)  u2,
  n1,
  n2 
)

Definition at line 244 of file meshsmoother.f.

References exitt(), and mxm().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ int_coarse_to_fine_3d()

subroutine int_coarse_to_fine_3d ( real, dimension(n1,n1,n1)  u1,
real, dimension(n2,n2,n2)  u2,
  n1,
  n2 
)

Definition at line 268 of file meshsmoother.f.

References exitt(), and mxm().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ int_fine_to_coarse_2d()

subroutine int_fine_to_coarse_2d ( real, dimension(n1,n1)  u1,
real, dimension(n2,n2)  u2,
  n1,
  n2 
)

Definition at line 192 of file meshsmoother.f.

References exitt(), and mxm().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ int_fine_to_coarse_3d()

subroutine int_fine_to_coarse_3d ( real, dimension(n1,n1,n1)  u1,
real, dimension(n2,n2,n2)  u2,
  n1,
  n2 
)

Definition at line 212 of file meshsmoother.f.

References exitt(), and mxm().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ laplaceh()

subroutine laplaceh ( character*4  name,
real, dimension(1)  u,
real, dimension(1)  h1,
real, dimension(1)  h2,
real, dimension(1)  mask,
real, dimension(1)  mult,
  ifld,
  tli,
  maxi,
real, dimension (1)  approx,
integer, dimension(1)  napprox 
)

Definition at line 1710 of file meshsmoother.f.

References add2(), axhelm(), blank(), capit(), chcopy(), copy(), dsavg(), dssum(), hmhzpf(), project1(), and project2().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ masklayers()

subroutine masklayers ( real, dimension(2**ldim,lelv*(2**ldim))  nodmask,
integer  nlayers 
)

Definition at line 733 of file meshsmoother.f.

References cmult(), col2(), dsop(), facev(), glamin(), int_fine_to_coarse_2d(), rone(), x8toxm(), and xmtox8().

+ Here is the call graph for this function:

◆ meshsmoother()

subroutine meshsmoother

Definition at line 1 of file meshsmoother.f.

References smoothmesh().

+ Here is the call graph for this function:

◆ my_mv_mesh()

subroutine my_mv_mesh ( real, dimension(1)  dx,
real, dimension(1)  dy,
real, dimension(1)  dz 
)

Definition at line 1633 of file meshsmoother.f.

References cadd(), chsign(), col2(), copy(), dsop(), facev(), glsum(), laplaceh(), rone(), rzero(), sm_cheap_dist(), and vlsum().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ optcg()

subroutine optcg (   itmax,
real, dimension(2**ldim,lelv*(2**ldim))  nodmask,
real, dimension(2**ldim,lelv*(2**ldim))  mlt,
integer  gshl,
real, dimension(2**ldim,lelv*(2**ldim))  dis,
integer  opt,
integer  optinv,
real, dimension(lxc,lyc,lzc,lelv)  mltc,
integer  gshlc 
)

Definition at line 346 of file meshsmoother.f.

References add2s2(), cmult(), col4(), copy(), dolsalpha(), fixcurs(), genbackupmesh(), get_nodscale(), glmapm1chkinv(), gop(), gradf(), x8toxm(), and xmtox8().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ restbackmesh()

subroutine restbackmesh

Definition at line 320 of file meshsmoother.f.

References copy(), and xmtox8().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ restbndrlayer()

subroutine restbndrlayer ( real, dimension(lxc*lyc*lzc,lelv)  dx,
real, dimension(lxc*lyc*lzc,lelv)  dy,
real, dimension(lxc*lyc*lzc,lelv)  dz,
real, dimension((2**ldim)*lelv*(2**ldim))  dis,
real, dimension(lxc,lyc,lzc,lelv)  mltc,
integer  gshlc 
)

Definition at line 683 of file meshsmoother.f.

References add2(), cmult(), col2(), fixcurs(), glamax(), sub2(), x8toxm(), and xmctoxm1().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ setupds_center()

subroutine setupds_center ( integer  gs_handle,
  nx,
  ny,
  nz,
  nel,
  melg,
integer, dimension(1)  vertex,
integer*8, dimension(1)  glo_num 
)

Definition at line 1226 of file meshsmoother.f.

References set_vert().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ sm_cheap_dist()

subroutine sm_cheap_dist ( real, dimension(lx1,ly1,lz1,lelt d,
  ifld,
character*3  b 
)

Definition at line 1771 of file meshsmoother.f.

References cfill(), dist2d(), dist3d(), domain_size(), facev(), glmax(), and iglsum().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ smoothmesh()

subroutine smoothmesh (   mtyp,
  nouter,
  nlap,
  nopt,
  nbc,
character*3, dimension(nbc)  dcbc,
  idftyp,
real  alpha,
real  beta 
)

Definition at line 26 of file meshsmoother.f.

References copy(), disfun(), dnekclock(), fastlap(), fix_geom(), gen_int_lx1_to_3(), genmask(), geom_reset(), getglobsum(), my_mv_mesh(), opadd2(), opsub3(), optcg(), restbackmesh(), restbndrlayer(), xmctoxm1(), and xmtox8().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ x8toxm()

subroutine x8toxm ( real, dimension(lxc*lyc*lzc,lelv)  xd,
real, dimension(2**ldim,lelv*(2**ldim))  x8 
)

Definition at line 1379 of file meshsmoother.f.

+ Here is the caller graph for this function:

◆ xm1toxmc()

subroutine xm1toxmc

Definition at line 1583 of file meshsmoother.f.

References int_fine_to_coarse_2d(), and int_fine_to_coarse_3d().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ xmctoxm1()

subroutine xmctoxm1

Definition at line 1608 of file meshsmoother.f.

References int_coarse_to_fine_2d(), and int_coarse_to_fine_3d().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ xmtox8()

subroutine xmtox8 ( real, dimension(lxc*lyc*lzc,lelv)  xd,
real, dimension(2**ldim,lelv*(2**ldim))  x8 
)

Definition at line 1347 of file meshsmoother.f.

+ Here is the caller graph for this function:

◆ xyzrstc()

subroutine xyzrstc ( dimension(lxc,lyc,lzc,1)  xrmc,
dimension(lxc,lyc,lzc,1)  yrmc,
dimension(lxc,lyc,lzc,1)  zrmc,
dimension(lxc,lyc,lzc,1)  xsmc,
dimension(lxc,lyc,lzc,1)  ysmc,
dimension(lxc,lyc,lzc,1)  zsmc,
dimension(lxc,lyc,lzc,1)  XTMc,
dimension(lxc,lyc,lzc,1)  YTMc,
dimension(lxc,lyc,lzc,1)  ZTMc,
logical  IFAXIS 
)

Definition at line 1530 of file meshsmoother.f.

References mxm(), rone(), and rzero().

+ Here is the call graph for this function:
+ Here is the caller graph for this function: