eTurb
hsmg.f File Reference

Functions/Subroutines

subroutine hsmg_setup ()
 
subroutine hsmg_setup_semhat
 
subroutine hsmg_setup_intp
 
subroutine hsmg_setup_intpm (jh, zf, zc, nf, nc)
 
subroutine hsmg_setup_dssum
 
subroutine h1mg_setup_wtmask
 
subroutine hsmg_setup_wtmask
 
subroutine hsmg_intp (uf, uc, l)
 
subroutine hsmg_rstr (uc, uf, l)
 
subroutine hsmg_rstr_no_dssum (uc, uf, l)
 
subroutine hsmg_tnsr (v, nv, u, nu, A, At)
 
subroutine hsmg_tnsr2d (v, nv, u, nu, A, Bt)
 
subroutine hsmg_tnsr3d (v, nv, u, nu, A, Bt, Ct)
 
subroutine hsmg_tnsr2d_el (v, nv, u, nu, A, Bt)
 
subroutine hsmg_tnsr3d_el (v, nv, u, nu, A, Bt, Ct)
 
subroutine hsmg_dssum (u, l)
 
subroutine hsmg_dsprod (u, l)
 
subroutine hsmg_schwarz_dssum (u, l)
 
subroutine hsmg_extrude (arr1, l1, f1, arr2, l2, f2, nx, ny, nz)
 
subroutine h1mg_schwarz (e, r, sigma, l)
 
subroutine h1mg_schwarz_part1 (e, r, l)
 
subroutine hsmg_schwarz (e, r, l)
 
subroutine hsmg_schwarz_toext2d (a, b, n)
 
subroutine hsmg_schwarz_toext3d (a, b, n)
 
subroutine hsmg_schwarz_toreg2d (b, a, n)
 
subroutine hsmg_schwarz_toreg3d (b, a, n)
 
subroutine h1mg_setup_fdm ()
 
subroutine hsmg_setup_fdm ()
 
subroutine hsmg_setup_fast (s, d, nl, ah, bh, n)
 
subroutine hsmg_setup_fast1d (s, lam, nl, lbc, rbc, ll, lm, lr, ah, bh, n, ie)
 
subroutine hsmg_setup_fast1d_a (a, lbc, rbc, ll, lm, lr, ah, n)
 
subroutine hsmg_setup_fast1d_b (b, lbc, rbc, ll, lm, lr, bh, n)
 
subroutine hsmg_fdm (e, r, l)
 
subroutine hsmg_do_fast (e, r, s, d, nl)
 
subroutine hsmg_do_wt (u, wt, nx, ny, nz)
 
subroutine hsmg_setup_rstr_wt (wt, nx, ny, nz, l, w)
 
subroutine hsmg_setup_mask (wt, nx, ny, nz, l, w)
 
subroutine hsmg_setup_schwarz_wt (ifsqrt)
 
subroutine h1mg_setup_schwarz_wt (ifsqrt)
 
subroutine hsmg_schwarz_wt (e, l)
 
subroutine hsmg_schwarz_wt2d (e, wt, n)
 
subroutine hsmg_schwarz_wt3d (e, wt, n)
 
subroutine hsmg_coarse_solve (e, r)
 
subroutine hsmg_setup_solve
 
subroutine hsmg_solve (e, r)
 
subroutine hsmg_setup_mg_nx ()
 
subroutine hsmg_index_0
 
subroutine outfldn (x, n, txt10, ichk)
 
subroutine outfldn0 (x, n, txt10, ichk)
 
subroutine outflda (x, n, txt10, ichk)
 
subroutine outfldan (x, n, txt10, ichk)
 
subroutine h1mg_solve (z, rhs, if_hybrid)
 
subroutine h1mg_axm (w, p, aw, ap, l, wk)
 
subroutine h1mg_axml (w, p, h1, h2, nx, ny, nz, nel, g, ng, b, mask, ifh2)
 
subroutine h1mg_mask (w, mask, nel)
 
subroutine mg_mask_e (w, mask)
 
subroutine axe (w, p, h1, h2, g, ng, b, nx, ny, nz, ur, us, ut, ifh2, ifrz, e)
 
subroutine hsmg_tnsr1 (v, nv, nu, A, At)
 
subroutine hsmg_tnsr1_2d (v, nv, nu, A, Bt)
 
subroutine hsmg_tnsr1_3d (v, nv, nu, A, Bt, Ct)
 
