- 积分
 - 14
 
	- 贡献
 -  
 
	- 精华
 
	- 在线时间
 -  小时
 
	- 注册时间
 - 2013-6-10
 
	- 最后登录
 - 1970-1-1
 
 
 
 
 
 
 | 
	
 
登录后查看更多精彩内容~
您需要 登录 才可以下载或查看,没有帐号?立即注册 
 
 
 
x
 
程序是关于读写FY-3C卫星资料上全球经纬度以及亮度温度。 
我用的是IVF,在调试程序的过程中会触发一个断点,无法读取程序。 
程序给我朋友帮忙在cvf上可以运行读写出来结果。 
所以上来问问大神们,哪里需要改进。
 -      program main
 
 -      implicit none
 
 - !-----------discription:--------------------------------------------------------------- 
 
 - !----Observations-----------------------------
 
 - !--------------------------------------------------------------------------------------
 
  
- !----1.0: defile local variables-------------------------------------------------------
 
 -        integer           :: i,j,k,line,ilin,fov,siz,ch
 
 -        real, allocatable ::  lat(:,:),lon(:,:)
 
 -        integer*2, allocatable :: obs_T(:,:,:)
 
 -        real, allocatable ::  obs(:,:,:)
 
 -        character(len=100):: filelat,filelon,fileobs
 
  
- !--------------------------------------------------------------------------------------
 
 -        OPEN(11,file='d:/ziliao/lat.list')
 
 -        OPEN(12,file='d:/ziliao/lon.list')
 
 -        OPEN(14,file='d:/ziliao/obs.list')
 
 -        
 
 -        DO WHILE(.not. eof(11))
 
 -           READ(11,"(I6,1X,a)")siz,filelat
 
 -           READ(12,"(a)")filelon
 
 -           READ(14,"(a)")fileobs
 
 -           line=siz/(90*4)
 
 - print*,line
 
 - !-----2: read out the MWTS data--------------------------------------------------------
 
 -           allocate(lat(90,line))
 
 -           allocate(lon(90,line))
 
 -           allocate(obs_T(90,line,13))
 
 -           allocate(obs(90,line,13))
 
 -           
 
  
-          open(21,file=filelat,form='binary')
 
 -          open(22,file=filelon,form='binary')
 
 -          open(24,file=fileobs,form='binary')
 
  
-          read(21)((lat(fov,ilin),fov=1,90),ilin=1,line)    
 
 -          read(22)((lon(fov,ilin),fov=1,90),ilin=1,line)       
 
 -          !----1 land; 2 fresh water; 3 sea water; 5 coast
 
 -          do ilin=1,line
 
 -             do fov=1,90
 
 -                do ch=1,13
 
 -                   read(24)obs_T(fov,ilin,ch)
 
 -                   if(obs_T(fov,ilin,ch)>0) then
 
 -                      obs(fov,ilin,ch)=0.01*obs_T(fov,ilin,ch)
 
 -                   else  
 
 -                      obs(fov,ilin,ch)=0.01*(obs_T(fov,ilin,ch)+65536)
 
 -                   endif
 
 -                enddo
 
 -             enddo
 
 -          enddo
 
 - !----------------------------------------------------------------------------
 
 -              
 
 -          close(21)
 
 -          close(22)
 
 -          close(24)
 
  
-          deallocate(lat)
 
 -          deallocate(lon)
 
 -          deallocate(obs_T)
 
 -          deallocate(obs)
 
 - !--------------------------------------------------------------------------------------
 
 -       ENDDO
 
  
-      close(11)
 
 -      close(12)
 
 -      close(14)
 
 -  END
 
  复制代码 
 
会触发断点地方为: 
         read(21)((lat(fov,ilin),fov=1,90),ilin=1,line)     
         read(22)((lon(fov,ilin),fov=1,90),ilin=1,line)    
C:\Users\宁\Desktop\QQ图片20160301112822.png 
 
资料格式: 
C:\Users\宁\Pictures\QQ截图20160308114829.png 
 
C:\Users\宁\Pictures\QQ截图20160308115347.png 
C:\Users\宁\Pictures\QQ截图20160308115308.png 
 
p.s.我最近用ivf比cvf多,然而学校里系统学习的也是cvf的用法,编写程序的时候也是按照cvf的思路,故来求教大神们。 |   
 
 
 
 |