CAM
cospsimulator_intr.F90 File Reference

Modules

module  cospsimulator_intr
 

Functions/Subroutines

subroutine cospsimulator_intr::setcospvalues (Nlr_in, use_vgrid_in, csat_vgrid_in, Ncolumns_in, docosp_in, cosp_nradsteps_in)
 
subroutine, public cospsimulator_intr::cospsimulator_intr_readnl (nlfile)
 
subroutine, public cospsimulator_intr::cospsimulator_intr_register
 
subroutine, public cospsimulator_intr::cospsimulator_intr_init
 
subroutine, public cospsimulator_intr::cospsimulator_intr_run (state, pbuf, cam_in, emis, coszrs, cliqwp_in, cicewp_in, cld_swtau_in, snow_tau_in, snow_emis_in)
 

Variables

logical, public cospsimulator_intr::docosp = .false.
 
integer, public cospsimulator_intr::cosp_nradsteps = 1
 
integer, parameter cospsimulator_intr::nprs_cosp = 7
 
integer, parameter cospsimulator_intr::ntau_cosp = 7
 
integer, parameter cospsimulator_intr::ntau_cosp_modis = 6
 
integer, parameter cospsimulator_intr::ndbze_cosp = 15
 
integer, parameter cospsimulator_intr::nsr_cosp = 15
 
integer, parameter cospsimulator_intr::nhtmisr_cosp = 16
 
integer, parameter cospsimulator_intr::nbnds_cosp = 2
 
integer, parameter cospsimulator_intr::nsza_cosp = 5
 
integer, parameter cospsimulator_intr::nhtml_cosp = pver
 
integer cospsimulator_intr::nscol_cosp
 
integer cospsimulator_intr::nht_cosp
 
real(r8), dimension(nprs_cosp+1), parameter cospsimulator_intr::prslim_cosp_1d = (/1000._r8, 800._r8, 680._r8, 560._r8, 440._r8,310._r8,180._r8,0._r8/)
 
real(r8), dimension(ntau_cosp+1), parameter cospsimulator_intr::taulim_cosp_1d = (/0._r8, 0.3_r8, 1.3_r8, 3.6_r8, 9.4_r8, 23._r8, 60._r8, 379._r8/)
 
real(r8), dimension(ntau_cosp_modis+1), parameter cospsimulator_intr::taulim_cosp_modis_1d = (/0.3_r8, 1.3_r8, 3.6_r8, 9.4_r8, 23._r8, 60._r8, 100000._r8/)
 
real(r8), dimension(ndbze_cosp+1), parameter cospsimulator_intr::dbzelim_cosp_1d = (/-50._r8, -45._r8, -40._r8, -35._r8, -30._r8, -25._r8, -20._r8, -15._r8, -10.0_r8, -5.0_r8, 0.0_r8, 5.0_r8, 10._r8, 15._r8, 20._r8, 25._r8/)
 
real(r8), dimension(nsr_cosp+1), parameter cospsimulator_intr::srlim_cosp_1d = (/0.01_r8, 1.2_r8, 3.0_r8, 5.0_r8, 7.0_r8, 10.0_r8, 15.0_r8, 20.0_r8, 25.0_r8, 30.0_r8, 40.0_r8, 50.0_r8, 60.0_r8, 80.0_r8, 999.0_r8, 1009.0_r8/)
 
real(r8), dimension(nhtmisr_cosp+1), parameter cospsimulator_intr::htmisrlim_cosp_1d = (/-99.0_r8, 0.0_r8, 0.5_r8, 1.0_r8, 1.5_r8, 2.0_r8, 2.5_r8, 3.0_r8, 4.0_r8, 5.0_r8, 7.0_r8, 9.0_r8, 11.0_r8, 13.0_r8, 15.0_r8, 17.0_r8, 99.0_r8/)
 
real(r8), dimension(nsza_cosp), target cospsimulator_intr::sza_cosp = (/0.0_r8, 15.0_r8, 30.0_r8, 45.0_r8, 60.0_r8/)
 
real(r8), dimension(2, nprs_cosp), target cospsimulator_intr::prslim_cosp
 
real(r8), dimension(2, ntau_cosp), target cospsimulator_intr::taulim_cosp
 
real(r8), dimension(2, ntau_cosp_modis), target cospsimulator_intr::taulim_cosp_modis
 
real(r8), dimension(2, ndbze_cosp), target cospsimulator_intr::dbzelim_cosp
 
real(r8), dimension(2, nsr_cosp), target cospsimulator_intr::srlim_cosp
 
