-
Notifications
You must be signed in to change notification settings - Fork 15
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Diurnal climatology hardwired to eam.h4 #439
Comments
Maybe this information should be read from the climo subsection since we already have to specify which one it is:
In that case, so could |
This line is part of the It is called in two places. For all diurnal runs:
For model-vs-model diurnal runs:
@golaz Is the suggestion here to have a new parameter where the user can themselves define |
This came up in an email chain. I think what would likely be most helpful is to split the input_subdir = "archive/atm/hist"
input_files = "eam.h0" |
@mahf708 Sorry, I completely focused in on "might decide to store the[m] somewhere else" rather than the more important "currently hardwired to eam.h4". Yes, your solution seems sufficient, assuming that's the only thing that a user would want to change about their output path. |
I'm not overly familiar with the
@golaz Can I get a little clarification on what exactly we want the user to be able to change? Is it only the |
@mahf708 One other issue I foresee: currently, |
I think it is a good solution. |
With the exception of the h0 tape, the problem is that these tape numbers can be chosen at runtime 😜 (along with the output frequency, say 8xdaily or 1-hourly, and the "density," essentially the numbers of times a variable is saved before a new file is produced) If I understood what Chris was after, the coupled group reduced the output significantly recently for v3 and the tapes got shuffled a little. So, I believe Chris simply wants the user to be able to specify the tape number for specific tasks. It just so happens that's only a problem now for
Totally agree. I didn't think through this carefully initially. How easy is it to cross-reference user specifications between Btw I just looked at some older configs, I see I never use anything outside the h0 in e3sm_diags yet, so I am not familiar enough... but I'd like to add a nifty little piece of diagnostics to e3sm_diags that we developed recently for AWG. It relies on 3-hourly data; I need to think of a clean way to implement since it is computationally intensive. |
Yes EAM allows the user to specify at runtime how many hX tapes there are, what is in them, and the frequency. Its just been the convention for v1 and v2 that h4 has daily. (The h0 frequency can also be changed to something besides monthly). |
Let me see if I can clarify. When I implemented the reduced output, I ended up reshuffling file content and the 8xdaily is now in eam.h3 instead of eam.h4 previously. The [climo] task can handle this because we specify
The [e3sm_diags] tasks also knows where the post-processed files are. The only problem is that the diurnal climo filename is now different (because ncclimo includes eam.h? into the filename). I see three options, two easy, one more difficult.
(1) is cleaner, but there is a (very) small risk of unexpected behavior if a user does something odd. (2) is safer, but it adds one more parameter with redundant information. (3) is most elegant, but more complicated to implement. (1) and (3) would work out of the box (no modifications to cfg files), (2) would not. My preference would be (3), (1), (2). But given time constraint, maybe we should go with (1). Am I missing something? |
@golaz Thanks for the explanation. I agree with your preference ordering. I'll try to scope out what would be required for (3) and if it's looking to be too much, we can just get (1) in by the release deadline. I imagine (3) will indeed be difficult -- I think we've historically had trouble getting information between tasks/subtasks. |
@golaz Thank you for suggesting (3). That was remarkably simpler to implement than I thought it would be -- just a few iterations of determining how to properly access the configuration & where to place the code block. Merged in #457. The key piece that makes it work is the fact that we already have the |
The source for the e3sm_diags atmos diurnal climatology files is currently hardwired to eam.h4:
zppy/zppy/templates/e3sm_diags.bash
Line 75 in 184668c
This should not be the case as a user might decide to store the somewhere else.
The text was updated successfully, but these errors were encountered: