AOD lower bounds from polynomial#749
Conversation
| ModtranRT.modtran_aot_lowerbound_polynomials()[atmosphere_type](0), | ||
| 1, | ||
| ] | ||
| self.aerosol_1_range = [ | ||
| ModtranRT.modtran_aot_lowerbound_polynomials()[atmosphere_type](0), | ||
| 1, | ||
| ] | ||
| self.aerosol_2_range = [ | ||
| ModtranRT.modtran_aot_lowerbound_polynomials()[atmosphere_type](0), | ||
| 1, | ||
| ] | ||
| self.aot_550_range = [ | ||
| ModtranRT.modtran_aot_lowerbound_polynomials()[atmosphere_type](0), | ||
| 1, | ||
| ] |
There was a problem hiding this comment.
What's the rationale for the use of 0 as the elevation? Shouldn't we grab either the lower bound from the LUT, or the mean of the scene if it's not a LUT dimension?
There was a problem hiding this comment.
The rationale was only to be consistent with the existing strategy, and resolve the issue of running into AOD values < the conditions included in the 6c training set. We currently use the same AOD bounds regardless of the scene (0.001 to 1). Using the elevation of 0 simply gives the lowest supported AOD value based on the atmosphere type polynomial and aligns with the minimum value used in training ~0.04.
With that said, I was debating whether to think through/build out the dynamic bounds based on the elevation. In that case, the right strategy would be to use the minimum AOD bound and maximum H2O bound (both from polynomials) from the scene minimum elevation?
There was a problem hiding this comment.
That's fair, given the inverse relationship between elevation and AOD, this is guaranteed to be conservative. I think we can probably relax it a bit with the lower end, but I'm happy to proceed with this for now.
For discussion.
We currently hit a Modtran warning that our default minimum LUT bound 0.001 is lower than the Modtran minimum ~0.04. This also resolves the warning and potentially issues with hitting atmospheres outside of emulator training.
LUTs look better with the 6C emulator:
