Conversation
| except ValueError: | ||
| raise argparse.ArgumentTypeError( | ||
| f"Invalid datetime format: '{datetime_string}'. " | ||
| f"Expected ISO format (YYYY-MM-DDTHH:MM:SS), e.g., '2025-04-04T00:00:00'" |
There was a problem hiding this comment.
If you can, can you make a small python script that would convert our "pack time":
YYYYMMDD hhmmss
that we have in cap_restart (a la 20000414 210000) and would emit:
YYYY-MM-DDThh:mm:ss
so that could then be passed to linkbcs.py. So something like:
set ISO_TIME = `convert_time_string.py cap_restart`
linkbcs.py config.yaml $ISO_TIME
rtodling
left a comment
There was a problem hiding this comment.
Just a general comment: this branching naming seems very unconventional. I'd expect something more like feature/linkbcs_... or feature/username/linkbcs...
rtodling
left a comment
There was a problem hiding this comment.
another general comment:
I would prefer to see the file catalog.yaml renamed bcs_catalog.yaml (or something like it) - I name that associates the catalog to its function.
Unfortunately I cannot rename this branch without deleting it and making a new one. Please refer to #823 for the renamed branch. |
|
I am getting an error when tring this: linkbcs.py --config linkbcs.yaml --timestamp 2025-11-28T21:00:00 |
@rtodling Can I see inside your linkbcs.yaml file? |
|
Just for the record, since this change needs to also get (not only in develop) but in GEOS-FP-5_44 ... I copied the code to: feature/linkbcs_py_5_44 you don't have to worry about maintaining both the code in both locations. I can bring your changes into the branch above. |
Sure: platform: nccs |
|
I am thinking that maybe python / the yaml-interpreter doesn't like the comment after the line for pchem ... I removed that and am trying again. |
|
just eye-balling your config I can see on the line |
|
Btw: this doesn't look right to me: bcs_shared/fvInput/ExtData/ in the error above. In the ADAS, fvInput is the highest directory level for bcs ... there is no such things as bcs_shared that I know of. |
That's inconsistent w/ how we've been referring to the land type for a really long time! |
That to make things simpler for this work, @mssolomo created a symlink so that: exists. But, yes, there is an |
|
Getting better ... indeed it seem the case of the land file might have been the issue associated w/ the crash of the program. So, the test case is running but I can see the following files: are not handed by your program - the files above correspond to the files needed by history when doing interpolation from the native grid to the grids in history. Without these being linked in the work dir, the model will run considerably slower .... |
@rtodling These are no longer needed in GEOSgcm v11 (maybe even v10). When we moved to ESMF regridding, these files became redundant. Indeed in a current v11 experiment, the scratch directory has only one I'll ping @bena-nasa and @atrayano to confirm. |
|
Yes the c2l files are only needed ESMF regridding days as Matt said, these should be needed in any model version in the last several years at least. |
|
@mathomp4 I just want to chime and offer additional simpler option to simplify code by avoiding user owned directory Ricardo uses now. Or just additional information. Path that Ricardo says he needs he doesn't have to point to this one: All of those files Someone would have to compare directories to confirm again noting was added but at the time that was synced to Larry's area. But if that is not used anymore it doesn't matter then ignore my comment. |
I remember after we had our more recent meeting on this on Teams you asked me for a dump fvwork directory so you could compare what I use and what I would be getting if I am to replace the link script - did anyone have a chance to look at that? What I am getting is very different from what I need - sure enough the model crash ... and here is one example of how it crashes: Character Resource Parameter: COMPONENT_TO_RECORD:[Empty formatted value], (default value) The reason being that the tile.bin file is empty! |
@rtodling Can you point us to your experiment/fvwork directory? So we can see what sort of symlinks are being made? |
/gpfsm/dnb10/projects/p139/rtodling/545/fvwork.67332 |
|
It's also unclear to me how your programs distinguishes from v11 and v12 bcs? I would expect to see an entry in the input yaml file referring to that, no? |
@rtodling Can you point us to a directory with symlinks made by this script? All the symlinks here are from your pearl script. |
|
Sorry - i thought I was at another PR and pressed the update branch button - I hope I didn't mess anyone up. |
Ahh. Okay. Now I remember. This is a difference between the GCM and the ADAS. In the gcm we do inside So, we run I suppose this is a philosophical question for @tclune: Should our new |
I might need to ping @biljanaorescanin. But I think the main BCs difference between v11 and v12 is the land BCs. That is by default we use NL3 Land in v11 but in v12 we move to v12 Land (and maybe soon v14). Everything else is sort of just grids and all, but it's the default land that has changed. |
The goal going forward is to transition to v12 BCs in What actually changes as far BCs sets in more details if interested: NL3 → v11 v11 → v12 The idea is to move toward I can give more details on all that is in q but I think that would be a long list for a message here. |
I'm having trouble getting the full context into my "buffer" at the moment. Will discuss with @mathomp4 tomorrow. |
The purpose of this PR is create a new linkbcs that is no longer a template file detemplated by gcm_setup, but rather a standalone python script ran via a config yaml. This new script should essentially be zero-diff from the old one.
To run, use
$INSTALL_DIR/bin/linkbcs.py --config <USER_CONFIG>.yaml --timestamp <YYYY>-<MM>-<DD>T<HH>:<MM>:<SS>from inside the directory you want your symlinks to be created.Here is a skeleton of what the config yaml should look like, along with valid options for each key:
SOME NOTES:
.../<user_dir>/GEOSgcm/install/