-
Notifications
You must be signed in to change notification settings - Fork 24
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
Change the cupid-run API? #63
Comments
Another suggestion was to add another layer to the compute_notebooks:
# This is where all the notebooks you want run and their
### parameters are specified. Several examples of different
### types of notebooks are provided.
# The first key (here simple_no_params_nb) is the name of the
### notebook from nb_path_root, minus the .ipynb
index:
parameter_groups:
none: {}
atmosphere:
adf_quick_run:
parameter_groups:
none:
adf_path: ../../externals/ADF
config_path: .
config_fil_str: "config_f.cam6_3_119.FLTHIST_ne30.r328_gamma0.33_soae.001.yaml"
ocean:
ocean_surface:
parameter_groups:
none:
Case: b.e23_alpha16b.BLT1850.ne30_t232.054
savefigs: False
mom6_tools_config:
start_date: '0091-01-01'
end_date: '0101-01-01'
Fnames:
native: 'mom6.h.native.????-??.nc'
static: 'mom6.h.static.nc'
oce_cat: /glade/u/home/gmarques/libs/oce-catalogs/reference-datasets.yml
land:
land_comparison:
parameter_groups:
none:
cases:
- ctsm51d159_f45_GSWP3_bgccrop_1850pAD
- ctsm51d159_f45_GSWP3_bgccrop_1850pSASU
type:
- 1850pAD
- 1850pSASU and then have a way to specify which component or components to run (default being "all"). If we adopt this, we may want to use the CESM convention of |
@rmshkv -- for now let's just add the additional layer of keys; at some point we want to add a mechanism to make it easy to run a subset of notebooks, but we don't need to figure that out right now |
Oh, something else I was thinking about... should we mirror the keys under |
That's a good idea! I'm not sure if there are any component diagnostics with enough specific parameters (like different regions to calculate things over, etc.) that might make putting everything in |
It would be nice to break up
examples/coupled_model/config.yml
into many smaller files, and then have a mechanism to pass multiple files tocupid-run
. I see two big advantages to this:nblibrary/
coupled_model/
directory altogether, and just haveexamples/
contain a bunch of YAML filesI'm not sure what we would want to do about keys in
config.yaml
that apply to all notebooks (data_sources
,computation_config
,global_params
) or the Jupyter Book generation. Maybe we could keepconfig.yaml
for global settings, and then come up with a naming convention for the per-component files. If they are allcupid-[component].yaml
, then something likewould be the equivalent of the current
cupid-run config.yaml
while allowing for$ cupid-run --global-config config.yaml cupid-atm.yaml
if you only want to run the atmosphere notebook. (And maybeconfig.yaml
is the default value for--global-config
so it can be omitted most of the time?)I like the general layout of this new API, though every option / file name mentioned was "first thing that came to mind" and could likely be improved upon with a little thought.
The text was updated successfully, but these errors were encountered: