1. Atmospheric Circulation

1.1. Reanalysis

1.1.1. ECMWF

ERA-Interim is computed by ECMWF and is available starting from 1979. ERA5 is the latest reanalysis computed by ECMWF offering much higher spatial and temporal resolution and is available starting from 1950. Differences between ERA-Interim and ERA5 are outlined here. ERA-Interim outputs are downloaded using the ecmwf_reanalysis_retrieve.py program following the ecmwf-api-client documentation. ERA5 outputs are downloaded using the cds_reanalysis_retrieve.py program following the cdsapi documentation.

1.1.2. MERRA-2

NASA’s Modern-Era Retrospective analysis for Research and Applications (MERRA-2) is computed by the Global Modeling and Assimilation Office (GMAO) and is available starting from 1980. MERRA-2 outputs are downloaded using the gesdisc_merra_download.py or gesdisc_merra_monthly.py programs.

1.1.3. NCEP

NCEP-DOE-2 is computed by the National Centers for Environmental Prediction (NCEP) and is available starting from 1979. NCEP-DOE-2 outputs are downloaded using the noaa_cdc_ncep_ftp.py program. NCEP-CFSR is computed by the National Centers for Environmental Prediction (NCEP) and is available starting from 1979 with Version 2 available from 2011 onward. NCEP-CFSR outputs are downloaded using the ucar_rda_cfsr_surface.py program.

1.1.4. JRA

JRA-55 is computed by the Japan Meteorological Agency (JMA) and is available starting from 1958. JRA-55 outputs are downloaded using the ucar_rda_jra55_surface.py program.

1.2. Background

Anomalies for each reanalysis are calculated relative to a multi-annual mean (such as 2003 – 2014). Spherical harmonics from reanalysis outputs are computed here using three different schemes of complexity following Boy and Chao [2], Swenson and Wahr [25]:

  1. a thin-layer 2D spherical geometry

  2. a thin-layer 2D geometry with realistic geometry incorporating model orography and estimates of geoid height [Equations 1.1 and 1.2]

  3. a 3D atmospheric geometry integrating over the model layers [Equations 1.1 and 1.3].

(1.1)\[\begin{split} \left\{\begin{matrix}\tilde{C}_{lm}(t) \\ \tilde{S}_{lm}(t) \end{matrix} \right\} = \frac{3}{4\pi a\rho_{e}}\frac{1+k_l}{(2l+1)}\int \xi_l(\theta,\phi,t)~P_{lm}(\cos\theta) \left\{\begin{matrix}\cos{m\phi} \\ \sin{m\phi} \end{matrix} \right\}\,d\Omega\end{split}\]
(1.2)\[ \xi_l(\theta,\phi,t) = \left(\frac{a + h(\theta,\phi) + N(\theta,\phi)}{a}\right)^{l+2}\frac{p_0(\theta,\phi,t)}{g(\theta,\phi)}\]
(1.3)\[ \xi_l(\theta,\phi,t) = -\int_{p_0}^{0}\left(\frac{a + z(\theta,\phi) + N(\theta,\phi)}{a}\right)^{l+2}\frac{dp}{g(\theta,\phi,z)}\]

1.3. Framework

digraph {
    E [label="Reanalysis Surface Pressure"
        fontname="Lato"
        fontsize=11
        shape=box
        style="filled"
        color="#7570b3"]
    N [label="Geoid Height"
        fontname="Lato"
        fontsize=11
        shape=box
        style="filled"
        color="#7570b3"]
    O [label="Model Orography"
        fontname="Lato"
        fontsize=11
        shape=box
        style="filled"
        color="#7570b3"]
    M [URL="https://github.com/tsutterley/model-harmonics/blob/main/TWS/reanalysis_mean_pressure.py"
        label="Calculate Temporal Mean"
        fontname="Lato"
        fontsize=11
        shape=box
        style="filled"
        color="gray"]
    H [URL="https://github.com/tsutterley/model-harmonics/blob/main/TWS/reanalysis_pressure_harmonics.py"
        label="Calculate Spherical Harmonics"
        fontname="Lato"
        fontsize=11
        shape=box
        style="filled"
        color="gray"]
    S [URL="https://github.com/tsutterley/gravity-toolkit/blob/main/scripts/combine_harmonics.py"
        label="Spatial Maps"
        fontname="Lato"
        fontsize=11
        shape=box
        style="filled"
        color="#1b9e77"]
    T [URL="https://github.com/tsutterley/model-harmonics/blob/main/scripts/least_squares_mascon_timeseries.py"
        label="Time Series"
        fontname="Lato"
        fontsize=11
        shape=box
        style="filled"
        color="#1b9e77"]
    E -> M [arrowsize=0.8]
    M -> H [arrowsize=0.8]
    E -> H [arrowsize=0.8]
    N -> H [arrowsize=0.8]
    O -> H [arrowsize=0.8]
    H -> S [arrowsize=0.8]
    H -> T [arrowsize=0.8]
}

Figure 1.1: Reanalysis Spherical Harmonics with Two-Dimensional Geometry Framework

digraph {
    E [label="Reanalysis Temperature\nand Specific Humidity"
        fontname="Lato"
        fontsize=11
        shape=box
        style="filled"
        color="#7570b3"]
    L [URL="https://github.com/tsutterley/model-harmonics/blob/main/TWS/model_level_coefficients.py"
        label="Model Level\nCoefficients"
        fontname="Lato"
        fontsize=11
        shape=box
        style="filled"
        color="#7570b3"]
    N [label="Geoid Height"
        fontname="Lato"
        fontsize=11
        shape=box
        style="filled"
        color="#7570b3"]
    O [label="Model Orography"
        fontname="Lato"
        fontsize=11
        shape=box
        style="filled"
        color="#7570b3"]
    G [URL="https://github.com/tsutterley/model-harmonics/blob/main/TWS/reanalysis_geopotential_heights.py"
        label="Calculate Geopotential Heights\nand Pressure Differences"
        fontname="Lato"
        fontsize=11
        shape=box
        style="filled"
        color="gray"]
    M [URL="https://github.com/tsutterley/model-harmonics/blob/main/TWS/reanalysis_mean_harmonics.py"
        label="Calculate Temporal Mean\nSpherical Harmonics"
        fontname="Lato"
        fontsize=11
        shape=box
        style="filled"
        color="gray"]
    H [URL="https://github.com/tsutterley/model-harmonics/blob/main/TWS/reanalysis_atmospheric_harmonics.py"
        label="Calculate Spherical Harmonics"
        fontname="Lato"
        fontsize=11
        shape=box
        style="filled"
        color="gray"]
    S [URL="https://github.com/tsutterley/gravity-toolkit/blob/main/scripts/combine_harmonics.py"
        label="Spatial Maps"
        fontname="Lato"
        fontsize=11
        shape=box
        style="filled"
        color="#1b9e77"]
    T [URL="https://github.com/tsutterley/model-harmonics/blob/main/scripts/least_squares_mascon_timeseries.py"
        label="Time Series"
        fontname="Lato"
        fontsize=11
        shape=box
        style="filled"
        color="#1b9e77"]
    E -> G [arrowsize=0.8]
    L -> G [arrowsize=0.8]
    O -> G [arrowsize=0.8]
    G -> M [arrowsize=0.8]
    M -> H [arrowsize=0.8]
    G -> H [arrowsize=0.8]
    N -> H [arrowsize=0.8]
    H -> S [arrowsize=0.8]
    H -> T [arrowsize=0.8]
}

Figure 1.2: Reanalysis Spherical Harmonics with Three-Dimensional Geometry Framework