24小时热门版块排行榜    

查看: 4147  |  回复: 1

汤小家有只鹿

铁虫 (初入文坛)

[求助] 运行fortran出现forrtl: severe (174): SIGSEGV, segmentation fault occurred 已有1人参与

(linux)我读取两个nc文件,再建立一个新的nc文件,把前两个nc文件中读取出的内容放进新的nc文件。求助,要交作业,拜托
以下是我的程序:
      ! This program is for reading area.nc and calendar
      program link         
      implicit none
      character*299 cass_cal
      character*299 cass_har
      character*299 link_ac
      integer ierr,ncid1,ncid2,ncid3,varid1,varid2,varid3,len_file
      integer, parameter :: longitude=3600, latitude=1800
      real lon_1(longitude), lat_1(latitude)
      real lon_2(longitude), lat_2(latitude)
      real harveste_1(longitude,latitude)
      real(8) area_2(longitude,latitude)                 

      integer lon,lat          !dimension IDs
      integer area,harveste    !variable IDs
      integer areadims(2),hedims(2) !variable shapes           
                                 
      include 'netcdf.inc'
      cass_cal='/home/iga/data/xycao/calendar/output/Cassava.op.nc'
      cass_har='/home/iga/data/xycao/05area/cassava/op/cass_harvest_2005_01.nc'
      link_ac='/home/iga/data/xycao/05area/cassava/op/link_ac.nc'
      !read calendar
      len_file=len_trim(cass_cal)
      ierr=nf_open(trim(cass_cal),nf_nowrite,ncid1) !open nc file,get ID number (ncid)

      ierr=nf_inq_varid(ncid1,'longitude',varid1)    !get"longitude"
      ierr=nf_get_var_real(ncid1,varid1,lon_1)

      ierr=nf_inq_varid(ncid1,'latitude',varid1)    !get"latitude"
      ierr=nf_get_var_real(ncid1,varid1,lat_1)

      !ierr=nf_inq_varid (ncid1, 'plant.end', varid1)  !open 'plant.end',get ID number
      !ierr=nf_get_var_real (ncid1,varid1,plante_1)      

      ierr=nf_inq_varid (ncid1, 'harvest.end', varid1) !open 'harvest.end',get ID number
      ierr=nf_get_var_real (ncid1,varid1,harveste_1)

      !read area
      len_file=len_trim(cass_har)
      ierr=nf_open(trim(cass_har),nf_write,ncid2)  !open nc file,get ID number (ncid)

      ierr=nf_inq_varid(ncid2,'longitude',varid2) !get"longitude"
      ierr=nf_get_var_real(ncid2,varid2,lon_1)

      ierr=nf_inq_varid(ncid2,'latitude',varid2) !get"latitude"
      ierr=nf_get_var_real(ncid2,varid2,lat_2)

      ierr=nf_inq_varid (ncid2, 'Band1', varid2) !open 'Band1',get ID number
      ierr=nf_get_var_real (ncid2,varid2,area_2)
      
      print*,'ierr'
      !print*, plante(1145,702)
      print*, harveste_1(1145,704)                       !check
      print*, area_2(1145,702),area_2(1145,704)

      !create a new file to link area and calendar
      len_file=len_trim(link_ac)
      ierr=nf_create(trim(link_ac),nf_clobber,ncid3)
   
      ierr=nf_def_dim(ncid3,'lat_1',1800,lat)
      ierr=nf_def_dim(ncid3,'lon_1',3600,lon)
      hedims(1)=lat
      hedims(2)=lon
      ierr=nf_def_var(ncid3,'harveste_1',nf_real,2,harveste)
      areadims(1)=lat
      areadims(2)=lon
      ierr=nf_def_var(ncid3,'area_2',nf_double,2,area)

      end program link

