爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 4974|回复: 3

家园里的reof程序 只输出空文件是为什么

[复制链接]

新浪微博达人勋

发表于 2017-5-1 20:03:57 | 显示全部楼层 |阅读模式
Fortran
系统平台: win7
问题概况: 麻烦大家帮我看一下,为什么输出的'sta.grd''sjxs.grd''tzxl.txt'的三个文件都是空的
问题截图: -
我看过提问的智慧: 看过
自己思考时长(天): 1

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

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

x
麻烦大家帮我看一下,为什么输出的'sta.grd''sjxs.grd''tzxl.txt'的三个文件都是空的

lat_lon.txt

1.28 KB, 下载次数: 2

经纬度

nation.txt

27.56 KB, 下载次数: 0

数据

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

新浪微博达人勋

 楼主| 发表于 2017-5-1 20:06:48 | 显示全部楼层
  1. !!---------------------------------------------------------------------------!
  2. !!输入的有:                                                                  !
  3. !!    1.RH(nn,mm),需作旋转EOF的矩阵,注意nn代表时间,mm代表站点或格点;         !
  4. !!    2.NP(整型):需要作旋转EOF的特征向量的个数;(一般对RH作EOF后由一定        !
  5. !!               的规则来确定;                                               !
  6. !!输出的有:                                                                  !
  7. !!    1.对RH作EOF的特征值和方差贡献;                                         !
  8. !!    2.对RH作EOF的特征向量和时间系数;                                       !
  9. !!    3.选择前NP个特征向量作旋转EOF的特征向量和时间系数;                     !
  10. !!    4.旋转前后主分量的相关矩阵;                                            !
  11. !!---------------------------------------------------------------------------!
  12.       PROGRAM reof
  13.       parameter(nn=24,mm=98)
  14.       parameter(np=13)
  15.       DIMENSION RH(nn,mm),B(nn,np),reco(nn,mm)
  16.       DIMENSION A(mm,mm),V(mm,mm),RAMDA(mm),RC(np,np),X(nn),Y(nn),h(mm),MX(mm),XW(mm),RR(np,np),ST(np)         
  17.       DIMENSION U(mm),VR(mm),WT(mm),WK(mm),WBT(nn),WBK(nn)
  18.       DIMENSION VRLV(60)
  19.       INTEGER T,K
  20. !  数组Mx、rh、lat、lon都是实型数组
  21.       REAL MX,rh
  22.         real lat(mm),lon(mm)
  23.         real zero(nn)
  24.         real stid(mm,2)
  25.         character*8 id(mm)
  26.         data zero/nn*0.0/

  27.        OPEN(12,FILE='result_of_reof.txt')  !旋转EOF的结果输出
  28.        OPEN(11,file='nation.txt')

  29.         OPEN(14,file='sta.grd',status='replace',form='binary')!REOF的结果sta.grd输出
  30.     open(444,file='sjxs.grd',status='replace',form='binary')
  31.     open(888,file='tzxl.txt',status='replace')


  32. !  按站点读取原始资料
  33.       do i=1,mm
  34.         read(11,*)(rh(it,i),it=1,nn)
  35.         end do
  36.         close(11)
  37.         print*,rh

  38.         OPEN(13,file='lat_lon.txt')!lat lon
  39.         do i=1,mm
  40.         read(13,*)(stid(i,j),j=1,2)
  41.         enddo

  42.         do i=1,mm
  43.         write(*,*)(stid(i,j),j=1,2)
  44.         enddo

  45. !682   format(1x,'original data')                               !                           !
  46.         CALL STANDARD(NN,MM,RH)

  47. !cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
  48. !       原始资料                                                          c
  49. !CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCccccccccccccccccccccccccccccccccccCCCCC
  50. !ccc        !输出原始资料的标准化资料

  51.         open(16,file='bzh.txt')  
  52.         do   786 i=1,nn
  53. !        write(12,683) j
  54.    786  write(16,1686) (rh(i,j),j=1,mm)
  55. 1686    format(98f6.2)                            !按格点数目改动
  56. !cccccccccccccccccccccccccccccccccccccccc
  57.       rnn=real(nn)
  58.       DO 12 J=1,mm
  59.       DO 12 J1=1,mm
  60.         A(J,J1)=0.0
  61.         DO 13 I=1,nn
  62. 13     A(J,J1)=A(J,J1)+RH(I,J)*RH(I,J1)/rnn
  63. 12   continue
  64.       write(12,101)
  65.       write(12,102) ((A(i,j),j=1,mm),i=1,mm)
  66. 101   format(/1x,'原始资料的相关矩阵A')
  67. 102   format((1X,98f6.2))                       !按格点数目改动
  68.       sum=0.0         
  69.       do 80 k=1,mm
  70.           sum=sum+A(k,k)
  71. 80        continue
  72.       write(12,103) sum
  73. 103  format(1x,' 相关矩阵A的维数 ==',f15.4)
  74.       call jcb(mm,a,v,0.00001)
  75.       call jcb1(mm,a,v)
  76.       write(12,104)
  77.       write(12,204)(a(i,i),i=1,mm)
  78. 104  format(//1x,' Eigenvalue(lambad)特征值')
  79. 204  format((1x,4f20.12))
  80.       do 145 i=1,mm
  81. 145  ramda(i)=a(i,i)
  82. !      write(12,104) ramda
  83.       sum2=0.0
  84.       do 222 k=1,mm
  85. 222  sum2=sum2+A(k,k)
  86.       write(12,106) sum2
  87.       write(12,909)
  88. 909   format(/3x,'特征值的总和必须等于相关矩阵A的维数!')
  89.       err=abs(sum-sum2)
  90.       if(err.lt.0.001) write(12,681) err
  91.       if(err.ge.0.001) write(12,482) err
  92. 681  format(//1x,' ok 1  err= ',f9.4)
  93. 482  format(//1x,' in error  err= ',f9.4)
  94. 106  format(1x,'THE SUM OF LAMBAD',f12.4)
  95.       do 25 k=1,mm
  96. 25   mx(k)=100.0*a(k,k)/sum
  97.       write(12,108)
  98.       write(12,208) mx
  99. 108  format(//1x,'The percentage of lambad 解释方差')
  100. 208  format((1x,10f8.2))
  101.       do 112 j=1,np
  102.       write(12,110) j
  103. !        write(*,'(10f8.3)')(v(i,j),i=1,mm)
  104. 112  write(12,210) (v(i,j),i=1,mm)
  105. 110  format(1x,'旋转前的特征向量或荷载.order:',I3)
  106. 210  format((1x,10f8.3))
  107.       do 50 it=1,nn
  108.       do 47 jj=1,mm
  109.   47  xw(jj)=rh(it,jj)
  110.       do 50 j=1,mm
  111.       rh(it,j)=0.0
  112.       do 54 k=1,mm
  113.   54  rh(it,j)=rh(it,j)+xw(k)*v(k,j)
  114.   50  continue
  115.       do 400 j=1,np
  116.       write(12,125) j
  117. 400   write(12,805) (rh(i,j),i=1,nn)

  118.     !  open(33,file='unrottzxl.grd',form='binary')

  119.     !  open(44,file='unrotsjxs.grd',form='binary')

  120.     !  open(55,file='unrottzxl.txt')

  121. !! 下面是按GrADs站点资料的方式存取
  122. !        tim=0.0
  123. !        do 97, i=1,mm
  124. !        id(i)=char(i)
  125. !        lat(i)=stid(i,1)  !!!纬度 第一列
  126. !        lon(i)=stid(i,2)  !!!经度 第二列
  127. !        tim=0.0
  128. !        nlev=1
  129. !        nflag=1
  130. !        write(33)id(i),lat(i),lon(i),tim,nlev,nflag,(v(i,j),j=1,np)
  131. !97        continue       
  132. !        nlev=0
  133. !        write(33)id(i-1),lat(i-1),lon(i-1),tim,nlev,nflag
  134. !        do i=1,mm
  135. !        write(55,'(i8,28f8.3)')i,lat(i),lon(i),(v(i,j),j=1,np)
  136. !        enddo
  137. !        write(44)((rh(i,j),j=1,np),zero(i),i=1,nn)
  138. !        close(13)
  139. !        close(33)
  140. !        close(44)
  141. !        close(55)

  142. !ccccccccccccccccccccccccccccccccccccccc
  143. !      未旋转前时间系数                C
  144. !CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC

  145.        open(18,file='unrot_time.txt')
  146.        do   787 i=1,nn
  147. 787   write(18,1688)i+1950,(rh(i,j),j=1,np)
  148. 1688   format(i4,10f8.3)
  149. !cccccccccccccccccccccccccccccccccccccccc
  150. 125    format(/1x,'旋转前的时间系数(PC).order',i3)
  151.        do 772  j=1,mm
  152.        do 772  it=1,nn
  153.        reco(it,j)=0.0
  154.        do 773  k=1,mm
  155. 773    reco(it,j)=reco(it,j)+v(j,k)*rh(it,k)
  156. 772    continue
  157.        write(12,982)
  158. !  按站输出重构的资料序列
  159.        do   986 j=1,mm
  160.        write(12,683) j
  161. 986  write(12,686) (reco(i,j),i=1,nn)
  162. 982   format(/1x,'Reconstructed data(for inspect)   ')
  163. 683   format(1x,'Number station',i3)                          
  164. 686   format((1x,10f8.2))                          
  165.       write(12,238)
  166. 238  format(//3x,'To inspect perpendicularty and variance of PC')
  167.       write(12,258)
  168. 258   format(/1X,'The covariance martix of first NP principal companent *:')     
  169.       do 234 j1=1,np
  170.       do 234 j2=1,np
  171.       rr(j1,j2)=0.0
  172.       do 235 it=1,nn
  173.       rr(j1,j2)=rr(j1,j2)+rh(it,j1)*rh(it,j2)/rnn
  174. 235  continue
  175. 234  continue
  176.       do  366 j1=1,np
  177. 366     write(12,266) (rr(j1,j2),j2=1,np)
  178. 266  format(3x,10f8.3)
  179.       write(12,269)
  180.       write(12,469)
  181.       write(12,669)
  182.       write(12,869)
  183. 269  format(//4x,'Variance of each time coefficient(PC) must be equal')
  184. 469  format(/1x,'to corresponding eigenvalue.')
  185. 669  format(/4x,'The covariance between PC each other must be equal ')
  186. 869  format(/1x,' to zero.')

  187. ! 以下就是因子分析和旋转主成分分析部分
  188. !
  189. !cccccccccccccccccccccccccccccccc
  190.       DO 333 J=1,np
  191.       DO 333 I=1,mm
  192.       V(I,J)=V(I,J)*SQRT(RAMDA(J))
  193. 333  CONTINUE
  194.       write(12,782)
  195. 782  format(//1x,' ok 2')
  196.       do 321 j=1,np
  197.       do 323 i=1,mm
  198. 323  a(i,j)=v(i,j)
  199.       do 325 it=1,nn
  200. 325  rh(it,j)=rh(it,j)/sqrt(ramda(j))
  201. 321  continue
  202.       do 20 i=1,mm
  203.       H(I)=0.0
  204.       do 21 j=1,np
  205. 21   H(i)=H(i)+A(i,j)**2
  206. 20   continue
  207.       do 23 i=1,mm
  208. 23   h(i)=sqrt(h(i))
  209.       do 702 j=1,np
  210.       st(j)=0.0
  211.       do 703 i=1,mm
  212. 703  st(j)=st(j)+a(i,j)**2
  213. 702  continue
  214.       su=0.0
  215.       do 704 j=1,np
  216. 704  su=su+st(j)
  217.       write(12,801)
  218. 801  format(/1x,'Sum of squared element of each colum of the loading martix(first NPcolum)')
  219.       write(12,805) st
  220. 805  format((1x,10f8.3))
  221.       write(12,901)
  222. 901  format(/1x,'Sum of squared element of first NP colum of loading matrix')
  223.       write(12,905) su
  224. 905  format((1x,f12.3))
  225.       do 346 j=1,np
  226.       do 346 it=1,nn
  227. 346  b(it,j)=rh(it,j)
  228.       lll=0
  229.       vrlv0=0.0
  230.       do 230  k=1,np
  231.       g1=0.0
  232.       g2=0.0
  233.       do  434  i=1,mm
  234.       g1=g1+(a(i,k)**2/h(i)**2)**2/real(mm)
  235. 434  g2=g2+(a(i,k)**2/h(i)**2)/real(mm)
  236.       g2=g2**2
  237.       vrlv0=vrlv0+g1-g2
  238. 230  continue
  239. 800  continue
  240.       do 505 t=1,np
  241.       do 505 k=1,np
  242.       if(t.ge.k) goto 505
  243.       call rot(a,b,h,t,k,mm,nn,np,u,vr,wt,wk,wbt,wbk)
  244. 505  continue
  245.       lll=lll+1
  246.       vrlv(lll)=0.0
  247.       do 530  k=1,np
  248.       g1=0.0
  249.       g2=0.0
  250.       do  534  i=1,mm
  251.       g1=g1+(a(i,k)**2/h(i)**2)**2/real(mm)
  252. 534  g2=g2+(a(i,k)**2/h(i)**2)/real(mm)
  253.       g2=g2**2
  254.       vrlv(lll)=vrlv(lll)+g1-g2
  255. 530  continue
  256.       if(lll.lt.2) goto 800
  257.       ci=(vrlv(lll)-vrlv(lll-1))/vrlv0
  258.       if(ci.lt.0.01) goto 600
  259.       if(lll.ge.52) goto 600
  260.       goto 800
  261. 600  continue
  262.       write(12,538)
  263.       write(12,549)
  264.       write(12,539) vrlv0,(vrlv(k),k=1,lll)
  265. 538  format(//1x,'Sum of variance of squared element of each colum of rotated loding martix ')   
  266. 549  format(1x,'at each circulation')
  267. 539   format((1x,10f8.3))
  268.       do 802 j=1,np
  269.       st(j)=0.0
  270.       do 803 i=1,mm
  271. 803  st(j)=st(j)+a(i,j)**2
  272. 802  continue
  273.       su=0.0
  274.       do 804 j=1,np
  275. 804  su=su+st(j)
  276.       write(12,701)
  277. 701  format(/5x,'Sum of squared element of each of the first NP rotated loading vector')
  278.       write(12,806) st
  279. 806  format((1x,10f12.5))

  280.       write(12,472)
  281. 472  format(/1x,'Sum of squared element of rotated loading matrix')
  282.       write(12,806) su

  283.       do 971 j=1,np
  284.       write(12,117) j
  285. 971  write(12,805) (a(i,j),i=1,mm)
  286. 117  format(1x,'旋转后的荷载(ROTATED LOADING VECTOR,简称RLV) ordre:',i3)
  287.      

  288. !ccccccccccccccccccccccccccccccccccccccccc
  289. !      旋转后时间系数                    C                  
  290. !CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC

  291.        open(2,file='rot_time.txt')
  292.          do 401 i=1,nn
  293.            write(2,809)(b(i,j),j=1,np)
  294. 401         continue
  295. 809    format(10f8.3)
  296.        close(2)
  297.          close(18)
  298.        do 906 j=1,np
  299.       write(12,127) j
  300. 906  write(12,805) (b(i,j),i=1,nn)
  301. 127  format(/1x,'旋转主分量(RPC).order:',i3)
  302.       do 945 i=1,np
  303.       do 945 j=1,np
  304.       do 966 it=1,nn
  305.       x(it)=rh(it,i)
  306. 966  y(it)=b(it,j)
  307. 945  rc(i,j)=sokan(nn,x,y)
  308.       write(12,888)
  309. 888   format(//1X,'旋转前后主分量的相关距阵')
  310.       do 977 i=1,np
  311. 977  write(12,988) (rc(i,j),j=1,np)
  312. !cccccccccc
  313. 988  format((1X,10f6.2))
  314.       close(12)

  315. ! 下面是按GrADs站点资料的方式存取


  316.     tim=0.0
  317.         do 100 i=1,mm
  318.         id(i)=char(i)
  319.         lat(i)=stid(i,1)  !!!纬度 第一列
  320.         lon(i)=stid(i,2)  !!!经度 第二列
  321.         tim=0.0
  322.         nlev=1
  323.         nflag=1
  324.         write(14)id(i),lat(i),lon(i),tim,nlev,nflag,(a(i,j),j=1,np)
  325. 100        continue       
  326.         nlev=0
  327.         write(14)id(i-1),lat(i-1),lon(i-1),tim,nlev,nflag
  328.         do i=1,mm
  329.         write(888,'(i8,28f8.3)')i,lat(i),lon(i),(a(i,j),j=1,np)
  330.         enddo
  331.         write(444)((b(i,j),j=1,np),zero(i),i=1,nn)
  332.         close(13)
  333.         close(444)
  334.         close(14)
  335.         close(888)
  336.     end

  337. !cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
  338. !****************************************************************************
  339.       function sokan(n,xx,yy)
  340.       dimension xx(n),yy(n)
  341.       sx=0.0
  342.       sy=0.0
  343.       sxy=0.0
  344.       sxx=0.0
  345.       syy=0.0
  346.       do 10 i=1,n
  347.       sx=sx+xx(i)
  348.       sy=sy+yy(i)
  349.       sxy=sxy+xx(i)*yy(i)
  350.       sxx=sxx+xx(i)**2
  351.       syy=syy+yy(i)**2
  352. 10   continue
  353.       fn=real(n)
  354.       xmean=sx/fn
  355.       ymean=sy/fn
  356.       sokan=(sxy-fn*xmean*ymean)/(sqrt(sxx-fn*xmean**2)*sqrt(syy-fn*ymean**2))
  357.       return
  358.       end
  359. !****************************************************************************
  360.       subroutine rot(a,b,h,t,k,mm,nn,np,u,vr,wt,wk,wbt,wbk)
  361.       dimension A(mm,mm),B(nn,np),H(mm),U(mm),VR(mm),WT(mm),WK(mm),WBT(nn),WBK(nn)     
  362.       integer t,k
  363.       do 25 i=1,mm
  364.       u(i)=(a(i,t)/h(i))**2-(a(i,k)/h(i))**2
  365. 25   vr(i)=2.0*(a(i,t)/h(i))*(a(i,k)/h(i))
  366.       c=0.0
  367.       d=0.0
  368.       s=0.0
  369.       g=0.0
  370.       do 30 i=1,mm
  371.       c=c+(u(i)**2-vr(I)**2)
  372.       d=d+2.0*u(i)*vr(i)
  373.       s=s+u(i)
  374. 30   g=g+vr(i)
  375.       tg1=d-2.0*s*g/mm
  376.       tg2=c-(s**2-g**2)/mm
  377.       fi=atan2(tg1,tg2)/4.0
  378.       do 75 i=1,mm
  379.       wt(i)=a(i,t)
  380. 75   wk(i)=a(i,k)
  381.       do 84 kk=1,nn
  382.       wbt(kk)=b(kk,t)
  383. 84   wbk(kk)=b(kk,k)
  384.       do 78 i=1,mm
  385.       a(i,t)=wt(i)*cos(fi)+wk(i)*sin(fi)
  386. 78   a(i,k)=wt(i)*(-sin(fi))+wk(i)*cos(fi)
  387.       do 89 it=1,nn
  388.       b(it,t)=wbt(it)*cos(fi)+wbk(it)*sin(fi)
  389. 89   b(it,k)=wbt(it)*(-sin(fi))+wbk(it)*cos(fi)
  390.       return
  391.       end
  392. !**************************************************************************
  393. ! m是站点数目
  394.       subroutine jcb1(m,a,s)
  395.       dimension a(m,m),s(m,m)
  396.       do 20 i=1,m-1
  397.       w=a(i,i)
  398.       k=i
  399.       do 30 j=i+1,m
  400.       if(a(j,j).le.w) go to 30
  401.       W=A(J,J)
  402.       K=J
  403. 30   CONTINUE
  404.       A(K,K)=A(I,I)
  405.       A(I,I)=W
  406.       DO 70 L=1,m
  407.       W1=S(L,I)
  408.       S(L,I)=S(L,K)
  409.       S(L,K)=W1
  410. 70   CONTINUE
  411. 20   CONTINUE
  412.       RETURN
  413.       END

  414. !***************************************************************************
  415.       SUBROUTINE JCB(M,A,S,EPS)
  416.       DIMENSION A(M,M),S(M,M)
  417.       DO 30 I=1,M
  418.       DO 30 J=1,I
  419.       IF(I-J)20,10,20
  420. 10   S(I,J)=1.0
  421.       GO TO 30
  422. 20   S(I,J)=0.0
  423.       S(J,I)=0.0
  424. 30   CONTINUE
  425.       G=0.0
  426.       DO 40 I=2,M
  427.       I1=I-1
  428.       DO 40 J=1,I1
  429. 40   G=G+2.0*A(I,J)*A(I,J)
  430.       S1=SQRT(G)
  431.       S2=EPS/FLOAT(M)*S1
  432.       S3=S1
  433.       L=0
  434. 50   S3=S3/FLOAT(M)
  435. 60   DO 130 IQ=2,M
  436.       IQ1=IQ-1
  437.       DO 130 IP=1,IQ1
  438.       IF(ABS(A(IP,IQ)).LT.S3) GO TO 130
  439.       L=1
  440.       V1=A(IP,IP)
  441.       V2=A(IP,IQ)
  442.       V3=A(IQ,IQ)
  443.       U=0.5*(V1-V3)
  444.       IF(U.EQ.0.0) G=1.
  445.       IF(ABS(U).GE.1E-10) G=-SIGN(1.,U)*V2/SQRT(V2*V2+U*U)
  446.       ST=G/SQRT(2.*(1.+SQRT(1.-G*G)))
  447.       CT=SQRT(1.-ST*ST)
  448.       DO 110 I=1,M
  449.       G=A(I,IP)*CT-A(I,IQ)*ST
  450.       A(I,IQ)=A(I,IP)*ST+A(I,IQ)*CT
  451.       A(I,IP)=G
  452.       G=S(I,IP)*CT-S(I,IQ)*ST
  453.       S(I,IQ)=S(I,IP)*ST+S(I,IQ)*CT
  454. 110  S(I,IP)=G
  455.       DO 120 I=1,M
  456.       A(IP,I)=A(I,IP)
  457. 120  A(IQ,I)=A(I,IQ)
  458.       G=2.*V2*ST*CT
  459.       A(IP,IP)=V1*CT*CT+V3*ST*ST-G
  460.       A(IQ,IQ)=V1*ST*ST+V3*CT*CT+G
  461.       A(IP,IQ)=(V1-V3)*ST*CT+V2*(CT*CT-ST*ST)
  462.       A(IQ,IP)=A(IP,IQ)
  463. 130  CONTINUE
  464.       IF(L-1)150,140,150
  465. 140  L=0
  466.       GOTO 60
  467. 150  IF(S3.GT.S2)GOTO 50
  468.       RETURN
  469.       END


  470. !*************************************************************************
  471.         subroutine standard(n,m,x)   !m为格点数,n为时间长度
  472.         dimension x(n,m)
  473.         do j=1,m
  474.           ave=0.0
  475.           do i=1,n
  476.             ave=ave+x(i,j)/float(n)
  477.           enddo
  478.           xigma=0.0
  479.           do i=1,n
  480.             xigma=xigma+(x(i,j)-ave)**2/float(n)
  481.           enddo
  482.           xigma=sqrt(xigma)
  483.           do i=1,n
  484.             x(i,j)=(x(i,j)-ave)/xigma
  485.           enddo
  486.         enddo
  487.         end
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2017-5-2 10:04:19 | 显示全部楼层
兄弟, 不好意思我不是回答你的问题而是想请你帮忙,REOF这个东西可以教我一下吗
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2017-5-2 10:11:43 | 显示全部楼层
编程渣渣 发表于 2017-5-2 10:04
兄弟, 不好意思我不是回答你的问题而是想请你帮忙,REOF这个东西可以教我一下吗

老铁,等我自己搞懂了吧,我也还一头雾水{:eb319:
密码修改失败请联系微信:mofangbao
您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

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

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

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