The Intermediate Complexity Atmospheric Research model (ICAR)
A computationally efficient atmospheric model for downscaling.
 All Classes Files Functions Variables
Data Types List
Here are the data types with brief descriptions:
[detail level 12]
 Cadv_mpdata

The MPDATA advection scheme

 Cadv_upwind

A simple upwind advection scheme

 Cadvection

Driver to call different advection schemes

 Cboundary_conditions

Handles reading boundary conditions from the forcing file(s) Provides necessary interpolation on to the grid

 Cconvection

Driver to call different convection schemes

 Cdata_structures

Contains type definitions for a variety of model data strucutres Also defines model constants (e.g. gravity, and MAXFILELENGTH)

 Cadv_options_type
 Cbc_type
 Cdomain_type
 Cfourpos
 Cgeo_look_up_table
 Cinterpolable_type
 Clinearizable_type
 Clsm_options_type
 Clt_options_type
 Cmp_options_type
 Coptions_type
 Cphysics_type
 Cposition
 Ctendencies_type
 Cvert_look_up_table
 Cwind_type
 Cfft

Fortran interface to FFTW

 Cfftshifter

Supplies 1D and 2D FFT shift procedures ala matlab fftshift

 Cfftshift
 Cifftshift
 Cgeo

Module provides geographic interpolation procedures Various functions used for spatial interpolation from low-res forcing grid to high-res model grid

 Cinit

Model Initialization includes allocating memory for boundary and domain data structures. It reads all of the options from the namelist file (or files). It also reads in Lat/Lon and Terrain data. This module also sets up geographic (and vertical) look uptables for the forcing data Finally, there is a driver routine to initialize all model physics packages

 Cinitialize_options

Read model options from namelist structures Also checks commandline arguments to an options filename

 Cio_routines

Basic file input/output routines

 Cio_add_attribute

Generic interface to the netcdf add_attribute_TYPE routines

 Cio_read

Generic interface to the netcdf read routines

 Cio_read_attribute

Generic interface to the netcdf read_attribute_TYPE routines

 Cio_write

Generic interface to the netcdf write routines

 Cland_surface

This module provides a wrapper to call various land surface models

 Clinear_theory_lut_disk_io

Handle reading and writing Linear wind Look up tables to/from disk

 Ccheck_attribute
 Cwrite_var
 Clinear_theory_winds

This module provides the linear wind theory calculations

 Cmicrophysics

This module provides a wrapper to call various microphysics models It sets up variables specific to the physics package to be used including history variables not currently stored in the domain level data structure

 Cmodel_tracking

A tool to track model versions and print useful changes between model versions

 Cmodule_bl_ysu

YSU PBL scheme (from WRF)

 Cmodule_cu_kf

Kain-Fritsch Cumulus Scheme from WRF

 Cmodule_cu_tiedtke

Tiedtke cumulus scheme from WRF

 Cmodule_lsm_basic

Not really a land surface model, use coarse model fluxes

 Cmodule_lsm_simple

NOTE: CODE IS INCOMPLETE AND WILL NOT WORK

 Cmodule_mp_simple

Very simple microphysics code modeled after the microphysics of SB04 used in Smith and Barstad '04 (the linear model)

 Cmodule_mp_thompson

This subroutine computes the moisture tendencies of water vapor, cloud droplets, rain, cloud ice (pristine), snow, and graupel

 Cmodule_ra_simple

Very simple radiation code modeled after the description in Finch and Best(2004?) of Reiff et al. 1984 shortwave and Idso and Jackson (1969) longwave

 Cmodule_sf_noahdrv

Noah Land Surface Model online driver code (from WRF)

 Cmodule_sf_noahlsm

Noah Land Surface Model (from WRF)

 Cmodule_water_simple

Simple open water flux calculations

 Coutput

Model Output

 Cpbl_simple

Simple PBL diffusion package for ICAR

 Cplanetary_boundary_layer

This module provides a wrapper to call various PBL models It sets up variables specific to the physics package to be used including both

 Cradiation

This module provides a wrapper to call various radiation models It sets up variables specific to the physics package to be used

 Cstring

Various functions to convert a number to a string and a string to a number

 Cstr
 Ctime

date / time module

 Ctime_step

Main time stepping module. Calculates a stable time step (dt) and loops over physics calls Also updates boundaries every time step

 Cvertical_interpolation

Module to provide vertical interpolation includes setting up a vertical Look Up Table (vLUT) and performing vertical interpolation (vinterp)

 Cwind

Module to manage the ICAR wind field, including calls to linear winds importantly it also rotates the wind field into the ICAR grid and balances the U, V, and W fields for "mass" conservation