subroutine h1mg_rstr (r, l, ifdssum)
 
subroutine h1mg_setup ()
 
subroutine h1mg_setup_mg_nx ()
 
subroutine h1mg_setup_semhat
 
subroutine h1mg_setup_dssum
 
subroutine mg_set_msk (p_msk, l0)
 
subroutine h1mg_setup_mask (mask, nm, nx, ny, nz, nel, l, w)
 
subroutine mg_set_h1 (p_h1, l0)
 
subroutine mg_set_h2 (p_h2, l0)
 
subroutine hsmg_intp_fc (uc, uf, l)
 
subroutine mg_intp_fc_e (uc, uf, nxc, nyc, nzc, nxf, nyf, nzf, e, l, w)
 
subroutine mg_intp_gfc_e (gc, gf, ng, nxc, nyc, nzc, nxf, nyf, nzf, e, l, w)
 
subroutine mg_scale_mass (b, g, wt, ng, nx, ny, nz, wk, ifinv)
 
subroutine mg_set_gb (p_g, p_b, l0)
 
subroutine gxfer_e (g, ng, e)
 
subroutine chkr (name3, ii)
 
subroutine outgmat (a, ng, nx, ny, name6, k, e)
 
subroutine outmatz (a, m, n, name6, ie)
 
subroutine h1mg_setup_schwarz_wt_2 (wt, ie, n, work, ifsqrt)
 
subroutine h1mg_setup_schwarz_wt2d_2 (wt, ie, n, work, ifsqrt)
 
subroutine h1mg_setup_schwarz_wt3d_2 (wt, ie, n, work, ifsqrt)
 
subroutine h1mg_setup_schwarz_wt_1 (wt, l, ifsqrt)
 

Function/Subroutine Documentation

◆ axe()

subroutine axe ( real, dimension (nx*ny*nz)  w,
real, dimension (nx*ny*nz)  p,
real, dimension(nx*ny*nz)  h1,
real, dimension(nx*ny*nz)  h2,
real, dimension (ng,nx*ny*nz)  g,
  ng,
real, dimension (nx*ny*nz)  b,
  nx,
  ny,
  nz,
real, dimension(nx*ny*nz)  ur,
real, dimension(nx*ny*nz)  us,
real, dimension(nx*ny*nz)  ut,
logical  ifh2,
logical  ifrz,
integer  e 
)

◆ chkr()

subroutine chkr ( character*3  name3,
  ii 
)

◆ gxfer_e()

subroutine gxfer_e ( real, dimension(ng,1)  g,
  ng,
integer  e 
)

◆ h1mg_axm()

subroutine h1mg_axm ( real, dimension(1)  w,
real, dimension(1)  p,
  aw,
  ap,
  l,
real, dimension(1)  wk 
)

◆ h1mg_axml()

subroutine h1mg_axml ( real, dimension (nx*ny*nz,nel)  w,
real, dimension (nx*ny*nz,nel)  p,
real, dimension(nx*ny*nz,nel)  h1,
real, dimension(nx*ny*nz,nel)  h2,
  nx,
  ny,
  nz,
  nel,
real, dimension (ng*nx*ny*nz,nel)  g,
  ng,
real, dimension (nx*ny*nz,nel)  b,
integer, dimension(1)  mask,
logical  ifh2 
)

◆ h1mg_mask()

subroutine h1mg_mask ( real, dimension (1)  w,
integer, dimension(1)  mask,
  nel 
)

◆ h1mg_rstr()

subroutine h1mg_rstr ( real, dimension(1)  r,
integer  l,
logical  ifdssum 
)

◆ h1mg_schwarz()

subroutine h1mg_schwarz ( real, dimension(1)  e,
real, dimension(1)  r,
  sigma,
  l 
)

◆ h1mg_schwarz_part1()

subroutine h1mg_schwarz_part1 ( real, dimension(1)  e,
real, dimension(1)  r,
  l 
)

◆ h1mg_setup()

subroutine h1mg_setup ( )

◆ h1mg_setup_dssum()

subroutine h1mg_setup_dssum ( )

◆ h1mg_setup_fdm()

subroutine h1mg_setup_fdm ( )

◆ h1mg_setup_mask()

subroutine h1mg_setup_mask ( integer, dimension(1)  mask,
  nm,
integer  nx,
integer  ny,
integer  nz,
  nel,
integer  l,
real, dimension(nx,ny,nz,nel)  w 
)

