-
Notifications
You must be signed in to change notification settings - Fork 52
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
Add Arctic Ocean time series, profiles, and TS diagrams to polar regions #896
Add Arctic Ocean time series, profiles, and TS diagrams to polar regions #896
Conversation
@milenaveneziani The depth interval for profiles and time series for Arctic Ocean regions could be modified to more appropriate values. I just didn't know what the best default would be. |
I think the TS Diagrams look a little better now that I've changed the bins |
@cbegeman, this looks amazing! I'll run this on a SORRM and an ARRM run just to make sure things work out fine on a variety of meshes. But everything looked good to me when I looked through the code. |
@cbegeman: thanks for fixing this! |
I don't think we currently support multiple depth intervals, and that would be a big enough change to warrant a separate PR. Do you have a preference for which of these we support for now? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It looks to me like we might need to decrease the hard-coded lower bound on density contours in the code:
contours = numpy.arange(24., 29.+rhoInterval, rhoInterval) |
https://portal.nersc.gov/project/e3sm/xylar/analysis/arrm/20220803.WCYCL1950.ne30pg2_ARRM10to60E2r1.baseline.cori-knl/ts_0011-0020_climo_0011-0020/ocean/TS_diagram_ArcticOceanRegions_ArcticOcean-noBarents,KaraSeas_ANN.png
Maybe 23?
I also wondered if you are open to adding Hovmoller plots for Arctic Ocean Regions as part of this PR? It seems like it would fit into very will with the other 3 and they were conspicuously missing when I looked through the analysis.
MPAS-Analysis/mpas_analysis/polar_regions.cfg
Lines 351 to 395 in 1bd9526
[hovmollerOceanRegions] | |
## options related to plotting Hovmoller diagrams (depth vs. time plots) of | |
## regional means of 3D MPAS fields | |
# the names of region groups to plot, each with its own section below | |
regionGroups = ['Antarctic Regions'] | |
[hovmollerAntarcticRegions] | |
## options related to plotting Hovmoller diagrams of Antarctic Regions | |
# a list of dictionaries for each field to plot. The dictionary includes | |
# prefix (used for file names, task names and sections) as well as the MPAS | |
# name of the field, units for colorbars and a the name as it should appear | |
# in figure titles and captions. | |
fields = | |
[{'prefix': 'potentialTemperature', | |
'mpas': 'timeMonthly_avg_activeTracers_temperature', | |
'units': r'$$\degree$$C', | |
'titleName': 'Potential Temperature'}, | |
{'prefix': 'salinity', | |
'mpas': 'timeMonthly_avg_activeTracers_salinity', | |
'units': r'PSU', | |
'titleName': 'Salinity'}, | |
{'prefix': 'potentialDensity', | |
'mpas': 'timeMonthly_avg_potentialDensity', | |
'units': r'kg m$$^{-3}$$', | |
'titleName': 'Potential Density'}] | |
# a list of region names from the region masks file to plot | |
regionNames = ["Southern Ocean 60S", "Weddell Sea Shelf", | |
"Weddell Sea Deep", "Bellingshausen Sea Shelf", | |
"Bellingshausen Sea Deep", "Amundsen Sea Shelf", | |
"Amundsen Sea Deep", "Eastern Ross Sea Shelf", | |
"Eastern Ross Sea Deep", "Western Ross Sea Shelf", | |
"Western Ross Sea Deep", "East Antarctic Seas Shelf", | |
"East Antarctic Seas Deep"] | |
# whether to compute an anomaly with respect to the start of the time series | |
computeAnomaly = False | |
# Number of points over which to compute moving average(e.g., for monthly | |
# output, movingAveragePoints=12 corresponds to a 12-month moving average | |
# window) | |
movingAveragePoints = 12 |
mpas_analysis/polar_regions.cfg
Outdated
Tbins = numpy.linspace(-2.5, 8.0, 211) | ||
Sbins = numpy.linspace(33.5, 35.5, 401) | ||
Sbins = numpy.linspace(30, 35.5, 201) | ||
|
||
# density contour interval | ||
rhoInterval = 0.1 | ||
rhoInterval = 0.2 | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm not sure why we added the [TSDiagramsForArcticOceanRegions]
section here but I think it makes sense to remove it and instead to make these edits in default.cfg
.
It looks to me from the plots like rhoInterval = 0.4
might be more appropriate, given this broad salinity range.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Resolved by 18fbc74.
rhoInterval = 0.3
looked more appropriate than rhoInterval=0.4
. See https://web.lcrc.anl.gov/public/e3sm/diagnostic_output/ac.cbegeman/analysis/A_WCYCL1850.ne4_oQU480.anvil/clim_3-5_ts_1-5_arcticTSdefault/ocean/index.html
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good. I think you could even go back to 0.2 with the revised density range you now have.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
But I'm fine with 0.3.
oops, I had forgotten about that. Then we could just do the 0 to bottom depth range for now. And yes, I could always add a min,zmax to each geometric_feature, but probably not a big priority at the moment. (thanks for letting me know about that feature though: I had not realized we could that). And yes, could point about reducing the minimum density for the TS diagrams rho contours to 23. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks great @cbegeman. Thanks!
Thank @cbegeman. I'll rerun the analysis that I ran before (but likely not tonight) and re-review once I have it. |
I know I have already approved this, but I am thinking to run a test as well. Will let you know how it goes. |
@cbegeman, this is so great! Here's my SORRM analysis: I wouldn't change anything here, it's ready to go. The one thing I noticed that we might want to change down the road is that Thermal Forcing might not make a lot of sense to plot in the Arctic, since we don't typically worry about melting ice shelves there. But it does no harm. |
I will merge this as soon as I make the v1.7.2 release. I'm not adding new major features to that release but it'll be in 1.8.0! |
7b84206
to
1448292
Compare
@cbegeman, I have no problem with you having removed it. I think that's what we want in the long run. I just didn't want to make more work for you. |
@cbegeman, maybe go ahead and add your commit back that removed TF for Arctic since you have it already. |
@xylar All set! |
Great, thanks @cbegeman! Such good work and I already feel like we've learned quite a bit from these plots just in the runs we did to test the new analysis. |
This PR adds regional time series, profiles, and TS diagrams to
polar_regions.cfg
along with minor tweaks to the relevant ocean subtasks.TS Diagrams here: https://web.lcrc.anl.gov/public/e3sm/diagnostic_output/ac.cbegeman/analysis/A_WCYCL1850.ne4_oQU480.anvil/clim_3-5_ts_1-5_arcticTS/ocean/index.html
Time Series here:
https://web.lcrc.anl.gov/public/e3sm/diagnostic_output/ac.cbegeman/analysis/A_WCYCL1850.ne4_oQU480.anvil/clim_3-5_ts_1-5_arcticTimeSeries/ocean/index.html
Profiles here:
https://web.lcrc.anl.gov/public/e3sm/diagnostic_output/ac.cbegeman/analysis/A_WCYCL1850.ne4_oQU480.anvil/clim_3-5_ts_1-5_arcticProfiles/ocean/index.html