Page 1 of 1

Identifying PACE Rrs Wavelengths

Posted: Mon Jul 08, 2024 3:05 pm America/New_York
by slsmit34
Hello,
I have been following Ocean Color's Jupyter notebook tutorial on file structure at L2 processing levels for OCI "PACE_OCI_L2_AOP_NRT"https://oceancolor.gsfc.nasa.gov/resources/docs/tutorials/notebooks/oci-file-structure/
I am able to successfully plot different rrs bands with the code:

Code: Select all

rrs = dataset["Rrs"].sel({"wavelength_3d": 100})
plot = rrs.plot(x="longitude", y="latitude", cmap="viridis", vmin=0)
However, nowhere in this code am I able to figure out what the wavelength of these bands are. The bands are labeled by their index (wavelength_3d), ranging from 0-184. How can I figure out what the wavelength of these bands are? It is not described in the tutorial.
----
In the OC tutorial, there are 184 rrs bands in "PACE_OCI_L2_AOP_NRT" geophysical group data
In the OC tutorial, there are 184 rrs bands in "PACE_OCI_L2_AOP_NRT" geophysical group data
OCTutorial_highlight.PNG (26.27 KiB) Not viewed yet
There is no name for these bands, only the number of its position
There is no name for these bands, only the number of its position
wavelength_3d.PNG (38.36 KiB) Not viewed yet

Re: Identifying PACE Rrs Wavelengths

Posted: Mon Jul 08, 2024 3:42 pm America/New_York
by jamesgallen
Hi!

Thank you for the feedback! We'll work on updating the notebook to show how this is done.

In the meantime, the wavelengths themselves are stored in the "sensor_band_parameters" group in the file. So, if you want to pull an array of them, you'd run:

dataset_band_pars = xr.open_dataset(paths[0], group="sensor_band_parameters")
wavelength_3d = dataset_band_pars["wavelength3d"]

And then index out your wavelengths of choice using the .isel method. I hope this helps!

Re: Identifying PACE Rrs Wavelengths

Posted: Mon Jul 08, 2024 3:46 pm America/New_York
by slsmit34
I realized that this question was previously asked in this forum: viewtopic.php?t=5552. The band wavelength is accessed in group sensor_band_parameters. I have difficulty accessing this group through python but can access it through SeaDas. Following up on that forum post, it would be greatly appreciated if the product was updated to be labeled with the wavelengths!

Re: Identifying PACE Rrs Wavelengths

Posted: Thu Aug 08, 2024 2:00 pm America/New_York
by OB ODPS - towens
You can also access wavelength_3d with the ncdump utility:

ncdump -v wavelength_3d PACE_OCI.20240403T231955.L2.OC_AOP.V2_0.NRT.nc

data:

wavelength_3d = 339, 341, 344, 346, 348, 351, 353, 356, 358, 361, 363,
366, 368, 371, 373, 375, 378, 380, 383, 385, 388, 390, 393, 395, 398,
400, 403, 405, 408, 410, 413, 415, 418, 420, 422, 425, 427, 430, 432,
435, 437, 440, 442, 445, 447, 450, 452, 455, 457, 460, 462, 465, 467,
470, 472, 475, 477, 480, 482, 485, 487, 490, 492, 495, 497, 500, 502,
505, 507, 510, 512, 515, 517, 520, 522, 525, 527, 530, 532, 535, 537,
540, 542, 545, 547, 550, 553, 555, 558, 560, 563, 565, 568, 570, 573,
575, 578, 580, 583, 586, 588, 591, 593, 596, 598, 601, 603, 605, 608,
610, 613, 615, 618, 620, 623, 625, 627, 630, 632, 635, 637, 640, 641,
642, 643, 645, 646, 647, 648, 650, 651, 652, 653, 655, 656, 657, 658,
660, 661, 662, 663, 665, 666, 667, 668, 670, 671, 672, 673, 675, 676,
677, 678, 679, 681, 682, 683, 684, 686, 687, 688, 689, 691, 692, 693,
694, 696, 697, 698, 699, 701, 702, 703, 704, 706, 707, 708, 709, 711,
712, 713, 714, 717, 719 ;

Re: Identifying PACE Rrs Wavelengths

Posted: Tue Oct 22, 2024 2:19 pm America/New_York
by onurkaraca87
Hello,

I am trying to open pace data with ENVI and getting these values instead of Rrs, (please see the attach)

maybe someone can tell me the problem

Re: Identifying PACE Rrs Wavelengths

Posted: Wed Oct 23, 2024 2:35 am America/New_York
by OB ODPS - towens
I don't use ENVI to process OCI, but it looks like you are limiting your display to the RGB bands ( red as 0.64 µm, green as 0.55 µm, and blue as 0.47 µm). Is there a True Color option that you have set?

Tommy

Re: Identifying PACE Rrs Wavelengths

Posted: Wed Oct 23, 2024 7:15 am America/New_York
by OB.DAACx - SeanBailey
It appears that ENVI is not applying the scale_factor and add_offset parameters to convert the scaled integers stored in the L2 file into geophysical values:

(ncdump -h <PACE AOP file>|grep Rrs)
short Rrs(number_of_lines, pixels_per_line, wavelength_3d) ;
Rrs:long_name = "Remote sensing reflectance" ;
Rrs:scale_factor = 2.e-06f ;
Rrs:add_offset = 0.05f ;

Rrs:units = "sr^-1" ;
Rrs:coordinates = "longitude latitude" ;
Rrs:standard_name = "surface_ratio_of_upwelling_radiance_emerging_from_sea_water_to_downwelling_radiative_flux_in_air" ;
Rrs:_FillValue = -32767s ;
Rrs:valid_min = -30000s ;
Rrs:valid_max = 25000s ;

You will need to multiply the integers by 2.e-06 and add 0.05 to the result to get to the floating point Rrs values you seek.

Sean

Re: Identifying PACE Rrs Wavelengths

Posted: Wed Oct 23, 2024 2:10 pm America/New_York
by onurkaraca87
Sir

Million thanks for the help, still have problem with coordinates,

All i want is export pace data as GEOTIFF file and with all bands and i want to look spectras,

Is there any code for this? or