The forum is locked.

The Ocean Color Forum has transitioned over to the Earthdata Forum (https://forum.earthdata.nasa.gov/). The information existing below will be retained for historical reference. Please sign into the Earthdata Forum for active user support.

Up Topic Products and Algorithms / Satellite Data Products & Algorithms / Reproducing chlor_a from oc3m and CI
- By daurin Date 2020-06-17 22:13
In the algorithm description (https://oceancolor.gsfc.nasa.gov/atbd/chlor_a/) it says simply, "In between these values, the CI and OCx algorithm are blended using a weighted approach." In another post here (https://oceancolor.gsfc.nasa.gov/forum/oceancolor/topic_show.pl?pid=34869;hl=oc3m) Chris says, "A slightly *modified* version of Hu et al. 2012 is used where those algorithms are blended between chlorophyll concentrations of 0.15 to 0.2 mg m^-3."

Equation 5 in Hu et al. 2012 uses a set of coefficients for alpha and beta in the blended algorithm (different range: 0.25 to 0.3 mg m^-3). So, what coefficients does SeaDAS 7.5.3 use for alpha and beta to blend oc3m and CI in the 0.15 to 0.2 range?

I looked in seadas-7.5.3/ocssw/share/modis/msl12_defaults.par, but while the basic ocX coefficients and bands are lists, I don't see CI's alpha and beta coefficients.

Cheers
- By gnwiii Date 2020-06-18 09:23
(I try to resist the urge to say "use the source")

The "blending" is simply linear interpolation.   Look in get_chl.c for the definition of chl_oci (also in $OCSSWROOT/ocssw-src/src/l2gen/get_chl.c):

float chl_oci(l2str *l2rec, float Rrs[]) {
    static float t1 = 0.15;
    static float t2 = 0.20;

    float chl1 = chlbad;
    float chl2 = chlbad;
    float chl = chlbad;

    chl1 = chl_hu(l2rec, Rrs);
    if (chl1 <= t1)
        chl = chl1;
    else {
        chl2 = get_chl_ocx(l2rec, Rrs);
        if (chl2 > 0.0) {
            if (chl1 >= t2)
                chl = chl2;
            else {
                chl = chl1 * (t2 - chl1) / (t2 - t1)
                        + chl2 * (chl1 - t1) / (t2 - t1);
            }
        }
    }

    return (chl);
}
- By daurin Date 2020-06-18 12:58
Oh, of course. The parameters used in the blending are not arbitrary, they are the thresholds again.
Thanks, and may the source be with you.
- By gfireman Date 2020-06-18 16:03
Dirk -

On the command line, you can run
install_ocssw.py --src
to install source code in your SeaDAS directory (install_ocssw.py --help to see all options).

I'm sure there's a GUI way to do this too, but I don't use the GUI much :)

- Gwyn
- By daurin Date 2020-06-18 21:08
Thanks, Gwynn.
Up Topic Products and Algorithms / Satellite Data Products & Algorithms / Reproducing chlor_a from oc3m and CI