FE-Project
Loading...
Searching...
No Matches
scale_atm_dyn_dgm_none Module Reference

module FElib / Fluid dyn solver / Atmosphere / Regional nonhydrostatic model / Skip dynamical process More...

Functions/Subroutines

subroutine, public atm_dyn_dgm_none_init (mesh)
subroutine, public atm_dyn_dgm_none_final ()
subroutine, public atm_dyn_dgm_none_cal_tend (dens_dt, momx_dt, momy_dt, momz_dt, rhot_dt, ddens_, momx_, momy_, momz_, drhot_, dpres_, dens_hyd, pres_hyd, pres_hyd_ref, therm_hyd, coriolis, rtot, cvtot, cptot, dphyddx, dphyddy, element3d_operation, dx, dy, dz, sx, sy, sz, lift, lmesh, elem, lmesh2d, elem2d)

Detailed Description

module FElib / Fluid dyn solver / Atmosphere / Regional nonhydrostatic model / Skip dynamical process

Description
Author
Yuta Kawai, Team SCALE

Function/Subroutine Documentation

◆ atm_dyn_dgm_none_init()

subroutine, public scale_atm_dyn_dgm_none::atm_dyn_dgm_none_init ( class(meshbase3d), intent(in) mesh)

Definition at line 67 of file scale_atm_dyn_dgm_none.F90.

68 implicit none
69 class(MeshBase3D), intent(in) :: mesh
70 !--------------------------------------------
71 return

◆ atm_dyn_dgm_none_final()

subroutine, public scale_atm_dyn_dgm_none::atm_dyn_dgm_none_final

Definition at line 74 of file scale_atm_dyn_dgm_none.F90.

75 implicit none
76 !--------------------------------------------
77 return

◆ atm_dyn_dgm_none_cal_tend()

subroutine, public scale_atm_dyn_dgm_none::atm_dyn_dgm_none_cal_tend ( real(rp), dimension(elem%np,lmesh%nea), intent(out) dens_dt,
real(rp), dimension(elem%np,lmesh%nea), intent(out) momx_dt,
real(rp), dimension(elem%np,lmesh%nea), intent(out) momy_dt,
real(rp), dimension(elem%np,lmesh%nea), intent(out) momz_dt,
real(rp), dimension(elem%np,lmesh%nea), intent(out) rhot_dt,
real(rp), dimension(elem%np,lmesh%nea), intent(in) ddens_,
real(rp), dimension(elem%np,lmesh%nea), intent(in) momx_,
real(rp), dimension(elem%np,lmesh%nea), intent(in) momy_,
real(rp), dimension(elem%np,lmesh%nea), intent(in) momz_,
real(rp), dimension(elem%np,lmesh%nea), intent(in) drhot_,
real(rp), dimension(elem%np,lmesh%nea), intent(in) dpres_,
real(rp), dimension(elem%np,lmesh%nea), intent(in) dens_hyd,
real(rp), dimension(elem%np,lmesh%nea), intent(in) pres_hyd,
real(rp), dimension(elem%np,lmesh%nea), intent(in) pres_hyd_ref,
real(rp), dimension(elem%np,lmesh%nea), intent(in) therm_hyd,
real(rp), dimension(elem2d%np,lmesh2d%nea), intent(in) coriolis,
real(rp), dimension(elem%np,lmesh%nea), intent(in) rtot,
real(rp), dimension(elem%np,lmesh%nea), intent(in) cvtot,
real(rp), dimension(elem%np,lmesh%nea), intent(in) cptot,
real(rp), dimension(elem%np,lmesh%nea), intent(in) dphyddx,
real(rp), dimension(elem%np,lmesh%nea), intent(in) dphyddy,
class(elementoperationbase3d), intent(in) element3d_operation,
type(sparsemat), intent(in) dx,
type(sparsemat), intent(in) dy,
type(sparsemat), intent(in) dz,
type(sparsemat), intent(in) sx,
type(sparsemat), intent(in) sy,
type(sparsemat), intent(in) sz,
type(sparsemat), intent(in) lift,
class(localmesh3d), intent(in) lmesh,
class(elementbase3d), intent(in) elem,
class(localmesh2d), intent(in) lmesh2d,
class(elementbase2d), intent(in) elem2d )

Definition at line 83 of file scale_atm_dyn_dgm_none.F90.

90
91 implicit none
92
93 class(LocalMesh3D), intent(in) :: lmesh
94 class(ElementBase3D), intent(in) :: elem
95 class(LocalMesh2D), intent(in) :: lmesh2D
96 class(ElementBase2D), intent(in) :: elem2D
97 class(ElementOperationBase3D), intent(in) :: element3D_operation
98 type(SparseMat), intent(in) :: Dx, Dy, Dz, Sx, Sy, Sz, Lift
99 real(RP), intent(out) :: DENS_dt(elem%Np,lmesh%NeA)
100 real(RP), intent(out) :: MOMX_dt(elem%Np,lmesh%NeA)
101 real(RP), intent(out) :: MOMY_dt(elem%Np,lmesh%NeA)
102 real(RP), intent(out) :: MOMZ_dt(elem%Np,lmesh%NeA)
103 real(RP), intent(out) :: RHOT_dt(elem%Np,lmesh%NeA)
104 real(RP), intent(in) :: DDENS_(elem%Np,lmesh%NeA)
105 real(RP), intent(in) :: MOMX_(elem%Np,lmesh%NeA)
106 real(RP), intent(in) :: MOMY_(elem%Np,lmesh%NeA)
107 real(RP), intent(in) :: MOMZ_(elem%Np,lmesh%NeA)
108 real(RP), intent(in) :: DRHOT_(elem%Np,lmesh%NeA)
109 real(RP), intent(in) :: DPRES_(elem%Np,lmesh%NeA)
110 real(RP), intent(in) :: DENS_hyd(elem%Np,lmesh%NeA)
111 real(RP), intent(in) :: PRES_hyd(elem%Np,lmesh%NeA)
112 real(RP), intent(in) :: PRES_hyd_ref(elem%Np,lmesh%NeA)
113 real(RP), intent(in) :: THERM_hyd(elem%Np,lmesh%NeA)
114 real(RP), intent(in) :: CORIOLIS(elem2D%Np,lmesh2D%NeA)
115 real(RP), intent(in) :: Rtot(elem%Np,lmesh%NeA)
116 real(RP), intent(in) :: CVtot(elem%Np,lmesh%NeA)
117 real(RP), intent(in) :: CPtot(elem%Np,lmesh%NeA)
118 real(RP), intent(in) :: DPhydDx(elem%Np,lmesh%NeA)
119 real(RP), intent(in) :: DPhydDy(elem%Np,lmesh%NeA)
120
121 integer :: ke
122 !------------------------------------------------------------------------
123
124 call prof_rapstart('cal_dyn_tend_interior', 3)
125
126 !$omp parallel do private( ke )
127 do ke = lmesh%NeS, lmesh%NeE
128 dens_dt(:,ke) = 0.0_rp
129 momx_dt(:,ke) = 0.0_rp
130 momy_dt(:,ke) = 0.0_rp
131 momz_dt(:,ke) = 0.0_rp
132 rhot_dt(:,ke) = 0.0_rp
133 end do
134 call prof_rapend('cal_dyn_tend_interior', 3)
135
136 return