subroutine Radiation_bs1998_init
!
! 初期化ルーチン: BS1998 で用いられている熱強制を用いる
!
!暗黙の型宣言禁止
implicit none
!内部変数
integer :: k !ループ変数
allocate( xyz_PTempRadBS1998(imin:imax, jmin:jmax, kmin:kmax) )
allocate( xyz_ExnerRadBS1998(imin:imax, jmin:jmax, kmin:kmax) )
! 温位の放射強制項.
! BS1998 で用いられている熱強制のプロファイルを用いる
!
do k = kmin, kmax
xyz_PTempRadBS1998(:,:,k) = cal_Qsub( z_Z(k) ) / CpDry / xyz_DensBZ(:,:,k) / xyz_ExnerBZ(:,:,k)
end do
xyz_ExnerRadBS1998 = xyz_DExnerDt_xyz( xyz_PTempRadBS1998 )
! Output
!
call HistoryAutoAddVariable( varname='PTempRad', dims=(/'x','y','z','t'/), longname='Radiation term of potential temperature', units='K.s-1', xtype='double')
call HistoryAutoAddVariable( varname='ExnerRad', dims=(/'x','y','z','t'/), longname='Radiation term of Exner function', units='K.s-1', xtype='double')
end subroutine Radiation_bs1998_init