Hi all, The (old) issue of negative absorption, caused by negative vmr during an iterative retrieval, came up when I did a change in arts. This issue is a bit complicated, as radiative transfer not really defined for negative absorption, but negative vmr easily appear due to noise and other errors.
I have added some features for basic handling of these issue. Not a perfect general solution, but something for testing and possible future refinement. First of all, default now in qarts (and then qpack) is that negative vmr are not allowed. If you want to remove this constrain, set Q.VMR_NEGATIVE_OK = true. Further, you can now specify min and max values for ABS_SPECIES and T, by the field MINMAX. Default is [-Inf,Inf]. To avoid negative vmr, set ABS_SPECIES.MINMAX to e.g. 1e-12. Notice that this value follows UNIT and should maybe be changed between using rel or vmr as retrieval unit. If max value left out, it is set to Inf. For temperature, something like [120 320] could work. MINMAX considered also during retrieval iterations. All x-values set by oem to be outside MINMAX are reset to the min or max value. This is a step away from the "oem principle". I have played around with qpack2_demo, and for that case setting a min value works fine. But there are for sure more complicated cases, where it could fail. For the moment, I leave the new fields for you to test. If you want to avoid all this, just set Q.VMR_NEGATIVE_OK = true and qpack should work as before these additions. Bye, Patrick _______________________________________________ qpack mailing list [email protected] https://www.sat.ltu.se/mailman/listinfo/qpack
