⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 radinp.f90

📁 CCSM Research Tools: Community Atmosphere Model (CAM)
💻 F90
字号:
#include <misc.h>#include <params.h>subroutine radinp(lchnk   ,ncol    ,                            &                  pmid    ,pint    ,o3vmr   , pmidrd  ,&                  pintrd  ,eccf    ,o3mmr   )!----------------------------------------------------------------------- ! ! Purpose: ! Set latitude and time dependent arrays for input to solar! and longwave radiation.! Convert model pressures to cgs, and compute ozone mixing ratio, needed for! the solar radiation.! ! Method: ! <Describe the algorithm(s) used in the routine.> ! <Also include any applicable external references.> ! ! Author: CCM1, CMS Contact J. Kiehl! !-----------------------------------------------------------------------   use precision   use ppgrid   use shr_orb_mod   use time_manager, only: get_curr_calday   implicit none#include <crdcon.h>#include <comsol.h>!------------------------------Arguments--------------------------------!! Input arguments!   integer, intent(in) :: lchnk                ! chunk identifier   integer, intent(in) :: ncol                 ! number of atmospheric columns   real(r8), intent(in) :: pmid(pcols,pver)    ! Pressure at model mid-levels (pascals)   real(r8), intent(in) :: pint(pcols,pverp)   ! Pressure at model interfaces (pascals)   real(r8), intent(in) :: o3vmr(pcols,pver)   ! ozone volume mixing ratio!! Output arguments!   real(r8), intent(out) :: pmidrd(pcols,pver)  ! Pressure at mid-levels (dynes/cm*2)   real(r8), intent(out) :: pintrd(pcols,pverp) ! Pressure at interfaces (dynes/cm*2)   real(r8), intent(out) :: eccf                ! Earth-sun distance factor   real(r8), intent(out) :: o3mmr(pcols,pver)   ! Ozone mass mixing ratio!!---------------------------Local variables-----------------------------!   integer i                ! Longitude loop index   integer k                ! Vertical loop index   real(r8) :: calday           ! current calendar day   real(r8) amd                 ! Effective molecular weight of dry air (g/mol)   real(r8) amo                 ! Molecular weight of ozone (g/mol)   real(r8) vmmr                ! Ozone volume mixing ratio   real(r8) delta               ! Solar declination angle   save     amd   ,amo   data amd   /  28.9644   /   data amo   /  48.0000   /!!-----------------------------------------------------------------------!   calday = get_curr_calday()   call shr_orb_decl (calday  ,eccen     ,mvelpp  ,lambm0  ,obliqr  , &                      delta   ,eccf)!! Convert pressure from pascals to dynes/cm2!   do k=1,pver      do i=1,ncol         pmidrd(i,k) = pmid(i,k)*10.0         pintrd(i,k) = pint(i,k)*10.0      end do   end do   do i=1,ncol      pintrd(i,pverp) = pint(i,pverp)*10.0   end do!! Convert ozone volume mixing ratio to mass mixing ratio:!   vmmr = amo/amd   do k=1,pver      do i=1,ncol         o3mmr(i,k) = vmmr*o3vmr(i,k)      end do   end do!   returnend subroutine radinp

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -