params.f90 Source File


This file depends on

sourcefile~~params.f90~~EfferentGraph sourcefile~params.f90 params.f90 sourcefile~types.f90 types.f90 sourcefile~params.f90->sourcefile~types.f90

Files dependent on this one

sourcefile~~params.f90~~AfferentGraph sourcefile~params.f90 params.f90 sourcefile~prognostics.f90 prognostics.f90 sourcefile~prognostics.f90->sourcefile~params.f90 sourcefile~geometry.f90 geometry.f90 sourcefile~prognostics.f90->sourcefile~geometry.f90 sourcefile~spectral.f90 spectral.f90 sourcefile~prognostics.f90->sourcefile~spectral.f90 sourcefile~model_state.f90 model_state.f90 sourcefile~prognostics.f90->sourcefile~model_state.f90 sourcefile~model_control.f90 model_control.f90 sourcefile~prognostics.f90->sourcefile~model_control.f90 sourcefile~physical_constants.f90 physical_constants.f90 sourcefile~prognostics.f90->sourcefile~physical_constants.f90 sourcefile~diagnostics.f90 diagnostics.f90 sourcefile~prognostics.f90->sourcefile~diagnostics.f90 sourcefile~convection.f90 convection.f90 sourcefile~convection.f90->sourcefile~params.f90 sourcefile~convection.f90->sourcefile~physical_constants.f90 sourcefile~speedy.f90 speedy.f90 sourcefile~speedy.f90->sourcefile~params.f90 sourcefile~speedy.f90->sourcefile~spectral.f90 sourcefile~initialization.f90 initialization.f90 sourcefile~speedy.f90->sourcefile~initialization.f90 sourcefile~time_stepping.f90 time_stepping.f90 sourcefile~speedy.f90->sourcefile~time_stepping.f90 sourcefile~speedy.f90->sourcefile~model_state.f90 sourcefile~speedy.f90->sourcefile~model_control.f90 sourcefile~forcing.f90 forcing.f90 sourcefile~speedy.f90->sourcefile~forcing.f90 sourcefile~speedy.f90->sourcefile~diagnostics.f90 sourcefile~coupler.f90 coupler.f90 sourcefile~speedy.f90->sourcefile~coupler.f90 sourcefile~horizontal_diffusion.f90 horizontal_diffusion.f90 sourcefile~horizontal_diffusion.f90->sourcefile~params.f90 sourcefile~horizontal_diffusion.f90->sourcefile~geometry.f90 sourcefile~horizontal_diffusion.f90->sourcefile~physical_constants.f90 sourcefile~fourier.f90 fourier.f90 sourcefile~fourier.f90->sourcefile~params.f90 sourcefile~fourier.f90->sourcefile~geometry.f90 sourcefile~legendre.f90 legendre.f90 sourcefile~fourier.f90->sourcefile~legendre.f90 sourcefile~geometry.f90->sourcefile~params.f90 sourcefile~geometry.f90->sourcefile~physical_constants.f90 sourcefile~spectral.f90->sourcefile~params.f90 sourcefile~spectral.f90->sourcefile~fourier.f90 sourcefile~spectral.f90->sourcefile~geometry.f90 sourcefile~spectral.f90->sourcefile~physical_constants.f90 sourcefile~implicit.f90 implicit.f90 sourcefile~implicit.f90->sourcefile~params.f90 sourcefile~implicit.f90->sourcefile~horizontal_diffusion.f90 sourcefile~implicit.f90->sourcefile~geometry.f90 sourcefile~implicit.f90->sourcefile~physical_constants.f90 sourcefile~shortwave_radiation.f90 shortwave_radiation.f90 sourcefile~shortwave_radiation.f90->sourcefile~params.f90 sourcefile~shortwave_radiation.f90->sourcefile~geometry.f90 sourcefile~shortwave_radiation.f90->sourcefile~model_state.f90 sourcefile~mod_radcon.f90 mod_radcon.f90 sourcefile~shortwave_radiation.f90->sourcefile~mod_radcon.f90 sourcefile~boundaries.f90 boundaries.f90 sourcefile~boundaries.f90->sourcefile~params.f90 sourcefile~boundaries.f90->sourcefile~model_state.f90 sourcefile~boundaries.f90->sourcefile~physical_constants.f90 sourcefile~legendre.f90->sourcefile~params.f90 sourcefile~legendre.f90->sourcefile~geometry.f90 sourcefile~legendre.f90->sourcefile~physical_constants.f90 sourcefile~initialization.f90->sourcefile~params.f90 sourcefile~initialization.f90->sourcefile~prognostics.f90 sourcefile~initialization.f90->sourcefile~boundaries.f90 sourcefile~geopotential.f90 geopotential.f90 sourcefile~initialization.f90->sourcefile~geopotential.f90 sourcefile~sea_model.f90 sea_model.f90 sourcefile~initialization.f90->sourcefile~sea_model.f90 sourcefile~initialization.f90->sourcefile~time_stepping.f90 sourcefile~initialization.f90->sourcefile~model_state.f90 sourcefile~initialization.f90->sourcefile~model_control.f90 sourcefile~initialization.f90->sourcefile~forcing.f90 sourcefile~initialization.f90->sourcefile~coupler.f90 sourcefile~sppt.f90 sppt.f90 sourcefile~sppt.f90->sourcefile~params.f90 sourcefile~sppt.f90->sourcefile~spectral.f90 sourcefile~sppt.f90->sourcefile~legendre.f90 sourcefile~sppt.f90->sourcefile~physical_constants.f90 sourcefile~vertical_diffusion.f90 vertical_diffusion.f90 sourcefile~vertical_diffusion.f90->sourcefile~params.f90 sourcefile~vertical_diffusion.f90->sourcefile~physical_constants.f90 sourcefile~geopotential.f90->sourcefile~params.f90 sourcefile~geopotential.f90->sourcefile~geometry.f90 sourcefile~geopotential.f90->sourcefile~model_state.f90 sourcefile~geopotential.f90->sourcefile~physical_constants.f90 sourcefile~land_model.f90 land_model.f90 sourcefile~land_model.f90->sourcefile~params.f90 sourcefile~land_model.f90->sourcefile~boundaries.f90 sourcefile~interpolation.f90 interpolation.f90 sourcefile~land_model.f90->sourcefile~interpolation.f90 sourcefile~land_model.f90->sourcefile~model_state.f90 sourcefile~interpolation.f90->sourcefile~params.f90 sourcefile~tendencies.f90 tendencies.f90 sourcefile~tendencies.f90->sourcefile~params.f90 sourcefile~tendencies.f90->sourcefile~geometry.f90 sourcefile~tendencies.f90->sourcefile~spectral.f90 sourcefile~tendencies.f90->sourcefile~implicit.f90 sourcefile~tendencies.f90->sourcefile~geopotential.f90 sourcefile~tendencies.f90->sourcefile~model_state.f90 sourcefile~physics.f90 physics.f90 sourcefile~tendencies.f90->sourcefile~physics.f90 sourcefile~tendencies.f90->sourcefile~physical_constants.f90 sourcefile~sea_model.f90->sourcefile~params.f90 sourcefile~sea_model.f90->sourcefile~boundaries.f90 sourcefile~sea_model.f90->sourcefile~interpolation.f90 sourcefile~sea_model.f90->sourcefile~model_state.f90 sourcefile~sea_model.f90->sourcefile~mod_radcon.f90 sourcefile~sea_model.f90->sourcefile~model_control.f90 sourcefile~sea_model.f90->sourcefile~physical_constants.f90 sourcefile~time_stepping.f90->sourcefile~params.f90 sourcefile~time_stepping.f90->sourcefile~horizontal_diffusion.f90 sourcefile~time_stepping.f90->sourcefile~spectral.f90 sourcefile~time_stepping.f90->sourcefile~implicit.f90 sourcefile~time_stepping.f90->sourcefile~tendencies.f90 sourcefile~time_stepping.f90->sourcefile~model_state.f90 sourcefile~time_stepping.f90->sourcefile~physical_constants.f90 sourcefile~model_state.f90->sourcefile~params.f90 sourcefile~model_state.f90->sourcefile~horizontal_diffusion.f90 sourcefile~model_state.f90->sourcefile~geometry.f90 sourcefile~model_state.f90->sourcefile~spectral.f90 sourcefile~model_state.f90->sourcefile~implicit.f90 sourcefile~mod_radcon.f90->sourcefile~params.f90 sourcefile~model_control.f90->sourcefile~params.f90 sourcefile~physics.f90->sourcefile~params.f90 sourcefile~physics.f90->sourcefile~convection.f90 sourcefile~physics.f90->sourcefile~geometry.f90 sourcefile~physics.f90->sourcefile~spectral.f90 sourcefile~physics.f90->sourcefile~shortwave_radiation.f90 sourcefile~physics.f90->sourcefile~sppt.f90 sourcefile~physics.f90->sourcefile~vertical_diffusion.f90 sourcefile~physics.f90->sourcefile~sea_model.f90 sourcefile~physics.f90->sourcefile~model_state.f90 sourcefile~longwave_radiation.f90 longwave_radiation.f90 sourcefile~physics.f90->sourcefile~longwave_radiation.f90 sourcefile~surface_fluxes.f90 surface_fluxes.f90 sourcefile~physics.f90->sourcefile~surface_fluxes.f90 sourcefile~humidity.f90 humidity.f90 sourcefile~physics.f90->sourcefile~humidity.f90 sourcefile~physics.f90->sourcefile~physical_constants.f90 sourcefile~large_scale_condensation.f90 large_scale_condensation.f90 sourcefile~physics.f90->sourcefile~large_scale_condensation.f90 sourcefile~longwave_radiation.f90->sourcefile~params.f90 sourcefile~longwave_radiation.f90->sourcefile~mod_radcon.f90 sourcefile~longwave_radiation.f90->sourcefile~physical_constants.f90 sourcefile~forcing.f90->sourcefile~params.f90 sourcefile~forcing.f90->sourcefile~shortwave_radiation.f90 sourcefile~forcing.f90->sourcefile~land_model.f90 sourcefile~forcing.f90->sourcefile~model_state.f90 sourcefile~forcing.f90->sourcefile~mod_radcon.f90 sourcefile~forcing.f90->sourcefile~model_control.f90 sourcefile~forcing.f90->sourcefile~longwave_radiation.f90 sourcefile~forcing.f90->sourcefile~surface_fluxes.f90 sourcefile~forcing.f90->sourcefile~humidity.f90 sourcefile~forcing.f90->sourcefile~physical_constants.f90 sourcefile~speedy_driver.f90 speedy_driver.f90 sourcefile~speedy_driver.f90->sourcefile~params.f90 sourcefile~speedy_driver.f90->sourcefile~prognostics.f90 sourcefile~speedy_driver.f90->sourcefile~speedy.f90 sourcefile~speedy_driver.f90->sourcefile~initialization.f90 sourcefile~speedy_driver.f90->sourcefile~model_state.f90 sourcefile~speedy_driver.f90->sourcefile~model_control.f90 sourcefile~surface_fluxes.f90->sourcefile~params.f90 sourcefile~surface_fluxes.f90->sourcefile~geometry.f90 sourcefile~surface_fluxes.f90->sourcefile~mod_radcon.f90 sourcefile~surface_fluxes.f90->sourcefile~humidity.f90 sourcefile~surface_fluxes.f90->sourcefile~physical_constants.f90 sourcefile~humidity.f90->sourcefile~params.f90 sourcefile~physical_constants.f90->sourcefile~params.f90 sourcefile~diagnostics.f90->sourcefile~params.f90 sourcefile~diagnostics.f90->sourcefile~spectral.f90 sourcefile~large_scale_condensation.f90->sourcefile~params.f90 sourcefile~large_scale_condensation.f90->sourcefile~physical_constants.f90 sourcefile~coupler.f90->sourcefile~land_model.f90 sourcefile~coupler.f90->sourcefile~sea_model.f90 sourcefile~coupler.f90->sourcefile~model_state.f90 sourcefile~coupler.f90->sourcefile~model_control.f90

