Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 19 additions & 0 deletions docs/authors.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
Main Authors
============
* Xylar Asay-Davis
* Milena Veniziani
* Philip Wolfram

Contributors
============
* Luke Van Roekel
* Greg Streletz
* Mark Petersen
* Stephen Price
* Joseph Kennedy
* Adrian Turner
* Matthew Hoffman
* Jeremy Fyke

For a list of all the contributions:
https://github.com/MPAS-Dev/MPAS-Analysis/graphs/contributors
20 changes: 20 additions & 0 deletions docs/e3sm.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
E3SM
====

The Energy Exascale Earth System Model (E3SM) project, previously known as
ACME, is central to ESM as well as many of the Climate and Environmental
Sciences Division activities, as it is developing a computationally advanced
coupled climate-energy model to investigate the challenges posed by the
interactions of weather-climate scale variability with energy and related
sectors.

A Full description of E3SM is available at:
https://climatemodeling.science.energy.gov/projects/energy-exascale-earth-system-model

Setting up E3SM runs
--------------------

All online analysis and output stream within MPAS components (MPAS-O and
MPAS-SeaIce) are configured to support MPAS-Analysis without any modifications
to namelists or streams files.

20 changes: 19 additions & 1 deletion docs/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,25 @@ Documentation
api
design_docs

MPAS Components and E3SM
========================

.. toctree::
:maxdepth: 2

mpaso
mpascice
e3sm


Indices and tables
==================

* :ref:`genindex`
* :ref:`genindex`

Authors
=======
.. toctree::
:maxdepth: 1

authors
63 changes: 63 additions & 0 deletions docs/mpascice.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
MPAS Sea Ice
============

The Model for Prediction Across Scales Sea Ice (MPAS Sea Ice, sometimes called
MPAS-CICE because of the physics it has inherited from the CICE sea-ice model)
is designed for the simulations of sea ice on unstructured grids supported by
the MPAS framework. The model has not yet been publicly released and does not
have public documentation.

Setting up Standalone MPAS Sea Ice Runs
---------------------------------------

In order to support all sea=ice analysis tasks from MPAS-Analysis, certain
"analysis members", Fortran modules that perform analysis during the
simulation, need to be enabled.

The following is a list of suggested values for namelist options, typically
found in ``namelist.cice`` or ``mpas-cice_in``::

config_AM_timeSeriesStatsMonthly_enable = .true.

Additionally, the duration of the run should be set to at least two years and
typically longer before most analysis is useful::

config_run_duration = '0002-00-00_00:00:00'

Several streams must be defined in the streams file, typically
``streams.cice``, (even if they will not be written out --
``output_interval=="none"``)::

<stream name="timeSeriesStatsMonthlyRestart"
type="input;output"
io_type="pnetcdf"
filename_template="mpascice.rst.am.timeSeriesStatsMonthly.$Y-$M-$D_$S.nc"
filename_interval="output_interval"
clobber_mode="truncate"
packages="timeSeriesStatsMonthlyAMPKG"
input_interval="initial_only"
output_interval="stream:restart:output_interval">
</stream>

<stream name="timeSeriesStatsMonthlyOutput"
type="output"
io_type="pnetcdf"
filename_template="mpascice.hist.am.timeSeriesStatsMonthly.$Y-$M-$D.nc"
filename_interval="00-01-00_00:00:00"
output_interval="00-01-00_00:00:00"
clobber_mode="truncate"
packages="timeSeriesStatsMonthlyAMPKG">

<var name="icePresent"/>
<var name="iceAreaCell"/>
<var name="iceVolumeCell"/>
<var name="xtime"/>
</stream>

The ``filename_tempalate`` can be modified as desired (these are the defalult
values from E3SM). For the ``timeSeriesStatsMonthlyOutput`` stream, both the
filename_interval and the output_interval must currently be monthly
(``"0000-01-00_00:00:00"``).

