## Reproducing chlor_a from oc3m and CI

Use this Forum to find information on, or ask a question about, NASA Earth Science data.
daurin
Posts: 42
Joined: Thu Apr 22, 2010 8:06 am America/New_York
Answers: 0
Has thanked: 1 time

### Reproducing chlor_a from oc3m and CI

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

Filters:

gnwiii
Posts: 713
Joined: Fri Jan 29, 2021 5:51 pm America/New_York
Answers: 2
Has thanked: 1 time

### Reproducing chlor_a from oc3m and CI

(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);}`

daurin
Posts: 42
Joined: Thu Apr 22, 2010 8:06 am America/New_York
Answers: 0
Has thanked: 1 time

### Reproducing chlor_a from oc3m and CI

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.

gfireman
Posts: 64
Joined: Thu Jan 07, 2010 2:59 pm America/New_York
Answers: 0

### Reproducing chlor_a from oc3m and CI

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

daurin
Posts: 42
Joined: Thu Apr 22, 2010 8:06 am America/New_York
Answers: 0
Has thanked: 1 time

Thanks, Gwynn.