Child pages
  • Superparameterized CAM (SPCAM)
Skip to end of metadata
Go to start of metadata

Superparameterized CAM (SPCAM) 

SPCAM implements a 2D cloud resolving model (the System for Atmospheric Modeling SAM, Version 6.8.2) in CAM5.2 to replace its conventional parameterization for moist convection and large-scale condensation. Two different sets are provided. SAM1MOM use one moment SAM microphysics, and is based on Khairoutdinov and Randall (2001). M2005 uses two moment microphysics from Morrison et al 2005, and its implementation is based on Wang et al. (2011a; 2011b). In M2005, Explicit-Cloud-Parameterized-Pollutant (ECPP) approach is used to treat cloud processing of aerosols with statistics of cloud properties resolved by the cloud resolving model (Gustafson et al., 2008).

     Gustafson, W. I., L. K. Berg, R. C. Easter, and S. J. Ghan (2008), The Explicit-Cloud Parameterized-Pollutant hybrid approach for aerosol-cloud interactions in multiscale modeling framework models: tracer transport results, Environ Res Lett, 3(2), 025005.

     Khairoutdinov, M. F., and D. A. Randall (2001), A cloud resolving model as a cloud parameterization in the NCAR Community Climate System Model: Preliminary results, Geophys Res Lett, 28(18), 3617-3620.

     Wang, M., et al. (2011a), The multi-scale aerosol-climate model PNNL-MMF: model description and evaluation, Geosci. Model Dev., 4(1), 137--168, doi:10.5194/gmd-4-137-2011.

     Wang, M., S. Ghan, M. Ovchinnikov, X. Liu, R. Easter, E. Kassianov, Y. Qian, and H. Morrison (2011b), Aerosol indirect effects in a multi-scale aerosol-climate model PNNL-MMF, Atmos. Chem. Phys., 11(11), 5431-5455.

     Morrison, H., Curry, J. A., & Khvorostyanov, V. I. (2005). A new double-moment microphysics parameterization for application in cloud and climate models. Part I: Description. Journal of the atmospheric sciences, 62(6), 1665-1677.


VERSION on CAM trunk as of cam5_4_76

One compset:

  • FSPCAMS settings:  -rad camrt -chem trop_bam -spcam_nx 16 -spcam_ny 1 -spcam_dx 4000 -spcam_dt 20 -phys spcam_sam1mom 

