项目作者: arulalant

项目描述 :
Wave Activity Flux
高级语言: Python
项目地址: git://github.com/arulalant/calc_WAF.git
创建时间: 2018-01-28T11:18:16Z
项目社区:https://github.com/arulalant/calc_WAF

开源协议:

下载


calc_WAF

Wave Activity Flux

  1. Usage:
  2. calc_waf.py [-M] [-h] {u_file} {u_clim_file} {u_name}
  3. {v_file} {v_clim_file} {v_name} {zg_file} {zg_clim_file} {zg_name}
  4. {output_wafx_file} {output_wafy_file} {hPa} {syear} {eyear} {smon} {emon} {sday} {edy} {cyear}
  5. Options
  6. -M -> Display this on-line manual page and exit
  7. -h -> Display a help/usage message and exit
  8. Description
  9. Takes as input the u wind, v wind, geopotential height (zg)
  10. and their climatologies and outputs the x and y
  11. components of the wave activity flux.
  12. Assumptions by tnf_xy_onelevel.f90 script (i.e. hard wired elements)
  13. The WAF Fortran code is hard wired to produce output on a
  14. global 2.5 by 2.5 deg grid (i.e. 73 lats, 144 lons).
  15. It is hard wired that the input data is from the 250 hPa level.
  16. It is assumed that the input data is three dimensional (time, lat, lon).
  17. Python (cal_WAF.py) script assumptions and capability
  18. It assumes the global data is passed as input with any degree resolution,
  19. which will be going to be converted to 2.5x2.5 deg.
  20. User can choose their desired pressure level from input files.
  21. User can choose their desired time (range of dates) from the input files,
  22. it assumes that daily input files are being passed as input but works well for monthly data also.
  23. Reference
  24. Takaya, K., Nakamura, H., 2001.
  25. A formulation of a phase-independent wave-activity flux
  26. for stationary and migratory quasi-geostrophic eddies
  27. on zonally-varying basic flow. J. Atmos. Sci., 58, 608-627
  28. Environment
  29. Need to load cdat
  30. Example by (arulalant@gmail.com, arulalan@cas.iitd.ac.in)
  31. /opt/cdat/bin/cdat calc_waf.py
  32. era_interim_u_dailyavg_19820101_20171031.nc
  33. era_interim_u_daily_climatology_1982_2010_cdo.nc
  34. u
  35. era_interim_v_dailyavg_19820101_20171031.nc
  36. era_interim_v_daily_climatology_1982_2010_cdo.nc
  37. v
  38. era_interim_z_dailyavg_19820101_20171031.nc
  39. era_interim_z_daily_climatology_1982_2010_cdo.nc
  40. z
  41. WAF_DATA/wafx_200hPa_%s.nc # %s will be replaced with year
  42. WAF_DATA/wafy_200hPa_%s.nc # %s will be replaced with year
  43. 200 # extract particular pressure level
  44. 1982 # start year of needed data from input data
  45. 2017 # end year of needed data from input data
  46. 3 # start month of needed data from input data
  47. 6 # end month of needed data from input data
  48. 1 # start day of start month of needed data from input data
  49. 30 # end day of end month of needed data from input data
  50. 2010 # climatology year of climatology input files
  51. Purpose : Purpose of the extra 8 arguments to fulfil the extracting time and level constraints from the input files
  52. and create the year wise output wafx, wafy files. For example, in the above example arguments are given to
  53. extract MAMJ months, daily data from 1982-2017 years input and climatology year is 2010 (which was created
  54. by cdo from year 1982-2010).
  55. Author
  56. Damien Irving, 12 Oct 2012.
  57. Updated by :
  58. Arulalan.T 29 Jan 2018. <arulalant@gmail.com>
  59. Works on latest UV-CDAT version as on 2018.
  60. As per fortran script, both raw data and climatology data time length should be same.
  61. So we are splitting the calc_waf calculation of every year in a loop.
  62. Bugs
  63. Please report any problems to: d.irving@student.unimelb.edu.au