Contents

Source Code


Source Code

!> author: Sam Hatfield, Fred Kucharski, Franco Molteni
!  date: 04/07/2019
!  For storing and initializing model parameters.
module params
    use types, only : p

    implicit none

    private
    public trunc, ix, iy, il, kx, nx, mx, ntr, t_levs, aux_dim
    public nsteps, iseasc, nstrad, sppt_on, delt, rob, wil, alph

    ! =========================================================================
    ! Constant parameters
    ! =========================================================================

    ! Model geometry parameters
    integer, parameter :: trunc = 30   !! Spectral truncation total wavenumber
    integer, parameter :: ix = 96      !! Number of longitudes
    integer, parameter :: iy = 24      !! Number of latitudes in hemisphere
    integer, parameter :: il = 2 * iy    !! Number of latitudes in full sphere
    integer, parameter :: kx = 8       !! Number of vertical levels
    integer, parameter :: nx = trunc + 2 !! Number of total wavenumbers for spectral storage arrays
    integer, parameter :: mx = trunc + 1 !! Number of zonal wavenumbers for spectral storage arrays
    integer, parameter :: ntr = 1      !! Number of tracers (specific humidity is considered a
    !! tracer)

    integer, parameter :: t_levs = 2   !! Number of time levels for the variable.
    integer, parameter :: aux_dim = 3  !! Auxiliary dimension: 1:land, 2:sea, 3: weighted average

    ! Time stepping parameters
    integer, parameter :: nsteps = 36           !! Number of time steps in one day. Must be an even number?
    real(p), parameter :: delt = 86400.0 / nsteps !! Time step in seconds
    real(p), parameter :: rob = 0.05            !! Damping factor in Robert time filter
    real(p), parameter :: wil = 0.53            !! Parameter of Williams filter
    real(p), parameter :: alph = 0.5            !! Coefficient for semi-implicit computations
    !! 0 -> forward step for gravity wave terms,
    !! 1 -> backward implicit, 0.5 -> centered
    !! implicit

    ! Physics parameters
    integer, parameter :: iseasc = 1        !! Seasonal cycle flag (0=no, 1=yes)
    integer, parameter :: nstrad = 3        !! Period (number of steps) for shortwave radiation
    logical, parameter :: sppt_on = .false. !! Turn on SPPT?

end module