◆ h1mg_setup_mg_nx()

subroutine h1mg_setup_mg_nx ( )

◆ h1mg_setup_schwarz_wt()

subroutine h1mg_setup_schwarz_wt ( logical  ifsqrt)

◆ h1mg_setup_schwarz_wt2d_2()

subroutine h1mg_setup_schwarz_wt2d_2 ( real, dimension(n,4,2,nelv)  wt,
integer  ie,
integer  n,
real, dimension(n,n)  work,
logical  ifsqrt 
)

◆ h1mg_setup_schwarz_wt3d_2()

subroutine h1mg_setup_schwarz_wt3d_2 ( real, dimension(n,n,4,3,nelv)  wt,
integer  ie,
integer  n,
real, dimension(n,n,n)  work,
logical  ifsqrt 
)

◆ h1mg_setup_schwarz_wt_1()

subroutine h1mg_setup_schwarz_wt_1 ( real, dimension(1)  wt,
  l,
logical  ifsqrt 
)

◆ h1mg_setup_schwarz_wt_2()

subroutine h1mg_setup_schwarz_wt_2 ( real, dimension(1)  wt,
  ie,
  n,
real, dimension(1)  work,
logical  ifsqrt 
)

◆ h1mg_setup_semhat()

subroutine h1mg_setup_semhat ( )

◆ h1mg_setup_wtmask()

subroutine h1mg_setup_wtmask ( )

◆ h1mg_solve()

subroutine h1mg_solve ( real, dimension(1)  z,
real, dimension(1)  rhs,
logical  if_hybrid 
)

◆ hsmg_coarse_solve()

subroutine hsmg_coarse_solve ( real, dimension(1)  e,
real, dimension(1)  r 
)

◆ hsmg_do_fast()

subroutine hsmg_do_fast ( real, dimension(nl**ldim,nelv)  e,
real, dimension(nl**ldim,nelv)  r,
real, dimension(nl*nl,2,ldim,nelv)  s,
real, dimension(nl**ldim,nelv)  d,
  nl 
)

◆ hsmg_do_wt()

subroutine hsmg_do_wt ( real, dimension(nx,ny,nz,nelv)  u,
real, dimension(nx,nz,2,ldim,nelv)  wt,
integer  nx,
integer  ny,
integer  nz 
)

◆ hsmg_dsprod()

subroutine hsmg_dsprod ( real, dimension(1)  u,
  l 
)

◆ hsmg_dssum()

subroutine hsmg_dssum ( real, dimension(1)  u,
  l 
)

◆ hsmg_extrude()

subroutine hsmg_extrude ( real, dimension(nx,ny,nz,nelv)  arr1,
integer  l1,
real  f1,
real, dimension(nx,ny,nz,nelv)  arr2,
integer  l2,
real  f2,
integer  nx,
integer  ny,
integer  nz 
)

◆ hsmg_fdm()

subroutine hsmg_fdm (   e,
  r,
  l 
)

◆ hsmg_index_0()

subroutine hsmg_index_0 ( )

◆ hsmg_intp()

subroutine hsmg_intp ( real, dimension(1)  uf,
real, dimension(1)  uc,
integer  l 
)

◆ hsmg_intp_fc()

subroutine hsmg_intp_fc ( real, dimension(1)  uc,
real, dimension(1)  uf,
  l 
)

◆ hsmg_rstr()

subroutine hsmg_rstr ( real, dimension(1)  uc,
real, dimension(1)  uf,
integer  l 
)

◆ hsmg_rstr_no_dssum()

subroutine hsmg_rstr_no_dssum ( real, dimension(1)  uc,
real, dimension(1)  uf,
integer  l 
)

◆ hsmg_schwarz()

subroutine hsmg_schwarz ( real, dimension(1)  e,
real, dimension(1)  r,
integer  l 
)

◆ hsmg_schwarz_dssum()

subroutine hsmg_schwarz_dssum (   u,
  l 
)

◆ hsmg_schwarz_toext2d()

subroutine hsmg_schwarz_toext2d ( real, dimension(0:n+1,0:n+1,nelv)  a,
real, dimension(n,n,nelv)  b,
integer  n 
)

◆ hsmg_schwarz_toext3d()

subroutine hsmg_schwarz_toext3d ( real, dimension(0:n+1,0:n+1,0:n+1,nelv)  a,
real, dimension(n,n,n,nelv)  b,
integer  n 
)

