18 public :: fv3jedi_traj
34 type(fv3jedi_traj) :: self
36 call allocate_traj(self,state%isc,state%iec,state%jsc,state%jec,state%npz,&
37 model%fv3jedi_lm%conf%hydrostatic,model%fv3jedi_lm%conf%do_phy_mst)
44 self%delp = state%delp
50 if (.not. model%fv3jedi_lm%conf%hydrostatic)
then 52 self%delz = state%delz
55 if (model%fv3jedi_lm%conf%do_phy_mst /= 0)
then 58 self%cfcn = state%cfcn
61 self%phis = state%phis
62 self%frocean = state%frocean
63 self%frland = state%frland
64 self%varflt = state%varflt
65 self%ustar = state%ustar
66 self%bstar = state%bstar
67 self%zpbl = state%zpbl
71 self%kcbl = state%kcbl
83 type(fv3jedi_traj),
pointer :: self
94 type(fv3jedi_traj),
intent(in) :: self
95 real(c_double),
intent(inout) :: pminmax(3,11)
97 real(kind=kind_real) :: zz
99 pminmax = 0.0_kind_real
102 pminmax(1,1)=minval(self%u(:,:,:))
103 pminmax(2,1)=maxval(self%u(:,:,:))
104 pminmax(3,1)=sqrt(sum(self%u(:,:,:)**2)/zz)
107 pminmax(1,2)=minval(self%v(:,:,:))
108 pminmax(2,2)=maxval(self%v(:,:,:))
109 pminmax(3,2)=sqrt(sum(self%v(:,:,:)**2)/zz)
112 pminmax(1,3)=minval(self%t(:,:,:))
113 pminmax(2,3)=maxval(self%t(:,:,:))
114 pminmax(3,3)=sqrt(sum(self%t(:,:,:)**2)/zz)
117 pminmax(1,4)=minval(self%delp(:,:,:))
118 pminmax(2,4)=maxval(self%delp(:,:,:))
119 pminmax(3,4)=sqrt(sum(self%delp(:,:,:)**2)/zz)
122 pminmax(1,5)=minval(self%qv(:,:,:))
123 pminmax(2,5)=maxval(self%qv(:,:,:))
124 pminmax(3,5)=sqrt(sum(self%qv(:,:,:)**2)/zz)
127 pminmax(1,6)=minval(self%qi(:,:,:))
128 pminmax(2,6)=maxval(self%qi(:,:,:))
129 pminmax(3,6)=sqrt(sum(self%qi(:,:,:)**2)/zz)
132 pminmax(1,7)=minval(self%ql(:,:,:))
133 pminmax(2,7)=maxval(self%ql(:,:,:))
134 pminmax(3,7)=sqrt(sum(self%ql(:,:,:)**2)/zz)
137 pminmax(1,8)=minval(self%o3(:,:,:))
138 pminmax(2,8)=maxval(self%o3(:,:,:))
139 pminmax(3,8)=sqrt(sum(self%o3(:,:,:)**2)/zz)
141 if (
allocated(self%w))
then 143 pminmax(1,9)=minval(self%w(:,:,:))
144 pminmax(2,9)=maxval(self%w(:,:,:))
145 pminmax(3,9)=sqrt(sum(self%w(:,:,:)**2)/zz)
148 if (
allocated(self%delz))
then 150 pminmax(1,10)=minval(self%delz(:,:,:))
151 pminmax(2,10)=maxval(self%delz(:,:,:))
152 pminmax(3,10)=sqrt(sum(self%delz(:,:,:)**2)/zz)
156 pminmax(1,11)=minval(self%phis(:,:))
157 pminmax(2,11)=maxval(self%phis(:,:))
158 pminmax(3,11)=sqrt(sum(self%phis(:,:)**2)/zz)
subroutine, public allocate_traj(traj, isc, iec, jsc, jec, npz, hydrostatic, dpm)
Fortran derived type to hold FV3JEDI state.
subroutine, public deallocate_traj(traj)
subroutine, public traj_wipe(self)
subroutine, public traj_prop(model, state, self)
subroutine, public traj_minmaxrms(self, pminmax)
Handle state for the FV3JEDI odel.
Fortran derived type to hold the linearized model trajectory.
Fortran derived type to hold model definition.
integer, parameter, public kind_real