Skip to content

Commit 85c009e

Browse files
committed
Merge branch 'MPAS-Dev/develop' into master
2 parents 30b394a + 6fe2d28 commit 85c009e

76 files changed

Lines changed: 6397 additions & 2149 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

README.md

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -83,6 +83,33 @@ for more details.
8383
`--generate` flag on the command line. See the comments in
8484
`mpas_analysis/config.default` for more details on this option.
8585

86+
## List of MPAS output files that are needed by MPAS-Analysis:
87+
88+
* mpas-o files:
89+
* `mpaso.hist.am.timeSeriesStatsMonthly.*.nc` (Note: since OHC
90+
anomalies are computed wrt the first year of the simulation,
91+
if OHC diagnostics is activated, the analysis will need the
92+
first full year of `mpaso.hist.am.timeSeriesStatsMonthly.*.nc`
93+
files, no matter what `[timeSeries]/startYear` and
94+
`[timeSeries]/endYear` are. This is especially important to know if
95+
short term archiving is used in the run to analyze: in that case, set
96+
`[input]/runSubdirectory`, `[input]/oceanHistorySubdirectory` and
97+
`[input]/seaIceHistorySubdirectory` to the appropriate run and archive
98+
directories and choose `[timeSeries]/startYear` and
99+
`[timeSeries]/endYear` to include only data that have been short-term
100+
archived).
101+
* `mpaso.hist.am.meridionalHeatTransport.0001-03-01.nc` (or any
102+
`hist.am.meridionalHeatTransport` file)
103+
* `mpaso.rst.0002-01-01_00000.nc` (or any other mpas-o restart file)
104+
* `streams.ocean`
105+
* `mpas-o_in`
106+
* mpas-cice files:
107+
* `mpascice.hist.am.timeSeriesStatsMonthly.*.nc`
108+
* `mpascice.rst.0002-01-01_00000.nc` (or any other mpas-cice restart
109+
file)
110+
* `streams.cice`
111+
* `mpas-cice_in`
112+
86113
## Purge Old Analysis
87114

