
DONE: add nprocs as command line option
  (different job script lines for ys vs linux)
  Beware: #BSUB -n occurs twice (includes ##BSUB),
  so change the first one for res5.0, or the second
  one (##BSUB) for res2.5

DONE: add project number as command line option

DONE: add option "submit", which if 'yes', will start the job
  without prompting for submit (a danger would be if every
  job had to compile, you could get thrown off yellowstone
  for oversubscription). 

DONE:  Could add option -execute so if you set -execute no, then 
  it would compile the jobs sequentially without actually 
  submitting (no danger of oversubscription).  After that, 
  run with -execute yes (which would be the default) to actually 
  run the jobs. But beware since "set exec" occurs 3 times in 
  the job script.

- Make "spread-sheet", with typical performance (secs/step),
  minutes per day, and recommended step size and wallclock limit.

- Could add namelist parms NTASK_LON, NTASK_LAT to command-line
  options, to be used for performance testing.

- Set up 1-year climatology runs, e.g., in 3 or 4 continuation runs
  (running sequentially in the same execdir).
  (best done with command-line calls from a script)

- Set up climatology run with user-specified start and stop days, 
  using SOURCE from any date in the climatology benchmark.

DONE: Make December "AGU storm" case

- add STEP to command-line options (include in namelist mods)

- Better documentation re env vars - maybe ask user to set
  them at the beginning, if they are not already set.
  TIEGCM_ROOT, TIMEGCM_ROOT, TGCMDATA, TGCMTEMP

- Theoretically, you could have a command-line option for
  all namelist parameters. This would allow for arbitrary
  additions or subtractions from the current namelist, but
  could lead to traps because only certain combinations
  of certain groups of namelist parameters are allowed. 
  namelist.add() keyword=value list.
  namelist.rm() remove by keyword

DONE:
  Allow test.name to be "in" list of test names, not necessarily "equal".
  This allows multiple runs of the same test with different configurations
  to be run in different execdirs.

DONE: Add project number and queue to command-line options.

DONE: Add command-line options to stdout print before prompt to submit.

- Allow user to specify the default namelist or job script, and make custom run.
  (longer term goal)

- Add clean_execdir (yes/no) to command-line options

DONE: Put default namelist and job scripts in this directory. Tgcmrun is heavily
  dependent on the exact format of these files because it modifies, adds, and 
  removes the default keyword=value pairs to make files for its own runs. 
  So the default files in the tgcmrd directory should not be changed. 
  This allows the user to modify scripts/*_default.inp for their own default 
  namelist files without breaking tgcmrun (similar for the job script).
  
DONE: Add wallclock limit command-line option, e.g., '-wc'. Can make run.wc25 
  and run.wc50 in classes.py as defaults: run.wc25_default, run.wc50_default.

- For climatology runs, add command-line options for SOURCE, START, STOP, etc. (?)

DONE: Expand all $TGCMDATA when writing namelist file, so the model does not 
  have to do it (data files GPI, GSWM, IMF, etc)
  There probably should be a run.tgcmdata rather than passing it around
  in argument lists.

- default wc limits should distinguish between tiegcm and timegcm, i.e.,
  take into account both the model and the resolution as well as the length
  of run and number of processors. Maybe use wc minutes per simulated day
  as estimated by default nprocs and average wc secs/step given the model
  and resolution. 

- Allow setting env var via command-line (like currently doing for TGCMDATA):

  "-tgcmdata     = /glade/p/hao/tgcm/..."          (default available for ys only)
  "-tgcmtemp     = /glade/scratch/user/..."        (default execdir)
  "-tiegcm_root  = /glade/u/home/user/tiegcm/..."  (default tiegcm model_root)
  "-timegcm_root = /glade/u/home/user/timegcm/..." (default tiegcm model_root)
  
