Using IOP models with simulated water reflectances

Use this Forum to find information on, or ask a question about, NASA Earth Science data.
Post Reply
erehm
Posts: 9
Joined: Fri Feb 15, 2008 7:07 pm America/New_York
Answers: 0

Using IOP models with simulated water reflectances

by erehm » Fri Oct 18, 2019 8:47 am America/New_York

I would like to use l2gen to create IOP estimates (from GIOP, GSM, QAA algorithms) using my own (simulated) normalized water-leaving reflectances ?^N_w= pi*Rrs, not TOA values. 

How can I do this?  I see that I can turn off atmospheric correction (atmocor = 0), but I believe Rayleigh correction is still enabled. 

Instead, will I have to write my own C-wrapper around the IOP algorithm code?

Thanks,

/eric

Tags:

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

Using IOP models with simulated water reflectances

by gnwiii » Fri Oct 18, 2019 10:11 am America/New_York

The current maintainers of l2gen should be able to tell you how practical it would be to adapt l2gen to your needs.   If you can find a way to adapt l2gen in a way that could be included in the OCSSW code, that might encourage people developing IOP algorithms to implement and test them using l2gen, and could open the door to other projects -- things like sensitivity studies of existing products.

OB.DAAC - SeanBailey
User Services
User Services
Posts: 1469
Joined: Wed Sep 18, 2019 6:15 pm America/New_York
Answers: 1
Been thanked: 5 times

Using IOP models with simulated water reflectances

by OB.DAAC - SeanBailey » Fri Oct 18, 2019 10:56 am America/New_York

Eric,

The l2gen code in the latest version of SeaDAS includes the ability to process a "SeaBASS-formatted" ASCII file with Rrs values.
There are some limitations, in that it requires the "sensor" to be defined and be one of the sensors supported by l2gen.

e.g.:

l2gen ifile=seawifs.sb ofile=seawifs.nc suite=IOP

$ cat seawifs.sb
/begin_header                                                                            
/sensor=SEAWIFS                                                                          
/delimiter=comma                                                                         
/fields=lat,lon,rrs_412,Rrs_443,rrs490,rrs510,rrs555,rrs670,rrs765,rrs865       
/end_header                                                                              
0,0,0.006438,0.005564,0.004904,0.0044,0.003881,0.000687,0.0004,0.0003             
0,0,0.006438,0.005564,0.004904,0.0044,0.003881,0.000687,0.0004,0.0003             
0,0,0.006438,0.005564,0.004904,0.0044,0.003881,0.000687,0.0004,0.0003             
...


Hope this helps,
Sean

erehm
Posts: 9
Joined: Fri Feb 15, 2008 7:07 pm America/New_York
Answers: 0

Using IOP models with simulated water reflectances

by erehm » Mon Oct 21, 2019 12:07 pm America/New_York

Thanks Sean.  Updated my occsw data processors (MacOS 10.14.5 / Mojave) to latest release, but l2gen is throwing an error somewhere...
(Note that I am not specifiying rrs_469, rrs_555, rrs_645 in my SeaBASS file.  Is that the problem?) 
My input file is hyperlinked to Google Drive so you can try it.

$ head 2601pix_tgt_sim3_thv30_dphi90_for_polymer.csv.polymer.sb
/begin_header
/sensor=MODISA
/delimiter=comma
/fields=lat,lon,rrs_412,rrs_443,rrs_488,rrs_531,rrs_547,rrs_667,rrs_678,rrs_748,rrs_869
/end_header
70,0,0.00237494733963876,0.001802678576363,0.00305618178078461,0.00274473108361568,0.00282988522200625,0.00061756705068773,0.00054362050715546,2.12463647013988e-05,-1.31791231999896e-05
...

$ l2gen ifile=2601pix_tgt_sim3_thv30_dphi90_for_polymer.csv.polymer.sb ofile=2601pix_tgt_sim3_thv30_dphi90_for_polymer.csv.polymer.iop.nc suite=IOP
Input file 2601pix_tgt_sim3_thv30_dphi90_for_polymer.csv.polymer.sb is a SeaBASS text file.
Loading default parameters from /Applications/seadas-7.5.1/ocssw/share/common/msl12_defaults.par
Loading default parameters for MODISA from /Applications/seadas-7.5.1/ocssw/share/modis/msl12_defaults.par
Loading default sub-sensor parameters for MODISA from /Applications/seadas-7.5.1/ocssw/share/modis/aqua/msl12_defaults.par
Loading parameters for suite IOP from /Applications/seadas-7.5.1/ocssw/share/modis/msl12_defaults_IOP.par
Loading command line parameters