Additional fields can be included in the ``timeSeriesStatsMonthlyOutput``
streams. These are the minimum that allow the analysis to run successfully.
156 changes: 156 additions & 0 deletions docs/mpaso.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,156 @@
MPAS Ocean
==========

The Model for Prediction Across Scales Ocean (MPAS-O) is designed for the
simulation of the ocean system from time scales of months to millenia and
spatial scales from sub 1 km to global circulations.

MPAS-O has demonstrated the ability to accurately reproduce mesoscale ocean
activity with a local mesh refinement strategy.

In addition to faciliating the study of multiscale phenomena within the ocean
system, MPAS-O is intended for the study of anthropogenic climate change as
the ocean component of climate system models.


Full documentaiton is available at:
https://mpas-dev.github.io/ocean/ocean.html

Setting up Standalone MPAS-O Runs
---------------------------------

In order to support all ocean analysis tasks from MPAS-Analysis, certain
"analysis members", Fortran modules that perform analysis during the
simulation, need to be enabled.

The following is a list of suggested values for namelist options, typically
found in ``namelist.ocean`` or ``mpas-o_in``::

config_AM_surfaceAreaWeightedAverages_enable = .true.
config_AM_surfaceAreaWeightedAverages_compute_interval = '0000-00-00_01:00:00'
config_AM_layerVolumeWeightedAverage_enable = .true.
config_AM_layerVolumeWeightedAverage_compute_interval = '0000-00-00_01:00:00'
config_AM_meridionalHeatTransport_enable = .true.
config_AM_meridionalHeatTransport_compute_interval = '0000-00-00_01:00:00'
config_AM_mixedLayerDepths_enable = .true.
config_AM_timeSeriesStatsMonthly_enable = .true.

Additionally, the duration of the run should be set to at least two years and
typically longer before most analysis is useful::

config_run_duration = '0002-00-00_00:00:00'

Several streams must be defined in the streams file, typically
``streams.ocean``, (even if they will not be written out --
``output_intervale=="none"``)::

<stream name="timeSeriesStatsMonthlyRestart"
type="input;output"
filename_template="restarts/restart.AM.timeSeriesStatsMonthly.$Y-$M-$D_$h.$m.$s.nc"
filename_interval="output_interval"
reference_time="0001-01-01_00:00:00"
clobber_mode="truncate"
packages="timeSeriesStatsMonthlyAMPKG"
input_interval="initial_only"
output_interval="stream:restart:output_interval" >
</stream>

<stream name="timeSeriesStatsMonthlyOutput"
type="output"
filename_template="analysis_members/timeSeriesStatsMonthly.$Y-$M.nc"
filename_interval="0000-01-00_00:00:00"
reference_time="0001-01-01_00:00:00"
clobber_mode="truncate"
packages="timeSeriesStatsMonthlyAMPKG"
output_interval="00-01-00_00:00:00" >

<var_array name="activeTracers"/>
<var name="normalVelocity"/>
<var name="vertVelocityTop"/>
<var_array name="avgValueWithinOceanRegion"/>
<var_array name="avgValueWithinOceanLayerRegion"/>
<var name="dThreshMLD"/>
<var name="meridionalHeatTransportLatZ"/>
<var name="meridionalHeatTransportLat"/>
<var name="binBoundaryMerHeatTrans"/>
<var name="xtime"/>
</stream>

<stream name="layerVolumeWeightedAverageOutput"
type="output"
io_type="pnetcdf"
filename_template="mpaso.hist.am.layerVolumeWeightedAverage.$Y-$M-$D.nc"
filename_interval="00-01-00_00:00:00"
output_interval="none"
clobber_mode="truncate"
packages="layerVolumeWeightedAverageAMPKG">

<var name="xtime"/>
<var name="daysSinceStartOfSim"/>
<var_array name="minValueWithinOceanLayerRegion"/>
<var_array name="maxValueWithinOceanLayerRegion"/>
<var_array name="avgValueWithinOceanLayerRegion"/>
<var_array name="minValueWithinOceanVolumeRegion"/>
<var_array name="maxValueWithinOceanVolumeRegion"/>
<var_array name="avgValueWithinOceanVolumeRegion"/>
</stream>

