- 积分
- 2217
- 贡献
-
- 精华
- 在线时间
- 小时
- 注册时间
- 2012-3-7
- 最后登录
- 1970-1-1
|

楼主 |
发表于 2013-7-10 20:00:49
|
显示全部楼层
我最后是这么实现的, 也算是如果大家有这方面需求,一个简单的借鉴,因为我并不需要太高精度的东西,诚如楼上推荐的,不过看起来听起来比较麻烦似的,所以我就先对精度方向相邻的进行一个平均作为一个新的值,然后再对纬度方面上每两个值进行平均得到一个新的值,这样我就得到一个新的数组。
代码如下:
Program read_soil_moisture
implicit none
integer,parameter:: im=720,jm=360
real:: w(im,jm)
real*8:: sm1(im/2,jm)
real*8:: sm(im/2,jm/2)
integer:: i,j
open(11,file='w.200912.mon',form='unformatted',convert='big_endian')
open(12,file='200912_new.txt',status='replace')
read(11) w
do j=1,360
do i=1,360
sm1(i,j)=(w(2*i,j)+w(2*i-1,j))/2.d0
enddo
enddo
do i=1,im/2
do j=1,jm/2
sm(i,j)=(sm1(i,2*j)+sm1(i,2*j-1))/2.d0
write(12,'(2I5,f10.3)') i,j-90,sm(i,j)
enddo
enddo
End Program read_soil_moisture |
|