|
Nek5000
SEM for Incompressible NS
|
Go to the source code of this file.
Functions/Subroutines | |
| subroutine | ctolspl (tolspl, respr) |
| Compute the pressure tolerance. More... | |
| subroutine | ortho (respr) |
| Orthogonalize the residual in the pressure solver with respect to (1,1,...,1)T (only if all Dirichlet b.c.). More... | |
| subroutine | opgrad (out1, out2, out3, inp) |
| Compute OUTi = Di*INP, i=1,2,3. the gradient of the scalar field INP. Note: OUTi is defined on the pressure mesh !!! More... | |
| subroutine | cdtp (dtx, x, rm2, sm2, tm2, isd) |
| Compute DT*X (entire field) More... | |
| subroutine | multd (dx, x, rm2, sm2, tm2, isd, iflg) |
| Compute D*X . X : input variable, defined on M1 DX : output variable, defined on M2 (note: D is rectangular) RM2 : RXM2, RYM2 or RZM2 SM2 : SXM2, SYM2 or SZM2 TM2 : TXM2, TYM2 or TZM2 ISD : spatial direction (x=1,y=2,z=3) IFLG: OPGRAD (iflg=0) or OPDIV (iflg=1) More... | |
| subroutine | ophx (out1, out2, out3, inp1, inp2, inp3, h1, h2) |
| OUT = (H1*A+H2*B) * INP. More... | |
| subroutine | dudxyz (du, u, rm1, sm1, tm1, jm1, imsh, isd) |
| Compute some derviatives? DU - dU/dx or dU/dy or dU/dz U - a field variable defined on mesh 1 RM1 - dr/dx or dr/dy or dr/dz SM1 - ds/dx or ds/dy or ds/dz TM1 - dt/dx or dt/dy or dt/dz JM1 - the Jacobian IMESH - topology: velocity (1) or temperature (2) mesh. More... | |
| subroutine | makef |
| Compute and add: (1) user specified forcing function (FX,FY,FZ) (2) driving force due to natural convection (3) convection term !! NOTE: Do not change the arrays BFX, BFY, BFZ until the current time step is completed. More... | |
| subroutine | makeuf |
| Compute and add: (1) user specified forcing function (FX,FY,FZ) More... | |
| subroutine | nekuf (f1, f2, f3) |
| subroutine | advab () |
| Eulerian scheme, add convection term to forcing function at current time step. More... | |
| subroutine | makebdf () |
| Add contributions to F from lagged BD terms. More... | |
| subroutine | makeabf |
| Sum up contributions to kth order extrapolation scheme. NOTE: rho^{n+1} should multiply all the Sum_q{beta_q} term if rho is not constant! More... | |
| subroutine | setabbd (ab, dtlag, nab, nbd) |
| Compute Adams-Bashforth coefficients (order NAB, less or equal to 3). NBD .EQ. 1 Standard Adams-Bashforth coefficients NBD .GT. 1 Modified Adams-Bashforth coefficients to be used in con- junction with Backward Differentiation schemes (order NBD) More... | |
| subroutine | setbd (bd, dtbd, nbd) |
| Compute backwards-difference (BDF) coefficients, order NBD. More... | |
| subroutine | bdsys (a, b, dt, nbd, ndim) |
| Setup the linear system that defines BDF coefficients. More... | |
| subroutine | tauinit (tau, ilag) |
| Set initial time for subintegration. More... | |
| subroutine | lagvel |
| Keep old velocity field(s) More... | |
| subroutine | setordbd |
| Set up parameters for backward differentiation scheme. More... | |
| subroutine | normsc (h1, semi, l2, linf, x, imesh) |
| Compute error norms of a (scalar) field variable X defined on mesh 1 or mesh 2. The error norms are normalized with respect to the volume (except for Linf). More... | |
| subroutine | normvc (h1, semi, l2, linf, x1, x2, x3) |
| Compute error norms of a (vector) field variable (X1,X2,X3) More... | |
| subroutine | opcolv (a1, a2, a3, c) |
| subroutine | opcopy (a1, a2, a3, b1, b2, b3) |
| subroutine | opdssum (a, b, c) |
| subroutine | opdsop (a, b, c, op) |
| subroutine | transpose (a, lda, b, ldb) |
| subroutine | convop (conv, fi) |
| Compute the convective term CONV for a passive scalar field FI. More... | |
| subroutine | opdiv (outfld, inpx, inpy, inpz) |
| Compute OUTFLD = SUMi Di*INPi. the divergence of the vector field (INPX,INPY,INPZ) More... | |
| subroutine | wgradm1 (ux, uy, uz, u, nel) |
| Compute gradient of T – mesh 1 to mesh 1 (vel. to vel.) More... | |
| subroutine | wlaplacian (out, a, diff, ifld) |
| compute weak form of the laplacian operator including the boundary contribution More... | |
| subroutine advab | ( | ) |
Eulerian scheme, add convection term to forcing function at current time step.
Definition at line 778 of file navier1.F90.
References convop().
Referenced by makef().
Here is the call graph for this function:
Here is the caller graph for this function:| subroutine bdsys | ( | real(dp), dimension(ndim,9) | a, |
| real(dp), dimension(9) | b, | ||
| real(dp), dimension(9) | dt, | ||
| integer | nbd, | ||
| integer | ndim | ||
| ) |
Setup the linear system that defines BDF coefficients.
Definition at line 1040 of file navier1.F90.
Referenced by setbd().
Here is the caller graph for this function:| subroutine cdtp | ( | real(dp), dimension (lx1,ly1,lz1,lelv) | dtx, |
| real(dp), dimension (lx2,ly2,lz2,lelv) | x, | ||
| real(dp), dimension (lx2,ly2,lz2,lelv) | rm2, | ||
| real(dp), dimension (lx2,ly2,lz2,lelv) | sm2, | ||
| real(dp), dimension (lx2,ly2,lz2,lelv) | tm2, | ||
| integer | isd | ||
| ) |
Compute DT*X (entire field)
Definition at line 173 of file navier1.F90.
References copy(), ctimer::dnekclock(), and mxm().
Referenced by crespsp().
Here is the call graph for this function:
Here is the caller graph for this function:| subroutine convop | ( | real(dp), dimension (lx1,ly1,lz1,*) | conv, |
| real(dp), dimension (lx1,ly1,lz1,*) | fi | ||
| ) |
Compute the convective term CONV for a passive scalar field FI.
Definition at line 1422 of file navier1.F90.
References convect_new(), and ctimer::dnekclock().
Referenced by advab(), and convab().
Here is the call graph for this function:
Here is the caller graph for this function:Compute the pressure tolerance.
Definition at line 3 of file navier1.F90.
References dssum().
Referenced by plan4().
Here is the call graph for this function:
Here is the caller graph for this function:| subroutine dudxyz | ( | real(dp), dimension (lx1,ly1,lz1,*) | du, |
| real(dp), dimension (lx1,ly1,lz1,*) | u, | ||
| real(dp), dimension (lx1,ly1,lz1,*) | rm1, | ||
| real(dp), dimension (lx1,ly1,lz1,*) | sm1, | ||
| real(dp), dimension (lx1,ly1,lz1,*) | tm1, | ||
| real(dp), dimension (lx1,ly1,lz1,*) | jm1, | ||
| integer | imsh, | ||
| integer | isd | ||
| ) |
Compute some derviatives? DU - dU/dx or dU/dy or dU/dz U - a field variable defined on mesh 1 RM1 - dr/dx or dr/dy or dr/dz SM1 - ds/dx or ds/dy or ds/dz TM1 - dt/dx or dt/dy or dt/dz JM1 - the Jacobian IMESH - topology: velocity (1) or temperature (2) mesh.
Definition at line 628 of file navier1.F90.
References mxm().
Referenced by op_curl().
Here is the call graph for this function:
Here is the caller graph for this function:| subroutine lagvel | ( | ) |
| subroutine makeabf | ( | ) |
Sum up contributions to kth order extrapolation scheme. NOTE: rho^{n+1} should multiply all the Sum_q{beta_q} term if rho is not constant!
Definition at line 847 of file navier1.F90.
References copy().
Referenced by makef().
Here is the call graph for this function:
Here is the caller graph for this function:| subroutine makebdf | ( | ) |
Add contributions to F from lagged BD terms.
Definition at line 805 of file navier1.F90.
Referenced by makef().
Here is the caller graph for this function:| subroutine makef | ( | ) |
Compute and add: (1) user specified forcing function (FX,FY,FZ) (2) driving force due to natural convection (3) convection term !! NOTE: Do not change the arrays BFX, BFY, BFZ until the current time step is completed.
Definition at line 691 of file navier1.F90.
References advab(), ctimer::dnekclock(), makeabf(), makebdf(), and makeuf().
Referenced by plan4().
Here is the call graph for this function:
Here is the caller graph for this function:| subroutine makeuf | ( | ) |
Compute and add: (1) user specified forcing function (FX,FY,FZ)
Definition at line 723 of file navier1.F90.
References nekuf().
Referenced by makef(), and setdtc().
Here is the call graph for this function:
Here is the caller graph for this function:| subroutine multd | ( | real(dp), dimension (lx2,ly2,lz2,lelv) | dx, |
| real(dp), dimension (lx1,ly1,lz1,lelv) | x, | ||
| real(dp), dimension (lx2,ly2,lz2,lelv) | rm2, | ||
| real(dp), dimension (lx2,ly2,lz2,lelv) | sm2, | ||
| real(dp), dimension (lx2,ly2,lz2,lelv) | tm2, | ||
| integer | isd, | ||
| integer | iflg | ||
| ) |
Compute D*X . X : input variable, defined on M1 DX : output variable, defined on M2 (note: D is rectangular) RM2 : RXM2, RYM2 or RZM2 SM2 : SXM2, SYM2 or SZM2 TM2 : TXM2, TYM2 or TZM2 ISD : spatial direction (x=1,y=2,z=3) IFLG: OPGRAD (iflg=0) or OPDIV (iflg=1)
Definition at line 382 of file navier1.F90.
References copy(), ctimer::dnekclock(), and mxm().
Referenced by opdiv(), and opgrad().
Here is the call graph for this function:
Here is the caller graph for this function:| subroutine nekuf | ( | real(dp), dimension (lx1,ly1,lz1,lelv) | f1, |
| real(dp), dimension (lx1,ly1,lz1,lelv) | f2, | ||
| real(dp), dimension (lx1,ly1,lz1,lelv) | f3 | ||
| ) |
Definition at line 743 of file navier1.F90.
References parallel::lglel(), and nekasgn().
Referenced by makeuf().
Here is the call graph for this function:
Here is the caller graph for this function:| subroutine normsc | ( | real(dp) | h1, |
| real(dp) | semi, | ||
| real(dp) | l2, | ||
| real(dp) | linf, | ||
| real(dp), dimension (lx1,ly1,lz1,*), intent(in) | x, | ||
| integer | imesh | ||
| ) |
Compute error norms of a (scalar) field variable X defined on mesh 1 or mesh 2. The error norms are normalized with respect to the volume (except for Linf).
\( l2 = |x|_2 \) \( semi = \sqrt{|<x|A|x>|/V} \) where A is the stiffness matrix
Definition at line 1150 of file navier1.F90.
References axhelm(), and ctimer::dnekclock().
Referenced by unorm().
Here is the call graph for this function:
Here is the caller graph for this function:| subroutine normvc | ( | real(dp) | h1, |
| real(dp) | semi, | ||
| real(dp) | l2, | ||
| real(dp) | linf, | ||
| real(dp), dimension (lx1,ly1,lz1,lelt) | x1, | ||
| real(dp), dimension (lx1,ly1,lz1,lelt) | x2, | ||
| real(dp), dimension (lx1,ly1,lz1,lelt) | x3 | ||
| ) |
Compute error norms of a (vector) field variable (X1,X2,X3)
Definition at line 1223 of file navier1.F90.
References ctimer::dnekclock(), and ophx().
Referenced by unorm().
Here is the call graph for this function:
Here is the caller graph for this function:| subroutine opcolv | ( | real(dp), dimension(1) | a1, |
| real(dp), dimension(1) | a2, | ||
| real(dp), dimension(1) | a3, | ||
| real(dp), dimension(1) | c | ||
| ) |
Definition at line 1300 of file navier1.F90.
Referenced by setics().
Here is the caller graph for this function:| subroutine opcopy | ( | real(dp), dimension(1) | a1, |
| real(dp), dimension(1) | a2, | ||
| real(dp), dimension(1) | a3, | ||
| real(dp), dimension(1) | b1, | ||
| real(dp), dimension(1) | b2, | ||
| real(dp), dimension(1) | b3 | ||
| ) |
Definition at line 1339 of file navier1.F90.
References copy().
Referenced by lagvel(), and setics().
Here is the call graph for this function:
Here is the caller graph for this function:| subroutine opdsop | ( | real(dp), dimension(1) | a, |
| real(dp), dimension(1) | b, | ||
| real(dp), dimension(1) | c, | ||
| character(3) | op | ||
| ) |
Definition at line 1375 of file navier1.F90.
References vec_dsop().
Referenced by bcdirvc(), and bcmask().
Here is the call graph for this function:
Here is the caller graph for this function:Definition at line 1353 of file navier1.F90.
References vec_dssum().
Referenced by crespsp(), op_curl(), setdtc(), and setics().
Here is the call graph for this function:
Here is the caller graph for this function:| subroutine opgrad | ( | real(dp), dimension (lx2,ly2,lz2,nelv) | out1, |
| real(dp), dimension (lx2,ly2,lz2,nelv) | out2, | ||
| real(dp), dimension (lx2,ly2,lz2,nelv) | out3, | ||
| real(dp), dimension (lx1,ly1,lz1,nelv) | inp | ||
| ) |
Compute OUTi = Di*INP, i=1,2,3. the gradient of the scalar field INP. Note: OUTi is defined on the pressure mesh !!!
Definition at line 88 of file navier1.F90.
References multd(), mxm(), and wgradm1().
Referenced by cresvsp().
Here is the call graph for this function:
Here is the caller graph for this function:| subroutine ophx | ( | real(dp), dimension (lx1,ly1,lz1,1) | out1, |
| real(dp), dimension (lx1,ly1,lz1,1) | out2, | ||
| real(dp), dimension (lx1,ly1,lz1,1) | out3, | ||
| real(dp), dimension (lx1,ly1,lz1,1) | inp1, | ||
| real(dp), dimension (lx1,ly1,lz1,1) | inp2, | ||
| real(dp), dimension (lx1,ly1,lz1,1) | inp3, | ||
| real(dp), dimension (lx1,ly1,lz1,1) | h1, | ||
| real(dp), dimension (lx1,ly1,lz1,1) | h2 | ||
| ) |
OUT = (H1*A+H2*B) * INP.
Definition at line 585 of file navier1.F90.
References axhelm().
Referenced by cresvsp(), and normvc().
Here is the call graph for this function:
Here is the caller graph for this function:| subroutine ortho | ( | real(dp), dimension (lx2,ly2,lz2,lelv) | respr | ) |
Orthogonalize the residual in the pressure solver with respect to (1,1,...,1)T (only if all Dirichlet b.c.).
Definition at line 47 of file navier1.F90.
References exitti().
Referenced by crespsp(), hmh_gmres(), plan4(), and setics().
Here is the call graph for this function:
Here is the caller graph for this function:| subroutine setabbd | ( | real(dp), dimension(nab), intent(out) | ab, |
| real(dp), dimension(nbd), intent(in) | dtlag, | ||
| integer, intent(in) | nab, | ||
| integer, intent(in) | nbd | ||
| ) |
Compute Adams-Bashforth coefficients (order NAB, less or equal to 3). NBD .EQ. 1 Standard Adams-Bashforth coefficients NBD .GT. 1 Modified Adams-Bashforth coefficients to be used in con- junction with Backward Differentiation schemes (order NBD)
| [out] | ab | Adams-Bashforth coefficients |
| [in] | dtlag | Time-step history |
| [in] | nab | Order of AB scheme |
| [in] | nbd | Order of accompanying BDF scheme |
Definition at line 922 of file navier1.F90.
Referenced by settime().
Here is the caller graph for this function:| subroutine setbd | ( | real(dp), dimension(*), intent(out) | bd, |
| real(dp), dimension(*), intent(in) | dtbd, | ||
| integer, intent(in) | nbd | ||
| ) |
Compute backwards-difference (BDF) coefficients, order NBD.
| [out] | bd | BDF coefficients |
| [in] | dtbd | Time-step history |
| [in] | nbd | Order of BDF scheme |
Definition at line 995 of file navier1.F90.
References bdsys(), lu(), and solve().
Referenced by settime().
Here is the call graph for this function:
Here is the caller graph for this function:| subroutine setordbd | ( | ) |
Set up parameters for backward differentiation scheme.
Definition at line 1125 of file navier1.F90.
Referenced by settime().
Here is the caller graph for this function:| subroutine tauinit | ( | real(dp) | tau, |
| integer | ilag | ||
| ) |
Set initial time for subintegration.
Definition at line 1082 of file navier1.F90.
| subroutine transpose | ( | real(dp), dimension(lda,*) | a, |
| integer | lda, | ||
| real(dp), dimension(ldb,*) | b, | ||
| integer | ldb | ||
| ) |
Definition at line 1402 of file navier1.F90.
Referenced by allreduce_exec(), build_new_filter(), cr_exec(), filterq(), gen_dgl(), gen_int(), gs_aux(), hsmg_routines::h1mg_setup_semhat(), hsmg_routines::hsmg_setup_fast1d(), hsmg_routines::hsmg_setup_intp(), hsmg_routines::hsmg_setup_semhat(), main(), pw_exec(), fft::transpose_grid(), and xyzlin().
Here is the caller graph for this function:| subroutine wgradm1 | ( | real(dp), dimension(lx1,ly1,lz1,*) | ux, |
| real(dp), dimension(lx1,ly1,lz1,*) | uy, | ||
| real(dp), dimension(lx1,ly1,lz1,*) | uz, | ||
| real(dp), dimension(lxyz,*) | u, | ||
| integer | nel | ||
| ) |
Compute gradient of T – mesh 1 to mesh 1 (vel. to vel.)
Definition at line 1579 of file navier1.F90.
References i, and local_grad3().
Referenced by opgrad().
Here is the call graph for this function:
Here is the caller graph for this function:| subroutine wlaplacian | ( | real(dp), dimension(lx1,ly1,lz1,*) | out, |
| real(dp), dimension(*) | a, | ||
| real(dp), dimension(*) | diff, | ||
| integer | ifld | ||
| ) |
compute weak form of the laplacian operator including the boundary contribution
Definition at line 1634 of file navier1.F90.
References axhelm(), and bcneusc().
Referenced by makeq().
Here is the call graph for this function:
Here is the caller graph for this function:
1.8.8