◆ hsmg_schwarz_toreg2d()

subroutine hsmg_schwarz_toreg2d ( real, dimension(n,n,nelv)  b,
real, dimension(0:n+1,0:n+1,nelv)  a,
integer  n 
)

◆ hsmg_schwarz_toreg3d()

subroutine hsmg_schwarz_toreg3d ( real, dimension(n,n,n,nelv)  b,
real, dimension(0:n+1,0:n+1,0:n+1,nelv)  a,
integer  n 
)

◆ hsmg_schwarz_wt()

subroutine hsmg_schwarz_wt (   e,
  l 
)

◆ hsmg_schwarz_wt2d()

subroutine hsmg_schwarz_wt2d ( real, dimension(n,n,nelv)  e,
real, dimension(n,4,2,nelv)  wt,
integer  n 
)

◆ hsmg_schwarz_wt3d()

subroutine hsmg_schwarz_wt3d ( real, dimension(n,n,n,nelv)  e,
real, dimension(n,n,4,3,nelv)  wt,
integer  n 
)

◆ hsmg_setup()

subroutine hsmg_setup ( )

◆ hsmg_setup_dssum()

subroutine hsmg_setup_dssum ( )

◆ hsmg_setup_fast()

subroutine hsmg_setup_fast ( real, dimension(nl*nl,2,ldim,nelv)  s,
real, dimension(nl**ldim,nelv)  d,
  nl,
real, dimension(1)  ah,
real, dimension(1)  bh,
  n 
)

◆ hsmg_setup_fast1d()

subroutine hsmg_setup_fast1d ( real, dimension(nl,nl,2)  s,
real, dimension(nl)  lam,
integer  nl,
integer  lbc,
integer  rbc,
real  ll,
real  lm,
real  lr,
real, dimension(0:n,0:n)  ah,
real, dimension(0:n)  bh,
integer  n,
  ie 
)

◆ hsmg_setup_fast1d_a()

subroutine hsmg_setup_fast1d_a ( real, dimension(0:n+2,0:n+2)  a,
integer  lbc,
integer  rbc,
real  ll,
real  lm,
real  lr,
real, dimension(0:n,0:n)  ah,
integer  n 
)

◆ hsmg_setup_fast1d_b()

subroutine hsmg_setup_fast1d_b ( real, dimension(0:n+2,0:n+2)  b,
integer  lbc,
integer  rbc,
real  ll,
real  lm,
real  lr,
real, dimension(0:n)  bh,
integer  n 
)

◆ hsmg_setup_fdm()

subroutine hsmg_setup_fdm ( )

◆ hsmg_setup_intp()

subroutine hsmg_setup_intp ( )

◆ hsmg_setup_intpm()

subroutine hsmg_setup_intpm ( real, dimension(nf,nc)  jh,
real, dimension(1)  zf,
real, dimension(1)  zc,
integer  nf,
integer  nc 
)

◆ hsmg_setup_mask()

subroutine hsmg_setup_mask ( real, dimension(nx,nz,2,ldim,nelv)  wt,
integer  nx,
integer  ny,
integer  nz,
integer  l,
real, dimension(nx,ny,nz,nelv)  w 
)

◆ hsmg_setup_mg_nx()

subroutine hsmg_setup_mg_nx ( )

◆ hsmg_setup_rstr_wt()

subroutine hsmg_setup_rstr_wt ( real, dimension(nx,nz,2,ldim,nelv)  wt,
integer  nx,
integer  ny,
integer  nz,
integer  l,
real, dimension(nx,ny,nz,nelv)  w 
)

◆ hsmg_setup_schwarz_wt()

subroutine hsmg_setup_schwarz_wt ( logical  ifsqrt)

◆ hsmg_setup_semhat()

subroutine hsmg_setup_semhat ( )

◆ hsmg_setup_solve()

subroutine hsmg_setup_solve ( )

◆ hsmg_setup_wtmask()

subroutine hsmg_setup_wtmask ( )

◆ hsmg_solve()

subroutine hsmg_solve ( real, dimension(1)  e,
real, dimension(1)  r 
)

◆ hsmg_tnsr()

subroutine hsmg_tnsr ( real, dimension(1)  v,
integer  nv,
real, dimension(1)  u,
integer  nu,
real, dimension(1)  A,
real, dimension(1)  At 
)

