2013气象统计实习报告_第1页
2013气象统计实习报告_第2页
2013气象统计实习报告_第3页
2013气象统计实习报告_第4页
2013气象统计实习报告_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

实习一 求500hPa高度场气候场、距平场和均方差场1、 实习内容有一500hPa高度场资料,文件名h500.dat,范围:60150E,040N.时段:1982.11985.12共48个月。水平分辨率:2.5*2.5,格点数:37*17。 编fortran程序,求500hPa高度场的(1)气候场;(2)距平场;(3)均方差场。并能用Grads做出图形,实习报告中气候场、距平场、均方差场任意给出两张图,图注要清楚,即要注明是哪个时间的图形,并做简单分析。2、 fortran程序 program main implicit none integer ii,jj,mo,yr parameter(ii=37,jj=17,mo=12,yr=4) real var(ii,jj,mo,yr) real climate(ii,jj,mo),juping(ii,jj,mo,yr),junfang(ii,jj,mo) integer i,j,m,iy open(5,file=d:1h500.dat) open(1,file=d:1h500aver.grd,form=binary) open(2,file=d:1h500juping.grd,form=binary) open(3,file=d:1h500junfang.grd,form=binary) do iy=1,4 !读数据资料 h500 do m=1,12 read(5,1000) read(5,3000) (var(i,j,m,iy),i=1,ii),j=1,jj) End do End do1000 format(2i7)2000 FORMAT(37F6.2)3000 format(37f8.1)4000 format(37f7.2) do m=1,mo !气候场 do j=1,jj do i=1,ii climate(i,j,m)=0 do iy=1,yr climate(i,j,m)=climate(i,j,m)+var(i,j,m,iy) end do climate(i,j,m)=climate(i,j,m)/4 end do end do end do write(1)(climate(i,j,m),i=1,ii),j=1,jj),m=1,mo) do i=1,ii !距平场 do j=1,jj do m=1,mo do iy=1,yr juping(i,j,m,iy)=var(i,j,m,iy)-climate(i,j,m) end do end do end do end do write(2)(juping(i,j,m,iy),i=1,ii),j=1,jj),m=1,mo),iy=1,yr) do m=1,mo !均方差场 do i=1,ii do j=1,jj junfang(i,j,m)=0 do iy=1,yr junfang(i,j,m)=junfang(i,j,m)+juping(i,j,m,iy)*2 end do junfang(i,j,m)=sqrt(junfang(i,j,m)/yr) end do end do end do write(3)(junfang(i,j,m),i=1,ii),j=1,jj),m=1,mo) End3、 图形显示 1、气候场:t=7分析:7月份多年平均场在东部海面有高压中心,西部有低压中心。 2、距平场:T=1982.7分析:对于7月份而言,1982年的高度场偏低,大部分地区为负距平。实习二 计算给定数据资料的简单相关系数和自相关系数一、实习内容根据下表中年平均气温和冬季平均气温的等级数据进行下列计算:1)计算两个气温之间的简单相关系数。2)分别找出两个气温数据自相关系数绝对值最大的滞后时间长度。(滞后长度最大取10)二、fortran程序program main implicit noneinteger i,j,maxireal:k=0,sumx=0,sumy=0,xa,ya,sx,sy,r1,y(20),x(20),rx(10),ry(10)real:data1(20)=(/3.4,3.3,3.2,2.9,3.4,2.8,3.6,3.0,2.8,3.0,3.1,3.0,2.9,2.7,3.5,3.2,3.1,2.8,2.9,2.9/)real:data2(20)=(/3.24,3.14,3.26,2.38,3.32,2.71,2.84,3.94,2.75,1.83,2.8,2.81,2.63,3.2,3.6,3.4,3.07,1.87,2.63,2.47/)do i=1,20sumx=sumx+data1(i)sumy=sumy+data2(i)end doxa=sumx/20;ya=sumy/20sumx=0;sumy=0do i=1,20sumx=sumx+(data1(i)-xa)*2;sumy=sumy+(data2(i)-ya)*2end do sx=sqrt(sumx/20);sy=sqrt(sumy/20)sumx=0;sumy=0do i=1,20x(i)=(data1(i)-xa)/sx;y(i)=(data2(i)-ya)/syend dodo i=1,20 sumx=sumx+x(i)*y(i)end dor1=sumx/20;sumx=0print *,简单相关系数为,r1do j=1,10 do i=1,20-j sumx=sumx+x(i)*x(i+j);sumy=sumy+y(i)*y(i+j) end do rx(j)=abs(sumx/(20-j); ry(j)=abs(sumy/(20-j) sumx=0;sumy=0end domaxi=1do i=1,10 if(rx(i)=rx(maxi) then maxi=i end ifend doprint *,年平均气温对应的j为,maximaxi=1do i=1,10 if(ry(i)=ry(maxi) then maxi=i end ifend doprint *,冬季平均气温对应的j为,maxiend 三、运行结果显示实习三 计算给定数据的落后交叉相关系数和偏相关系数 一、实习内容根据下表北京冬季(12月2月)气温资料计算:12月气温与1月和2月气温的落后交叉相关系数(滞后长度最大取10)和偏相关系数。在实习报告中给出程序。年份12月1月2月19511.0-2.7-4.31952-5.3-5.9-3.51953-2.0-3.4-0.81954-5.7-4.7-1.11955-0.9-3.8-3.11956-5.7-5.3-5.91957-2.1-5.0-1.619580.6-4.30.21959-1.7-5.72.01960-3.6-3.61.31961-3.0-3.1-0.819620.1-3.9-1.11963-2.6-3.0-5.21964-1.4-4.9-1.71965-3.9-5.7-2.51966-4.7-4.8-3.31967-6.0-5.6-4.91968-1.7-6.4-5.11969-3.4-5.6-2.01970-3.1-4.2-2.91971-3.8-4.9-3.91972-2.0-4.1-2.41973-1.7-4.2-2.01974-3.6-3.3-2.01975-2.7-3.70.11976-2.4-7.6-2.21977-0.9-3.5-2.31978-2.7-4.2-0.51979-1.6-4.5-2.91980-3.9-4.8-1.4二、fortran程序program main implicit noneinteger iy,t,j,ireal:var(30,3),s12(10),s13(10),s1=0,s2=0,s3=0,a1,a2,a3,sum1=0,sum2=0,sum3=0,r12(10),r13(10),p12,p13,t12,t13,t23open(18,file=d:gradsshiyan3.txt) !读入数据 read(18,*) (var(iy,t),t=1,3),iy=1,30)do iy=1,30 !求均值和标准差 s1=s1+var(iy,1) s2=s2+var(iy,1) s3=s3+var(iy,1)end doa1=s1/30;a2=s2/30;a3=s3/30do iy=1,30 sum1=sum1+(var(iy,1)-a1)*2 sum2=sum2+(var(iy,2)-a2)*2 sum3=sum3+(var(iy,3)-a3)*2end do s1=sqrt(sum1/30);s2=sqrt(sum2/30);s3=sqrt(sum3/30);sum1=0;sum2=0;sum3=0do j=1,10 !求12月和1月落后交叉相关系数r12以及12月和2月系数r13do i=1,30-j sum1=sum1+(var(i,1)-a1)*(var(i+j,2)-a2) sum2=sum2+(var(i,1)-a1)*(var(i+j,3)-a3)end dor12(j)=sum1/(30-j)/s1/s2;r13(j)=sum2/(30-j)/s1/s3sum1=0;sum2=0end dosum1=0;sum2=0;sum3=0print *,12月和1月落后交叉相关系数r12(j) !输出12月和1月落后交叉相关系数r12(j)以及12月和2月系数r13(j)do j=1,10 print *,j=,j,时,r12=,r12(j)end doprint * print *,12月和2月落后交叉相关系数r13(j)do j=1,10 print *,j=,j,时,r13=,r13(j)end do print *do i=1,30 !求12月和1月简单相关系数t12,求12月和2月t13,以及1月和2月t23 sum1=sum1+(var(i,1)-a1)*(var(i,2)-a2) sum2=sum2+(var(i,1)-a1)*(var(i,3)-a3) sum3=sum3+(var(i,2)-a2)*(var(i,3)-a3)end dot12=sum1/30/s1/s2;t13=sum2/30/s1/s3;t23=sum3/30/s2/s3p12=(t12-t13*t23 )/sqrt(1-t13*2)*(1-t23*2) !求12月和1月偏相关系数p12以及12月和2月系数p13p13=(t13-t12*t23 )/sqrt(1-t12*2)*(1-t23*2) print *,12月和1月偏相关系数p12=,p12 !输出12月和1月偏相关系数p12以及12月和2月系数p13 print *print *,12月和2月偏相关系数p13=,p13 end 三、运行结果显示 实习四 求给定数据的一元线性回归方程一、实习内容利用下表数据,以环流指标为预报因子,气温为预报量,计算气温和环流指标之间的一元线性回归方程,并对回归方程进行检验。年份气温T环流指标19510.93219521.22519532.22019542.4261955-0.52719562.5241957-1.128195802419596.21519602.71619613.2241962-1.13019632.52219641.23019651.82419660.63319672.42619682.52019691.2321970-0.835二、fortran程序program mainimplicit noneinteger ireal:x(20),y(20),sumx=0,sumy=0,xa,ya,b,a,sx=0,sy=0,sxy=0,f,rxyopen(8,file=d:shiyan.dat)do i=1,20read(8,*) y(i),x(i)end dodo i=1,20sumx=sumx+x(i)sumy=sumy+y(i)end doxa=sumx/20ya=sumy/20do i=1,20sx=sx+(x(i)-xa)*2sy=sy+(y(i)-ya)*2sxy=sxy+(x(i)-xa)*(y(i)-ya)end dosx=sqrt(sx/20)sy=sqrt(sy/20)sxy=sxy/20b=sxy/sx/sxa=ya-b*xaprint *,y=,b,x,+,arxy=sx*b/syf=rxy*2*18/(1-rxy*2)if(f4.41) print *,F=,f,F=4.41,回归方程显著if(f=4.41) print *,F=,f,F=4.41,回归方程不显著End三、运行结果显示 实习五 求给定数据的多元线性回归方程一、实习内容说明:x1-x4为四个预报因子,y为预报量;样本个数n=13要求:选取预报因子1、2、4,求预报量的标准化回归方程。i12345678910111213x17111117113122111110x226295631525571315447406668x3615886917221842398x46052204733226442226341212y78.574.3104.387.695.9109.2102.772.593.1115.983.8113.3109.4二、fortran程序program mainimplicit noneinteger i,j,kreal:x(4,13),ax(4)=0,s(4)=0,r(3,4)=0,key(3)open(8,file=d:grads5.dat)read(8,*) (x(j,i),i=1,13),j=1,4)do j=1,4 !平均 do i=1,13 ax(j)=ax(j)+x(j,i) end do ax(j)=ax(j)/13end do do j=1,4 !标准差do i=1,13 s(j)=(x(j,i)-ax(j)*2+s(j)end dos(j)=sqrt(s(j)/13)end dodo j=1,4 !标准化 do i=1,13 x(j,i)=(x(j,i)-ax(j)/s(j) end doend do do i=1,3 !相关距阵 do j=1,4 do k=1,13 r(i,j)=r(i,j)+x(i,k)*x(j,k) end do r(i,j)=r(i,j)/13 end doend dodo i=1,3 do j=1,4 print *,r(i,j) end doend do call linearequations(r,3,key) !求系数向量print *,y=,key(1),x1,+,key(2),x2,+,key(3),x4end programinteger function linearequations(ba,mm,key) implicit none integer mm,i,j,k real ba(mm,mm+1),temp(mm+1),tmp,d(mm),key(mm) do i=1,mm-1 if(ba(i,i)=0.0) then do j=i+1,mm if(ba(j,i)/=0.0) then temp=ba(i,1:mm+1) ba(i,1:mm+1)=ba(j,1:mm+1) ba(j,1:mm+1)=temp end if end do end if if(ba(i,i)=0.0) then linearequations=0 return end if do j=i+1,mm tmp=ba(j,i)/ba(i,i) ba(j,i:mm+1)=ba(j,i:mm+1)-tmp*ba(i,i:mm+1) end do end do d=0 key(mm)=ba(mm,mm+1)/ba(mm,mm) do i=mm-1,1,-1 do j=mm,i+1,-1 d(i)=d(i)+key(j)*ba(i,j) end do key(i)=(ba(i,mm+1)-d(i)/ba(i,i) end do linearequations=1end function linearequations三、运行结果显示 实习六 分析中国夏季降水线性趋势的分布特征1、 实习内容利用数据160zhan-rainfall-summer.txt,编写求1982-2006年中国160站各站夏季降水线性倾向率,给出分布图,并进行简单分析。read-rain.for给出了阅读资料的fortran程序。数据在文件夹中单独给出。2、 fortran程序program maininteger m,nparameter(m=160,n=25)integer:sta(m),i,j,f(m,n),nlev,nflagreal:jd(m),wd(m),averj(m)=0,averf(m)=0,sumjf(m)=0,sumjj(m)=0,b(m),timopen(1,file=d:gradsshiyan6160zhan-rainfall-summer.txt) ! read data read(1,*) do i=1,mread(1,*) sta(i),wd(i),jd(i),(f(i,j),j=1,n) End do do i=1,m !求b do j=1,n averj(i)=averj(i)+j averf(i)=averf(i)+f(i,j) sumjf(i)=sumjf(i)+j*f(i,j) sumjj(i)=sumjj(i)+j*j end do averj(i)=averj(i)

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论