Ignore:
Timestamp:
Oct 5, 2021, 8:34:09 AM (3 years ago)
Author:
emillour
Message:

Mars GCM utilities:
Minor fixes to run with picky gfortran 10.3.0 which requires one element arrays
(rather than scalars) when calling NetCDF routines, andf that stop statements
should not be followed by strings. While at it replaced tabs with spaces.
EM

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/LMDZ.MARS/util/zrecast.F90

    r2546 r2567  
    176176   write(*,*) 'ERROR: Pb opening file ',trim(infile)
    177177   write(*,*) NF_STRERROR(ierr)
    178    stop ""
     178   stop
    179179endif
    180180
     
    270270  write(*,*) 'No variables to process !?'
    271271  write(*,*) 'Might as well stop here'
    272   stop ""
     272  stop
    273273else
    274274  write(*,*) ""
     
    294294  ierr=NF_INQ_DIMID(infid,"lat",tmpdimid)
    295295  if (ierr.ne.NF_NOERR) then
    296     stop "Error: Failed to get lat dimension ID"
     296    write(*,*) "Error: Failed to get lat dimension ID"
     297    stop
    297298  else
    298299    ierr=NF_INQ_VARID(infid,"lat",tmpvarid)
    299300    if (ierr.ne.NF_NOERR) then
    300       stop "Error: Failed to get lat ID"
     301      write(*,*) "Error: Failed to get lat ID"
     302      stop
    301303    else
    302304      ierr=NF_INQ_DIMLEN(infid,tmpdimid,latlength)
    303305      if (ierr.ne.NF_NOERR) then
    304         stop "Error: Failed to get lat length"
     306        write(*,*) "Error: Failed to get lat length"
     307        stop
    305308      else
    306309        allocate(lat(latlength),stat=ierr)
     
    312315        ierr=NF_GET_VAR_REAL(infid,tmpvarid,lat)
    313316        if (ierr.ne.NF_NOERR) then
    314           stop "Error: Failed reading lat"
     317          write(*,*) "Error: Failed reading lat"
     318          stop
    315319        endif
    316320      endif
     
    320324  ierr=NF_INQ_VARID(infid,"latitude",tmpvarid)
    321325  if (ierr.ne.NF_NOERR) then
    322     stop "Error: Failed to get latitude ID"
     326    write(*,*) "Error: Failed to get latitude ID"
     327    stop
    323328  else
    324329    ierr=NF_INQ_DIMLEN(infid,tmpdimid,latlength)
    325330    if (ierr.ne.NF_NOERR) then
    326       stop "Error: Failed to get latitude length"
     331      write(*,*) "Error: Failed to get latitude length"
     332      stop
    327333    else
    328334      allocate(lat(latlength),stat=ierr)
     
    334340      ierr=NF_GET_VAR_REAL(infid,tmpvarid,lat)
    335341      if (ierr.ne.NF_NOERR) then
    336         stop "Error: Failed reading latitude"
     342        write(*,*) "Error: Failed reading latitude"
     343        stop
    337344      endif
    338345    endif
     
    347354  ierr=NF_INQ_DIMID(infid,"lon",tmpdimid)
    348355  if (ierr.ne.NF_NOERR) then
    349     stop "Error: Failed to get lon dimension ID"
     356    write(*,*) "Error: Failed to get lon dimension ID"
     357    stop
    350358  else
    351359    ierr=NF_INQ_VARID(infid,"lon",tmpvarid)
    352360    if (ierr.ne.NF_NOERR) then
    353       stop "Error: Failed to get lon ID"
     361      write(*,*) "Error: Failed to get lon ID"
     362      stop
    354363    else
    355364      ierr=NF_INQ_DIMLEN(infid,tmpdimid,lonlength)
    356365      if (ierr.ne.NF_NOERR) then
    357         stop "Error: Failed to get lon length"
     366        write(*,*) "Error: Failed to get lon length"
     367        stop
    358368      else
    359369        allocate(lon(lonlength),stat=ierr)
     
    365375        ierr=NF_GET_VAR_REAL(infid,tmpvarid,lon)
    366376        if (ierr.ne.NF_NOERR) then
    367           stop "Error: Failed reading longitude"
     377          write(*,*) "Error: Failed reading longitude"
     378          stop
    368379        endif
    369380      endif
     
    373384  ierr=NF_INQ_VARID(infid,"longitude",tmpvarid)
    374385  if (ierr.ne.NF_NOERR) then
    375     stop "Error: Failed to get longitude ID"
     386    write(*,*) "Error: Failed to get longitude ID"
     387    stop
    376388  else
    377389    ierr=NF_INQ_DIMLEN(infid,tmpdimid,lonlength)
    378390    if (ierr.ne.NF_NOERR) then
    379       stop "Error: Failed to get longitude length"
     391      write(*,*) "Error: Failed to get longitude length"
     392      stop
    380393    else
    381394      allocate(lon(lonlength),stat=ierr)
     
    387400      ierr=NF_GET_VAR_REAL(infid,tmpvarid,lon)
    388401      if (ierr.ne.NF_NOERR) then
    389         stop "Error: Failed reading longitude"
     402        write(*,*) "Error: Failed reading longitude"
     403        stop
    390404      endif
    391405    endif
     
    404418    ierr=NF_INQ_DIMID(infid,"time_counter",tmpdimid)
    405419    if (ierr.ne.NF_NOERR) then
    406       stop "Error: Failed to get time_counter dimension ID"
     420      write(*,*) "Error: Failed to get time_counter dimension ID"
     421      stop
    407422    else
    408423      ierr=NF_INQ_VARID(infid,"time_counter",tmpvarid)
    409424      if (ierr.ne.NF_NOERR) then
    410         stop "Error: Failed to get time_counter ID"
     425        write(*,*) "Error: Failed to get time_counter ID"
     426        stop
    411427      else
    412428        ierr=NF_INQ_DIMLEN(infid,tmpdimid,timelength)
    413429        if (ierr.ne.NF_NOERR) then
    414           stop "Error: Failed to get time_counter length"
     430          write(*,*) "Error: Failed to get time_counter length"
     431          stop
    415432        else
    416433          allocate(time(timelength),stat=ierr)
     
    422439          ierr=NF_GET_VAR_REAL(infid,tmpvarid,time)
    423440          if (ierr.ne.NF_NOERR) then
    424             stop "Error: Failed reading time"
     441            write(*,*) "Error: Failed reading time"
     442            stop
    425443          endif
    426444        endif
     
    430448    ierr=NF_INQ_VARID(infid,"time",tmpvarid)
    431449    if (ierr.ne.NF_NOERR) then
    432       stop "Error: Failed to get time ID"
     450      write(*,*) "Error: Failed to get time ID"
     451      stop
    433452    else
    434453      ierr=NF_INQ_DIMLEN(infid,tmpdimid,timelength)
    435454      if (ierr.ne.NF_NOERR) then
    436         stop "Error: Failed to get time length"
     455        write(*,*) "Error: Failed to get time length"
     456        stop
    437457      else
    438458        allocate(time(timelength),stat=ierr)
     
    444464        ierr=NF_GET_VAR_REAL(infid,tmpvarid,time)
    445465        if (ierr.ne.NF_NOERR) then
    446           stop "Error: Failed reading time"
     466          write(*,*) "Error: Failed reading time"
     467          stop
    447468        endif
    448469      endif
     
    452473  ierr=NF_INQ_VARID(infid,"Time",tmpvarid)
    453474  if (ierr.ne.NF_NOERR) then
    454     stop "Error: Failed to get Time ID"
     475    write(*,*) "Error: Failed to get Time ID"
     476    stop
    455477  else
    456478    ierr=NF_INQ_DIMLEN(infid,tmpdimid,timelength)
    457479    if (ierr.ne.NF_NOERR) then
    458       stop "Error: Failed to get Time length"
     480      write(*,*) "Error: Failed to get Time length"
     481      stop
    459482    else
    460483      allocate(time(timelength),stat=ierr)
     
    466489      ierr=NF_GET_VAR_REAL(infid,tmpvarid,time)
    467490      if (ierr.ne.NF_NOERR) then
    468         stop "Error: Failed reading Time"
     491        write(*,*) "Error: Failed reading Time"
     492        stop
    469493      endif
    470494    endif
     
    479503  ierr=NF_INQ_DIMID(infid,"sigma",tmpdimid)
    480504  if (ierr.ne.NF_NOERR) then
    481     stop "Error: Failed to get sigma dimension ID"
     505    write(*,*) "Error: Failed to get sigma dimension ID"
     506    stop
    482507  else
    483508    ierr=NF_INQ_DIMLEN(infid,tmpdimid,altlength)
    484509    if (ierr.ne.NF_NOERR) then
    485       stop "Error: Failed to get altitude length"
     510      write(*,*) "Error: Failed to get altitude length"
     511      stop
    486512    endif
    487513  endif
     
    489515  ierr=NF_INQ_DIMLEN(infid,tmpdimid,altlength)
    490516  if (ierr.ne.NF_NOERR) then
    491       stop "Error: Failed to get altitude length"
     517      write(*,*) "Error: Failed to get altitude length"
     518      stop
    492519  endif
    493520endif
     
    504531    ierr=NF_INQ_VARID(infid,"controle",tmpvarid)
    505532    if (ierr.ne.NF_NOERR) then
    506       stop "Error: Failed to get controle ID"
     533      write(*,*) "Error: Failed to get controle ID"
     534      stop
    507535    else
    508536      ierr=NF_INQ_DIMLEN(infid,tmpdimid,ctllength)
    509537      if (ierr.ne.NF_NOERR) then
    510         stop "Error: Failed to get controle length"
     538        write(*,*) "Error: Failed to get controle length"
     539        stop
    511540      else
    512541        allocate(ctl(ctllength),stat=ierr)
     
    518547        ierr=NF_GET_VAR_REAL(infid,tmpvarid,ctl)
    519548        if (ierr.ne.NF_NOERR) then
    520           stop "Error: Failed reading controle"
     549          write(*,*) "Error: Failed reading controle"
     550          stop
    521551        endif
    522552      endif
     
    526556  ierr=NF_INQ_VARID(infid,"controle",tmpvarid)
    527557  if (ierr.ne.NF_NOERR) then
    528     stop "Error: Failed to get controle ID"
     558    write(*,*) "Error: Failed to get controle ID"
     559    stop
    529560  else
    530561    ierr=NF_INQ_DIMLEN(infid,tmpdimid,ctllength)
    531562    if (ierr.ne.NF_NOERR) then
    532       stop "Error: Failed to get controle length"
     563      write(*,*) "Error: Failed to get controle length"
     564      stop
    533565    else
    534566      allocate(ctl(ctllength),stat=ierr)
     
    540572      ierr=NF_GET_VAR_REAL(infid,tmpvarid,ctl)
    541573      if (ierr.ne.NF_NOERR) then
    542         stop "Error: Failed reading controle"
     574        write(*,*) "Error: Failed reading controle"
     575        stop
    543576      endif
    544577    endif
     
    563596  ierr=NF_GET_VAR_REAL(infid,tmpvarid,sigma)
    564597  if (ierr.ne.NF_NOERR) then
    565     stop "Error: Failed reading sigma"
     598    write(*,*) "Error: Failed reading sigma"
     599    stop
    566600  endif
    567601endif
     
    572606  ierr=NF_INQ_VARID(infid,"aps",tmpvarid)
    573607  if (ierr.ne.NF_NOERR) then
    574     stop "Error: Failed to get aps ID"
     608    write(*,*) "Error: Failed to get aps ID"
     609    stop
    575610  else
    576611    allocate(aps(altlength),stat=ierr)
     
    582617    ierr=NF_GET_VAR_REAL(infid,tmpvarid,aps)
    583618    if (ierr.ne.NF_NOERR) then
    584       stop "Error: Failed reading aps"
     619      write(*,*) "Error: Failed reading aps"
     620      stop
    585621    endif
    586622  endif
     
    589625  ierr=NF_INQ_VARID(infid,"bps",tmpvarid)
    590626  if (ierr.ne.NF_NOERR) then
    591     stop "Error: Failed to get bps ID"
     627    write(*,*) "Error: Failed to get bps ID"
     628    stop
    592629  else
    593630    allocate(bps(altlength),stat=ierr)
     
    599636    ierr=NF_GET_VAR_REAL(infid,tmpvarid,bps)
    600637    if (ierr.ne.NF_NOERR) then
    601       stop "Error: Failed reading bps"
     638      write(*,*) "Error: Failed reading bps"
     639      stop
    602640    endif
    603641  endif
     
    631669      if (ierr.ne.NF_NOERR) then
    632670        write(*,*) "Error: Could not open that file either"
    633         stop "Might as well stop here"
     671        write(*,*) "Might as well stop here"
     672        stop
    634673      endif
    635674    endif
     
    639678  ierr=NF_INQ_VARID(infid2,"phisinit",tmpvarid)
    640679  if (ierr.ne.NF_NOERR) then
    641     stop "Error: Failed to get phisinit ID"
     680    write(*,*) "Error: Failed to get phisinit ID"
     681    stop
    642682  endif
    643683  ! Get physinit
    644684  ierr=NF_GET_VAR_REAL(infid2,tmpvarid,phisinit)
    645685  if (ierr.ne.NF_NOERR) then
    646     stop "Error: Failed reading phisinit"
     686    write(*,*) "Error: Failed reading phisinit"
     687    stop
    647688  endif
    648689  ! Close file
     
    652693  ierr=NF_GET_VAR_REAL(infid,tmpvarid,phisinit)
    653694  if (ierr.ne.NF_NOERR) then
    654     stop "Error: Failed reading phisinit"
     695    write(*,*) "Error: Failed reading phisinit"
     696    stop
    655697  endif
    656698endif
     
    918960ierr=NF_INQ_VARID(infid,"ps",tmpvarid)
    919961if (ierr.ne.NF_NOERR) then
    920   stop "Error: Failed to get ps ID"
     962  write(*,*) "Error: Failed to get ps ID"
     963  stop
    921964else
    922965  allocate(ps(lonlength,latlength,timelength),stat=ierr)
     
    929972  ierr=NF_GET_VAR_REAL(infid,tmpvarid,ps)
    930973  if (ierr.ne.NF_NOERR) then
    931     stop "Error: Failed reading surface pressure"
     974    write(*,*) "Error: Failed reading surface pressure"
     975    stop
    932976  endif
    933977endif
     
    10221066  ierr=NF_GET_VAR_REAL(infid,tmpvarid,temp)
    10231067  if (ierr.ne.NF_NOERR) then
    1024     stop "Error: Failed reading atmospheric temperature"
     1068    write(*,*) "Error: Failed reading atmospheric temperature"
     1069    stop
    10251070  endif
    10261071  have_temp=.true.
     
    10461091  ierr=NF_GET_VAR_REAL(infid,tmpvarid,rho)
    10471092  if (ierr.ne.NF_NOERR) then
    1048     stop "Error: Failed reading atmospheric density"
     1093    write(*,*) "Error: Failed reading atmospheric density"
     1094    stop
    10491095  endif
    10501096endif
     
    12341280ierr=NF_PUT_ATT_TEXT(outfid,lon_varid,'long_name',len_trim(text),text)
    12351281if (ierr.ne.NF_NOERR) then
    1236   stop "Error: Problem writing long_name for longitude"
     1282  write(*,*) "Error: Problem writing long_name for longitude"
     1283  stop
    12371284endif
    12381285text='degrees_east'
    12391286ierr=NF_PUT_ATT_TEXT(outfid,lon_varid,'units',len_trim(text),text)
    12401287if (ierr.ne.NF_NOERR) then
    1241   stop "Error: Problem writing units for longitude"
     1288  write(*,*) "Error: Problem writing units for longitude"
     1289  stop
    12421290endif
    12431291
     
    12551303ierr=NF_PUT_ATT_TEXT(outfid,lat_varid,'long_name',len_trim(text),text)
    12561304if (ierr.ne.NF_NOERR) then
    1257   stop "Error: Problem writing long_name for latitude"
     1305  write(*,*) "Error: Problem writing long_name for latitude"
     1306  stop
    12581307endif
    12591308text='degrees_north'
    12601309ierr=NF_PUT_ATT_TEXT(outfid,lat_varid,'units',len_trim(text),text)
    12611310if (ierr.ne.NF_NOERR) then
    1262   stop "Error: Problem writing units for latitude"
     1311  write(*,*) "Error: Problem writing units for latitude"
     1312  stop
    12631313endif
    12641314
     
    12771327  ierr=NF_PUT_ATT_TEXT(outfid,alt_varid,'long_name',len_trim(text),text)
    12781328  if (ierr.ne.NF_NOERR) then
    1279     stop "Error: Problem writing long_name for altitude"
     1329    write(*,*) "Error: Problem writing long_name for altitude"
     1330    stop
    12801331  endif
    12811332  text='Pa'
    12821333  ierr=NF_PUT_ATT_TEXT(outfid,alt_varid,'units',len_trim(text),text)
    12831334  if (ierr.ne.NF_NOERR) then
    1284     stop "Error: Problem writing units for altitude"
     1335    write(*,*) "Error: Problem writing units for altitude"
     1336    stop
    12851337  endif
    12861338  text='down'
    12871339  ierr=NF_PUT_ATT_TEXT(outfid,alt_varid,'positive',len_trim(text),text)
    12881340  if (ierr.ne.NF_NOERR) then
    1289     stop "Error: Problem writing positive for altitude"
     1341    write(*,*) "Error: Problem writing positive for altitude"
     1342    stop
    12901343  endif
    12911344else if (ztype.eq.2) then ! above areoid vertical coordinate
     
    12931346  ierr=NF_PUT_ATT_TEXT(outfid,alt_varid,'long_name',len_trim(text),text)
    12941347  if (ierr.ne.NF_NOERR) then
    1295     stop "Error: Problem writing long_name for altitude"
     1348    write(*,*) "Error: Problem writing long_name for altitude"
     1349    stop
    12961350  endif
    12971351  text='m'
    12981352  ierr=NF_PUT_ATT_TEXT(outfid,alt_varid,'units',len_trim(text),text)
    12991353  if (ierr.ne.NF_NOERR) then
    1300     stop "Error: Problem writing units for altitude"
     1354    write(*,*) "Error: Problem writing units for altitude"
     1355    stop
    13011356  endif
    13021357  text='up'
    13031358  ierr=NF_PUT_ATT_TEXT(outfid,alt_varid,'positive',len_trim(text),text)
    13041359  if (ierr.ne.NF_NOERR) then
    1305     stop "Error: Problem writing positive for altitude"
     1360    write(*,*) "Error: Problem writing positive for altitude"
     1361    stop
    13061362  endif
    13071363else if (ztype.eq.3) then ! above surface vertical coordinate
     
    13091365  ierr=NF_PUT_ATT_TEXT(outfid,alt_varid,'long_name',len_trim(text),text)
    13101366  if (ierr.ne.NF_NOERR) then
    1311     stop "Error: Problem writing long_name for altitude"
     1367    write(*,*) "Error: Problem writing long_name for altitude"
     1368    stop
    13121369  endif
    13131370  text='m'
    13141371  ierr=NF_PUT_ATT_TEXT(outfid,alt_varid,'units',len_trim(text),text)
    13151372  if (ierr.ne.NF_NOERR) then
    1316     stop "Error: Problem writing units for altitude"
     1373    write(*,*) "Error: Problem writing units for altitude"
     1374    stop
    13171375  endif
    13181376  text='up'
    13191377  ierr=NF_PUT_ATT_TEXT(outfid,alt_varid,'positive',len_trim(text),text)
    13201378  if (ierr.ne.NF_NOERR) then
    1321     stop "Error: Problem writing positive for altitude"
     1379    write(*,*) "Error: Problem writing positive for altitude"
     1380    stop
    13221381  endif
    13231382else ! radial distance to center of planet
     
    13251384  ierr=NF_PUT_ATT_TEXT(outfid,alt_varid,'long_name',len_trim(text),text)
    13261385  if (ierr.ne.NF_NOERR) then
    1327     stop "Error: Problem writing long_name for altitude"
     1386    write(*,*) "Error: Problem writing long_name for altitude"
     1387    stop
    13281388  endif
    13291389  text='m'
    13301390  ierr=NF_PUT_ATT_TEXT(outfid,alt_varid,'units',len_trim(text),text)
    13311391  if (ierr.ne.NF_NOERR) then
    1332     stop "Error: Problem writing units for altitude"
     1392    write(*,*) "Error: Problem writing units for altitude"
     1393    stop
    13331394  endif
    13341395  text='up'
    13351396  ierr=NF_PUT_ATT_TEXT(outfid,alt_varid,'positive',len_trim(text),text)
    13361397  if (ierr.ne.NF_NOERR) then
    1337     stop "Error: Problem writing positive for altitude"
     1398    write(*,*) "Error: Problem writing positive for altitude"
     1399    stop
    13381400  endif
    13391401endif ! of if (have_sigma)
     
    13521414  ierr=NF_PUT_ATT_TEXT(outfid,ctl_varid,'title',len_trim(text),text)
    13531415  if (ierr.ne.NF_NOERR) then
    1354     stop "Error: Problem writing title for controle"
     1416    write(*,*) "Error: Problem writing title for controle"
     1417    stop
    13551418  endif
    13561419endif
     
    13871450  ierr=NF_PUT_ATT_TEXT(outfid,sigma_varid,'long_name',len_trim(text),text)
    13881451  if (ierr.ne.NF_NOERR) then
    1389     stop "Error: Problem writing long_name for sigma"
     1452    write(*,*) "Error: Problem writing long_name for sigma"
     1453    stop
    13901454  endif
    13911455else ! hybrid coordinates
     
    13931457  ierr=NF_PUT_ATT_TEXT(outfid,aps_varid,'long_name',len_trim(text),text)
    13941458  if (ierr.ne.NF_NOERR) then
    1395     stop "Error: Problem writing long_name for aps"
     1459    write(*,*) "Error: Problem writing long_name for aps"
     1460    stop
    13961461  endif
    13971462  text="hybrid sigma at midlayers"
    13981463  ierr=NF_PUT_ATT_TEXT(outfid,bps_varid,'long_name',len_trim(text),text)
    13991464  if (ierr.ne.NF_NOERR) then
    1400     stop "Error: Problem writing long_name for bps"
     1465    write(*,*) "Error: Problem writing long_name for bps"
     1466    stop
    14011467  endif
    14021468endif ! of if (have_sigma)
     
    14151481ierr=NF_PUT_ATT_TEXT(outfid,time_varid,'long_name',len_trim(text),text)
    14161482if (ierr.ne.NF_NOERR) then
    1417   stop "Error: Problem writing long_name for Time"
     1483  write(*,*) "Error: Problem writing long_name for Time"
     1484  stop
    14181485endif
    14191486text='days since 0000-01-1 00:00:00'
    14201487ierr=NF_PUT_ATT_TEXT(outfid,time_varid,'units',len_trim(text),text)
    14211488if (ierr.ne.NF_NOERR) then
    1422   stop "Error: Problem writing units for Time"
     1489  write(*,*) "Error: Problem writing units for Time"
     1490  stop
    14231491endif
    14241492
     
    14301498ierr=NF_PUT_ATT_TEXT(outfid,phis_varid,'long_name',len_trim(text),text)
    14311499if (ierr.ne.NF_NOERR) then
    1432   stop "Error: Problem writing long_name for phisinit"
     1500  write(*,*) "Error: Problem writing long_name for phisinit"
     1501  stop
    14331502endif
    14341503text='m2.s2'
    14351504ierr=NF_PUT_ATT_TEXT(outfid,phis_varid,'units',len_trim(text),text)
    14361505if (ierr.ne.NF_NOERR) then
    1437   stop "Error: Problem writing units for geopotential phisinit"
     1506  write(*,*) "Error: Problem writing units for geopotential phisinit"
     1507  stop
    14381508endif
    14391509
     
    14571527ierr=NF_PUT_ATT_TEXT(outfid,ps_varid,'long_name',len_trim(text),text)
    14581528if (ierr.ne.NF_NOERR) then
    1459   stop "Error: Problem writing long_name for surface pressure"
     1529  write(*,*) "Error: Problem writing long_name for surface pressure"
     1530  stop
    14601531endif
    14611532text='Pa'
    14621533ierr=NF_PUT_ATT_TEXT(outfid,ps_varid,'units',len_trim(text),text)
    14631534if (ierr.ne.NF_NOERR) then
    1464   stop "Error: Problem writing units for surface pressure"
     1535  write(*,*) "Error: Problem writing units for surface pressure"
     1536  stop
    14651537endif
    14661538
     
    14801552  ierr=NF_PUT_ATT_TEXT(outfid,za_varid,'long_name',len_trim(text),text)
    14811553  if (ierr.ne.NF_NOERR) then
    1482     stop "Error: Problem writing long_name for zareoid"
     1554    write(*,*) "Error: Problem writing long_name for zareoid"
     1555    stop
    14831556  endif
    14841557  text='m'
    14851558  ierr=NF_PUT_ATT_TEXT(outfid,za_varid,'units',len_trim(text),text)
    14861559  if (ierr.ne.NF_NOERR) then
    1487     stop "Error: Problem writing units for zareoid"
     1560    write(*,*) "Error: Problem writing units for zareoid"
     1561    stop
    14881562  endif
    14891563  ! zareoid missing value
    14901564  ierr=NF_PUT_ATT_REAL(outfid,za_varid,'missing_value',NF_REAL,1,miss_val)
    14911565  if (ierr.ne.NF_NOERR) then
    1492     stop "Error: Problem writing missing_value for zareoid"
     1566    write(*,*) "Error: Problem writing missing_value for zareoid"
     1567    stop
    14931568  endif
    14941569else ! above areoid or above local surface vertical coordinate
     
    15041579  ierr=NF_PUT_ATT_TEXT(outfid,p_varid,'long_name',len_trim(text),text)
    15051580  if (ierr.ne.NF_NOERR) then
    1506     stop "Error: Problem writing long_name for pressure"
     1581    write(*,*) "Error: Problem writing long_name for pressure"
     1582    stop
    15071583  endif
    15081584  text='Pa'
    15091585  ierr=NF_PUT_ATT_TEXT(outfid,p_varid,'units',len_trim(text),text)
    15101586  if (ierr.ne.NF_NOERR) then
    1511     stop "Error: Problem writing units for pressure"
     1587    write(*,*) "Error: Problem writing units for pressure"
     1588    stop
    15121589  endif
    15131590  ! pressure missing value
    15141591  ierr=NF_PUT_ATT_REAL(outfid,p_varid,'missing_value',NF_REAL,1,miss_val)
    15151592  if (ierr.ne.NF_NOERR) then
    1516     stop "Error: Problem writing missing_value for pressure"
     1593    write(*,*) "Error: Problem writing missing_value for pressure"
     1594    stop
    15171595  endif
    15181596endif
     
    15881666      if (ierr.ne.NF_NOERR) then
    15891667        write(*,*) "Error failed to copy title attribute:",trim(text)
    1590       stop ""
     1668      stop
    15911669      endif
    15921670    else ! no 'title' attribute
     
    16111689    if (ierr.ne.NF_NOERR) then
    16121690      write(*,*) "Error failed to copy long_name attribute:",trim(text)
    1613       stop ""
     1691      stop
    16141692    endif
    16151693  endif
     
    16251703    if (ierr.ne.NF_NOERR) then
    16261704      write(*,*) "Error failed to copy units attribute:",trim(text)
    1627       stop ""
     1705      stop
    16281706    endif
    16291707  endif
     
    16411719  ierr=NF_PUT_ATT_REAL(outfid,var_id(i),'missing_value',NF_REAL,1,miss_val)
    16421720  if (ierr.ne.NF_NOERR) then
    1643     stop "Error, failed to write missing_value attribute"
     1721    write(*,*) "Error, failed to write missing_value attribute"
     1722    stop
    16441723  endif
    16451724
     
    17461825
    17471826! Write time
    1748 ierr=NF_PUT_VARA_REAL(outfid,time_varid,1,timelength,time)
     1827ierr=NF_PUT_VARA_REAL(outfid,time_varid,(/1/),(/timelength/),time)
    17491828if (ierr.ne.NF_NOERR) then
    17501829  write(*,*) "Error: Could not write Time data to output file"
Note: See TracChangeset for help on using the changeset viewer.