real(r8), dimension(2, nhtmisr_cosp), target cospsimulator_intr::htmisrlim_cosp
 
real(r8), dimension(nprs_cosp), target cospsimulator_intr::prsmid_cosp
 
real(r8), dimension(ntau_cosp), target cospsimulator_intr::taumid_cosp
 
real(r8), dimension(ntau_cosp_modis), target cospsimulator_intr::taumid_cosp_modis
 
real(r8), dimension(ndbze_cosp), target cospsimulator_intr::dbzemid_cosp
 
real(r8), dimension(nsr_cosp), target cospsimulator_intr::srmid_cosp
 
real(r8), dimension(nhtmisr_cosp), target cospsimulator_intr::htmisrmid_cosp
 
real(r8), dimension(nhtml_cosp) cospsimulator_intr::htmlmid_cosp
 
integer, dimension(nprs_cosp *ntau_cosp) cospsimulator_intr::prstau_cosp
 
integer, dimension(nprs_cosp *ntau_cosp_modis) cospsimulator_intr::prstau_cosp_modis
 
integer, dimension(nhtmisr_cosp *ntau_cosp) cospsimulator_intr::htmisrtau_cosp
 
real(r8), dimension(nprs_cosp *ntau_cosp) cospsimulator_intr::prstau_prsmid_cosp
 
real(r8), dimension(nprs_cosp *ntau_cosp) cospsimulator_intr::prstau_taumid_cosp
 
real(r8), dimension(nprs_cosp *ntau_cosp_modis) cospsimulator_intr::prstau_prsmid_cosp_modis
 
real(r8), dimension(nprs_cosp *ntau_cosp_modis) cospsimulator_intr::prstau_taumid_cosp_modis
 
real(r8), dimension(nhtmisr_cosp *ntau_cosp) cospsimulator_intr::htmisrtau_htmisrmid_cosp
 
real(r8), dimension(nhtmisr_cosp *ntau_cosp) cospsimulator_intr::htmisrtau_taumid_cosp
 
real(r8), dimension(:,:), allocatable, target cospsimulator_intr::htlim_cosp
 
real(r8), dimension(:), allocatable cospsimulator_intr::htlim_cosp_1d
 
real(r8), dimension(:), allocatable, target cospsimulator_intr::htmid_cosp
 
integer, dimension(:), allocatable, target cospsimulator_intr::scol_cosp
 
integer, dimension(:), allocatable cospsimulator_intr::htdbze_cosp
 
integer, dimension(:), allocatable cospsimulator_intr::htsr_cosp
 
integer, dimension(:), allocatable cospsimulator_intr::htmlscol_cosp
 
real(r8), dimension(:), allocatable cospsimulator_intr::htdbze_htmid_cosp
 
real(r8), dimension(:), allocatable, public cospsimulator_intr::htdbze_dbzemid_cosp
 
real(r8), dimension(:), allocatable cospsimulator_intr::htsr_htmid_cosp
 
real(r8), dimension(:), allocatable cospsimulator_intr::htsr_srmid_cosp
 
real(r8), dimension(:), allocatable cospsimulator_intr::htmlscol_htmlmid_cosp
 
real(r8), dimension(:), allocatable cospsimulator_intr::htmlscol_scol_cosp
 
logical cospsimulator_intr::cosp_sample_atrain = .false.
 
character(len=256) cospsimulator_intr::cosp_atrainorbitdata
 
logical cospsimulator_intr::cosp_amwg = .false.
 
logical cospsimulator_intr::cosp_lite = .false.
 
logical cospsimulator_intr::cosp_passive = .false.
 
logical cospsimulator_intr::cosp_active = .false.
 
logical cospsimulator_intr::cosp_isccp = .false.
 
logical cospsimulator_intr::cosp_cfmip_3hr = .false.
 
logical cospsimulator_intr::cosp_cfmip_da = .false.
 
logical cospsimulator_intr::cosp_cfmip_off = .false.
 
logical cospsimulator_intr::cosp_cfmip_mon = .false.
 
logical cospsimulator_intr::cosp_lradar_sim = .false.
 
logical cospsimulator_intr::cosp_llidar_sim = .false.
 
logical cospsimulator_intr::cosp_lisccp_sim = .false.
 
logical cospsimulator_intr::cosp_lmisr_sim = .false.
 
logical cospsimulator_intr::cosp_lmodis_sim = .false.
 
logical cospsimulator_intr::cosp_histfile_aux = .false.
 