New configure parameters:

  • -phys options: spcam_sam1mom or spcam_m2005:  Turns on SPCAM using either sam1mom or m2005  (NOTE - m2005 is disabled in configure until it's scientific validation is complete)
  • -spcam_clubb_sgs:  Turn on SPCAM version of CLUBB (note that this version of CLUBB is an older version of CLUBB than the default version in CAM)
  • -spcam_nx <n>:  SPCAM's x-grid - defaults to 4 (note the CRM requires spcam_nx to be greater than 4
  • -spcam_ny <n>: SPCAM's y-grid - defaults to 1
  • -spcam_nz <n>: SPCAM's z-grid - defaults to 1
  • -spcam_dx <n>: SPCAM's horizontal grid spacing
  • -spcam_dt <n>: SPCAM's timestep



  • ECPP is automatically turned on when using spcam_m2005 and is no longer controlled by a configure flag
  • The version of CLUBB used by SPCAM is different (and older) than the version used by regular CAM.  It may be turned on in both the spcam_sam1mom and spcam_m2005 configurations.



Two compsets:

  • F_2000_SPCAM_sam1mom   settings: -rad camrt -chem trop_bam -phys cam4 -use_SPCAM -crm_nx 32 -crm_ny 1 -crm_nz 24 -nlev 26 -crm_dx 4000 -crm_dt 20 -SPCAM_microp_scheme sam1mom
  • F_2000_SPCAM_m2005        settings: -rad rrtmg -chem trop_mam3 -use_SPCAM -crm_nx 32 -crm_ny 1 -crm_nz 28 -crm_dx 4000 -crm_dt 20 -SPCAM_microp_scheme m2005 -use_ECPP CAM_NAMELIST_OPTS=”dust_emis_fact=0.50”

(dust_emis_fact = 0.50 in this compset, as the default 4.2 produces too little dust)

New configure parameters:

  • -use_SPCAM Build superparameterized CAM
  • -crm_nx <n> CRM's x-grid
  • -crm_ny <n> CRM's y-grid
  • -crm_nz <n> CRM's z-grid
  • -crm_dx <n> CRM's horizontal grid spacing
  • -crm_dt <n> CRM's timestep
  • -SPCAM_microp_scheme <string> CRM microphysics package [sam1mom|m2005]
  • -use_ECPP   use CRM clouds for vertical transport, aqueous chemistry and wet removal of aerosols
  • -clubb_crm  CRM with CLUBB treatment (not supported yet)


  • Only dycores supported in SPCAM are Semi-Lagrangian, Finite-Volume and CAM-SE(homme)
  • The code has been tested in several configurations. CAM5 m2005 30 level has been tested at 4x5 and 1.9x2.5 resolution (FV dynamical core) and performs scientifically similar to Wang et al. (2011a; 2011b). This is the recommended configuration for this release. sam1mom works only with CAM4 at this time: 26 level and 30 level 4x5  and 1.9x2.5 are working.

Bug -  description and fix

GCM and radiation time step mismatch

Description: In SPCAM, radiative transfer is calculated at every GCM time step (typically 600 seconds). This is achieved by setting dosw=.true. and dolw=.true. in the subroutine of radiation_tend in radiation.F90. However, the frequency of updating surface albedo is controlled through the function of radiation_do from radiation.F90. radiation_do is determined by iradsw (the frequency of shortwave radiation calculation) and iradlw (the frequency of long wave radiation calculation). The default frequency of shortwave and long wave calculation is one hour. In SPCAM5, the default values of iradsw and iradlw are not changed. Therefore surface albedo is updated every one hour, while radiation is calculated at every GCM time step. This causes some mismatch between surface albedo and radiative transfer calculation. In the worst scenario, this can cause the model to crash. This is because some nightly land grids can have surface albedo exceeding 1.0, which can then cause problems in shortwave radiation calculation. 

Temporary Fix: To fix this, we need to have radiation_do to be true at every GCM time step. The suggested fix is to add the following lines to the subroutine of radiation_init in radiation.F90:

   call phys_getopts( use_SPCAM_out  = use_SPCAM )
   if(use_SPCAM) then
     iradsw = 1
     iradlw = 1
   end if

This will tell the model to do radiation every GCM time step. radiation_do will then always return .true., which will update surface albedo at every GCM time step. The suggested fix works for both rrtmg and camrt radiation. Please note that adding these lines in radiation_setopts does not work, as use_SPCAM has not been defined yet before the call to radiation_setopts

Permanent fix will be implemented in the namelist in next release

Current Benchmarks

CAM4 single-moment microphysics simulations on Yellowstone

  • 1.9x2.5 FV with 26 vertical levels
  • 2 nodes --> 64 total processors
  • 60 adjusted core hours for 10 simulated days

        ==> 6 ACH / sim day

CAM5 double-moment microphysics on Yellowstone:

  • 1.9x2.5 FV with 26 vertical levels
  • 2 nodes --> 64 total processors
  • ~38 adjusted core hours for 2 simulated days

       ==> 19 ACH / sim day --> more than 3 times slower than single-moment

History File Diagnostics

Available CRM level history file diagnostics

1) CRM-level variables

  • CRM_U = CRM x-wind (m/s)
  • CRM_V = CRM y-wind (m/s)
  • CRM_W = CRM z-wind (m/s)
  • CRM_T = CRM Temperature (K)
  • CRM_QV = CRM Water Vapor Mixing Ratio (kg/kg)
  • CRM_QC = CRM Cloud Water Mixing Ratio (kg/kg)
  • CRM_QI = CRM Cloud Ice Mixing Ratio (kg/kg)
  • CRM_QPC = CRM Precipitating Water Mixing Ratio (kg/kg)
  • CRM_QPI = CRM Precipitating Ice Mixing Ratio (kg/kg)
  • CRM_PREC = CRM Precipitation Rate (m/s)
  • CRM_QRS = CRM Shortwave Radiative Heating Rate (K/s)
  • CRM_QRL = CRM Longwave Radiative Heating Rate (K/s)
  • CRM_SHF = CRM Sensible Heat Flux (W/m2)
  • CRM_LHF = CRM Latent Heat Flux (W/m2)

       ** M2005 microphysics scheme only **

  • CRM_FLIQ = Frequency of occurrence of liquid (-)
  • CRM_FICE = Frequency of occurrence of ice (-)
  • CRM_FRAIN = Frequency of occurrence of rain (-)
  • CRM_FSNOW = Frequency of occurrence of snow (-)
  • CRM_FGRAP = Frequency of occurrence of graupel (-)
  • CRM_QS = CRM Snow Mixing Ratio (kg/kg)
  • CRM_QG = CRM Graupel Mixing Ratio (kg/kg)
  • CRM_QR = CRM Rain Mixing Ratio (kg/kg)
  • CRM_NC = CRM Cloud Water Droplet Number (/kg)
  • CRM_NI = CRM Cloud Ice Crystal Number (/kg)
  • CRM_NS = CRM Snow Particle Number (/kg)
  • CRM_NG = CRM Graupel Particle Number (/kg)
  • CRM_NR = CRM Rain Particle Number (/kg)

