MetOffice / MetOffice/CSET

Power spectral density

Open
#1,931 2 comments 0 reactions 2 assignees Claimed by @cehalliwell View on GitHub
enhancement full_review science super
Dominant language
Python
Stars
33
Forks
19
Avg merge
1d 22h
Merged PRs (30d)
30

Description

Superticket to bring together the power spectra coding.
We are plotting power spectral density as opposed to power spectra to ensure results are comparable between different domain sizes, run lengths etc so not to scale power with number of datapoints.
For the regional domain we decided to include an option to plot vs wavenumber or wavelength to make plots easier to interpret
For global domain we will plot against wavenumber and include latitude dependent information on km-scale for wavenumbers

Power spectral density plots for regional and global domains.

We currently have a branch that calculates power spectral density for regional domains and for global domains.
**Next steps**
_global:_
- ensure that we only calculate power spectral density for i.e. tropics and mid latitudes from the global data.
- global spectral density to be plotted against wavenumber. This will require latitude dependent ticks at top of plot indicating length scales in km
- include slope k-3

_regional:_
- include rose switch to plot vs wavelength or wavenumber
- include slope k-5/3

_Ensemblefication of plots:_
There are several options with increasing complexity. This will be addressed via different PRs.

basic option 1 to get the PR over the line:
This will provide the user with too much information and too many plots but is a start
- include option to utilise realisation coordinate for slider component
- plot spectra as postage stamps (will make a very busy webpage)

intermediate option 2 (this will be a new PR and subissue):
- calculate the mean of the spectra across the ensemble members and plot a single plot
- calculate the mean and then the individual member's spectra as thin lines giving an impression of spread. The current line plotting already has capability for this type of plot. So we might need to copy over some of that code.
- alternatively calculate the standard deviation and plot the envelope around the mean of the spectra. This could be implemented as an option for the user in the rose gui.

advanced option 3 (new PR as this will be a different recipe):
- utilise the grouping operator once developed, but can be road-tested with land sea mask
- later

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.