logical cospsimulator_intr::cosp_lfrac_out = .false.
 
logical cospsimulator_intr::cosp_runall = .false.
 
integer cospsimulator_intr::cosp_ncolumns = 50
 
integer cospsimulator_intr::cosp_histfile_num =1
 
integer cospsimulator_intr::cosp_histfile_aux_num =-1
 
logical cospsimulator_intr::lradar_sim = .false.
 
logical cospsimulator_intr::llidar_sim = .false.
 
logical cospsimulator_intr::lisccp_sim = .false.
 
logical cospsimulator_intr::lmisr_sim = .false.
 
logical cospsimulator_intr::lmodis_sim = .false.
 
logical cospsimulator_intr::lrttov_sim = .false.
 
logical cospsimulator_intr::lfrac_out = .false.
 
logical cospsimulator_intr::lalbisccp = .false.
 
logical cospsimulator_intr::latb532 = .false.
 
logical cospsimulator_intr::lboxptopisccp = .false.
 
logical cospsimulator_intr::lboxtauisccp = .false.
 
logical cospsimulator_intr::lcfad_dbze94 = .false.
 
logical cospsimulator_intr::lcfad_lidarsr532 = .false.
 
logical cospsimulator_intr::lclcalipso = .false.
 
logical cospsimulator_intr::lclhcalipso = .false.
 
logical cospsimulator_intr::lclisccp2 = .false.
 
logical cospsimulator_intr::lcllcalipso = .false.
 
logical cospsimulator_intr::lclmcalipso = .false.
 
logical cospsimulator_intr::lcltcalipso = .false.
 
logical cospsimulator_intr::lclcalipsoliq = .false.
 
logical cospsimulator_intr::lclcalipsoice = .false.
 
logical cospsimulator_intr::lclcalipsoun = .false.
 
logical cospsimulator_intr::lclcalipsotmp = .false.
 
logical cospsimulator_intr::lclcalipsotmpliq = .false.
 
logical cospsimulator_intr::lclcalipsotmpice = .false.
 
logical cospsimulator_intr::lclcalipsotmpun = .false.
 
logical cospsimulator_intr::lcltcalipsoliq = .false.
 
logical cospsimulator_intr::lcltcalipsoice = .false.
 
logical cospsimulator_intr::lcltcalipsoun = .false.
 
logical cospsimulator_intr::lclhcalipsoliq = .false.
 
logical cospsimulator_intr::lclhcalipsoice = .false.
 
logical cospsimulator_intr::lclhcalipsoun = .false.
 
logical cospsimulator_intr::lclmcalipsoliq = .false.
 
logical cospsimulator_intr::lclmcalipsoice = .false.
 
logical cospsimulator_intr::lclmcalipsoun = .false.
 
logical cospsimulator_intr::lcllcalipsoliq = .false.
 
logical cospsimulator_intr::lcllcalipsoice = .false.
 
logical cospsimulator_intr::lcllcalipsoun = .false.
 
logical cospsimulator_intr::lctpisccp = .false.
 
logical cospsimulator_intr::ldbze94 = .false.
 
logical cospsimulator_intr::lcltradar = .false.
 
logical cospsimulator_intr::lcltradar2 = .false.
 
logical cospsimulator_intr::ltauisccp = .false.
 
logical cospsimulator_intr::ltclisccp = .false.
 
logical cospsimulator_intr::lparasol_refl = .false.
 
logical cospsimulator_intr::lclmisr = .false.
 
logical cospsimulator_intr::lmeantbisccp = .false.
 
logical cospsimulator_intr::lmeantbclrisccp = .false.
 
logical cospsimulator_intr::lclcalipso2 = .false.
 
logical cospsimulator_intr::lcltlidarradar = .false.
 
logical cospsimulator_intr::lbeta_mol532 = .false.
 
logical cospsimulator_intr::ltoffset = .false.
 
logical cospsimulator_intr::lcltmodis = .false.
 
logical cospsimulator_intr::lclwmodis = .false.
 
logical cospsimulator_intr::lclimodis = .false.
 
logical cospsimulator_intr::lclhmodis = .false.
 
logical cospsimulator_intr::lclmmodis = .false.
 
logical cospsimulator_intr::lcllmodis = .false.
 
logical cospsimulator_intr::ltautmodis = .false.
 
logical cospsimulator_intr::ltauwmodis = .false.
 
logical cospsimulator_intr::ltauimodis = .false.
 
logical cospsimulator_intr::ltautlogmodis = .false.
 
logical cospsimulator_intr::ltauwlogmodis = .false.
 
