Neko  0.9.0
A portable framework for high-order spectral element flow simulations
speclib Module Reference

LIBRARY ROUTINES FOR SPECTRAL METHODS. More...

Functions/Subroutines

subroutine zwgl (Z, W, NP)
 Generate NP Gauss Legendre points Z and weights W associated with Jacobi polynomial \( P(N)(\alpha=0, \beta=0) \). The polynomial degree N = NP-1. More...
 
subroutine zwgll (Z, W, NP)
 
subroutine zwgj (Z, W, NP, ALPHA, BETA)
 
subroutine zwgjd (Z, W, NP, ALPHA, BETA)
 
subroutine zwglj (Z, W, NP, ALPHA, BETA)
 
subroutine zwgljd (Z, W, NP, ALPHA, BETA)
 
real(kind=xp) function endw1 (N, ALPHA, BETA)
 
real(kind=xp) function endw2 (N, ALPHA, BETA)
 
real(kind=xp) function gammaf (X)
 
real(kind=xp) function pnormj (N, ALPHA, BETA)
 
subroutine jacg (XJAC, NP, ALPHA, BETA)
 
subroutine jacobf (POLY, PDER, POLYM1, PDERM1, POLYM2, PDERM2, N, ALP, BET, X)
 
real(kind=xp) function hgj (II, Z, ZGJ, NP, ALPHA, BETA)
 
real(kind=xp) function hgjd (II, Z, ZGJ, NP, ALPHA, BETA)
 
real(kind=xp) function hglj (II, Z, ZGLJ, NP, ALPHA, BETA)
 
real(kind=xp) function hgljd (I, Z, ZGLJ, NP, ALPHA, BETA)
 
subroutine dgj (D, DT, Z, NZ, NZD, ALPHA, BETA)
 
subroutine dgjd (D, DT, Z, NZ, NZD, ALPHA, BETA)
 
subroutine dglj (D, DT, Z, NZ, NZD, ALPHA, BETA)
 
subroutine dgljd (D, DT, Z, NZ, NZD, ALPHA, BETA)
 
subroutine dgll (D, DT, Z, NZ, NZD)
 
real(kind=xp) function hgll (I, Z, ZGLL, NZ)
 
real(kind=xp) function hgl (I, Z, ZGL, NZ)
 
real(kind=xp) function pnleg (Z, N)
 
subroutine legendre_poly (L, x, N)
 Evaluate Legendre polynomials of degrees 0-N at point x and store in array L. More...
 
real(kind=xp) function pndleg (Z, N)
 
subroutine dgllgl (D, DT, ZM1, ZM2, IM12, NZM1, NZM2, ND1, ND2)
 
subroutine dgljgj (D, DT, ZGL, ZG, IGLG, NPGL, NPG, ND1, ND2, ALPHA, BETA)
 
subroutine dgljgjd (D, DT, ZGL, ZG, IGLG, NPGL, NPG, ND1, ND2, ALPHA, BETA)
 
subroutine iglm (I12, IT12, Z1, Z2, NZ1, NZ2, ND1, ND2)
 
subroutine igllm (I12, IT12, Z1, Z2, NZ1, NZ2, ND1, ND2)
 
subroutine igjm (I12, IT12, Z1, Z2, NZ1, NZ2, ND1, ND2, ALPHA, BETA)
 
subroutine igljm (I12, IT12, Z1, Z2, NZ1, NZ2, ND1, ND2, ALPHA, BETA)
 

Detailed Description

March 1989

For questions, comments or suggestions, please contact:

Einar Malvin Ronquist Room 3-243 Department of Mechanical Engineering Massachusetts Institute of Technology 77 Massachusetts Avenue Cambridge, MA 0299 U.S.A.

Function/Subroutine Documentation

◆ dgj()

subroutine speclib::dgj ( real(kind=xp), dimension(nzd,nzd)  D,
real(kind=xp), dimension(nzd,nzd)  DT,
real(kind=xp), dimension(1)  Z,
  NZ,
  NZD,
real(kind=xp)  ALPHA,
real(kind=xp)  BETA 
)

Definition at line 690 of file speclib.f90.

Here is the call graph for this function:

◆ dgjd()

subroutine speclib::dgjd ( real(kind=xp), dimension(nzd,nzd)  D,
real(kind=xp), dimension(nzd,nzd)  DT,
real(kind=xp), dimension(1)  Z,
  NZ,
  NZD,
real(kind=xp)  ALPHA,
real(kind=xp)  BETA 
)

Definition at line 734 of file speclib.f90.

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

◆ dglj()

subroutine speclib::dglj ( real(kind=xp), dimension(nzd,nzd)  D,
real(kind=xp), dimension(nzd,nzd)  DT,
real(kind=xp), dimension(1)  Z,
  NZ,
  NZD,
real(kind=xp)  ALPHA,
real(kind=xp)  BETA 
)

