How you can calibrate the parameters for the C2RCC for chlorophyll-a retrieval ? Which parameters you would start? How you can calibrate parameters relative to the IOP ( e.g. CHL exponent and CHL factor)?

It is difficult to give general suggestions.
Salinity and temperature have a minor impact on the results, the same for ozone.
Air pressure could have a slightly higher impact.
Good values for CHL exponent and CHL factor can only be found for your specific region. You need to have in-situ data and try different values.
The threshold for cloud flag needs only slight changes. It influences the clooud_risk flag. If you think too much is flagged you could change it 0.95 for example.

To find good parameters you need to have in-situ data. If you don’t have in-situ data the best choice is to stick to the default.

1 Like

Dear @marpet,

does the parameter temperature refer to ‘water temperature’?


Hi Federico,

yes, this is the water temperature.

1 Like

Hi @marpet,

sorry for bothering you again.
I still have questions about the C2RCC parametrization.
Should the air pressure parameter be set as relative pressure (atmospheric pressure corrected to sea level conditions) or absolute pressure (as measured in situ by instruments without any elevation correction) since is corrected by the C2RCC algorithm using the elevation parameter supplied?
Which role plays the elevation in the algorithm?


Yes, it is the air pressure at the surface. I update the documentation, so this will be mentioned in future releases.
The elevation changes the amount of atmosphere between the sensor and the surface.
This has an influence on how the data needs to be corrected. It can make a difference if you are looking at a lake in 2000 meter above sea level.

Thank you for clarifications!

I noticed that the ancillary data for pressure (MET_NCEPR2_6h) that is optionally automatically downloaded from repository is containing only the ‘mean sea level surface pressure’ variable and not the ‘surface pressure’ (according to the HDF metadata). I am wondering if C2RCC converts the auxiliary information of the mean sea level surface pressure back to surface pressure using the elevation value prior the execution of the atmospheric correction algorithm.
I suppose that the surface pressure is used to determine the amount of Rayleigh radiance. Is any other variable contained in the MET_NCEPR2_6h auxiliary product used by the algorithm (i.e. wind speed for sun-glint removal or precipitable water to determine the atmospheric transmittance)?


Oh, I’m sorry. I meant sea level surface pressure and not surface pressure. So no conversion is necessary.

Only the pressure is used from the NCEP data.

Well, that makes sense!
This means that users who would like to use in situ measurements of the atmospheric pressure as input parameter in C2RCC should be aware that the pressure value must be corrected for local altitude in order to set the mean sea level surface pressure.
Thank you again Marco for prompt clarifications.


Does entering available satellite derived data (example: sea surface temperature) lead to a more accurate result?

In my case, I only have surface temperature but not sea surface salinity. Should I just leave both at default or just the sea surface salinity at default + entering available sea surface temperature data for better result?

Or should I enter rough approximation of sea surface salinity?

If the values differ a lot from th the default values it makes sense to specify average values for the area you are investigating. The more data you provide the better the result.
But a sea surfeace temperature difference of 2°C will not make big difference.

1 Like

Hi marpet

I have in-situ Chla data for my lake, so how can i calculate (CHL exponent and CHL factor)
As my target also is to evaluate AC and then retrieve Chla using S3 OLCI

Thank you


Hi Marpet

In snap v8 i did not see that elevation is required, as you mentioned that elevation is important to determine how the data needs to be corrected. I masked because my lake elevation is 1886 m.

Thank you

Hello Monaliza,

the elevation is taken from the altitude band of the OLCI product. So, it is not necessary to specify this value.

The best exponent and factor can be found if you compare your in-situ data with the processing results in Excel. As chl_a is computed by default by this equation
21.0 ∗ (iop_apig)^1.04
you should start from the iop_apig values calculating the chl_a.
You can compare the values in a plot and try finding better factor and exponent matching your in-situ data.

Thank you marpet for your reply, you mean i need to calculate these factors in excel at my points and then take the average by applying the mentioned equations, is this right ? how can I get this factor (iop_apig).

Hi Marpet

I find ( iop_apig), so should i apply this equation 21.0 ∗ (iop_apig)^1.04 at the selected bands for all points then export the data and take the average ? is the equation for both CHL exponent and CHL factor?
Thank you in advance

Hi Monaliza,

Yes, this iop_apig data is the basis for the calculation of conc_chl.
However, such scientific questions exceed the frame of this forum. You probably have a supervisor at your university, and I would suggest that you discuss this with him/her.

The following link is not the solution but might direct you in the right direction.
How to Fit an Equation to Data in Excel - EngineerExcel

1 Like

Thank you so much marpet .

Hi marpet

Thank you so much for your support.

I have 3 questions pls related to C2RCC For S2 MSI.

1- Why the rrs output are calculated for 8 bands while rhown for 6 bands?
2- Why the NaN pixels are not appeared in the exported excel file? or this mean no Nan pixels, how to knew?
I found that this formula is already added in all bands I did not add it, “c2rcc_flags.Valid_PE”
3- Should I add this formual in pixel extraction windows ?

Thank you so much