Hi Jana and Jakob , hi all,

Before commenting on this particular questions, I see a more general discussion here. There are many similar issues. Shall we focus on catching potential user mistakes/misunderstandings, or be less restrictive to simplify batch/operational processing? For example, I discussed with Simon today how OEM shall behave when an error occur during the iterations. (And I liked Simon's solution, OEM does not throw an error but flags the problem by an output argument. We must trust that the user checks that variable.) Hence, it would be good to come up with a general strategy. The question is when and how to discuss this?

There will be a bit of ARTS planning next week when Simon and I are in Hamburg. Don't know if we will get time to discuss also this, but maybe. So you others that will not be in Hamburg, if you have any opinion in this matter, send an email so we know about it, if we happen to reach this issue.


Regarding the present issue I think it should be possible to use the same set-up even if the cloudbox happen to end up to of zero size. If there should be some kind of "robust flag" or not, can be discussed.

This in line with my general view. We shall not be too restrictive in our tests. Real errors SHALL be caught, but as long as things are formally correct I think it is best to let things pass. In the end there could be a good reason for doing things that way.

Bye,

Patrick



On 2017-06-07 14:24, Jana Mendrok wrote:
Hi Jakob,

thanks for your feedback!
it was me who did that change. For the reason you also identified - that otherwise it easily goes unnoticed that actually no scattering has been done. This actually happened to me a few times. And considering that when calling the scattering solver, the user intends to actually perform a scattering calculation. I understand your issues, though.

Spontaneously, I don't see an option that satisfies both. Below a couple of options I can think of to deal with this issue (in the ps some option that you yourself could apply. without changes on the official code). Would appreciate feedback from other developers (and users), what you prefer, what is considered more important (my issues of course seem more important - to me. very subjective.). Or maybe you have better ideas how to solve that conflict.

so, code-wise we could (either):

- generally go back to the old behaviour.

- stay with the new behaviour.

- introduce a ("robust"?) option to allow the user to control the no-cloudbox behaviour.

- make cloudboxSetAutomatocally behave differently for clearsky cases (return a minimal cloudbox? and maybe let the user control which behaviour - minimal or no cloudbox - is applied?).

wishes,
Jana


ps. Some options, you yourself have, Jakob:

- you can of course locally remove the newly introduced error throwing and go back to the old behaviour in your own ARTS compilation.

- with the current version (no-cloudbox throws error) you could make a "cloudy" run (with empty results for the pure clearsky cases) and an explicit clearsky run and postprocess the results to whatever you need.

- you could use a manually set cloudbox (that can be better for some study setups anyways. ensures better comparability between different cases as then they equally affected by scattering solver errors (sphericity, vertical resolution, interpolation, etc.))


On Wed, Jun 7, 2017 at 1:26 PM, Jakob Sd <jakobdo...@googlemail.com <mailto:jakobdo...@googlemail.com>> wrote:

    Hi,

    recently there has been a change in the way DOIT and DISORT handle
    atmospheres where the cloud box is switched off (cloudbox_on = 0).
    Before, they just skipped the scattering calculation, threw a
    warning, and everything was ok, as the clear-sky calculations
    afterwards took care of it.
    But now, they throw a runtime error, which means that the
    calculation is stopped and the results will be empty for that
    atmosphere. I understand that this runtime error makes sense if
    someone wants to calculate with scattering but by mistake switches
    off the cloud box. But if someone has a batch of atmospheres from
    which some are clear sky atmospheres and uses
    cloudboxSetAutomatically, this can be quite uncomfortable, because
    all the clear sky atmospheres that were correctly calculated before,
    are now empty and the user has to manually select those atmospheres
    from his batch and calculate them using clear sky ARTS.

    Greetings from Hamburg,

    Jakob

    _______________________________________________
    arts_dev.mi mailing list
    arts_dev.mi@lists.uni-hamburg.de
    <mailto:arts_dev.mi@lists.uni-hamburg.de>
    https://mailman.rrz.uni-hamburg.de/mailman/listinfo/arts_dev.mi
    <https://mailman.rrz.uni-hamburg.de/mailman/listinfo/arts_dev.mi>




--
=====================================================================
Jana Mendrok, Ph.D. (Researcher)
Chalmers University of Technology
Department of Space, Earth and Environment
SE-412 96 Gothenburg, Sweden

Email: jana.mend...@chalmers.se <mailto:jana.mend...@chalmers.se>
Phone : +46 (0)31 772 1883
=====================================================================


_______________________________________________
arts_dev.mi mailing list
arts_dev.mi@lists.uni-hamburg.de
https://mailman.rrz.uni-hamburg.de/mailman/listinfo/arts_dev.mi

_______________________________________________
arts_dev.mi mailing list
arts_dev.mi@lists.uni-hamburg.de
https://mailman.rrz.uni-hamburg.de/mailman/listinfo/arts_dev.mi

Reply via email to