2) GCM-level SPCAM variables

  • SPDT = Temperature tendency due to CRM (K/s)
  • SPDQ = Water vapor mixing ratio tendency due to CRM (kg/kg/s)
  • SPDQC = Cloud water mixing ratio tendency due to CRM (kg/kg/s)
  • SPDQI = Cloud ice mixing ratio tendency due to CRM (kg/kg/s)
  • SPMC = Total mass flux from CRM (kg/m2/s)
  • SPMCUP = Updraft mass flux from CRM (kg/m2/s)
  • SPMCDN = Downdraft mass flux from CRM (kg/m2/s)
  • SPMCUUP = Unsaturated updraft mass flux from CRM (kg/m2/s)
  • SPMCUDN = Unsaturated downdraft mass flux from CRM (kg/m2/s)
  • SPQC = Cloud water mixing ratio from CRM (kg/kg)
  • SPQI = Cloud ice mixing ratio from CRM (kg/kg)
  • SPQS = Snow mixing ratio from CRM (kg/kg)
  • SPQG = Graupel mixing ratio from CRM (kg/kg)
  • SPQR = Rain mixing ratio from CRM (kg/kg)
  • SPQTFLX = Non-precipitating water flux from CRM (kg/m2/s)
  • SPUFLX = x-momentum flux from CRM (m2/s2)
  • SPVFLX = y-momentum flux from CRM (m2/s2)
  • SPQTFLXS = Subgrid scale non-precipitating water flux from CRM (kg/m2/s)
  • SPTKE = Total turbulent kinetic energy in CRM (kg/m2/s)
  • SPTKES = Subgrid scale turbulent kinetic energy in CRM (kg/m2/s)
  • SPTK = Subgrid scale TK in CRM (m2/s)
  • SPQPFLX = Precipitating water flux from CRM (kg/m2/s)
  • SPPFLX = Precipitation flux from CRM (m/s)
  • SPQTLS = Large-scale vapor tendency from CRM (kg/kg/s)
  • SPQTTR = Non-precipitating water transport from CRM (kg/kg/s)
  • SPQPTR = Precipitating water transport from CRM (kg/kg/s)
  • SPQPEVP = Precipitating water evaporation from CRM (kg/kg/s)
  • SPQPFALL = Precipitating water fallout from CRM (kg/kg/s)
  • SPQPSRC = Precipitating water source from CRM (kg/kg/s)
  • SPTLS = Large-scale LIWSE tendency from CRM (kg/kg/s)

      ** M2005 microphysics scheme only **

  • SPNC = Cloud water droplet number from CRM (/kg)
  • SPNI = Cloud ice crystal number from CRM (/kg)
  • SPNS = Snow particle number from CRM (/kg)
  • SPNG = Graupel particle number from CRM (/kg)
  • SPNR = Rain particle number from CRM (/kg)
  • No labels