Loading user parameters for MODISA
...
Reading Thuillier_F0.dat
terminate called after throwing an instance of 'std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >'
Abort trap: 6

OB.DAAC - SeanBailey
User Services
User Services
Posts: 1469
Joined: Wed Sep 18, 2019 6:15 pm America/New_York
Answers: 1
Been thanked: 5 times

Using IOP models with simulated water reflectances

by OB.DAAC - SeanBailey » Thu Oct 24, 2019 10:06 am America/New_York

Eric,

Seems there are a couple of issues.  One is that the "seabass" reader wasn't updated with knowledge of the mission/sensor reorganization of the OCSSW data tree.  The other is that it doesn't have logic to handle sensors with an IR band set (like MODIS). 

...so, for now it'll work for "SeaWiFS" like inputs.  We'll eventually release an update to fix the above issues.  One idea we've considered is defining a "generic" sensor with a variable wavelength set to  remove the restriction of matching an existing sensor's wavelength set.  ...that may take more time to implement, so no promises :wink:

Sean

erehm
Posts: 9
Joined: Fri Feb 15, 2008 7:07 pm America/New_York
Answers: 0

Using IOP models with simulated water reflectances

by erehm » Thu Oct 24, 2019 10:53 am America/New_York

Thanks, Sean.  One question:

"...for now it'll work for "SeaWiFS" like inputs."

Just to clarify, does that mean I must specify only SeaWiFS rrs_XXX wavelengths in my SeaBASS input file?

Best,

/eric

OB.DAAC - SeanBailey
User Services
User Services
Posts: 1469
Joined: Wed Sep 18, 2019 6:15 pm America/New_York
Answers: 1
Been thanked: 5 times

Using IOP models with simulated water reflectances

by OB.DAAC - SeanBailey » Thu Oct 24, 2019 1:11 pm America/New_York

well, my seawifs wvl example worked :grin:
OCTS or MERIS might also work

Sean

erehm
Posts: 9
Joined: Fri Feb 15, 2008 7:07 pm America/New_York
Answers: 0

Using IOP models with simulated water reflectances

by erehm » Thu Oct 24, 2019 11:59 pm America/New_York

Thanks.  FYI, MERIS appears to work:

/begin_header
/sensor=MERIS
/delimiter=comma
/fields=lat,lon,rrs_413,rrs_443,rrs_490,rrs_510,rrs_560,rrs_620,rrs_665,rrs_681,rrs_709
/end_header
70,0,0.00237494733963876,0.001802678576363,0.00305618178078461,0.00274473108361568,0.00282988522200625,0.00061756705068773,0.00054362050715546,2.12463647013988e-05,-1.31791231999896e-05
70,0,0.00289074801791505,0.00178790918163039,0.00313129814984807,0.00272298031062988,0.00259184749689683,0.000616008950839469,0.000543586711948629,-0.000134371067116515,-2.98023443686986e-05
...


$ l2gen ifile=2601pix_tgt_sim3_thv30_dphi90_for_polymer.csv.polymer.sb ofile=2601pix_tgt_sim3_thv30_dphi90_for_polymer.csv.polymer.iop.nc suite=GSM
Input file 2601pix_tgt_sim3_thv30_dphi90_for_polymer.csv.polymer.sb is a SeaBASS text file.
Loading default parameters from /Applications/seadas-7.5.1/ocssw/share/common/msl12_defaults.par
Loading default parameters for MERIS from /Applications/seadas-7.5.1/ocssw/share/meris/msl12_defaults.par
Loading parameters for suite GSM from /Applications/seadas-7.5.1/ocssw/share/meris/msl12_defaults_GSM.par
Loading command line parameters
Loading user parameters for MERIS
Loading characteristics for MERIS
Opening sensor information file /Applications/seadas-7.5.1/ocssw/share/meris/msl12_sensor_info.dat
...
Processing Completed

aewindle110
Posts: 3
Joined: Wed Oct 23, 2019 11:04 am America/New_York
Answers: 0

Re: Using IOP models with simulated water reflectances

by aewindle110 » Thu Jul 13, 2023 12:29 pm America/New_York

Hi Sean,

I'm interested in running my own in situ Rrs formatted as .sb file into l2gen, similar to what Eric did. I was wondering if you ever got around to defining a "generic sensor" with a variable wavelength set? If not, do you know when this process will work with OCI wavelengths?

Thanks,
Anna

Post Reply