Definition at line 773 of file speclib.f90.

Here is the call graph for this function:

◆ dgljd()

subroutine speclib::dgljd ( real(kind=xp), dimension(nzd,nzd)  D,
real(kind=xp), dimension(nzd,nzd)  DT,
real(kind=xp), dimension(1)  Z,
  NZ,
  NZD,
real(kind=xp)  ALPHA,
real(kind=xp)  BETA 
)

Definition at line 817 of file speclib.f90.

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

◆ dgljgj()

subroutine speclib::dgljgj ( real(kind=xp), dimension(nd2,nd1)  D,
real(kind=xp), dimension(nd1,nd2)  DT,
real(kind=xp), dimension(nd1)  ZGL,
real(kind=xp), dimension(nd2)  ZG,
real(kind=xp), dimension(nd2,nd1)  IGLG,
  NPGL,
  NPG,
  ND1,
  ND2,
  ALPHA,
  BETA 
)

Definition at line 1060 of file speclib.f90.

Here is the call graph for this function:

◆ dgljgjd()

subroutine speclib::dgljgjd ( real(kind=xp), dimension(nd2,nd1)  D,
real(kind=xp), dimension(nd1,nd2)  DT,
real(kind=xp), dimension(nd1)  ZGL,
real(kind=xp), dimension(nd2)  ZG,
real(kind=xp), dimension(nd2,nd1)  IGLG,
  NPGL,
  NPG,
  ND1,
  ND2,
real(kind=xp)  ALPHA,
real(kind=xp)  BETA 
)

Definition at line 1116 of file speclib.f90.

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

◆ dgll()

subroutine speclib::dgll ( real(kind=rp), dimension(nzd,nzd)  D,
real(kind=rp), dimension(nzd,nzd)  DT,
real(kind=rp), dimension(1)  Z,
  NZ,
  NZD 
)

Definition at line 864 of file speclib.f90.

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

◆ dgllgl()

subroutine speclib::dgllgl ( real(kind=xp), dimension(nd2,nd1)  D,
real(kind=xp), dimension(nd1,nd2)  DT,
real(kind=xp), dimension(nd1)  ZM1,
real(kind=xp), dimension(nd2)  ZM2,
real(kind=xp), dimension(nd2,nd1)  IM12,
  NZM1,
  NZM2,
  ND1,
  ND2 
)

Definition at line 1023 of file speclib.f90.

Here is the call graph for this function:

◆ endw1()

real(kind=xp) function speclib::endw1 (   N,
real(kind=xp)  ALPHA,
real(kind=xp)  BETA 
)

Definition at line 344 of file speclib.f90.

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

◆ endw2()

real(kind=xp) function speclib::endw2 (   N,
real(kind=xp)  ALPHA,
real(kind=xp)  BETA 
)

Definition at line 388 of file speclib.f90.

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

◆ gammaf()

real(kind=xp) function speclib::gammaf ( real(kind=xp)  X)

Definition at line 432 of file speclib.f90.

Here is the caller graph for this function:

◆ hgj()

real(kind=xp) function speclib::hgj (   II,
real(kind=xp)  Z,
real(kind=xp), dimension(1)  ZGJ,
  NP,
real(kind=xp)  ALPHA,
real(kind=xp)  BETA 
)

Definition at line 580 of file speclib.f90.

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

◆ hgjd()

real(kind=xp) function speclib::hgjd (   II,
real(kind=xp)  Z,
real(kind=xp), dimension(1)  ZGJ,
  NP,
real(kind=xp)  ALPHA,
real(kind=xp)  BETA 
)

Definition at line 609 of file speclib.f90.

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

◆ hgl()

real(kind=xp) function speclib::hgl (   I,
real(kind=xp)  Z,
real(kind=xp), dimension(1)  ZGL,
  NZ 
)

Definition at line 923 of file speclib.f90.

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

◆ hglj()

real(kind=xp) function speclib::hglj (   II,
real(kind=xp)  Z,
real(kind=xp), dimension(1)  ZGLJ,
  NP,
real(kind=xp)  ALPHA,
real(kind=xp)  BETA 
)

Definition at line 633 of file speclib.f90.

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

◆ hgljd()

real(kind=xp) function speclib::hgljd (   I,
real(kind=xp)  Z,
real(kind=xp), dimension(1)  ZGLJ,
  NP,
real(kind=xp)  ALPHA,
real(kind=xp)  BETA 
)

Definition at line 662 of file speclib.f90.

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

◆ hgll()

real(kind=xp) function speclib::hgll (   I,
real(kind=xp)  Z,
real(kind=xp), dimension(1)  ZGLL,
  NZ 
)

Definition at line 901 of file speclib.f90.

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

◆ igjm()