<stream name="meridionalHeatTransportOutput"
type="output"
io_type="pnetcdf"
filename_template="mpaso.hist.am.meridionalHeatTransport.$Y-$M-$D.nc"
filename_interval="00-01-00_00:00:00"
output_interval="none"
clobber_mode="truncate"
packages="meridionalHeatTransportAMPKG">

<var name="xtime"/>
<var name="daysSinceStartOfSim"/>
<var name="binBoundaryMerHeatTrans"/>
<var name="meridionalHeatTransportLatZ"/>
<var name="meridionalHeatTransportLat"/>
<var name="refZMid"/>
<var name="refBottomDepth"/>
</stream>

<stream name="surfaceAreaWeightedAveragesOutput"
type="output"
io_type="netcdf"
filename_template="mpaso.hist.am.surfaceAreaWeightedAverages.$Y-$M-$D.nc"
filename_interval="00-01-00_00:00:00"
output_interval="none"
clobber_mode="truncate"
packages="surfaceAreaWeightedAveragesAMPKG">

<var name="xtime"/>
<var name="daysSinceStartOfSim"/>
<var_array name="minValueWithinOceanRegion"/>
<var_array name="maxValueWithinOceanRegion"/>
<var_array name="avgValueWithinOceanRegion"/>
</stream>

<stream name="mixedLayerDepthsOutput"
type="output"
io_type="pnetcdf"
filename_template="mpaso.hist.am.mixedLayerDepths.$Y-$M-$D.nc"
filename_interval="00-01-00_00:00:00"
output_interval="none"
clobber_mode="truncate"
packages="mixedLayerDepthsAMPKG">

<var name="xtime"/>
<var name="daysSinceStartOfSim"/>
<stream name="mesh"/>
<var name="tThreshMLD"/>
<var name="dThreshMLD"/>
<var name="tGradMLD"/>
<var name="dGradMLD"/>
</stream>

The ``filename_tempalate`` can be modified as desired (in most cases, these are
the defalult values from E3SM). For the ``timeSeriesStatsMonthlyOutput``
stream, both the filename_interval and the output_interval must currently be
monthly (``"0000-01-00_00:00:00"``).

Additional fields can be included in the ``timeSeriesStatsMonthlyOutput``
streams. These are the minimum that allow the analysis to run successfully.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm assuming this is from the wiki we used in this process. Thanks for including it here!

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These will become pages in the official documentation on ReadTheDocs as soon as this is merged.

10 changes: 5 additions & 5 deletions mpas_analysis/ocean/streamfunction_moc.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,11 +9,11 @@
import os

from mpas_analysis.shared.constants.constants import m3ps_to_Sv
from mpas_analysis.shared.plot.plotting import plot_vertical_section,\
from mpas_analysis.shared.plot.plotting import plot_vertical_section, \
timeseries_analysis_plot, setup_colormap

from mpas_analysis.shared.io.utility import build_config_full_path, \
make_directories
make_directories, get_files_year_month

from mpas_analysis.shared.io import open_mpas_dataset

Expand Down Expand Up @@ -485,9 +485,9 @@ def _compute_moc_time_series_postprocess(self): # {{{
streamName, startDate=self.startDateTseries,
endDate=self.endDateTseries, calendar=self.calendar))

dates = sorted([fileName[-13:-6] for fileName in inputFilesTseries])
years = np.array([int(date[0:4]) for date in dates])
months = np.array([int(date[5:7]) for date in dates])
years, months = get_files_year_month(inputFilesTseries,
self.historyStreams,
'timeSeriesStatsMonthlyOutput')

mocRegion = np.zeros(len(inputFilesTseries))
times = np.zeros(len(inputFilesTseries))
Expand Down
Loading