Changeset 2567 for trunk/LMDZ.MARS/util/zrecast.F90
- Timestamp:
- Oct 5, 2021, 8:34:09 AM (3 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LMDZ.MARS/util/zrecast.F90
r2546 r2567 176 176 write(*,*) 'ERROR: Pb opening file ',trim(infile) 177 177 write(*,*) NF_STRERROR(ierr) 178 stop ""178 stop 179 179 endif 180 180 … … 270 270 write(*,*) 'No variables to process !?' 271 271 write(*,*) 'Might as well stop here' 272 stop ""272 stop 273 273 else 274 274 write(*,*) "" … … 294 294 ierr=NF_INQ_DIMID(infid,"lat",tmpdimid) 295 295 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 297 298 else 298 299 ierr=NF_INQ_VARID(infid,"lat",tmpvarid) 299 300 if (ierr.ne.NF_NOERR) then 300 stop "Error: Failed to get lat ID" 301 write(*,*) "Error: Failed to get lat ID" 302 stop 301 303 else 302 304 ierr=NF_INQ_DIMLEN(infid,tmpdimid,latlength) 303 305 if (ierr.ne.NF_NOERR) then 304 stop "Error: Failed to get lat length" 306 write(*,*) "Error: Failed to get lat length" 307 stop 305 308 else 306 309 allocate(lat(latlength),stat=ierr) … … 312 315 ierr=NF_GET_VAR_REAL(infid,tmpvarid,lat) 313 316 if (ierr.ne.NF_NOERR) then 314 stop "Error: Failed reading lat" 317 write(*,*) "Error: Failed reading lat" 318 stop 315 319 endif 316 320 endif … … 320 324 ierr=NF_INQ_VARID(infid,"latitude",tmpvarid) 321 325 if (ierr.ne.NF_NOERR) then 322 stop "Error: Failed to get latitude ID" 326 write(*,*) "Error: Failed to get latitude ID" 327 stop 323 328 else 324 329 ierr=NF_INQ_DIMLEN(infid,tmpdimid,latlength) 325 330 if (ierr.ne.NF_NOERR) then 326 stop "Error: Failed to get latitude length" 331 write(*,*) "Error: Failed to get latitude length" 332 stop 327 333 else 328 334 allocate(lat(latlength),stat=ierr) … … 334 340 ierr=NF_GET_VAR_REAL(infid,tmpvarid,lat) 335 341 if (ierr.ne.NF_NOERR) then 336 stop "Error: Failed reading latitude" 342 write(*,*) "Error: Failed reading latitude" 343 stop 337 344 endif 338 345 endif … … 347 354 ierr=NF_INQ_DIMID(infid,"lon",tmpdimid) 348 355 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 350 358 else 351 359 ierr=NF_INQ_VARID(infid,"lon",tmpvarid) 352 360 if (ierr.ne.NF_NOERR) then 353 stop "Error: Failed to get lon ID" 361 write(*,*) "Error: Failed to get lon ID" 362 stop 354 363 else 355 364 ierr=NF_INQ_DIMLEN(infid,tmpdimid,lonlength) 356 365 if (ierr.ne.NF_NOERR) then 357 stop "Error: Failed to get lon length" 366 write(*,*) "Error: Failed to get lon length" 367 stop 358 368 else 359 369 allocate(lon(lonlength),stat=ierr) … … 365 375 ierr=NF_GET_VAR_REAL(infid,tmpvarid,lon) 366 376 if (ierr.ne.NF_NOERR) then 367 stop "Error: Failed reading longitude" 377 write(*,*) "Error: Failed reading longitude" 378 stop 368 379 endif 369 380 endif … … 373 384 ierr=NF_INQ_VARID(infid,"longitude",tmpvarid) 374 385 if (ierr.ne.NF_NOERR) then 375 stop "Error: Failed to get longitude ID" 386 write(*,*) "Error: Failed to get longitude ID" 387 stop 376 388 else 377 389 ierr=NF_INQ_DIMLEN(infid,tmpdimid,lonlength) 378 390 if (ierr.ne.NF_NOERR) then 379 stop "Error: Failed to get longitude length" 391 write(*,*) "Error: Failed to get longitude length" 392 stop 380 393 else 381 394 allocate(lon(lonlength),stat=ierr) … … 387 400 ierr=NF_GET_VAR_REAL(infid,tmpvarid,lon) 388 401 if (ierr.ne.NF_NOERR) then 389 stop "Error: Failed reading longitude" 402 write(*,*) "Error: Failed reading longitude" 403 stop 390 404 endif 391 405 endif … … 404 418 ierr=NF_INQ_DIMID(infid,"time_counter",tmpdimid) 405 419 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 407 422 else 408 423 ierr=NF_INQ_VARID(infid,"time_counter",tmpvarid) 409 424 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 411 427 else 412 428 ierr=NF_INQ_DIMLEN(infid,tmpdimid,timelength) 413 429 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 415 432 else 416 433 allocate(time(timelength),stat=ierr) … … 422 439 ierr=NF_GET_VAR_REAL(infid,tmpvarid,time) 423 440 if (ierr.ne.NF_NOERR) then 424 stop "Error: Failed reading time" 441 write(*,*) "Error: Failed reading time" 442 stop 425 443 endif 426 444 endif … … 430 448 ierr=NF_INQ_VARID(infid,"time",tmpvarid) 431 449 if (ierr.ne.NF_NOERR) then 432 stop "Error: Failed to get time ID" 450 write(*,*) "Error: Failed to get time ID" 451 stop 433 452 else 434 453 ierr=NF_INQ_DIMLEN(infid,tmpdimid,timelength) 435 454 if (ierr.ne.NF_NOERR) then 436 stop "Error: Failed to get time length" 455 write(*,*) "Error: Failed to get time length" 456 stop 437 457 else 438 458 allocate(time(timelength),stat=ierr) … … 444 464 ierr=NF_GET_VAR_REAL(infid,tmpvarid,time) 445 465 if (ierr.ne.NF_NOERR) then 446 stop "Error: Failed reading time" 466 write(*,*) "Error: Failed reading time" 467 stop 447 468 endif 448 469 endif … … 452 473 ierr=NF_INQ_VARID(infid,"Time",tmpvarid) 453 474 if (ierr.ne.NF_NOERR) then 454 stop "Error: Failed to get Time ID" 475 write(*,*) "Error: Failed to get Time ID" 476 stop 455 477 else 456 478 ierr=NF_INQ_DIMLEN(infid,tmpdimid,timelength) 457 479 if (ierr.ne.NF_NOERR) then 458 stop "Error: Failed to get Time length" 480 write(*,*) "Error: Failed to get Time length" 481 stop 459 482 else 460 483 allocate(time(timelength),stat=ierr) … … 466 489 ierr=NF_GET_VAR_REAL(infid,tmpvarid,time) 467 490 if (ierr.ne.NF_NOERR) then 468 stop "Error: Failed reading Time" 491 write(*,*) "Error: Failed reading Time" 492 stop 469 493 endif 470 494 endif … … 479 503 ierr=NF_INQ_DIMID(infid,"sigma",tmpdimid) 480 504 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 482 507 else 483 508 ierr=NF_INQ_DIMLEN(infid,tmpdimid,altlength) 484 509 if (ierr.ne.NF_NOERR) then 485 stop "Error: Failed to get altitude length" 510 write(*,*) "Error: Failed to get altitude length" 511 stop 486 512 endif 487 513 endif … … 489 515 ierr=NF_INQ_DIMLEN(infid,tmpdimid,altlength) 490 516 if (ierr.ne.NF_NOERR) then 491 stop "Error: Failed to get altitude length" 517 write(*,*) "Error: Failed to get altitude length" 518 stop 492 519 endif 493 520 endif … … 504 531 ierr=NF_INQ_VARID(infid,"controle",tmpvarid) 505 532 if (ierr.ne.NF_NOERR) then 506 stop "Error: Failed to get controle ID" 533 write(*,*) "Error: Failed to get controle ID" 534 stop 507 535 else 508 536 ierr=NF_INQ_DIMLEN(infid,tmpdimid,ctllength) 509 537 if (ierr.ne.NF_NOERR) then 510 stop "Error: Failed to get controle length" 538 write(*,*) "Error: Failed to get controle length" 539 stop 511 540 else 512 541 allocate(ctl(ctllength),stat=ierr) … … 518 547 ierr=NF_GET_VAR_REAL(infid,tmpvarid,ctl) 519 548 if (ierr.ne.NF_NOERR) then 520 stop "Error: Failed reading controle" 549 write(*,*) "Error: Failed reading controle" 550 stop 521 551 endif 522 552 endif … … 526 556 ierr=NF_INQ_VARID(infid,"controle",tmpvarid) 527 557 if (ierr.ne.NF_NOERR) then 528 stop "Error: Failed to get controle ID" 558 write(*,*) "Error: Failed to get controle ID" 559 stop 529 560 else 530 561 ierr=NF_INQ_DIMLEN(infid,tmpdimid,ctllength) 531 562 if (ierr.ne.NF_NOERR) then 532 stop "Error: Failed to get controle length" 563 write(*,*) "Error: Failed to get controle length" 564 stop 533 565 else 534 566 allocate(ctl(ctllength),stat=ierr) … … 540 572 ierr=NF_GET_VAR_REAL(infid,tmpvarid,ctl) 541 573 if (ierr.ne.NF_NOERR) then 542 stop "Error: Failed reading controle" 574 write(*,*) "Error: Failed reading controle" 575 stop 543 576 endif 544 577 endif … … 563 596 ierr=NF_GET_VAR_REAL(infid,tmpvarid,sigma) 564 597 if (ierr.ne.NF_NOERR) then 565 stop "Error: Failed reading sigma" 598 write(*,*) "Error: Failed reading sigma" 599 stop 566 600 endif 567 601 endif … … 572 606 ierr=NF_INQ_VARID(infid,"aps",tmpvarid) 573 607 if (ierr.ne.NF_NOERR) then 574 stop "Error: Failed to get aps ID" 608 write(*,*) "Error: Failed to get aps ID" 609 stop 575 610 else 576 611 allocate(aps(altlength),stat=ierr) … … 582 617 ierr=NF_GET_VAR_REAL(infid,tmpvarid,aps) 583 618 if (ierr.ne.NF_NOERR) then 584 stop "Error: Failed reading aps" 619 write(*,*) "Error: Failed reading aps" 620 stop 585 621 endif 586 622 endif … … 589 625 ierr=NF_INQ_VARID(infid,"bps",tmpvarid) 590 626 if (ierr.ne.NF_NOERR) then 591 stop "Error: Failed to get bps ID" 627 write(*,*) "Error: Failed to get bps ID" 628 stop 592 629 else 593 630 allocate(bps(altlength),stat=ierr) … … 599 636 ierr=NF_GET_VAR_REAL(infid,tmpvarid,bps) 600 637 if (ierr.ne.NF_NOERR) then 601 stop "Error: Failed reading bps" 638 write(*,*) "Error: Failed reading bps" 639 stop 602 640 endif 603 641 endif … … 631 669 if (ierr.ne.NF_NOERR) then 632 670 write(*,*) "Error: Could not open that file either" 633 stop "Might as well stop here" 671 write(*,*) "Might as well stop here" 672 stop 634 673 endif 635 674 endif … … 639 678 ierr=NF_INQ_VARID(infid2,"phisinit",tmpvarid) 640 679 if (ierr.ne.NF_NOERR) then 641 stop "Error: Failed to get phisinit ID" 680 write(*,*) "Error: Failed to get phisinit ID" 681 stop 642 682 endif 643 683 ! Get physinit 644 684 ierr=NF_GET_VAR_REAL(infid2,tmpvarid,phisinit) 645 685 if (ierr.ne.NF_NOERR) then 646 stop "Error: Failed reading phisinit" 686 write(*,*) "Error: Failed reading phisinit" 687 stop 647 688 endif 648 689 ! Close file … … 652 693 ierr=NF_GET_VAR_REAL(infid,tmpvarid,phisinit) 653 694 if (ierr.ne.NF_NOERR) then 654 stop "Error: Failed reading phisinit" 695 write(*,*) "Error: Failed reading phisinit" 696 stop 655 697 endif 656 698 endif … … 918 960 ierr=NF_INQ_VARID(infid,"ps",tmpvarid) 919 961 if (ierr.ne.NF_NOERR) then 920 stop "Error: Failed to get ps ID" 962 write(*,*) "Error: Failed to get ps ID" 963 stop 921 964 else 922 965 allocate(ps(lonlength,latlength,timelength),stat=ierr) … … 929 972 ierr=NF_GET_VAR_REAL(infid,tmpvarid,ps) 930 973 if (ierr.ne.NF_NOERR) then 931 stop "Error: Failed reading surface pressure" 974 write(*,*) "Error: Failed reading surface pressure" 975 stop 932 976 endif 933 977 endif … … 1022 1066 ierr=NF_GET_VAR_REAL(infid,tmpvarid,temp) 1023 1067 if (ierr.ne.NF_NOERR) then 1024 stop "Error: Failed reading atmospheric temperature" 1068 write(*,*) "Error: Failed reading atmospheric temperature" 1069 stop 1025 1070 endif 1026 1071 have_temp=.true. … … 1046 1091 ierr=NF_GET_VAR_REAL(infid,tmpvarid,rho) 1047 1092 if (ierr.ne.NF_NOERR) then 1048 stop "Error: Failed reading atmospheric density" 1093 write(*,*) "Error: Failed reading atmospheric density" 1094 stop 1049 1095 endif 1050 1096 endif … … 1234 1280 ierr=NF_PUT_ATT_TEXT(outfid,lon_varid,'long_name',len_trim(text),text) 1235 1281 if (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 1237 1284 endif 1238 1285 text='degrees_east' 1239 1286 ierr=NF_PUT_ATT_TEXT(outfid,lon_varid,'units',len_trim(text),text) 1240 1287 if (ierr.ne.NF_NOERR) then 1241 stop "Error: Problem writing units for longitude" 1288 write(*,*) "Error: Problem writing units for longitude" 1289 stop 1242 1290 endif 1243 1291 … … 1255 1303 ierr=NF_PUT_ATT_TEXT(outfid,lat_varid,'long_name',len_trim(text),text) 1256 1304 if (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 1258 1307 endif 1259 1308 text='degrees_north' 1260 1309 ierr=NF_PUT_ATT_TEXT(outfid,lat_varid,'units',len_trim(text),text) 1261 1310 if (ierr.ne.NF_NOERR) then 1262 stop "Error: Problem writing units for latitude" 1311 write(*,*) "Error: Problem writing units for latitude" 1312 stop 1263 1313 endif 1264 1314 … … 1277 1327 ierr=NF_PUT_ATT_TEXT(outfid,alt_varid,'long_name',len_trim(text),text) 1278 1328 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 1280 1331 endif 1281 1332 text='Pa' 1282 1333 ierr=NF_PUT_ATT_TEXT(outfid,alt_varid,'units',len_trim(text),text) 1283 1334 if (ierr.ne.NF_NOERR) then 1284 stop "Error: Problem writing units for altitude" 1335 write(*,*) "Error: Problem writing units for altitude" 1336 stop 1285 1337 endif 1286 1338 text='down' 1287 1339 ierr=NF_PUT_ATT_TEXT(outfid,alt_varid,'positive',len_trim(text),text) 1288 1340 if (ierr.ne.NF_NOERR) then 1289 stop "Error: Problem writing positive for altitude" 1341 write(*,*) "Error: Problem writing positive for altitude" 1342 stop 1290 1343 endif 1291 1344 else if (ztype.eq.2) then ! above areoid vertical coordinate … … 1293 1346 ierr=NF_PUT_ATT_TEXT(outfid,alt_varid,'long_name',len_trim(text),text) 1294 1347 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 1296 1350 endif 1297 1351 text='m' 1298 1352 ierr=NF_PUT_ATT_TEXT(outfid,alt_varid,'units',len_trim(text),text) 1299 1353 if (ierr.ne.NF_NOERR) then 1300 stop "Error: Problem writing units for altitude" 1354 write(*,*) "Error: Problem writing units for altitude" 1355 stop 1301 1356 endif 1302 1357 text='up' 1303 1358 ierr=NF_PUT_ATT_TEXT(outfid,alt_varid,'positive',len_trim(text),text) 1304 1359 if (ierr.ne.NF_NOERR) then 1305 stop "Error: Problem writing positive for altitude" 1360 write(*,*) "Error: Problem writing positive for altitude" 1361 stop 1306 1362 endif 1307 1363 else if (ztype.eq.3) then ! above surface vertical coordinate … … 1309 1365 ierr=NF_PUT_ATT_TEXT(outfid,alt_varid,'long_name',len_trim(text),text) 1310 1366 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 1312 1369 endif 1313 1370 text='m' 1314 1371 ierr=NF_PUT_ATT_TEXT(outfid,alt_varid,'units',len_trim(text),text) 1315 1372 if (ierr.ne.NF_NOERR) then 1316 stop "Error: Problem writing units for altitude" 1373 write(*,*) "Error: Problem writing units for altitude" 1374 stop 1317 1375 endif 1318 1376 text='up' 1319 1377 ierr=NF_PUT_ATT_TEXT(outfid,alt_varid,'positive',len_trim(text),text) 1320 1378 if (ierr.ne.NF_NOERR) then 1321 stop "Error: Problem writing positive for altitude" 1379 write(*,*) "Error: Problem writing positive for altitude" 1380 stop 1322 1381 endif 1323 1382 else ! radial distance to center of planet … … 1325 1384 ierr=NF_PUT_ATT_TEXT(outfid,alt_varid,'long_name',len_trim(text),text) 1326 1385 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 1328 1388 endif 1329 1389 text='m' 1330 1390 ierr=NF_PUT_ATT_TEXT(outfid,alt_varid,'units',len_trim(text),text) 1331 1391 if (ierr.ne.NF_NOERR) then 1332 stop "Error: Problem writing units for altitude" 1392 write(*,*) "Error: Problem writing units for altitude" 1393 stop 1333 1394 endif 1334 1395 text='up' 1335 1396 ierr=NF_PUT_ATT_TEXT(outfid,alt_varid,'positive',len_trim(text),text) 1336 1397 if (ierr.ne.NF_NOERR) then 1337 stop "Error: Problem writing positive for altitude" 1398 write(*,*) "Error: Problem writing positive for altitude" 1399 stop 1338 1400 endif 1339 1401 endif ! of if (have_sigma) … … 1352 1414 ierr=NF_PUT_ATT_TEXT(outfid,ctl_varid,'title',len_trim(text),text) 1353 1415 if (ierr.ne.NF_NOERR) then 1354 stop "Error: Problem writing title for controle" 1416 write(*,*) "Error: Problem writing title for controle" 1417 stop 1355 1418 endif 1356 1419 endif … … 1387 1450 ierr=NF_PUT_ATT_TEXT(outfid,sigma_varid,'long_name',len_trim(text),text) 1388 1451 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 1390 1454 endif 1391 1455 else ! hybrid coordinates … … 1393 1457 ierr=NF_PUT_ATT_TEXT(outfid,aps_varid,'long_name',len_trim(text),text) 1394 1458 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 1396 1461 endif 1397 1462 text="hybrid sigma at midlayers" 1398 1463 ierr=NF_PUT_ATT_TEXT(outfid,bps_varid,'long_name',len_trim(text),text) 1399 1464 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 1401 1467 endif 1402 1468 endif ! of if (have_sigma) … … 1415 1481 ierr=NF_PUT_ATT_TEXT(outfid,time_varid,'long_name',len_trim(text),text) 1416 1482 if (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 1418 1485 endif 1419 1486 text='days since 0000-01-1 00:00:00' 1420 1487 ierr=NF_PUT_ATT_TEXT(outfid,time_varid,'units',len_trim(text),text) 1421 1488 if (ierr.ne.NF_NOERR) then 1422 stop "Error: Problem writing units for Time" 1489 write(*,*) "Error: Problem writing units for Time" 1490 stop 1423 1491 endif 1424 1492 … … 1430 1498 ierr=NF_PUT_ATT_TEXT(outfid,phis_varid,'long_name',len_trim(text),text) 1431 1499 if (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 1433 1502 endif 1434 1503 text='m2.s2' 1435 1504 ierr=NF_PUT_ATT_TEXT(outfid,phis_varid,'units',len_trim(text),text) 1436 1505 if (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 1438 1508 endif 1439 1509 … … 1457 1527 ierr=NF_PUT_ATT_TEXT(outfid,ps_varid,'long_name',len_trim(text),text) 1458 1528 if (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 1460 1531 endif 1461 1532 text='Pa' 1462 1533 ierr=NF_PUT_ATT_TEXT(outfid,ps_varid,'units',len_trim(text),text) 1463 1534 if (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 1465 1537 endif 1466 1538 … … 1480 1552 ierr=NF_PUT_ATT_TEXT(outfid,za_varid,'long_name',len_trim(text),text) 1481 1553 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 1483 1556 endif 1484 1557 text='m' 1485 1558 ierr=NF_PUT_ATT_TEXT(outfid,za_varid,'units',len_trim(text),text) 1486 1559 if (ierr.ne.NF_NOERR) then 1487 stop "Error: Problem writing units for zareoid" 1560 write(*,*) "Error: Problem writing units for zareoid" 1561 stop 1488 1562 endif 1489 1563 ! zareoid missing value 1490 1564 ierr=NF_PUT_ATT_REAL(outfid,za_varid,'missing_value',NF_REAL,1,miss_val) 1491 1565 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 1493 1568 endif 1494 1569 else ! above areoid or above local surface vertical coordinate … … 1504 1579 ierr=NF_PUT_ATT_TEXT(outfid,p_varid,'long_name',len_trim(text),text) 1505 1580 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 1507 1583 endif 1508 1584 text='Pa' 1509 1585 ierr=NF_PUT_ATT_TEXT(outfid,p_varid,'units',len_trim(text),text) 1510 1586 if (ierr.ne.NF_NOERR) then 1511 stop "Error: Problem writing units for pressure" 1587 write(*,*) "Error: Problem writing units for pressure" 1588 stop 1512 1589 endif 1513 1590 ! pressure missing value 1514 1591 ierr=NF_PUT_ATT_REAL(outfid,p_varid,'missing_value',NF_REAL,1,miss_val) 1515 1592 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 1517 1595 endif 1518 1596 endif … … 1588 1666 if (ierr.ne.NF_NOERR) then 1589 1667 write(*,*) "Error failed to copy title attribute:",trim(text) 1590 stop ""1668 stop 1591 1669 endif 1592 1670 else ! no 'title' attribute … … 1611 1689 if (ierr.ne.NF_NOERR) then 1612 1690 write(*,*) "Error failed to copy long_name attribute:",trim(text) 1613 stop ""1691 stop 1614 1692 endif 1615 1693 endif … … 1625 1703 if (ierr.ne.NF_NOERR) then 1626 1704 write(*,*) "Error failed to copy units attribute:",trim(text) 1627 stop ""1705 stop 1628 1706 endif 1629 1707 endif … … 1641 1719 ierr=NF_PUT_ATT_REAL(outfid,var_id(i),'missing_value',NF_REAL,1,miss_val) 1642 1720 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 1644 1723 endif 1645 1724 … … 1746 1825 1747 1826 ! Write time 1748 ierr=NF_PUT_VARA_REAL(outfid,time_varid, 1,timelength,time)1827 ierr=NF_PUT_VARA_REAL(outfid,time_varid,(/1/),(/timelength/),time) 1749 1828 if (ierr.ne.NF_NOERR) then 1750 1829 write(*,*) "Error: Could not write Time data to output file"
Note: See TracChangeset
for help on using the changeset viewer.