Coder Social home page Coder Social logo

weilinxiao / t-n_wave-activity-flux Goto Github PK

View Code? Open in Web Editor NEW

This project forked from laishenggx/t-n_wave-activity-flux

0.0 0.0 0.0 1.3 MB

Python scripts for caculating the Wave-Activity Flux derived by Takaya and Nakamura (JAS,2001)

License: MIT License

Python 100.00%

t-n_wave-activity-flux's Introduction

T-N Wave-Activity Flux

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.
  • E-mail: [email protected]

Introduction

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)

Formulation

These Python scripts use the TN01 diagnostic formula in Spherical coordinates,
which is the Eq.38 of Takaya's paper published in 2001:

Sample

The first two terms in Eq.38 are taken into account while computing on the horizontal direction.
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:

Sample

Programing

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

Data & Process

Horizontal TN01 caltulation require the datas below:

  • Climatology average background of windU_c & V_c and geopotentialphi_c.
  • Geopotential in the analysis periodphi.

Geopotential anomalies will be used to compute pertubation stream-functionpsi_p in Quasi-Geostrophic(QG) assumption:

  • psi_p=(phi-phi_c)/f
    f is the Coriolis parameter: f=2*omega*sin(lat)

Output

px for longitude direction
py for latitude direction

3D (Horizontal + Vertical)

The script for TN01 3-Dimension is under development, it would be released in the coming months.

Reliability

The output figures sample(Datas from ECMWF ERA-Interim)

Sample

Results are compatible with the Wave-Activity Flux figures(JRA-55) made by JMA-TCC,
(http://ds.data.jma.go.jp/tcc/tcc/products/clisys/figures/db_hist_pen_tcc.html)

Sample

and also the programs by Kazuaki Nishii @ University of Tokyo.
(http://www.atmos.rcast.u-tokyo.ac.jp/nishii/programs/index.html)

t-n_wave-activity-flux's People

Contributors

laishenggx avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.