Python scripts for caculating the T-N Wave-Activity Flux
derived by Takaya and Nakamura (JAS,2001)
.
- Coder: Lai Sheng @ College of Atmospheric Science, Chengdu University of Information Technology.
- You can also visit my site for more detail: http://500hpa.cn/pyinmet/tnflux/
Takaya and Nakamura generalize the Plumb Wave-Activity Flux(Plumb,1985) so as to be applicable to small-amplitude Quasi-Geostrophic(QG) disturbances, either stationary or migratory, that are superimposed on a zonally varying basic flow, and introduced the T-N Wave-Activity Flux
('TN01' for short).
TN01 is of great advantage in climate monitoring and diagnosis.
TN01 with improved meridional component based on Plumb Wave-Activity Flux is appropriate for analyzing Rossby waves in the zonally asymmetric westerly. And it reflect the evolution of long-waves which the E-P Flux can't.
(Shi Chunhua,2017)
These Python scripts use the TN01 diagnostic formula in Spherical coordinates,
which is the Eq.38 of Takaya's paper published in 2001:
And assuming the wave is stationary ,so the Cu in Eq.38 would be zero.
So the formula of horizontal T-N Wave-Activity Flux could yield as followed:
We modified the GRADS script by Kazuaki Nishii into a Python3 version
(http://www.atmos.rcast.u-tokyo.ac.jp/nishii/programs/index.html)
- Python version
- Python 3.6
- Data import
- netCDF4
- Computation
- numpy (1.16.1)
- Visualization
- matplotlib (2.2.0)
- basemap (1.1.0)
All computations are based on numpy
arrays, which are very efficient.
Partial differential terms in the formula are calculated by numpy.gradient
in the central difference method.
The library of Data import and Visualization could change in terms of requirements(PyNIO,PyNGL...).
Horizontal TN01 caltulation require the datas below:
- Climatology average background of wind
U_c & V_c
and geopotentialpi_c
. - Geopotential in the analysis period
pi
.
Geopotential anomalies will be used to compute pertubation stream-functionpsi_p
in Quasi-Geostrophic(QG) assumption:
psi_p
=(pi
-pi_c
)/f
f
is the Coriolis parameter:f
=2*omega*sin(lat
)
Input Data is Geopotential, NOT Geopotential Height!!!
The Re-analysis from NCEP/NCAR(NCEP1) is Geopotential Height, Geopotential Height multiplied by gravity g
makes Geopotential.
px
for longitude direction
py
for latitude direction
The script for TN01 3-Dimension is under development.
The output figures sample(Datas from ECMWF ERA-Interim
)
(http://ds.data.jma.go.jp/tcc/tcc/products/clisys/figures/db_hist_pen_tcc.html)
and also the programs by Kazuaki Nishii @ University of Tokyo.
(http://www.atmos.rcast.u-tokyo.ac.jp/nishii/programs/index.html)