爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 15794|回复: 28

[源程序] 介绍威斯康星大学气候学副教授Dan Vimont自编的MATLAB函数库

[复制链接]

新浪微博达人勋

发表于 2013-5-31 00:14:38 | 显示全部楼层 |阅读模式

登录后查看更多精彩内容~

您需要 登录 才可以下载或查看,没有帐号?立即注册 新浪微博登陆

x
本帖最后由 hillside 于 2013-5-31 13:16 编辑

Climatological Analysis(《气候学分析》课程)
主讲:Dan Vimont

Course Website(课程网址):
http://www.aos.wisc.edu/~dvimont/aos575

Meeting Time and Location:
Class meets MWF at 9:55-10:45 a.m.,in AO&SS 811
Office Hours:
By appointment

Course Syllabus:  (PDF)
Course Schedule:  (PDF)
Paper Discussions:  (PDF)
Final Project Description:  (PDF)
Lecture Notes
We will be using lecture notes provided courtesy of Profs. Dennis Hartmannand John M. Wallace (Department of Atmospheric Sciences, Unversity of Washington).  Allchapters are in PDF format.

Chapter1:  Review of Basic Statistics
BivariateNormal Distribution Notes
T-testnotes
Chapter2:  Composite Analysis
Chapter3:  Linear Regression
Chapter4:  Multivariate Analysis
Chapter6:  Time Series Analysis
Chapter6a:  Time series analysis, Part 1
Chapter6b:  Time series analysis, Part 2
Chapter6c:  Cross-spectral analysis
Chapter6d:  Other spectral techniques (SST, Multi-Taper, Maximum Entropy,etc.)

作者称:I also have a lot ofmatlab functions, including my matlab libraries, here:
http://www.aos.wisc.edu/~dvimont/matlab
EOF Analysis
eof_routine.m
cosweight.m
Suppose you want to perform EOF analysis on tropical Pacific SST from the NCEPreanalysis.  Here's a quick way to do that, assuming you've downloaded mymatlab libraries, above:

lims = [120 285 -30 30];
tim = get_time(1948,2002,1948);
[sst, lat, lon] = getnc2('skt.mon.mean.nc', 'skt', lims, 1, tim);
land = getnc2('land.sfc.gauss.nc', 'land', lims, 1, 1);
sst = remove_anncyc(sst);
sst = cosweight(sst, lat);
[lam, lds, pcs, per] = eof_routine(sst(:,land==0));

%  Get a scaled map of the leading EOF
eof1 = repmat(NaN, [length(lat) length(lon)]);
eof1(land == 0) = lds(:,1)*sqrt(lam(1));
eof1 = uncosweight(eof1, lat);
chi2example.m:  
1.  A demo for using the Chi2 distribution to determine confidence limitson variance
2.  Shows how to construct an AR1 time series, compute its power spectrum,and compare the spectrum to a theoretical AR1 power spectrum with confidencelimits derived from the chi2 distribution.
Example1_16_Feb.m:
This example demonstrates univariate and multivariate linear regression inMATLAB.  Regression is used to predict summer ozone concentrations alongthe Gulf Coast from meteorologicalvariables.  More information about this data set can be found from "Case Studies in Environmental Statistics",from the Geophysical Statistics Project, through NCAR.  This exampleshould provide enough information to solve problem 1 on HW2.
This routine uses:  Regression_example.mat

Example2_16_Feb.m:
This example demonstrates how to generate regression maps of SST or 500mbheight onto the CTI.  This requires accounts on the 14th floor computer toaccess the data.  This example demonstrates how you might solve Problem 2from HW2 (2005)

HW2_prob3_code.m:
This example demonstrates how you would go about solving problem 3 on HW2(2005).

eof_example.m:
This example demonstrates EOF/PC analysis on a simple matrix.  Thiscalculates the EOF's in two ways:  by eigenanalysis of the covariancematrix, and by singular value decomposition of the data matrix.
define_pdo.m:
This is the code used to calculate the PDO time series in Homework 3. Note that it uses a bunch of routines from my MATLAB libraries, at:
     http://www.aos.wisc.edu/~dvimont/matlab

define_aleutianlow.m:
This is the code used to calculate the Aleutian Low time series in Homework3.  Note that it uses a bunch of routines from my MATLAB libraries, at:
     http://www.aos.wisc.edu/~dvimont/matlab

weekly_extremes.m:This routine generates anAR(1) time series, then calculates extreme values in that time series relativeto the rest of the week.

These two routines can be used in Homework 4:autocorr.m
partial_autocorr.m

spectral_analysis.m:Fun with spectralanalysis, including generating AR1 and AR2 null hypotheses.  There's alsoa routine for calculating alph1 and alph2 for the AR2 null hypothesis. Hey, check out the similarity between calculating alph1 and alph2 herein, and"partial_autocorr.m", above.  You can do this using either.

filter_nr.m:Non-recursive filteringroutine.
freq_stuff.m:
This routine calculates the frequency response function for a couple offilters.  Also, the IRF, etc...
tutorial.m:This is the companion tothe tutorial handed out in class.

EOF analysis example scripts:  EOF analysis applied to the followingimage:


First, download the image to your ~/matlab/Data directory.  Then, downloadthe following scripts to an appropriate directory:
eof_pics.m
plot_island_demo.m
subplot2.m
global_axes.mfigure_tall.m
The EOF analysis example is in 'eof_pics.m', and the plotting routine is in'plot_island_demo.m'.  The other routines are used in the plottingroutines.

Here are some other routines that might be useful:
wysiwyg.m
worldlo.m
worldlo.mat
corr.m

注:Dan Vimont副教授在页面要求:If you use these files, please acknowledge their source at http://www.aos.wisc.edu/~dvimont/matlab。附件matlab.tar.gz为作者提供下载的全部自编函数库。

matlab.tar.gz

1.18 MB, 下载次数: 117, 下载积分: 金钱 -5

评分

参与人数 3金钱 +38 贡献 +7 收起 理由
wlzhongouc + 18 + 2
Aires + 10 + 2
mofangbao + 10 + 3

查看全部评分

密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2013-5-31 01:17:52 | 显示全部楼层
顶楼主!感谢分享!Mark~
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2013-5-31 04:43:39 | 显示全部楼层
真是好贴!!!!!!!!!!!!!!
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2013-5-31 06:38:19 | 显示全部楼层
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2013-5-31 09:45:03 | 显示全部楼层
真是好贴!!!!!!!!!!!!!!
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2013-5-31 10:54:03 | 显示全部楼层
价廉物美,多谢多谢!
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2013-5-31 11:36:05 | 显示全部楼层
这个好厉害,真的是不错
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2013-5-31 11:54:56 | 显示全部楼层
极其好的帖子。。。。
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2013-6-10 19:59:45 | 显示全部楼层
这个好厉害,真的是不错
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2013-6-11 00:21:38 | 显示全部楼层
感谢lz分享~~
密码修改失败请联系微信:mofangbao
您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

Copyright ©2011-2014 bbs.06climate.com All Rights Reserved.  Powered by Discuz! (京ICP-10201084)

本站信息均由会员发表,不代表气象家园立场,禁止在本站发表与国家法律相抵触言论

快速回复 返回顶部 返回列表