subroutine speclib::igjm ( real(kind=xp), dimension(nd2,nd1)  I12,
real(kind=xp), dimension(nd1,nd2)  IT12,
real(kind=xp), dimension(nd1)  Z1,
real(kind=xp), dimension(nd2)  Z2,
  NZ1,
  NZ2,
  ND1,
  ND2,
real(kind=xp)  ALPHA,
real(kind=xp)  BETA 
)

Definition at line 1222 of file speclib.f90.

Here is the call graph for this function:

◆ igljm()

subroutine speclib::igljm ( real(kind=xp), dimension(nd2,nd1)  I12,
real(kind=xp), dimension(nd1,nd2)  IT12,
real(kind=xp), dimension(nd1)  Z1,
real(kind=xp), dimension(nd2)  Z2,
  NZ1,
  NZ2,
  ND1,
  ND2,
real(kind=xp)  ALPHA,
real(kind=xp)  BETA 
)

Definition at line 1249 of file speclib.f90.

Here is the call graph for this function:

◆ igllm()

subroutine speclib::igllm ( real(kind=xp), dimension(nd2,nd1)  I12,
real(kind=xp), dimension(nd1,nd2)  IT12,
real(kind=xp), dimension(nd1)  Z1,
real(kind=xp), dimension(nd2)  Z2,
  NZ1,
  NZ2,
  ND1,
  ND2 
)

Definition at line 1196 of file speclib.f90.

Here is the call graph for this function:

◆ iglm()

subroutine speclib::iglm ( real(kind=xp), dimension(nd2,nd1)  I12,
real(kind=xp), dimension(nd1,nd2)  IT12,
real(kind=xp), dimension(nd1)  Z1,
real(kind=xp), dimension(nd2)  Z2,
  NZ1,
  NZ2,
  ND1,
  ND2 
)

Definition at line 1170 of file speclib.f90.

Here is the call graph for this function:

◆ jacg()

subroutine speclib::jacg ( real(kind=xp), dimension(1)  XJAC,
  NP,
  ALPHA,
  BETA 
)

Definition at line 482 of file speclib.f90.

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

◆ jacobf()

subroutine speclib::jacobf (   POLY,
  PDER,
  POLYM1,
  PDERM1,
  POLYM2,
  PDERM2,
  N,
  ALP,
  BET,
  X 
)

Definition at line 540 of file speclib.f90.

Here is the caller graph for this function:

◆ legendre_poly()

subroutine speclib::legendre_poly ( real(kind=rp), dimension(0:n), intent(inout)  L,
real(kind=rp)  x,
integer  N 
)

Definition at line 979 of file speclib.f90.

Here is the caller graph for this function:

◆ pndleg()

real(kind=xp) function speclib::pndleg ( real(kind=xp)  Z,
  N 
)

Definition at line 994 of file speclib.f90.

Here is the caller graph for this function:

◆ pnleg()

real(kind=xp) function speclib::pnleg ( real(kind=xp)  Z,
  N 
)

Definition at line 942 of file speclib.f90.

Here is the caller graph for this function:

◆ pnormj()

real(kind=xp) function speclib::pnormj (   N,
real(kind=xp)  ALPHA,
real(kind=xp)  BETA 
)

Definition at line 456 of file speclib.f90.

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

◆ zwgj()

subroutine speclib::zwgj ( real(kind=rp), dimension(1)  Z,
real(kind=rp), dimension(1)  W,
  NP,
real(kind=rp)  ALPHA,
real(kind=rp)  BETA 
)

Definition at line 185 of file speclib.f90.

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

◆ zwgjd()

subroutine speclib::zwgjd ( real(kind=xp), dimension(1)  Z,
real(kind=xp), dimension(1)  W,
  NP,
real(kind=xp)  ALPHA,
real(kind=xp)  BETA 
)

Definition at line 216 of file speclib.f90.

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

◆ zwgl()

subroutine speclib::zwgl ( real(kind=rp), dimension(1)  Z,
real(kind=rp), dimension(1)  W,
  NP 
)
Parameters
ZQuadrature points.
WQuadrature weights.
NPNumber of quadrature points.

Definition at line 160 of file speclib.f90.

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

◆ zwglj()

subroutine speclib::zwglj ( real(kind=rp), dimension(1)  Z,
real(kind=rp), dimension(1)  W,
  NP,
real(kind=rp)  ALPHA,
real(kind=rp)  BETA 
)

Definition at line 268 of file speclib.f90.

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

◆ zwgljd()

subroutine speclib::zwgljd ( real(kind=xp), dimension(np)  Z,
real(kind=xp), dimension(np)  W,
  NP,
real(kind=xp)  ALPHA,
real(kind=xp)  BETA 
)

Definition at line 299 of file speclib.f90.

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

◆ zwgll()

subroutine speclib::zwgll ( real(kind=rp), dimension(1)  Z,
real(kind=rp), dimension(1)  W,
  NP 
)

Definition at line 168 of file speclib.f90.

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