Welcome to the Earthdata Forum! Here, the scientific user community and subject matter experts from NASA Distributed Active Archive Centers (DAACs), and other contributors, discuss research needs, data, and data applications.
by ksharsun » Mon Jan 25, 2021 1:21 pm America/New_York
Link for get_rhos.c:https:// oceancolor.gsfc.nasa.gov/docs/ocssw/get__rhos_8c_source.htmlAs per the get_rhos.c, the surface reflectance is calculated in the presence of cirrus cloud as follows,l1rec->rhos[ipb] = pi / l1rec->Fo[ib] / mu0 * ((l1rec->Lt[ipb] / l1rec->tg_sol[ipb] / l1rec->tg_sen[ipb]- l1rec->Lr[ipb]) - l1rec->rho_cirrus[ip] / Ka)/ l1rec->t_sol[ipb] / l1rec->t_sen[ipb] / l1rec->t_o2[ipb] / l1rec->t_h2o[ipb]; In the above equation, How the radiance term (Lt-Lr) will be subtracted by cirrus reflectance (rho_cirrus). Because both radiance and reflectance terms are different quantities, I think there might be an error in the code (cirrus condition).Kindly check the attachment and clarify the steps involving in the rhos calculation under cirrus condition with appropriate reference.Thanks and regards,Harish Kumar K Sattachment 1
The code you list is wrapped in an if (cirrus_opt) block. The use of the cirrus reflectance in the estimation of rhos is an experimental feature that is not used operationally. You would have to explicitly set cirrus_opt=1 in the call to l2gen for it to be used. That said, as I read the code, it is correct. The rhos product is surface reflectance. The Lt-Lr radiance is converted to reflectance (the pi / l1rec->Fo[ib] / mu0 bit) , from which the cirrus reflectance is subtracted (or would be if you set cirrus_opt=1).