logical cospsimulator_intr::ltauilogmodis = .false.
 
logical cospsimulator_intr::lreffclwmodis = .false.
 
logical cospsimulator_intr::lreffclimodis = .false.
 
logical cospsimulator_intr::lpctmodis = .false.
 
logical cospsimulator_intr::llwpmodis = .false.
 
logical cospsimulator_intr::liwpmodis = .false.
 
logical cospsimulator_intr::lclmodis = .false.
 
logical cospsimulator_intr::ltbrttov = .false.
 
integer, parameter cospsimulator_intr::npoints_it = 10000
 
integer cospsimulator_intr::ncolumns = 50
 
integer cospsimulator_intr::nlr = 40
 
logical cospsimulator_intr::use_vgrid = .true.
 
logical cospsimulator_intr::csat_vgrid = .true.
 
real(r8) cospsimulator_intr::radar_freq = 94.0_r8
 
integer cospsimulator_intr::surface_radar = 0
 
integer cospsimulator_intr::use_mie_tables = 0
 
integer cospsimulator_intr::use_gas_abs = 1
 
integer cospsimulator_intr::do_ray = 0
 
integer cospsimulator_intr::melt_lay = 0
 
real(r8) cospsimulator_intr::k2 = -1
 
integer, parameter cospsimulator_intr::nprmts_max_hydro = 12
 
integer, parameter cospsimulator_intr::naero = 1
 
integer, parameter cospsimulator_intr::nprmts_max_aero = 1
 
integer cospsimulator_intr::lidar_ice_type = 0
 
integer, parameter cospsimulator_intr::overlap = 3
 
integer cospsimulator_intr::isccp_topheight = 1
 
integer cospsimulator_intr::isccp_topheight_direction = 2
 
integer, parameter cospsimulator_intr::platform = 1
 
integer, parameter cospsimulator_intr::satellite = 15
 
integer, parameter cospsimulator_intr::instrument = 0
 
integer, parameter cospsimulator_intr::nchannels = 8
 
integer, dimension(nchannels), parameter cospsimulator_intr::channels = (/1,3,5,6,8,10,11,13/)
 
real(r8), dimension(nchannels), parameter cospsimulator_intr::surfem = (/0.0_r8,0.0_r8,0.0_r8,0.0_r8,0.0_r8,0.0_r8,0.0_r8,0.0_r8/)
 
real(r8), parameter cospsimulator_intr::zenang = 50._r8
 
real(r8), parameter cospsimulator_intr::co = 2.098e-07_r8
 
integer, parameter cospsimulator_intr::nhydro = 9
 
logical, dimension(:), allocatable cospsimulator_intr::first_run_cosp
 
logical, dimension(:,:), allocatable cospsimulator_intr::run_cosp
 
integer, parameter cospsimulator_intr::norbitdata = 9866324
 
real(r8), dimension(:), allocatable cospsimulator_intr::atrainlat
 
real(r8), dimension(:), allocatable cospsimulator_intr::atrainlon
 
integer, dimension(:), allocatable cospsimulator_intr::atrainday
 
integer, dimension(:), allocatable cospsimulator_intr::atrainhr
 
integer, dimension(:), allocatable cospsimulator_intr::atrainmin
 
integer, dimension(:), allocatable cospsimulator_intr::atrainsec
 
integer cospsimulator_intr::idxas = 0
 
integer cospsimulator_intr::cld_idx
 
integer cospsimulator_intr::concld_idx
 
integer cospsimulator_intr::lsreffrain_idx
 
integer cospsimulator_intr::lsreffsnow_idx
 
integer cospsimulator_intr::cvreffliq_idx
 
integer cospsimulator_intr::cvreffice_idx
 
integer cospsimulator_intr::dpcldliq_idx
 
integer cospsimulator_intr::dpcldice_idx
 
integer cospsimulator_intr::shcldliq_idx
 
integer cospsimulator_intr::shcldice_idx
 
integer cospsimulator_intr::shcldliq1_idx
 
integer cospsimulator_intr::shcldice1_idx
 
integer cospsimulator_intr::dpflxprc_idx
 
integer cospsimulator_intr::dpflxsnw_idx
 
integer cospsimulator_intr::shflxprc_idx
 
integer cospsimulator_intr::shflxsnw_idx
 
integer cospsimulator_intr::lsflxprc_idx
 
integer cospsimulator_intr::lsflxsnw_idx
 
integer cospsimulator_intr::rei_idx
 
integer cospsimulator_intr::rel_idx