subroutine virtem(ncol ,ncold ,nver ,t ,q ,zvir , & 1,1 tv ) !----------------------------------------------------------------------- ! ! Purpose: ! Compute the virtual temperature. ! ! Method: ! <Describe the algorithm(s) used in the routine.> ! <Also include any applicable external references.> ! ! Author: B. Boville ! !----------------------------------------------------------------------- use shr_kind_mod, only: r8 => shr_kind_r8 implicit none !------------------------------Arguments-------------------------------- ! ! Input arguments ! integer, intent(in) :: ncol ! number of atmospheric columns integer, intent(in) :: ncold ! atmospheric column index dimension integer, intent(in) :: nver ! number of vertical levels in a column real(r8) t(ncold,nver) ! temperature real(r8) q(ncold,nver) ! specific humidity real(r8) zvir ! virtual temperature constant ! ! Output arguments ! real(r8), intent(out) :: tv(ncold,nver) ! virtual temperature ! !---------------------------Local storage------------------------------- ! integer i,k ! column and level indexes ! !$OMP PARALLEL DO PRIVATE (K, I) do k=1,nver do i=1,ncol tv(i,k) = t(i,k)*(1.0_r8 + zvir*q(i,k)) end do end do ! return end subroutine virtem