From 5d57855c085a19edd3ac1a95dce9abd1cd5d22c3 Mon Sep 17 00:00:00 2001 From: Quarto GHA Workflow Runner Date: Thu, 25 Jan 2024 20:57:31 +0000 Subject: [PATCH] Built site for gh-pages --- .nojekyll | 2 +- content/gsi/03-radiances.html | 220 ++++++++++++++++++++++++++++++++-- search.json | 11 +- sitemap.xml | 22 ++-- 4 files changed, 232 insertions(+), 23 deletions(-) diff --git a/.nojekyll b/.nojekyll index 4095e74..fdd9eba 100644 --- a/.nojekyll +++ b/.nojekyll @@ -1 +1 @@ -580ea979 \ No newline at end of file +6d235711 \ No newline at end of file diff --git a/content/gsi/03-radiances.html b/content/gsi/03-radiances.html index 7a01ba2..edc17c2 100644 --- a/content/gsi/03-radiances.html +++ b/content/gsi/03-radiances.html @@ -20,6 +20,40 @@ margin: 0 0.8em 0.2em -1em; /* quarto-specific, see https://github.com/quarto-dev/quarto-cli/issues/4556 */ vertical-align: middle; } +/* CSS for syntax highlighting */ +pre > code.sourceCode { white-space: pre; position: relative; } +pre > code.sourceCode > span { line-height: 1.25; } +pre > code.sourceCode > span:empty { height: 1.2em; } +.sourceCode { overflow: visible; } +code.sourceCode > span { color: inherit; text-decoration: inherit; } +div.sourceCode { margin: 1em 0; } +pre.sourceCode { margin: 0; } +@media screen { +div.sourceCode { overflow: auto; } +} +@media print { +pre > code.sourceCode { white-space: pre-wrap; } +pre > code.sourceCode > span { text-indent: -5em; padding-left: 5em; } +} +pre.numberSource code + { counter-reset: source-line 0; } +pre.numberSource code > span + { position: relative; left: -4em; counter-increment: source-line; } +pre.numberSource code > span > a:first-child::before + { content: counter(source-line); + position: relative; left: -1em; text-align: right; vertical-align: baseline; + border: none; display: inline-block; + -webkit-touch-callout: none; -webkit-user-select: none; + -khtml-user-select: none; -moz-user-select: none; + -ms-user-select: none; user-select: none; + padding: 0 4px; width: 4em; + } +pre.numberSource { margin-left: 3em; padding-left: 4px; } +div.sourceCode + { } +@media screen { +pre > code.sourceCode > span > a:first-child::before { text-decoration: underline; } +} /* CSS for citations */ div.csl-bib-body { } div.csl-entry { @@ -205,7 +239,7 @@

On this page

  • Observation errors and quality control
  • @@ -247,7 +281,123 @@

    The CRTM

    Specific configuration

    -

    The vertical location of each radiance observation was estimated as the model level at which its weight function computed by CRTM was maximized. The weight function of each channel corresponds to the change in transmittance with height and its maximum describes the layer of the atmosphere from which the radiation captured by the channel was emitted. Multispectral sensors have good vertical coverage and are capable of capturing from the lower troposphere to the lower stratosphere. The channels chosen for assimilation and their associated errors were defined taking into account the configuration that GSI uses to generate GFS analyses and forecasts, the model cap chosen in this work (50 hPa) and the possible influence of the surface (Table @ref(tab:table-rad)).

    +

    The assimilation of radiance observations is controlled with the satinfo file and the GSI namelist. Let’s check the global_satinfo.txt file we get as an example:

    +
    !sensor/instr/sat      chan iuse  error  error_cld  ermax   var_b    var_pg  icld_det icloud iaerosol
    + amsua_n15               1   1    3.000   20.000    4.500   10.000    0.000     -2      1     -1
    + amsua_n15               2   1    2.200   18.000    4.500   10.000    0.000     -2      1     -1
    + amsua_n15               3   1    2.000   12.000    4.500   10.000    0.000     -2      1     -1
    + amsua_n15               4   1    0.600    3.000    2.500   10.000    0.000     -2      1     -1
    + amsua_n15               5   1    0.300    0.500    2.000   10.000    0.000     -2      1     -1
    + amsua_n15               6  -1    0.230    0.300    2.000   10.000    0.000     -2      1     -1
    + amsua_n15               7   1    0.250    0.250    2.000   10.000    0.000     -2      1     -1
    + amsua_n15               8   1    0.275    0.275    2.000   10.000    0.000     -2      1     -1
    + amsua_n15               9   1    0.340    0.340    2.000   10.000    0.000     -2      1     -1
    + amsua_n15              10   1    0.400    0.400    2.000   10.000    0.000     -2      1     -1
    + amsua_n15              11  -1    0.600    0.600    2.500   10.000    0.000     -2      1     -1
    + amsua_n15              12   1    1.000    1.000    3.500   10.000    0.000     -2      1     -1
    + amsua_n15              13   1    1.500    1.500    4.500   10.000    0.000     -2      1     -1
    + amsua_n15              14  -1    2.000    2.000    4.500   10.000    0.000     -2      1     -1
    + amsua_n15              15   1    3.500   18.000    4.500   10.000    0.000     -2      1     -1
    + hirs3_n17               1  -1    2.000    0.000    4.500   10.000    0.000     -1     -1     -1
    +

    The file includes a line for each sensor/satellite and each channel (chan). Usually you will change the iuse and error columns to configure the assimilation of each channel. The options for iuse are:

    +
      +
    • -2 do not use
    • +
    • -1 monitor if diagnostics produced
    • +
    • 0 monitor and use in QC only
    • +
    • 1 use data with complete quality control
    • +
    • 2 use data with no airmass bias correction
    • +
    • 3 use data with no angle dependent bias correction
    • +
    • 4 use data with no bias correction
    • +
    +

    Defining the observation error is one of the difficult part of the assimilation process, so I usually keep the GFS values to be on the safe side.

    +

    To successfully assimilate radiances using the EnKF method it is critical to save in the diag files the vertical location of each radiance observation that is estimated as the model level at which its weight function1 computed by CRTM maximize. It is also important to save the predictors calculated during the bias correction step.

    +

    Here is an incomplete list of parameters in the GSI and ENKF namelists.

    +

    GSI namelist

    + +++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    ParameterDescriptionNeeded value
    passive_bcoption to turn on bias correction for passive (monitored) channels.true.
    use_edgesoption to exclude radiance data on scan edges.false.
    lwrite_predtermsoption to write out actual predictor terms instead of predicted bias to the radiance diagnostic files.true.
    lwrite_peakwtoption to write out the approximate pressure of the peak of the weighting function for satellite data to the radiance diagnostic.true.
    emiss_bcoption to turn on emissivity bias predictor.true.
    +

    This namelist will also includes a list with the type of observations and the name of the bufr file for each one (dfile).

    +

    ENKF namelist

    + + +++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    This namelist will also includes a list with the type of observations and the name of each one inside GSI. For example amsua_n15 represent the observations of the AMSU-A sensor on board NOAA-15.
    ParameterDescriptionNeeded value
    adp_anglebcturn off or on the variational radiance angle bias correction.true.
    angordorder of polynomial for angle bias correction4
    use_edgeslogical to use data on scan edges (.true.=to use).false.
    emiss_bcIf true, turn on emissivity bias correction.true.
    upd_predbias update indicator for radiance bias correction; 1.0=bias correction coefficients evolve1

    Observation errors and quality control

    @@ -255,14 +405,28 @@

    Obs

    Thinning

    During the thinning process the observations to be assimilated are chosen based on their distance to the model grid points, the quality of the observation (based on available data quality information) and the number of available channels (for the same pixel and sensor). The thinning algorithm determines the quality of each observation based on the available information about the channels and their known errors, the type of surface below each pixel (preferring observations over the sea to those over land or snow) and predictors that give information about the quality of the observations (M. Hu et al. 2018). By applying the thinning we avoid incorporating information from smaller scale processes than the model can not represent and to reduce the error correlation of the observations from the same sensor.

    +

    The thinning resolution is configured in the GSI namelist:

    +

    In this case we have 3 possible resolutions in kilometers: dmesh(1)=120.0, dmesh(2)=60.0, dmesh(3)=10.0. We define which resolution to use for each sensor in the dthin column. Here amsua_n15 will use a thinning of 60 km and abi_g16 a thinning of 10 km.

    +
     &OBS_INPUT
    +   dmesh(1)=120.0, dmesh(2)=60.0, dmesh(3)=10.0, time_window_max=0.5,ext_sonde=.true.,
    + /
    +OBS_INPUT::
    +!  dfile          dtype       dplat     dsis                 dval    dthin dsfcalc
    +   amsuabufr      amsua       n15       amsua_n15           10.0     2     0
    +   amsuabufr      amsua       n18       amsua_n18           10.0     2     0
    +   amsuabufr      amsua       n19       amsua_n19           10.0     2     0
    +   amsuabufr      amsua       metop-a   amsua_metop-a       10.0     2     0
    +   amsuabufr      amsua       metop-b   amsua_metop-b       10.0     2     0
    +   airsbufr       amsua       aqua      amsua_aqua           5.0     2     0
    +   abibufr        abi         g16       abi_g16              1.0     3     0
    -
    -

    Bias correction

    +
    +

    Bias correction

    After the thinning, a bias correction is applied. The bias correction methodology implemented in GSI depends on thermodynamic characteristics of the air and on the scan angle (Zhu et al. 2014). It is computed as a linear polynomial of N predictors \(p_i(x)\), with associated coefficients \(beta_i\). Therefore, the bias-corrected brightness temperature (\(BT_{cb}\)) can be obtained as:

    \[\mathrm{\mathit{BT_{cb}} =\mathit{ BT} + \sum_{i = 0}^{N} \beta_i p_i (x)}\]

    -

    The polynomial has a constant bias correction term (\(p_0 = 1\)) while the remaining terms and their predictors are the cloud liquid water (CLW) content, the rate of change of temperature with pressure, the square of the rate of change of temperature with pressure, and the sensitivity to the surface emissivity to account for the difference between land and sea. The scan angle-dependent bias is modeled as a polynomial of 4\(^\circ\) order (Zhu et al. 2014).

    -

    In the GSI system, the coefficients \(beta_i\) are trained using a variational estimation method that generates the \(beta_i\) that provides the best fit between the simulation and the observations. The EnKF step also calculate the coefficients for the assimilation.

    -

    It is important to evaluate the training of the coefficients and the performance of the bias correction. One way to train the coefficients according to (zhu2024?) is to run the assimilation cycles for a long period of time, updating the coefficients at each cycle. While is possible to start the training with coefficients equal to zero, using the coefficients the GFS generates can help to speed up the process.

    +

    The polynomial has a constant bias correction term (\(p_0 = 1\)) while the remaining terms and their predictors are the cloud liquid water (CLW) content, the temperature laps rate, the square of the temperature laps rate, and the sensitivity to the surface emissivity to account for the difference between land and sea. The scan angle-dependent bias is modeled as a polynomial of 4\(^\circ\) order (Zhu et al. 2014).

    +

    In the GSI system, the coefficients \(\beta_i\) are trained using a variational estimation method that generates the \(\beta_i\) that provides the best fit between the simulation and the observations. The EnKF step also calculate the coefficients for the assimilation.

    +

    It is important to evaluate the training of the coefficients and the performance of the bias correction. One way to train the coefficients according to Zhu et al. (2014) is to run the assimilation cycles for a long period of time, updating the coefficients at each cycle. While is possible to start the training with coefficients equal to zero, using the coefficients the GFS generates can help to speed up the process.

    To check if the coefficients are correctly trained we can analysed the evolution of the different coefficients for each sensor and channel with time. As an example, here we show the coefficients for AMSU-A on board NOAA-15. Following Zhu et al. (2014), we expected the coefficients to reach a stable range of values after a certain period of time, this is evident for channel 4, 5, 6 and 8 but we see a continuous variation in channels 7 and 9.

    @@ -278,6 +442,38 @@

    Bias correction

    The training of the coefficients requires a lot of computational resources and can be challenging for observations from polar satellites used in regional applications. The reason for this is that the observations are only available 1 or 2 times a day, making the training a slow process. It is important to check that GSI is not penalizing the coefficients when there are no observations available.

    +

    The coefficients are saved in the satbias file, a plain text file that looks like this:

    +
        1 amsua_n15                1   0.423099E+00   0.481606E+06   999
    +        2.680195    0.000000    0.001042    0.004029    0.228152    0.000000    0.000000   -0.009346    3.972107    2.986645
    +       -4.770297   -1.960179
    +    2 amsua_n15                2   0.235695E+00   0.519067E+06   999
    +        1.704236    0.000000    0.010259   14.889464   -3.720292    0.000000    0.000000   -0.011583    3.896762    9.125687
    +       -4.712555   -1.727947
    +    3 amsua_n15                3   0.150663E+01   0.593685E+06   999
    +        1.771621    0.000000    0.009938    0.507936   -0.328143    0.000000    0.000000   -0.013321   -2.458213   -0.946619
    +       -1.233838    0.234034
    +    4 amsua_n15                4   0.342465E+01   0.104715E+07   999
    +       -0.123787    0.000000    0.013865    0.050019   -0.037143    0.000000    0.000000    0.007463   -0.460992   -0.542148
    +       -0.876047   -0.110968
    +    5 amsua_n15                5   0.445149E+01   0.112750E+07   999
    +        0.332174    0.000000    0.007298    0.010457   -0.071543    0.000000    0.000000   -0.009200    0.827698   -0.965067
    +       -1.350357    0.100073
    +

    So, for each sensor and satellite and each channel there are 12 coefficients that are updated in each assimilation cycle. I recommend to save these files to analyses the BC process. Radiance bias correction terms are as follows:

    +
      +
    1. global offset
    2. +
    3. zenith angle predictor, is not used and set to zero now
    4. +
    5. cloud liquid water predictor for clear-sky microwave radiance assimilation
    6. +
    7. square of temperature laps rate predictor
    8. +
    9. temperature laps rate predictor
    10. +
    11. cosinusoidal predictor for SSMI/S ascending/descending bias
    12. +
    13. sinusoidal predictor for SSMI/S
    14. +
    15. emissivity sensitivity predictor for land/sea differences
    16. +
    17. fourth order polynomial of angle bias correction
    18. +
    19. third order polynomial of angle bias correction
    20. +
    21. second order polynomial of angle bias correction
    22. +
    23. first order polynomial of angle bias correction
    24. +
    +

    On the other hand the predictors are saved in the diag files (see the Undestanding diag files section).

    Cloud detection

    @@ -285,13 +481,14 @@

    Cloud detection

    Other quality controls

    -

    The GSI quality control filters out those observations from channels close to the visible range over water surfaces with a zenith angle greater than 60\(^{{circ}\) to reject those observations that could be contaminated by reflection. For infrared and microwave observations it also performs an emissivity check to detect observations contaminated by surface effects. Finally, a gross check is applied, i.e. the difference between the observation and the observation simulated by the model is compared with a predefined threshold depending on the observation error to reject erroneous observations.

    +

    The GSI quality control filters out those observations from channels close to the visible range over water surfaces with a zenith angle greater than 60\(^{\circ}\) to reject those observations that could be contaminated by reflection. For infrared and microwave observations it also performs an emissivity check to detect observations contaminated by surface effects. Finally, a gross check is applied, i.e. the difference between the observation and the observation simulated by the model is compared with a predefined threshold depending on the observation error to reject erroneous observations.

    +

    References

    Barton, Neil, E. Joseph Metzger, Carolyn A. Reynolds, Benjamin Ruston, Clark Rowley, Ole Martin Smedstad, James A. Ridout, et al. 2021. “The Navy’s Earth System Prediction Capability: A New Global Coupled Atmosphere-Ocean-Sea Ice Prediction System Designed for Daily to Subseasonal Forecasting.” Earth and Space Science 8 (4): e2020EA001199. https://doi.org/10.1029/2020EA001199. @@ -335,7 +532,12 @@

    Other quality contr
    Zhu, Yanqiu, Emily Liu, Rahul Mahajan, Catherine Thomas, David Groff, Paul Van Delst, Andrew Collard, Daryl Kleist, Russ Treadon, and John C. Derber. 2016. “All-Sky Microwave Radiance Assimilation in NCEP’s GSI Analysis System.” Monthly Weather Review 144 (12): 4709–35. https://doi.org/10.1175/MWR-D-15-0445.1.
    -

    +

    Footnotes

    + +
      +
    1. The weight function of each channel corresponds to the change in transmittance with height and its maximum describes the layer of the atmosphere from which the radiation captured by the channel was emitted. Multispectral sensors have good vertical coverage and are capable of capturing from the lower troposphere to the lower stratosphere.↩︎

    2. +
    +