运行时出现了以下错误:
forrtl: severe (174): SIGSEGV, segmentation fault occurred
Image              PC                Routine            Line        Source            
link.exe           000000000046F579  Unknown               Unknown  Unknown
link.exe           000000000046DEF0  Unknown               Unknown  Unknown
link.exe           000000000043FD52  Unknown               Unknown  Unknown
link.exe           0000000000424973  Unknown               Unknown  Unknown
link.exe           00000000004035FB  Unknown               Unknown  Unknown
libpthread.so.0    0000003B0EA0F710  Unknown               Unknown  Unknown
libnetcdff.so.5    00002B059A138AEC  Unknown               Unknown  Unknown
link.exe           0000000000403342  Unknown               Unknown  Unknown
link.exe           0000000000402EF6  Unknown               Unknown  Unknown
libc.so.6          0000003B0E61ED5D  Unknown               Unknown  Unknown
link.exe           0000000000402DE9  Unknown               Unknown  Unknown
回复此楼
小蜗牛,快快爬
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

1014511134

专家顾问 (正式写手)

【答案】应助回帖


感谢参与,应助指数 +1
汤小家有只鹿: 金币+1, 有帮助, 谢谢回复 2017-12-04 18:50:20
访问非法地址,查看一下数组是否越界什么的,比如合并后的数据大小等等,只是看过,没用过netcdf读写
2楼2017-12-04 15:05:14
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 汤小家有只鹿 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 298-一志愿中国农业大学-求调剂 +9 手机用户 2026-03-17 9/450 2026-03-20 14:24 by 无懈可击111
[考研] 279分求调剂 一志愿211 +9 chaojifeixia 2026-03-19 10/500 2026-03-20 12:29 by lature00
[考研] 329求调剂 +6 想上学吖吖 2026-03-19 6/300 2026-03-20 09:00 by 每天只摆一小会
[考研] 复试调剂 +4 z1z2z3879 2026-03-14 6/300 2026-03-19 17:18 by fei626-918
[考研] 085601材料工程专硕求调剂 +10 慕寒mio 2026-03-16 10/500 2026-03-19 15:26 by 丁丁*
[考研] 一志愿西安交通大学材料工程专业 282分求调剂 +5 枫桥ZL 2026-03-18 7/350 2026-03-19 14:52 by 功夫疯狂
[考研] 324分 085600材料化工求调剂 +3 llllkkkhh 2026-03-18 3/150 2026-03-19 14:22 by houyaoxu
[考研] 一志愿 西北大学 ,070300化学学硕,总分287,双非一本,求调剂。 +3 晨昏线与星海 2026-03-19 3/150 2026-03-19 13:36 by houyaoxu
[考研] 304求调剂 +6 司空. 2026-03-18 6/300 2026-03-18 23:03 by 星空星月
[考研] 材料专业求调剂 +5 hanamiko 2026-03-18 5/250 2026-03-18 20:19 by 星空星月
[考研] 297求调剂 +8 戏精丹丹丹 2026-03-17 8/400 2026-03-18 14:30 by laoshidan
[考研] 302求调剂 +10 呼呼呼。。。。 2026-03-17 10/500 2026-03-18 12:45 by Linda Hu
[考研] 304求调剂 +12 小熊joy 2026-03-14 13/650 2026-03-18 12:34 by Linda Hu
[基金申请] 被我言中:新模板不强调格式了,假专家开始管格式了 +4 beefly 2026-03-14 4/200 2026-03-17 22:04 by 黄鸟于飞Chao
[考研] 考研求调剂 +3 橘颂. 2026-03-17 4/200 2026-03-17 21:43 by 有只狸奴
[考研] 277调剂 +5 自由煎饼果子 2026-03-16 6/300 2026-03-17 19:26 by 李leezz
[考研] 考研化学学硕调剂,一志愿985 +4 张vvvv 2026-03-15 6/300 2026-03-17 17:15 by ruiyingmiao
[考研] 277材料科学与工程080500求调剂 +3 自由煎饼果子 2026-03-16 3/150 2026-03-16 14:10 by 运气yunqi
[考研] 26考研一志愿中国石油大学(华东)305分求调剂 +3 嘉年新程 2026-03-15 3/150 2026-03-15 13:58 by 哈哈哈哈嘿嘿嘿
[考研] 080500,材料学硕302分求调剂学校 +4 初识可乐 2026-03-14 5/250 2026-03-14 21:08 by peike
信息提示
请填处理意见