88115
To purge old analysis (delete the whole output directory) before running run
Lines changed: 145 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,145 @@
1+
[runs]
2+
## options related to the run to be analyzed and reference runs to be
3+
## compared against
4+
5+
# mainRunName is a name that identifies the simulation being analyzed.
6+
mainRunName = 20170926.FCT2.A_WCYCL1850S.ne30_oECv3.anvil
7+
# preprocessedReferenceRunName is the name of a reference run that has been
8+
# preprocessed to compare against (or None to turn off comparison). Reference
9+
# runs of this type would have preprocessed results because they were not
10+
# performed with MPAS components (so they cannot be easily ingested by
11+
# MPAS-Analysis)
12+
preprocessedReferenceRunName = B1850C5_ne30_v0.4
13+
14+
[input]
15+
## options related to reading in the results to be analyzed
16+
17+
# directory containing model results
18+
baseDirectory = /lcrc/group/acme/jwolfe/acme_scratch/20170926.FCT2.A_WCYCL1850S.ne30_oECv3.anvil/run
19+
20+
# names of ocean and sea ice meshes (e.g. oEC60to30v3, oQU240v3, oRRS30to10v3, etc.)
21+
mpasMeshName = oEC60to30v3
22+
23+
# Directory for mapping files (if they have been generated already). If mapping
24+
# files needed by the analysis are not found here, they will be generated and
25+
# placed in the output mappingSubdirectory
26+
mappingDirectory = /lcrc/group/acme/mpas_analysis/mapping
27+
28+
[output]
29+
## options related to writing out plots, intermediate cached data sets, logs,
30+
## etc.
31+
32+
# directory where analysis should be written
33+
baseDirectory = /dir/to/analysis/output
34+
35+
# Anvil doesn't have direct access to a web portal, so output will need
36+
# to be copied elsewhere (e.g. NERSC web portal)
37+
htmlSubdirectory = html
38+
39+
# a list of analyses to generate. Valid names are:
40+
# 'timeSeriesOHC', 'timeSeriesSST', 'climatologyMapSST',
41+
# 'climatologyMapSSS', 'climatologyMapMLD', 'streamfunctionMOC',
42+
# 'indexNino34', 'meridionalHeatTransport',
43+
# 'timeSeriesSeaIceAreaVol', 'climatologyMapSeaIceConcNH',
44+
# 'climatologyMapSeaIceConcSH', 'climatologyMapSeaIceThickNH',
45+
# 'climatologyMapSeaIceThickSH'
46+
# the following shortcuts exist:
47+
# 'all' -- all analyses will be run
48+
# 'all_timeSeries' -- all time-series analyses will be run
49+
# 'all_climatology' -- all analyses involving climatologies
50+
# 'all_horizontalMap' -- all analyses involving horizontal climatology maps
51+
# 'all_ocean' -- all ocean analyses will be run
52+
# 'all_seaIce' -- all sea-ice analyses will be run
53+
# 'no_timeSeriesOHC' -- skip 'timeSeriesOHC' (and similarly with the
54+
# other analyses).
55+
# 'no_ocean', 'no_timeSeries', etc. -- in analogy to 'all_*', skip the
56+
# given category of analysis
57+
# an equivalent syntax can be used on the command line to override this
58+
# option:
59+
# ./run_mpas_analysis config.analysis --generate \
60+
# all,no_ocean,all_timeSeries
61+
generate = ['all']
62+
63+
# alternative examples that would perform all analysis except
64+
# 'timeSeriesOHC'
65+
#generate = ['all', 'no_timeSeriesOHC']
66+
# Each subsequent list entry can be used to alter previous list entries. For
67+
# example, the following would run all tasks that aren't ocean analyses,
68+
# except that it would also run ocean time series tasks:
69+
#generate = ['all', 'no_ocean', 'all_timeSeries']
70+
71+
[climatology]
72+
## options related to producing climatologies, typically to compare against
73+
## observations and previous runs
74+
75+
# the first year over which to average climatalogies
76+
startYear = 11
77+
# the last year over which to average climatalogies
78+
endYear = 20
79+
80+
[timeSeries]
81+
## options related to producing time series plots, often to compare against
82+
## observations and previous runs
83+
84+
# start and end years for timeseries analysis. Using out-of-bounds values
85+
# like start_year = 1 and end_year = 9999 will be clipped to the valid range
86+
# of years, and is a good way of insuring that all values are used.
87+
startYear = 1
88+
endYear = 22
89+
90+
[index]
91+
## options related to producing nino index.
92+
93+
# start and end years for the nino 3.4 analysis. Using out-of-bounds values
94+
# like start_year = 1 and end_year = 9999 will be clipped to the valid range
95+
# of years, and is a good way of insuring that all values are used.
96+
# For valid statistics, index times should include at least 30 years
97+
startYear = 1
98+
endYear = 9999
99+
100+
[oceanObservations]
101+
## options related to ocean observations with which the results will be compared
102+
103+
# directory where ocean observations are stored
104+
baseDirectory = /lcrc/group/acme/mpas_analysis/observations/Ocean
105+
sstSubdirectory = SST
106+
sssSubdirectory = SSS
107+
mldSubdirectory = MLD
108+
ninoSubdirectory = Nino
109+
mhtSubdirectory = MHT
110+
111+
112+
[oceanPreprocessedReference]
113+
## options related to preprocessed ocean reference run with which the results
114+
## will be compared (e.g. a POP, CESM or ACME v0 run)
115+
116+
# directory where ocean reference simulation results are stored
117+
baseDirectory = /lcrc/group/acme/mpas_analysis/ACMEv0_lowres/B1850C5_ne30_v0.4/ocn/postprocessing
118+
119+
[seaIceObservations]
120+
## options related to sea ice observations with which the results will be
121+
## compared
122+
123+
# directory where sea ice observations are stored
124+
baseDirectory = /lcrc/group/acme/mpas_analysis/observations/SeaIce
125+
126+
[seaIcePreprocessedReference]
127+
## options related to preprocessed sea ice reference run with which the results
128+
## will be compared (e.g. a CICE, CESM or ACME v0 run)
129+
130+
# directory where ocean reference simulation results are stored
131+
baseDirectory = /lcrc/group/acme/mpas_analysis/ACMEv0_lowres/B1850C5_ne30_v0.4/ice/postprocessing
132+
133+
[timeSeriesSeaIceAreaVol]
134+
## options related to plotting time series of sea ice area and volume
135+
136+
# plot on polar plot
137+
polarPlot = False
138+
139+
[streamfunctionMOC]
140+
## options related to plotting the streamfunction of the meridional overturning
141+
## circulation (MOC)
142+
maxChunkSize = 1000
143+
144+
# Mask file for ocean basin regional computation
145+
regionMaskFiles = /lcrc/group/acme/mpas_analysis/region_masks/oEC60to30v3_Atlantic_region_and_southern_transect.nc
Lines changed: 63 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,63 @@
1+
#!/bin/bash
2+
3+
# comment out if using debug queue
4+
#PBS -q acme
5+
#PBS -A ACME
6+
#PBS -l nodes=1
7+
#PBS -l walltime=1:00:00
8+
#PBS -N mpas_analysis
9+
#PBS -o mpas_analysis.o$PBS_JOBID
10+
#PBS -e mpas_analysis.e$PBS_JOBID
11+
12+
cd $PBS_O_WORKDIR
13+
14+
# needed to prevent interference with acme-unified
15+
unset LD_LIBRARY_PATH
16+
soft add +acme-unified-1.1.1-nox
17+
18+
# MPAS/ACME job to be analyzed, including paths to simulation data and
19+
# observations. Change this name and path as needed
20+
run_config_file="config.run_name_here"
21+
# change this if not submitting this script from the directory
22+
# containing run_mpas_analysis
23+
mpas_analysis_dir="."
24+
# one parallel task per node by default
25+
parallel_task_count=6
26+
# ncclimo can run with 1 (serial) or 12 (bck) threads
27+
ncclimo_mode=bck
28+
29+
if [ ! -f $run_config_file ]; then
30+
echo "File $run_config_file not found!"
31+
exit 1
32+
fi
33+
if [ ! -f $mpas_analysis_dir/run_mpas_analysis ]; then
34+
echo "run_mpas_analysis not found in $mpas_analysis_dir!"
35+
exit 1
36+
fi
37+
38+
39+
job_config_file=config.output.$PBS_JOBID
40+
41+
# write out the config file specific to this job
42+
cat <<EOF > $job_config_file
43+
[execute]
44+
## options related to executing parallel tasks
45+
46+
# the number of parallel tasks (1 means tasks run in serial, the default)
47+
parallelTaskCount = $parallel_task_count
48+
49+
# the parallelism mode in ncclimo ("serial" or "bck")
50+
# Set this to "bck" (background parallelism) if running on a machine that can
51+
# handle 12 simultaneous processes, one for each monthly climatology.
52+
ncclimoParallelMode = $ncclimo_mode
53+
54+
EOF
55+
56+
# first, perform setup only without mpirun to create the mapping files
57+
$mpas_analysis_dir/run_mpas_analysis --purge --setup_only $run_config_file \
58+
$job_config_file
59+
# next, do the full run now tht we have mapping files, but this time launching
60+
# with mpirun
61+
mpirun -n 1 $mpas_analysis_dir/run_mpas_analysis $run_config_file \
62+
$job_config_file
63+

