simonrp84 / PyCoxMunk

Python package for estimating sea surface reflectance.
https://pycoxmunk.readthedocs.io/en/latest/
GNU General Public License v3.0
9 stars 3 forks source link

Question about Surface Slope Calculation! #9

Open Springder opened 1 year ago

Springder commented 1 year ago

Referring to literature Sayer et al, 2010 , slope calculation equation can be expressed as: 图片 In equation above, $\phi$ is not $\phi_r$ , which represents Relative azimuth angle. But in our Codes below, $\phi$ was replaced by $\phi_r$.

        self.dangle = scenegeom.cos_sza + scenegeom.cos_vza

        self.Zx = da.where(self.dangle > dither_more,
                           -1. * (scenegeom.sin_vza * scenegeom.sin_raa) / self.dangle,
                           0.)
        self.Zy = da.where(self.dangle > dither_more,
                           -1. * (scenegeom.sin_sza + scenegeom.sin_vza * scenegeom.cos_raa) / self.dangle,
                           0.)

Why are we doing this?

Springder commented 1 year ago

@simonrp84 hello! R U here?

simonrp84 commented 1 year ago

Please remember to be polite and patient, @Springder. While I always try to assist, this is not my job and I do so in my spare time.

To answer your question, the Sayer paper neglected to include the _R on the azimuth term. Equations 7 and 8 use the relative azimuth.

Springder commented 1 year ago

No offence, I'm just excited about any mistakes I might find. I apologise if I have offended you. Back to the question. I think $\phi$ should be the azimuth of the normal vector of the slope. Because if you don't consider it that way, then the calculated specular reflection has nothing to do with the undulation of the sea.