爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 2902|回复: 7

[求助] 编译求助,大牛请进

[复制链接]

新浪微博达人勋

发表于 2016-3-1 21:28:45 | 显示全部楼层 |阅读模式

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

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

x
最近在用ivf编译一个pom程序,用的网上提供的2k版本。输入文件fort.40已经在前期做好,带入主程序后报错,具体报错如下:

源代码如下:
subroutine file2ic
C **********************************************************************
C *                                                                    *
C * FUNCTION    :  Sets up my own problem.                             *
C *                                                                    *
C * This example read IC from IC.dat file, generated by GRID.f in      *
C * GRID-DATA directory. Only minimal number of fields are read,       *
C * while others are calculated here.                                  *
C *                                                                    *
C **********************************************************************
C
      implicit none
C
      include 'pom2k.c'
C
      real rad,re,dlat,dlon,cff
      integer i,j,k,m
      character*5 field
      rad=0.01745329
      re=6371.E3
C
      write(6,'(/,'' Read grid and initial conditions '',/)')
C
C--- 1D ---
!      open(40,file='fort.40',status='old')
      read(40,'(a5)') field
      write(6,'(a5)') field
       read(40,'(8E12.5)') z
      read(40,'(a5)') field
      write(6,'(a5)') field
       read(40,'(8E12.5)') zz
      read(40,'(a5)') field
      write(6,'(a5)') field
       read(40,'(8E12.5)') dz
      read(40,'(a5)') field
      write(6,'(a5)') field
       read(40,'(8E12.5)') dzz
C--- 2D ---
      read(40,'(a5)') field
      write(6,'(a5)') field
       read(40,'(8E12.5)') east_e
      read(40,'(a5)') field
      write(6,'(a5)') field
       read(40,'(8E12.5)') north_e
      read(40,'(a5)') field
      write(6,'(a5)') field
       read(40,'(8E12.5)') h
C--- 3D ---
      read(40,'(a5)') field
      write(6,'(a5)') field
       read(40,'(8E12.5)') t
      read(40,'(a5)') field
      write(6,'(a5)') field
       read(40,'(8E12.5)') s
      read(40,'(a5)') field
      write(6,'(a5)') field
       read(40,'(8E12.5)') rmean
C--- Constant wind stress read here
C (for time dep. read in loop 9000 & interpolate in time)
      read(40,'(a5)') field
      write(6,'(a5)') field
       read(40,'(8E12.5)') wusurf
      read(40,'(a5)') field
      write(6,'(a5)') field
       read(40,'(8E12.5)') wvsurf
C


其中输入文件fort.40具体内容:
Z  
0.00000E+00-0.35714E-01-0.71429E-01-0.14286E+00-0.21429E+00-0.28571E+00-0.35714E+00-0.42857E+00
-0.50000E+00-0.57143E+00-0.64286E+00-0.71429E+00-0.78571E+00-0.85714E+00-0.92857E+00-0.10000E+01


等等,就不全贴上了。

小弟已经改了两天了,毫无头绪,请各位论坛的高手们帮忙看看是哪里出了问题吧,感谢!



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

新浪微博达人勋

发表于 2016-3-2 00:04:39 | 显示全部楼层
您好,输入时,遇到了异常的转换错误。可能是输入中包含非法的字符(比如输入一个整数,遇到了 1.7a3),或者输入数据超过了转换数据的范围(比如输入一个32位整数,但输入值超过了 2147483648)
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2016-3-2 09:14:25 | 显示全部楼层
输入转换异常,你试试分段执行来查找具体错在了那一块语句
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2016-3-2 15:45:12 来自手机 | 显示全部楼层
找到问题上了,是因为.40文件里面的变量Z有两行数据,但是read只读了一行。下一次再read的时候,实际上还是整型数,但设为字符了。
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2016-3-2 15:45:36 来自手机 | 显示全部楼层
已经找到,谢谢~
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2016-3-2 15:45:57 来自手机 | 显示全部楼层
找到问题上了,是因为.40文件里面的变量Z有两行数据,但是read只读了一行。下一次再read的时候,实际上还是整型数,但设为字符了。
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2016-10-13 19:08:17 | 显示全部楼层
楼主私信个邮箱向你请教点问题啊
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2016-10-13 21:55:08 | 显示全部楼层
密码修改失败请联系微信:mofangbao
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

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

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

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