◆ hsmg_tnsr1()

subroutine hsmg_tnsr1 ( real, dimension(1)  v,
integer  nv,
integer  nu,
real, dimension(1)  A,
real, dimension(1)  At 
)

◆ hsmg_tnsr1_2d()

subroutine hsmg_tnsr1_2d ( real, dimension(1)  v,
integer  nv,
integer  nu,
real, dimension(1)  A,
real, dimension(1)  Bt 
)

◆ hsmg_tnsr1_3d()

subroutine hsmg_tnsr1_3d ( real, dimension(1)  v,
integer  nv,
integer  nu,
real, dimension(1)  A,
real, dimension(1)  Bt,
real, dimension(1)  Ct 
)

◆ hsmg_tnsr2d()

subroutine hsmg_tnsr2d ( real, dimension(nv*nv,nelv)  v,
integer  nv,
real, dimension(nu*nu,nelv)  u,
integer  nu,
real, dimension(1)  A,
real, dimension(1)  Bt 
)

◆ hsmg_tnsr2d_el()

subroutine hsmg_tnsr2d_el ( real, dimension(nv*nv)  v,
integer  nv,
real, dimension(nu*nu)  u,
integer  nu,
real, dimension(1)  A,
real, dimension(1)  Bt 
)

◆ hsmg_tnsr3d()

subroutine hsmg_tnsr3d ( real, dimension(nv*nv*nv,nelv)  v,
integer  nv,
real, dimension(nu*nu*nu,nelv)  u,
integer  nu,
real, dimension(1)  A,
real, dimension(1)  Bt,
real, dimension(1)  Ct 
)

◆ hsmg_tnsr3d_el()

subroutine hsmg_tnsr3d_el ( real, dimension(nv*nv*nv)  v,
integer  nv,
real, dimension(nu*nu*nu)  u,
integer  nu,
real, dimension(1)  A,
real, dimension(1)  Bt,
real, dimension(1)  Ct 
)

◆ mg_intp_fc_e()

subroutine mg_intp_fc_e ( real, dimension(nxc,nyc,nzc)  uc,
real, dimension(nxf,nyf,nzf)  uf,
  nxc,
  nyc,
  nzc,
  nxf,
  nyf,
  nzf,
  e,
  l,
real, dimension(1)  w 
)

◆ mg_intp_gfc_e()

subroutine mg_intp_gfc_e ( real, dimension(ng,nxc,nyc,nzc)  gc,
real, dimension(ng,nxf,nyf,nzf)  gf,
  ng,
  nxc,
  nyc,
  nzc,
  nxf,
  nyf,
  nzf,
  e,
  l,
real, dimension(1)  w 
)

◆ mg_mask_e()

subroutine mg_mask_e ( real, dimension(1)  w,
integer, dimension(0:1)  mask 
)

◆ mg_scale_mass()

subroutine mg_scale_mass ( real, dimension(1)  b,
real, dimension(ng,1)  g,
real, dimension(1)  wt,
  ng,
  nx,
  ny,
  nz,
real, dimension(1)  wk,
logical  ifinv 
)

◆ mg_set_gb()

subroutine mg_set_gb ( integer  p_g,
integer  p_b,
  l0 
)

◆ mg_set_h1()

subroutine mg_set_h1 ( integer  p_h1,
  l0 
)

◆ mg_set_h2()

subroutine mg_set_h2 ( integer  p_h2,
  l0 
)

◆ mg_set_msk()

subroutine mg_set_msk ( integer  p_msk,
  l0 
)

◆ outflda()

subroutine outflda ( real, dimension(1)  x,
  n,
character*10  txt10,
  ichk 
)

◆ outfldan()

subroutine outfldan ( real, dimension(1)  x,
  n,
character*10  txt10,
  ichk 
)

◆ outfldn()

subroutine outfldn ( real, dimension(n,n,1,lelt x,
  n,
character*10  txt10,
  ichk 
)

◆ outfldn0()

subroutine outfldn0 ( real, dimension(n,n,1,lelt x,
  n,
character*10  txt10,
  ichk 
)

◆ outgmat()

subroutine outgmat ( real, dimension(ng,nx,ny)  a,
  ng,
  nx,
  ny,
character*6  name6,
  k,
integer  e 
)

◆ outmatz()

subroutine outmatz ( real, dimension(m,n)  a,
  m,
  n,
character*6  name6,
  ie 
)