configs/edison/config.20170807.beta1.G_oQU240.edison

Lines changed: 8 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -17,9 +17,14 @@ preprocessedReferenceRunName = B1850C5_ne30_v0.4
1717
# directory containing model results
1818
baseDirectory = /scratch1/scratchdirs/xylar/acme_scratch/edison/G-QU240-master-intel/run
1919

20-
# names of ocean and sea ice meshes (e.g. EC60to30, QU240, RRS30to10, etc.)
20+
# names of ocean and sea ice meshes (e.g. oEC60to30v3, oQU240v3, oRRS30to10v3, etc.)
2121
mpasMeshName = oQU240
2222

23+
# Directory for mapping files (if they have been generated already). If mapping
24+
# files needed by the analysis are not found here, they will be generated and
25+
# placed in the output mappingSubdirectory
26+
# mappingDirectory = /dir/for/mapping/files
27+
2328
[output]
2429
## options related to writing out plots, intermediate cached data sets, logs,
2530
## etc.
@@ -36,8 +41,8 @@ htmlSubdirectory = html
3641
# 'timeSeriesOHC', 'timeSeriesSST', 'climatologyMapSST',
3742
# 'climatologyMapSSS', 'climatologyMapMLD', 'streamfunctionMOC',
3843
# 'indexNino34', 'meridionalHeatTransport',
39-
# 'timeSeriesSeaIceAreaVol', 'climatologyMapSeaIceConcNH',
40-
# 'climatologyMapSeaIceConcSH', 'climatologyMapSeaIceThickNH',
44+
# 'timeSeriesSeaIceAreaVol', 'climatologyMapSeaIceConcNH',
45+
# 'climatologyMapSeaIceConcSH', 'climatologyMapSeaIceThickNH',
4146
# 'climatologyMapSeaIceThickSH'
4247
# the following shortcuts exist:
4348
# 'all' -- all analyses will be run
@@ -73,13 +78,6 @@ startYear = 2
7378
# the last year over which to average climatalogies
7479
endYear = 5
7580

76-
# The names of the mapping file used for interpolation. If a mapping file has
77-
# already been generated, supplying the absolute path can save the time of
78-
# generating a new one. If nothing is supplied, the file name is automatically
79-
# generated based on the MPAS mesh name, the comparison grid resolution, and
80-
# the interpolation method
81-
# mpasMappingFile =
82-
8381
[timeSeries]
8482
## options related to producing time series plots, often to compare against
8583
## observations and previous runs

0 commit comments

Comments
 (0)