Changeset 8413bc9 in flexpart.git for flexpart_code
- Timestamp:
- Apr 9, 2017, 10:15:25 PM (7 years ago)
- Branches:
- fp9.3.1-20161214-nc4
- Children:
- ee13a7b
- Parents:
- 8651603
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
flexpart_code/fpmetbinary_mod.F90
r8651603 r8413bc9 308 308 309 309 INTEGER :: nxmax_dimid, nymax_dimid, nzmax_dimid, nuvzmax_dimid, nwzmax_dimid, & 310 & maxspec_dimid, numclass_dimid, maxnests_dimid, nxmaxn_dimid, nymaxn_dimid 310 & maxspec_dimid, numclass_dimid, maxnests_dimid, nxmaxn_dimid, nymaxn_dimid, & 311 & zero_to_nzmax_dimid 312 311 313 312 314 INTEGER, DIMENSION(1) :: dim1dids ! Dimension IDs for 1D arrays … … 314 316 INTEGER, DIMENSION(3) :: dim3dids ! Dimension IDs for 3D arrays 315 317 INTEGER, DIMENSION(4) :: dim4dids ! Dimension IDs for 4D arrays 318 INTEGER, DIMENSION(5) :: dim5dids ! Dimension IDs for 5D arrays 319 320 316 321 317 322 … … 320 325 & nuvzmax_dimname, nwzmax_dimname,& 321 326 & maxspec_dimname, numclass_dimname,& 322 & maxnests_dimname, nxmaxn_dimname, nymaxn_dimname 327 & maxnests_dimname, nxmaxn_dimname, nymaxn_dimname, & 328 & zero_to_nzmax_dimname 323 329 324 330 ! These are temporary variables, used in the LOAD option, for … … 347 353 348 354 ncret = nf90_def_dim(ncid, 'nxmax', nxmax, nxmax_dimid) 355 call handle_nf90_err(ncret) 349 356 ncret = nf90_def_dim(ncid, 'nymax', nymax, nymax_dimid) 357 call handle_nf90_err(ncret) 350 358 ncret = nf90_def_dim(ncid, 'nzmax', nzmax, nzmax_dimid) 359 call handle_nf90_err(ncret) 351 360 ncret = nf90_def_dim(ncid, 'nuvzmax', nuvzmax, nuvzmax_dimid) 361 call handle_nf90_err(ncret) 352 362 ncret = nf90_def_dim(ncid, 'nwzmax', nwzmax, nwzmax_dimid) 363 call handle_nf90_err(ncret) 353 364 ncret = nf90_def_dim(ncid, 'maxspec', maxspec, maxspec_dimid) 365 call handle_nf90_err(ncret) 354 366 ncret = nf90_def_dim(ncid, 'numclass', numclass, numclass_dimid) 367 call handle_nf90_err(ncret) 368 ncret = nf90_def_dim(ncid, 'zero_to_nzmax', nzmax+1, zero_to_nzmax_dimid) 369 call handle_nf90_err(ncret) 370 355 371 356 372 ! Scalar values … … 360 376 361 377 ncret = nf90_def_var(ncid, 'nx', NF90_INT, ncvarid) 378 call handle_nf90_err(ncret) 362 379 ncret = nf90_put_var(ncid, ncvarid, nx) 380 call handle_nf90_err(ncret) 363 381 364 382 ncret = nf90_def_var(ncid, 'ny', NF90_INT, ncvarid) 383 call handle_nf90_err(ncret) 365 384 ncret = nf90_put_var(ncid, ncvarid, ny) 385 call handle_nf90_err(ncret) 366 386 367 387 ncret = nf90_def_var(ncid, 'nxmin1', NF90_INT, ncvarid) 388 call handle_nf90_err(ncret) 368 389 ncret = nf90_put_var(ncid, ncvarid, nxmin1) 390 call handle_nf90_err(ncret) 369 391 370 392 ncret = nf90_def_var(ncid, 'nymin1', NF90_INT, ncvarid) 393 call handle_nf90_err(ncret) 371 394 ncret = nf90_put_var(ncid, ncvarid, nymin1) 395 call handle_nf90_err(ncret) 372 396 373 397 ncret = nf90_def_var(ncid, 'nxfield', NF90_INT, ncvarid) 398 call handle_nf90_err(ncret) 374 399 ncret = nf90_put_var(ncid, ncvarid, nxfield) 400 call handle_nf90_err(ncret) 375 401 376 402 ncret = nf90_def_var(ncid, 'nuvz', NF90_INT, ncvarid) 403 call handle_nf90_err(ncret) 377 404 ncret = nf90_put_var(ncid, ncvarid, nuvz) 405 call handle_nf90_err(ncret) 378 406 379 407 ncret = nf90_def_var(ncid, 'nwz', NF90_INT, ncvarid) 408 call handle_nf90_err(ncret) 380 409 ncret = nf90_put_var(ncid, ncvarid, nwz) 410 call handle_nf90_err(ncret) 381 411 382 412 ncret = nf90_def_var(ncid, 'nz', NF90_INT, ncvarid) 413 call handle_nf90_err(ncret) 383 414 ncret = nf90_put_var(ncid, ncvarid, nz) 415 call handle_nf90_err(ncret) 384 416 385 417 ncret = nf90_def_var(ncid, 'nmixz', NF90_INT, ncvarid) 418 call handle_nf90_err(ncret) 386 419 ncret = nf90_put_var(ncid, ncvarid, nmixz) 420 call handle_nf90_err(ncret) 387 421 388 422 ncret = nf90_def_var(ncid, 'nlev_ec', NF90_INT, ncvarid) 423 call handle_nf90_err(ncret) 389 424 ncret = nf90_put_var(ncid, ncvarid, nlev_ec) 425 call handle_nf90_err(ncret) 390 426 391 427 ncret = nf90_def_var(ncid, 'dx', NF90_FLOAT, ncvarid) 428 call handle_nf90_err(ncret) 392 429 ncret = nf90_put_var(ncid, ncvarid, dx) 430 call handle_nf90_err(ncret) 393 431 394 432 ncret = nf90_def_var(ncid, 'dy', NF90_FLOAT, ncvarid) 433 call handle_nf90_err(ncret) 395 434 ncret = nf90_put_var(ncid, ncvarid, dy) 435 call handle_nf90_err(ncret) 396 436 397 437 ncret = nf90_def_var(ncid, 'xlon0', NF90_FLOAT, ncvarid) 438 call handle_nf90_err(ncret) 398 439 ncret = nf90_put_var(ncid, ncvarid, xlon0) 440 call handle_nf90_err(ncret) 399 441 400 442 ncret = nf90_def_var(ncid, 'ylat0', NF90_FLOAT, ncvarid) 443 call handle_nf90_err(ncret) 401 444 ncret = nf90_put_var(ncid, ncvarid, ylat0) 445 call handle_nf90_err(ncret) 402 446 403 447 ncret = nf90_def_var(ncid, 'dxconst', NF90_FLOAT, ncvarid) 448 call handle_nf90_err(ncret) 404 449 ncret = nf90_put_var(ncid, ncvarid, dxconst) 450 call handle_nf90_err(ncret) 405 451 406 452 ncret = nf90_def_var(ncid, 'dyconst', NF90_FLOAT, ncvarid) 453 call handle_nf90_err(ncret) 407 454 ncret = nf90_put_var(ncid, ncvarid, dyconst) 455 call handle_nf90_err(ncret) 408 456 409 457 … … 416 464 ncret = nf90_def_var(ncid, 'oro', NF90_FLOAT, & 417 465 & dim2dids, ncvarid) 418 ncret = nf90_def_var_deflate(ncid, ncvarid, & 419 & shuffle=0, & 420 & deflate=1, & 421 & deflate_level=DEF_LEVEL) 466 call handle_nf90_err(ncret) 467 ncret = nf90_def_var_deflate(ncid, ncvarid, & 468 & shuffle=0, & 469 & deflate=1, & 470 & deflate_level=DEF_LEVEL) 471 call handle_nf90_err(ncret) 422 472 ncret = nf90_put_var(ncid, ncvarid, & 423 473 & oro(0:nxmax-1, 0:nymax-1)) 474 call handle_nf90_err(ncret) 424 475 425 476 ncret = nf90_def_var(ncid, 'excessoro', NF90_FLOAT, & 426 477 & dim2dids, ncvarid) 427 ncret = nf90_def_var_deflate(ncid, ncvarid, & 428 & shuffle=0, & 429 & deflate=1, & 430 & deflate_level=DEF_LEVEL) 478 call handle_nf90_err(ncret) 479 ncret = nf90_def_var_deflate(ncid, ncvarid, & 480 & shuffle=0, & 481 & deflate=1, & 482 & deflate_level=DEF_LEVEL) 483 call handle_nf90_err(ncret) 431 484 ncret = nf90_put_var(ncid, ncvarid, & 432 485 & excessoro(0:nxmax-1, 0:nymax-1)) 486 call handle_nf90_err(ncret) 433 487 434 488 ncret = nf90_def_var(ncid, 'lsm', NF90_FLOAT, & 435 489 & dim2dids, ncvarid) 436 ncret = nf90_def_var_deflate(ncid, ncvarid, & 437 & shuffle=0, & 438 & deflate=1, & 439 & deflate_level=DEF_LEVEL) 490 call handle_nf90_err(ncret) 491 ncret = nf90_def_var_deflate(ncid, ncvarid, & 492 & shuffle=0, & 493 & deflate=1, & 494 & deflate_level=DEF_LEVEL) 495 call handle_nf90_err(ncret) 440 496 ncret = nf90_put_var(ncid, ncvarid, & 441 497 & lsm(0:nxmax-1, 0:nymax-1)) 498 call handle_nf90_err(ncret) 442 499 443 500 dim3dids = (/nxmax_dimid, nymax_dimid, numclass_dimid/) … … 445 502 ncret = nf90_def_var(ncid, 'xlanduse', NF90_FLOAT, & 446 503 & dim3dids, ncvarid) 447 ncret = nf90_def_var_deflate(ncid, ncvarid, & 448 & shuffle=0, & 449 & deflate=1, & 450 & deflate_level=DEF_LEVEL) 504 call handle_nf90_err(ncret) 505 ncret = nf90_def_var_deflate(ncid, ncvarid, & 506 & shuffle=0, & 507 & deflate=1, & 508 & deflate_level=DEF_LEVEL) 509 call handle_nf90_err(ncret) 451 510 ncret = nf90_put_var(ncid, ncvarid, & 452 511 & xlanduse(0:nxmax-1, 0:nymax-1, 1:numclass)) 512 call handle_nf90_err(ncret) 453 513 454 514 dim1dids = (/nzmax_dimid/) 455 515 ncret = nf90_def_var(ncid, 'height', NF90_FLOAT, & 456 516 & dim1dids, ncvarid) 457 ncret = nf90_def_var_deflate(ncid, ncvarid, & 458 & shuffle=0, & 459 & deflate=1, & 460 & deflate_level=DEF_LEVEL) 517 call handle_nf90_err(ncret) 518 ncret = nf90_def_var_deflate(ncid, ncvarid, & 519 & shuffle=0, & 520 & deflate=1, & 521 & deflate_level=DEF_LEVEL) 522 call handle_nf90_err(ncret) 461 523 ncret = nf90_put_var(ncid, ncvarid, & 462 524 & height(1:nzmax)) 525 call handle_nf90_err(ncret) 463 526 464 527 … … 486 549 ncret = nf90_def_var(ncid, 'uu', NF90_FLOAT, & 487 550 & dim3dids, ncvarid) 488 ncret = nf90_def_var_deflate(ncid, ncvarid, & 489 & shuffle=0, & 490 & deflate=1, & 491 & deflate_level=DEF_LEVEL) 551 call handle_nf90_err(ncret) 552 ncret = nf90_def_var_deflate(ncid, ncvarid, & 553 & shuffle=0, & 554 & deflate=1, & 555 & deflate_level=DEF_LEVEL) 556 call handle_nf90_err(ncret) 492 557 ncret = nf90_put_var(ncid, ncvarid, & 493 558 & uu(0:nxmax-1, 0:nymax-1, 1:nzmax, cm_index)) 559 call handle_nf90_err(ncret) 494 560 495 561 ncret = nf90_def_var(ncid, 'vv', NF90_FLOAT, & 496 562 & dim3dids, ncvarid) 497 ncret = nf90_def_var_deflate(ncid, ncvarid, & 498 & shuffle=0, & 499 & deflate=1, & 500 & deflate_level=DEF_LEVEL) 563 call handle_nf90_err(ncret) 564 ncret = nf90_def_var_deflate(ncid, ncvarid, & 565 & shuffle=0, & 566 & deflate=1, & 567 & deflate_level=DEF_LEVEL) 568 call handle_nf90_err(ncret) 501 569 ncret = nf90_put_var(ncid, ncvarid, & 502 570 & vv(0:nxmax-1, 0:nymax-1, 1:nzmax, cm_index)) 571 call handle_nf90_err(ncret) 503 572 504 573 ncret = nf90_def_var(ncid, 'uupol', NF90_FLOAT, & 505 574 & dim3dids, ncvarid) 506 ncret = nf90_def_var_deflate(ncid, ncvarid, & 507 & shuffle=0, & 508 & deflate=1, & 509 & deflate_level=DEF_LEVEL) 575 call handle_nf90_err(ncret) 576 ncret = nf90_def_var_deflate(ncid, ncvarid, & 577 & shuffle=0, & 578 & deflate=1, & 579 & deflate_level=DEF_LEVEL) 580 call handle_nf90_err(ncret) 510 581 ncret = nf90_put_var(ncid, ncvarid, & 511 582 & uupol(0:nxmax-1, 0:nymax-1, 1:nzmax, cm_index)) 583 call handle_nf90_err(ncret) 512 584 513 585 ncret = nf90_def_var(ncid, 'vvpol', NF90_FLOAT, & 514 586 & dim3dids, ncvarid) 515 ncret = nf90_def_var_deflate(ncid, ncvarid, & 516 & shuffle=0, & 517 & deflate=1, & 518 & deflate_level=DEF_LEVEL) 587 call handle_nf90_err(ncret) 588 ncret = nf90_def_var_deflate(ncid, ncvarid, & 589 & shuffle=0, & 590 & deflate=1, & 591 & deflate_level=DEF_LEVEL) 592 call handle_nf90_err(ncret) 519 593 ncret = nf90_put_var(ncid, ncvarid, & 520 594 & vvpol(0:nxmax-1, 0:nymax-1, 1:nzmax, cm_index)) 595 call handle_nf90_err(ncret) 521 596 522 597 ncret = nf90_def_var(ncid, 'ww', NF90_FLOAT, & 523 598 & dim3dids, ncvarid) 524 ncret = nf90_def_var_deflate(ncid, ncvarid, & 525 & shuffle=0, & 526 & deflate=1, & 527 & deflate_level=DEF_LEVEL) 599 call handle_nf90_err(ncret) 600 ncret = nf90_def_var_deflate(ncid, ncvarid, & 601 & shuffle=0, & 602 & deflate=1, & 603 & deflate_level=DEF_LEVEL) 604 call handle_nf90_err(ncret) 528 605 ncret = nf90_put_var(ncid, ncvarid, & 529 606 & ww(0:nxmax-1, 0:nymax-1, 1:nzmax, cm_index)) 607 call handle_nf90_err(ncret) 530 608 531 609 ncret = nf90_def_var(ncid, 'tt', NF90_FLOAT, & 532 610 & dim3dids, ncvarid) 533 ncret = nf90_def_var_deflate(ncid, ncvarid, & 534 & shuffle=0, & 535 & deflate=1, & 536 & deflate_level=DEF_LEVEL) 611 call handle_nf90_err(ncret) 612 ncret = nf90_def_var_deflate(ncid, ncvarid, & 613 & shuffle=0, & 614 & deflate=1, & 615 & deflate_level=DEF_LEVEL) 616 call handle_nf90_err(ncret) 537 617 ncret = nf90_put_var(ncid, ncvarid, & 538 618 & tt(0:nxmax-1, 0:nymax-1, 1:nzmax, cm_index)) 619 call handle_nf90_err(ncret) 539 620 540 621 ncret = nf90_def_var(ncid, 'qv', NF90_FLOAT, & 541 622 & dim3dids, ncvarid) 542 ncret = nf90_def_var_deflate(ncid, ncvarid, & 543 & shuffle=0, & 544 & deflate=1, & 545 & deflate_level=DEF_LEVEL) 623 call handle_nf90_err(ncret) 624 ncret = nf90_def_var_deflate(ncid, ncvarid, & 625 & shuffle=0, & 626 & deflate=1, & 627 & deflate_level=DEF_LEVEL) 628 call handle_nf90_err(ncret) 546 629 ncret = nf90_put_var(ncid, ncvarid, & 547 630 & qv(0:nxmax-1, 0:nymax-1, 1:nzmax, cm_index)) 631 call handle_nf90_err(ncret) 548 632 549 633 ncret = nf90_def_var(ncid, 'pv', NF90_FLOAT, & 550 634 & dim3dids, ncvarid) 551 ncret = nf90_def_var_deflate(ncid, ncvarid, & 552 & shuffle=0, & 553 & deflate=1, & 554 & deflate_level=DEF_LEVEL) 635 call handle_nf90_err(ncret) 636 ncret = nf90_def_var_deflate(ncid, ncvarid, & 637 & shuffle=0, & 638 & deflate=1, & 639 & deflate_level=DEF_LEVEL) 640 call handle_nf90_err(ncret) 555 641 ncret = nf90_put_var(ncid, ncvarid, & 556 642 & pv(0:nxmax-1, 0:nymax-1, 1:nzmax, cm_index)) 643 call handle_nf90_err(ncret) 557 644 558 645 ncret = nf90_def_var(ncid, 'rho', NF90_FLOAT, & 559 646 & dim3dids, ncvarid) 560 ncret = nf90_def_var_deflate(ncid, ncvarid, & 561 & shuffle=0, & 562 & deflate=1, & 563 & deflate_level=DEF_LEVEL) 647 call handle_nf90_err(ncret) 648 ncret = nf90_def_var_deflate(ncid, ncvarid, & 649 & shuffle=0, & 650 & deflate=1, & 651 & deflate_level=DEF_LEVEL) 652 call handle_nf90_err(ncret) 564 653 ncret = nf90_put_var(ncid, ncvarid, & 565 654 & rho(0:nxmax-1, 0:nymax-1, 1:nzmax, cm_index)) 655 call handle_nf90_err(ncret) 566 656 567 657 ncret = nf90_def_var(ncid, 'drhodz', NF90_FLOAT, & 568 658 & dim3dids, ncvarid) 569 ncret = nf90_def_var_deflate(ncid, ncvarid, & 570 & shuffle=0, & 571 & deflate=1, & 572 & deflate_level=DEF_LEVEL) 659 call handle_nf90_err(ncret) 660 ncret = nf90_def_var_deflate(ncid, ncvarid, & 661 & shuffle=0, & 662 & deflate=1, & 663 & deflate_level=DEF_LEVEL) 664 call handle_nf90_err(ncret) 573 665 ncret = nf90_put_var(ncid, ncvarid, & 574 666 & drhodz(0:nxmax-1, 0:nymax-1, 1:nzmax, cm_index)) 667 call handle_nf90_err(ncret) 575 668 576 669 ncret = nf90_def_var(ncid, 'clouds', NF90_BYTE, & 577 670 & dim3dids, ncvarid) 578 ncret = nf90_def_var_deflate(ncid, ncvarid, & 579 & shuffle=0, & 580 & deflate=1, & 581 & deflate_level=DEF_LEVEL) 671 call handle_nf90_err(ncret) 672 ncret = nf90_def_var_deflate(ncid, ncvarid, & 673 & shuffle=0, & 674 & deflate=1, & 675 & deflate_level=DEF_LEVEL) 676 call handle_nf90_err(ncret) 582 677 ncret = nf90_put_var(ncid, ncvarid, & 583 678 & clouds(0:nxmax-1, 0:nymax-1, 1:nzmax, cm_index)) 679 call handle_nf90_err(ncret) 584 680 585 681 … … 590 686 ncret = nf90_def_var(ncid, 'tth', NF90_FLOAT, & 591 687 & dim3dids, ncvarid) 592 ncret = nf90_def_var_deflate(ncid, ncvarid, & 593 & shuffle=0, & 594 & deflate=1, & 595 & deflate_level=DEF_LEVEL) 688 call handle_nf90_err(ncret) 689 ncret = nf90_def_var_deflate(ncid, ncvarid, & 690 & shuffle=0, & 691 & deflate=1, & 692 & deflate_level=DEF_LEVEL) 693 call handle_nf90_err(ncret) 596 694 ncret = nf90_put_var(ncid, ncvarid, & 597 695 & tth(0:nxmax-1, 0:nymax-1, 1:nuvzmax, cm_index)) 696 call handle_nf90_err(ncret) 598 697 599 698 ncret = nf90_def_var(ncid, 'qvh', NF90_FLOAT, & 600 699 & dim3dids, ncvarid) 601 ncret = nf90_def_var_deflate(ncid, ncvarid, & 602 & shuffle=0, & 603 & deflate=1, & 604 & deflate_level=DEF_LEVEL) 700 call handle_nf90_err(ncret) 701 ncret = nf90_def_var_deflate(ncid, ncvarid, & 702 & shuffle=0, & 703 & deflate=1, & 704 & deflate_level=DEF_LEVEL) 705 call handle_nf90_err(ncret) 605 706 ncret = nf90_put_var(ncid, ncvarid, & 606 707 & qvh(0:nxmax-1, 0:nymax-1, 1:nuvzmax, cm_index)) 708 call handle_nf90_err(ncret) 607 709 608 710 ncret = nf90_def_var(ncid, 'pplev', NF90_FLOAT, & 609 711 & dim3dids, ncvarid) 610 ncret = nf90_def_var_deflate(ncid, ncvarid, & 611 & shuffle=0, & 612 & deflate=1, & 613 & deflate_level=DEF_LEVEL) 712 call handle_nf90_err(ncret) 713 ncret = nf90_def_var_deflate(ncid, ncvarid, & 714 & shuffle=0, & 715 & deflate=1, & 716 & deflate_level=DEF_LEVEL) 717 call handle_nf90_err(ncret) 614 718 ncret = nf90_put_var(ncid, ncvarid, & 615 719 & pplev(0:nxmax-1, 0:nymax-1, 1:nuvzmax, cm_index)) 720 call handle_nf90_err(ncret) 616 721 617 722 … … 619 724 ncret = nf90_def_var(ncid, 'cloudsh', NF90_INT, & 620 725 & dim2dids, ncvarid) 621 ncret = nf90_def_var_deflate(ncid, ncvarid, & 622 & shuffle=0, & 623 & deflate=1, & 624 & deflate_level=DEF_LEVEL) 726 call handle_nf90_err(ncret) 727 ncret = nf90_def_var_deflate(ncid, ncvarid, & 728 & shuffle=0, & 729 & deflate=1, & 730 & deflate_level=DEF_LEVEL) 731 call handle_nf90_err(ncret) 625 732 ncret = nf90_put_var(ncid, ncvarid, & 626 733 & cloudsh(0:nxmax-1, 0:nymax-1, cm_index)) 734 call handle_nf90_err(ncret) 627 735 628 736 … … 662 770 ncret = nf90_def_var(ncid, 'ps', NF90_FLOAT, & 663 771 & dim2dids, ncvarid) 664 ncret = nf90_def_var_deflate(ncid, ncvarid, & 665 & shuffle=0, & 666 & deflate=1, & 667 & deflate_level=DEF_LEVEL) 772 call handle_nf90_err(ncret) 773 ncret = nf90_def_var_deflate(ncid, ncvarid, & 774 & shuffle=0, & 775 & deflate=1, & 776 & deflate_level=DEF_LEVEL) 777 call handle_nf90_err(ncret) 668 778 ncret = nf90_put_var(ncid, ncvarid, & 669 779 & ps(0:nxmax-1, 0:nymax-1, 1, cm_index)) 780 call handle_nf90_err(ncret) 670 781 671 782 ncret = nf90_def_var(ncid, 'sd', NF90_FLOAT, & 672 783 & dim2dids, ncvarid) 673 ncret = nf90_def_var_deflate(ncid, ncvarid, & 674 & shuffle=0, & 675 & deflate=1, & 676 & deflate_level=DEF_LEVEL) 784 call handle_nf90_err(ncret) 785 ncret = nf90_def_var_deflate(ncid, ncvarid, & 786 & shuffle=0, & 787 & deflate=1, & 788 & deflate_level=DEF_LEVEL) 789 call handle_nf90_err(ncret) 677 790 ncret = nf90_put_var(ncid, ncvarid, & 678 791 & sd(0:nxmax-1, 0:nymax-1, 1, cm_index)) 792 call handle_nf90_err(ncret) 679 793 680 794 ncret = nf90_def_var(ncid, 'msl', NF90_FLOAT, & 681 795 & dim2dids, ncvarid) 682 ncret = nf90_def_var_deflate(ncid, ncvarid, & 683 & shuffle=0, & 684 & deflate=1, & 685 & deflate_level=DEF_LEVEL) 796 call handle_nf90_err(ncret) 797 ncret = nf90_def_var_deflate(ncid, ncvarid, & 798 & shuffle=0, & 799 & deflate=1, & 800 & deflate_level=DEF_LEVEL) 801 call handle_nf90_err(ncret) 686 802 ncret = nf90_put_var(ncid, ncvarid, & 687 803 & msl(0:nxmax-1, 0:nymax-1, 1, cm_index)) 804 call handle_nf90_err(ncret) 688 805 689 806 ncret = nf90_def_var(ncid, 'tcc', NF90_FLOAT, & 690 807 & dim2dids, ncvarid) 691 ncret = nf90_def_var_deflate(ncid, ncvarid, & 692 & shuffle=0, & 693 & deflate=1, & 694 & deflate_level=DEF_LEVEL) 808 call handle_nf90_err(ncret) 809 ncret = nf90_def_var_deflate(ncid, ncvarid, & 810 & shuffle=0, & 811 & deflate=1, & 812 & deflate_level=DEF_LEVEL) 813 call handle_nf90_err(ncret) 695 814 ncret = nf90_put_var(ncid, ncvarid, & 696 815 & tcc(0:nxmax-1, 0:nymax-1, 1, cm_index)) 816 call handle_nf90_err(ncret) 697 817 698 818 ncret = nf90_def_var(ncid, 'u10', NF90_FLOAT, & 699 819 & dim2dids, ncvarid) 700 ncret = nf90_def_var_deflate(ncid, ncvarid, & 701 & shuffle=0, & 702 & deflate=1, & 703 & deflate_level=DEF_LEVEL) 820 call handle_nf90_err(ncret) 821 ncret = nf90_def_var_deflate(ncid, ncvarid, & 822 & shuffle=0, & 823 & deflate=1, & 824 & deflate_level=DEF_LEVEL) 825 call handle_nf90_err(ncret) 704 826 ncret = nf90_put_var(ncid, ncvarid, & 705 827 & u10(0:nxmax-1, 0:nymax-1, 1, cm_index)) 828 call handle_nf90_err(ncret) 706 829 707 830 ncret = nf90_def_var(ncid, 'v10', NF90_FLOAT, & 708 831 & dim2dids, ncvarid) 709 ncret = nf90_def_var_deflate(ncid, ncvarid, & 710 & shuffle=0, & 711 & deflate=1, & 712 & deflate_level=DEF_LEVEL) 832 call handle_nf90_err(ncret) 833 ncret = nf90_def_var_deflate(ncid, ncvarid, & 834 & shuffle=0, & 835 & deflate=1, & 836 & deflate_level=DEF_LEVEL) 837 call handle_nf90_err(ncret) 713 838 ncret = nf90_put_var(ncid, ncvarid, & 714 839 & v10(0:nxmax-1, 0:nymax-1, 1, cm_index)) 840 call handle_nf90_err(ncret) 715 841 716 842 ncret = nf90_def_var(ncid, 'tt2', NF90_FLOAT, & 717 843 & dim2dids, ncvarid) 718 ncret = nf90_def_var_deflate(ncid, ncvarid, & 719 & shuffle=0, & 720 & deflate=1, & 721 & deflate_level=DEF_LEVEL) 844 call handle_nf90_err(ncret) 845 ncret = nf90_def_var_deflate(ncid, ncvarid, & 846 & shuffle=0, & 847 & deflate=1, & 848 & deflate_level=DEF_LEVEL) 849 call handle_nf90_err(ncret) 722 850 ncret = nf90_put_var(ncid, ncvarid, & 723 851 & tt2(0:nxmax-1, 0:nymax-1, 1, cm_index)) 852 call handle_nf90_err(ncret) 724 853 725 854 ncret = nf90_def_var(ncid, 'td2', NF90_FLOAT, & 726 855 & dim2dids, ncvarid) 727 ncret = nf90_def_var_deflate(ncid, ncvarid, & 728 & shuffle=0, & 729 & deflate=1, & 730 & deflate_level=DEF_LEVEL) 856 call handle_nf90_err(ncret) 857 ncret = nf90_def_var_deflate(ncid, ncvarid, & 858 & shuffle=0, & 859 & deflate=1, & 860 & deflate_level=DEF_LEVEL) 861 call handle_nf90_err(ncret) 731 862 ncret = nf90_put_var(ncid, ncvarid, & 732 863 & td2(0:nxmax-1, 0:nymax-1, 1, cm_index)) 864 call handle_nf90_err(ncret) 733 865 734 866 ncret = nf90_def_var(ncid, 'lsprec', NF90_FLOAT, & 735 867 & dim2dids, ncvarid) 736 ncret = nf90_def_var_deflate(ncid, ncvarid, & 737 & shuffle=0, & 738 & deflate=1, & 739 & deflate_level=DEF_LEVEL) 868 call handle_nf90_err(ncret) 869 ncret = nf90_def_var_deflate(ncid, ncvarid, & 870 & shuffle=0, & 871 & deflate=1, & 872 & deflate_level=DEF_LEVEL) 873 call handle_nf90_err(ncret) 740 874 ncret = nf90_put_var(ncid, ncvarid, & 741 875 & lsprec(0:nxmax-1, 0:nymax-1, 1, cm_index)) 876 call handle_nf90_err(ncret) 742 877 743 878 ncret = nf90_def_var(ncid, 'convprec', NF90_FLOAT, & 744 879 & dim2dids, ncvarid) 745 ncret = nf90_def_var_deflate(ncid, ncvarid, & 746 & shuffle=0, & 747 & deflate=1, & 748 & deflate_level=DEF_LEVEL) 880 call handle_nf90_err(ncret) 881 ncret = nf90_def_var_deflate(ncid, ncvarid, & 882 & shuffle=0, & 883 & deflate=1, & 884 & deflate_level=DEF_LEVEL) 885 call handle_nf90_err(ncret) 749 886 ncret = nf90_put_var(ncid, ncvarid, & 750 887 & convprec(0:nxmax-1, 0:nymax-1, 1, cm_index)) 888 call handle_nf90_err(ncret) 751 889 752 890 ncret = nf90_def_var(ncid, 'sshf', NF90_FLOAT, & 753 891 & dim2dids, ncvarid) 754 ncret = nf90_def_var_deflate(ncid, ncvarid, & 755 & shuffle=0, & 756 & deflate=1, & 757 & deflate_level=DEF_LEVEL) 892 call handle_nf90_err(ncret) 893 ncret = nf90_def_var_deflate(ncid, ncvarid, & 894 & shuffle=0, & 895 & deflate=1, & 896 & deflate_level=DEF_LEVEL) 897 call handle_nf90_err(ncret) 758 898 ncret = nf90_put_var(ncid, ncvarid, & 759 899 & sshf(0:nxmax-1, 0:nymax-1, 1, cm_index)) 900 call handle_nf90_err(ncret) 760 901 761 902 ncret = nf90_def_var(ncid, 'ssr', NF90_FLOAT, & 762 903 & dim2dids, ncvarid) 763 ncret = nf90_def_var_deflate(ncid, ncvarid, & 764 & shuffle=0, & 765 & deflate=1, & 766 & deflate_level=DEF_LEVEL) 904 call handle_nf90_err(ncret) 905 ncret = nf90_def_var_deflate(ncid, ncvarid, & 906 & shuffle=0, & 907 & deflate=1, & 908 & deflate_level=DEF_LEVEL) 909 call handle_nf90_err(ncret) 767 910 ncret = nf90_put_var(ncid, ncvarid, & 768 911 & ssr(0:nxmax-1, 0:nymax-1, 1, cm_index)) 912 call handle_nf90_err(ncret) 769 913 770 914 ncret = nf90_def_var(ncid, 'surfstr', NF90_FLOAT, & 771 915 & dim2dids, ncvarid) 772 ncret = nf90_def_var_deflate(ncid, ncvarid, & 773 & shuffle=0, & 774 & deflate=1, & 775 & deflate_level=DEF_LEVEL) 916 call handle_nf90_err(ncret) 917 ncret = nf90_def_var_deflate(ncid, ncvarid, & 918 & shuffle=0, & 919 & deflate=1, & 920 & deflate_level=DEF_LEVEL) 921 call handle_nf90_err(ncret) 776 922 ncret = nf90_put_var(ncid, ncvarid, & 777 923 & surfstr(0:nxmax-1, 0:nymax-1, 1, cm_index)) 924 call handle_nf90_err(ncret) 778 925 779 926 ncret = nf90_def_var(ncid, 'ustar', NF90_FLOAT, & 780 927 & dim2dids, ncvarid) 781 ncret = nf90_def_var_deflate(ncid, ncvarid, & 782 & shuffle=0, & 783 & deflate=1, & 784 & deflate_level=DEF_LEVEL) 928 call handle_nf90_err(ncret) 929 ncret = nf90_def_var_deflate(ncid, ncvarid, & 930 & shuffle=0, & 931 & deflate=1, & 932 & deflate_level=DEF_LEVEL) 933 call handle_nf90_err(ncret) 785 934 ncret = nf90_put_var(ncid, ncvarid, & 786 935 & ustar(0:nxmax-1, 0:nymax-1, 1, cm_index)) 936 call handle_nf90_err(ncret) 787 937 788 938 ncret = nf90_def_var(ncid, 'wstar', NF90_FLOAT, & 789 939 & dim2dids, ncvarid) 790 ncret = nf90_def_var_deflate(ncid, ncvarid, & 791 & shuffle=0, & 792 & deflate=1, & 793 & deflate_level=DEF_LEVEL) 940 call handle_nf90_err(ncret) 941 ncret = nf90_def_var_deflate(ncid, ncvarid, & 942 & shuffle=0, & 943 & deflate=1, & 944 & deflate_level=DEF_LEVEL) 945 call handle_nf90_err(ncret) 794 946 ncret = nf90_put_var(ncid, ncvarid, & 795 947 & wstar(0:nxmax-1, 0:nymax-1, 1, cm_index)) 948 call handle_nf90_err(ncret) 796 949 797 950 ncret = nf90_def_var(ncid, 'hmix', NF90_FLOAT, & 798 951 & dim2dids, ncvarid) 799 ncret = nf90_def_var_deflate(ncid, ncvarid, & 800 & shuffle=0, & 801 & deflate=1, & 802 & deflate_level=DEF_LEVEL) 952 call handle_nf90_err(ncret) 953 ncret = nf90_def_var_deflate(ncid, ncvarid, & 954 & shuffle=0, & 955 & deflate=1, & 956 & deflate_level=DEF_LEVEL) 957 call handle_nf90_err(ncret) 803 958 ncret = nf90_put_var(ncid, ncvarid, & 804 959 & hmix(0:nxmax-1, 0:nymax-1, 1, cm_index)) 960 call handle_nf90_err(ncret) 805 961 806 962 ncret = nf90_def_var(ncid, 'tropopause', NF90_FLOAT, & 807 963 & dim2dids, ncvarid) 808 ncret = nf90_def_var_deflate(ncid, ncvarid, & 809 & shuffle=0, & 810 & deflate=1, & 811 & deflate_level=DEF_LEVEL) 964 call handle_nf90_err(ncret) 965 ncret = nf90_def_var_deflate(ncid, ncvarid, & 966 & shuffle=0, & 967 & deflate=1, & 968 & deflate_level=DEF_LEVEL) 969 call handle_nf90_err(ncret) 812 970 ncret = nf90_put_var(ncid, ncvarid, & 813 971 & tropopause(0:nxmax-1, 0:nymax-1, 1, cm_index)) 972 call handle_nf90_err(ncret) 814 973 815 974 ncret = nf90_def_var(ncid, 'oli', NF90_FLOAT, & 816 975 & dim2dids, ncvarid) 817 ncret = nf90_def_var_deflate(ncid, ncvarid, & 818 & shuffle=0, & 819 & deflate=1, & 820 & deflate_level=DEF_LEVEL) 976 call handle_nf90_err(ncret) 977 ncret = nf90_def_var_deflate(ncid, ncvarid, & 978 & shuffle=0, & 979 & deflate=1, & 980 & deflate_level=DEF_LEVEL) 981 call handle_nf90_err(ncret) 821 982 ncret = nf90_put_var(ncid, ncvarid, & 822 983 & oli(0:nxmax-1, 0:nymax-1, 1, cm_index)) 984 call handle_nf90_err(ncret) 823 985 824 986 ncret = nf90_def_var(ncid, 'diffk', NF90_FLOAT, & 825 987 & dim2dids, ncvarid) 826 ncret = nf90_def_var_deflate(ncid, ncvarid, & 827 & shuffle=0, & 828 & deflate=1, & 829 & deflate_level=DEF_LEVEL) 988 call handle_nf90_err(ncret) 989 ncret = nf90_def_var_deflate(ncid, ncvarid, & 990 & shuffle=0, & 991 & deflate=1, & 992 & deflate_level=DEF_LEVEL) 993 call handle_nf90_err(ncret) 830 994 ncret = nf90_put_var(ncid, ncvarid, & 831 995 & diffk(0:nxmax-1, 0:nymax-1, 1, cm_index)) 996 call handle_nf90_err(ncret) 832 997 833 998 … … 844 1009 ncret = nf90_def_var(ncid, 'vdep', NF90_FLOAT, & 845 1010 & dim3dids, ncvarid) 846 ncret = nf90_def_var_deflate(ncid, ncvarid, & 847 & shuffle=0, & 848 & deflate=1, & 849 & deflate_level=DEF_LEVEL) 1011 call handle_nf90_err(ncret) 1012 ncret = nf90_def_var_deflate(ncid, ncvarid, & 1013 & shuffle=0, & 1014 & deflate=1, & 1015 & deflate_level=DEF_LEVEL) 1016 call handle_nf90_err(ncret) 850 1017 ncret = nf90_put_var(ncid, ncvarid, & 851 1018 & vdep(0:nxmax-1, 0:nymax-1, 1:maxspec, cm_index)) 1019 call handle_nf90_err(ncret) 852 1020 853 1021 … … 878 1046 ncret = nf90_def_var(ncid, 'akm', NF90_FLOAT, & 879 1047 & dim1dids, ncvarid) 880 ncret = nf90_def_var_deflate(ncid, ncvarid, & 881 & shuffle=0, & 882 & deflate=1, & 883 & deflate_level=DEF_LEVEL) 1048 call handle_nf90_err(ncret) 1049 ncret = nf90_def_var_deflate(ncid, ncvarid, & 1050 & shuffle=0, & 1051 & deflate=1, & 1052 & deflate_level=DEF_LEVEL) 1053 call handle_nf90_err(ncret) 884 1054 ncret = nf90_put_var(ncid, ncvarid, & 885 1055 & akm(1:nwzmax)) 1056 call handle_nf90_err(ncret) 886 1057 887 1058 ncret = nf90_def_var(ncid, 'bkm', NF90_FLOAT, & 888 1059 & dim1dids, ncvarid) 889 ncret = nf90_def_var_deflate(ncid, ncvarid, & 890 & shuffle=0, & 891 & deflate=1, & 892 & deflate_level=DEF_LEVEL) 1060 call handle_nf90_err(ncret) 1061 ncret = nf90_def_var_deflate(ncid, ncvarid, & 1062 & shuffle=0, & 1063 & deflate=1, & 1064 & deflate_level=DEF_LEVEL) 1065 call handle_nf90_err(ncret) 893 1066 ncret = nf90_put_var(ncid, ncvarid, & 894 1067 & bkm(1:nwzmax)) 1068 call handle_nf90_err(ncret) 895 1069 896 1070 … … 899 1073 ncret = nf90_def_var(ncid, 'akz', NF90_FLOAT, & 900 1074 & dim1dids, ncvarid) 901 ncret = nf90_def_var_deflate(ncid, ncvarid, & 902 & shuffle=0, & 903 & deflate=1, & 904 & deflate_level=DEF_LEVEL) 1075 call handle_nf90_err(ncret) 1076 ncret = nf90_def_var_deflate(ncid, ncvarid, & 1077 & shuffle=0, & 1078 & deflate=1, & 1079 & deflate_level=DEF_LEVEL) 1080 call handle_nf90_err(ncret) 905 1081 ncret = nf90_put_var(ncid, ncvarid, & 906 1082 & akz(1:nuvzmax)) 1083 call handle_nf90_err(ncret) 907 1084 908 1085 ncret = nf90_def_var(ncid, 'bkz', NF90_FLOAT, & 909 1086 & dim1dids, ncvarid) 910 ncret = nf90_def_var_deflate(ncid, ncvarid, & 911 & shuffle=0, & 912 & deflate=1, & 913 & deflate_level=DEF_LEVEL) 1087 call handle_nf90_err(ncret) 1088 ncret = nf90_def_var_deflate(ncid, ncvarid, & 1089 & shuffle=0, & 1090 & deflate=1, & 1091 & deflate_level=DEF_LEVEL) 1092 call handle_nf90_err(ncret) 914 1093 ncret = nf90_put_var(ncid, ncvarid, & 915 1094 & bkz(1:nuvzmax)) 1095 call handle_nf90_err(ncret) 916 1096 917 1097 … … 920 1100 ncret = nf90_def_var(ncid, 'aknew', NF90_FLOAT, & 921 1101 & dim1dids, ncvarid) 922 ncret = nf90_def_var_deflate(ncid, ncvarid, & 923 & shuffle=0, & 924 & deflate=1, & 925 & deflate_level=DEF_LEVEL) 1102 call handle_nf90_err(ncret) 1103 ncret = nf90_def_var_deflate(ncid, ncvarid, & 1104 & shuffle=0, & 1105 & deflate=1, & 1106 & deflate_level=DEF_LEVEL) 1107 call handle_nf90_err(ncret) 926 1108 ncret = nf90_put_var(ncid, ncvarid, & 927 1109 & aknew(1:nzmax)) 1110 call handle_nf90_err(ncret) 928 1111 929 1112 ncret = nf90_def_var(ncid, 'bknew', NF90_FLOAT, & 930 1113 & dim1dids, ncvarid) 931 ncret = nf90_def_var_deflate(ncid, ncvarid, & 932 & shuffle=0, & 933 & deflate=1, & 934 & deflate_level=DEF_LEVEL) 1114 call handle_nf90_err(ncret) 1115 ncret = nf90_def_var_deflate(ncid, ncvarid, & 1116 & shuffle=0, & 1117 & deflate=1, & 1118 & deflate_level=DEF_LEVEL) 1119 call handle_nf90_err(ncret) 935 1120 ncret = nf90_put_var(ncid, ncvarid, & 936 1121 & bknew(1:nzmax)) 1122 call handle_nf90_err(ncret) 937 1123 938 1124 … … 948 1134 ! information to provide the structure of arrays 949 1135 ncret = nf90_def_dim(ncid, 'maxnests', maxnests, maxnests_dimid) 1136 call handle_nf90_err(ncret) 950 1137 ncret = nf90_def_dim(ncid, 'nxmaxn', nxmaxn, nxmaxn_dimid) 1138 call handle_nf90_err(ncret) 951 1139 ncret = nf90_def_dim(ncid, 'nymaxn', nymaxn, nymaxn_dimid) 1140 call handle_nf90_err(ncret) 952 1141 953 1142 WRITE(iounit) nxn(:) … … 964 1153 ncret = nf90_def_var(ncid, 'nxn', NF90_INT, & 965 1154 & dim1dids, ncvarid) 966 ncret = nf90_def_var_deflate(ncid, ncvarid, & 967 & shuffle=0, & 968 & deflate=1, & 969 & deflate_level=DEF_LEVEL) 1155 call handle_nf90_err(ncret) 1156 ncret = nf90_def_var_deflate(ncid, ncvarid, & 1157 & shuffle=0, & 1158 & deflate=1, & 1159 & deflate_level=DEF_LEVEL) 1160 call handle_nf90_err(ncret) 970 1161 ncret = nf90_put_var(ncid, ncvarid, & 971 1162 & nxn(1:maxnests)) 1163 call handle_nf90_err(ncret) 972 1164 973 1165 ncret = nf90_def_var(ncid, 'nyn', NF90_INT, & 974 1166 & dim1dids, ncvarid) 975 ncret = nf90_def_var_deflate(ncid, ncvarid, & 976 & shuffle=0, & 977 & deflate=1, & 978 & deflate_level=DEF_LEVEL) 1167 call handle_nf90_err(ncret) 1168 ncret = nf90_def_var_deflate(ncid, ncvarid, & 1169 & shuffle=0, & 1170 & deflate=1, & 1171 & deflate_level=DEF_LEVEL) 1172 call handle_nf90_err(ncret) 979 1173 ncret = nf90_put_var(ncid, ncvarid, & 980 1174 & nyn(1:maxnests)) 1175 call handle_nf90_err(ncret) 981 1176 982 1177 ncret = nf90_def_var(ncid, 'dxn', NF90_FLOAT, & 983 1178 & dim1dids, ncvarid) 984 ncret = nf90_def_var_deflate(ncid, ncvarid, & 985 & shuffle=0, & 986 & deflate=1, & 987 & deflate_level=DEF_LEVEL) 1179 call handle_nf90_err(ncret) 1180 ncret = nf90_def_var_deflate(ncid, ncvarid, & 1181 & shuffle=0, & 1182 & deflate=1, & 1183 & deflate_level=DEF_LEVEL) 1184 call handle_nf90_err(ncret) 988 1185 ncret = nf90_put_var(ncid, ncvarid, & 989 1186 & dxn(1:maxnests)) 1187 call handle_nf90_err(ncret) 990 1188 991 1189 ncret = nf90_def_var(ncid, 'dyn', NF90_FLOAT, & 992 1190 & dim1dids, ncvarid) 993 ncret = nf90_def_var_deflate(ncid, ncvarid, & 994 & shuffle=0, & 995 & deflate=1, & 996 & deflate_level=DEF_LEVEL) 1191 call handle_nf90_err(ncret) 1192 ncret = nf90_def_var_deflate(ncid, ncvarid, & 1193 & shuffle=0, & 1194 & deflate=1, & 1195 & deflate_level=DEF_LEVEL) 1196 call handle_nf90_err(ncret) 997 1197 ncret = nf90_put_var(ncid, ncvarid, & 998 1198 & dyn(1:maxnests)) 1199 call handle_nf90_err(ncret) 999 1200 1000 1201 ncret = nf90_def_var(ncid, 'xlon0n', NF90_FLOAT, & 1001 1202 & dim1dids, ncvarid) 1002 ncret = nf90_def_var_deflate(ncid, ncvarid, & 1003 & shuffle=0, & 1004 & deflate=1, & 1005 & deflate_level=DEF_LEVEL) 1203 call handle_nf90_err(ncret) 1204 ncret = nf90_def_var_deflate(ncid, ncvarid, & 1205 & shuffle=0, & 1206 & deflate=1, & 1207 & deflate_level=DEF_LEVEL) 1208 call handle_nf90_err(ncret) 1006 1209 ncret = nf90_put_var(ncid, ncvarid, & 1007 1210 & xlon0n(1:maxnests)) 1211 call handle_nf90_err(ncret) 1008 1212 1009 1213 ncret = nf90_def_var(ncid, 'ylat0n', NF90_FLOAT, & 1010 1214 & dim1dids, ncvarid) 1011 ncret = nf90_def_var_deflate(ncid, ncvarid, & 1012 & shuffle=0, & 1013 & deflate=1, & 1014 & deflate_level=DEF_LEVEL) 1215 call handle_nf90_err(ncret) 1216 ncret = nf90_def_var_deflate(ncid, ncvarid, & 1217 & shuffle=0, & 1218 & deflate=1, & 1219 & deflate_level=DEF_LEVEL) 1220 call handle_nf90_err(ncret) 1015 1221 ncret = nf90_put_var(ncid, ncvarid, & 1016 1222 & ylat0n(1:maxnests)) 1223 call handle_nf90_err(ncret) 1017 1224 1018 1225 … … 1026 1233 ncret = nf90_def_var(ncid, 'oron', NF90_FLOAT, & 1027 1234 & dim3dids, ncvarid) 1028 ncret = nf90_def_var_deflate(ncid, ncvarid, & 1029 & shuffle=0, & 1030 & deflate=1, & 1031 & deflate_level=DEF_LEVEL) 1235 call handle_nf90_err(ncret) 1236 ncret = nf90_def_var_deflate(ncid, ncvarid, & 1237 & shuffle=0, & 1238 & deflate=1, & 1239 & deflate_level=DEF_LEVEL) 1240 call handle_nf90_err(ncret) 1032 1241 ncret = nf90_put_var(ncid, ncvarid, & 1033 1242 & oron(0:nxmaxn-1, 0:nymaxn-1, 1:maxnests)) 1243 call handle_nf90_err(ncret) 1034 1244 1035 1245 ncret = nf90_def_var(ncid, 'excessoron', NF90_FLOAT, & 1036 1246 & dim3dids, ncvarid) 1037 ncret = nf90_def_var_deflate(ncid, ncvarid, & 1038 & shuffle=0, & 1039 & deflate=1, & 1040 & deflate_level=DEF_LEVEL) 1247 call handle_nf90_err(ncret) 1248 ncret = nf90_def_var_deflate(ncid, ncvarid, & 1249 & shuffle=0, & 1250 & deflate=1, & 1251 & deflate_level=DEF_LEVEL) 1252 call handle_nf90_err(ncret) 1041 1253 ncret = nf90_put_var(ncid, ncvarid, & 1042 1254 & excessoron(0:nxmaxn-1, 0:nymaxn-1, 1:maxnests)) 1255 call handle_nf90_err(ncret) 1043 1256 1044 1257 ncret = nf90_def_var(ncid, 'lsmn', NF90_FLOAT, & 1045 1258 & dim3dids, ncvarid) 1046 ncret = nf90_def_var_deflate(ncid, ncvarid, & 1047 & shuffle=0, & 1048 & deflate=1, & 1049 & deflate_level=DEF_LEVEL) 1259 call handle_nf90_err(ncret) 1260 ncret = nf90_def_var_deflate(ncid, ncvarid, & 1261 & shuffle=0, & 1262 & deflate=1, & 1263 & deflate_level=DEF_LEVEL) 1264 call handle_nf90_err(ncret) 1050 1265 ncret = nf90_put_var(ncid, ncvarid, & 1051 1266 & lsmn(0:nxmaxn-1, 0:nymaxn-1, 1:maxnests)) 1267 call handle_nf90_err(ncret) 1052 1268 1053 1269 dim4dids = (/nxmaxn_dimid, nymaxn_dimid, numclass_dimid, maxnests_dimid/) … … 1055 1271 ncret = nf90_def_var(ncid, 'xlandusen', NF90_FLOAT, & 1056 1272 & dim4dids, ncvarid) 1057 ncret = nf90_def_var_deflate(ncid, ncvarid, & 1058 & shuffle=0, & 1059 & deflate=1, & 1060 & deflate_level=DEF_LEVEL) 1273 call handle_nf90_err(ncret) 1274 ncret = nf90_def_var_deflate(ncid, ncvarid, & 1275 & shuffle=0, & 1276 & deflate=1, & 1277 & deflate_level=DEF_LEVEL) 1278 call handle_nf90_err(ncret) 1061 1279 ncret = nf90_put_var(ncid, ncvarid, & 1062 1280 & xlandusen(0:nxmaxn-1, 0:nymaxn-1, 1:numclass, 1:maxnests)) 1063 1064 PRINT *, 'SUM(xlandusen): ', & 1065 & SUM(xlandusen)1281 call handle_nf90_err(ncret) 1282 1283 PRINT *, 'SUM(oron): ', SUM(oron) 1066 1284 1067 1285 … … 1080 1298 WRITE(iounit) tthn(:,:,:,cm_index,:) 1081 1299 WRITE(iounit) qvhn(:,:,:,cm_index,:) 1300 1301 1302 dim4dids = (/nxmaxn_dimid, nymaxn_dimid, nzmax_dimid, maxnests_dimid/) 1303 1304 ncret = nf90_def_var(ncid, 'uun', NF90_FLOAT, & 1305 & dim4dids, ncvarid) 1306 call handle_nf90_err(ncret) 1307 ncret = nf90_def_var_deflate(ncid, ncvarid, & 1308 & shuffle=0, & 1309 & deflate=1, & 1310 & deflate_level=DEF_LEVEL) 1311 call handle_nf90_err(ncret) 1312 ncret = nf90_put_var(ncid, ncvarid, & 1313 & uun(0:nxmaxn-1, 0:nymaxn-1, 1:nzmax, cm_index, 1:maxnests)) 1314 call handle_nf90_err(ncret) 1315 1316 ncret = nf90_def_var(ncid, 'vvn', NF90_FLOAT, & 1317 & dim4dids, ncvarid) 1318 call handle_nf90_err(ncret) 1319 ncret = nf90_def_var_deflate(ncid, ncvarid, & 1320 & shuffle=0, & 1321 & deflate=1, & 1322 & deflate_level=DEF_LEVEL) 1323 call handle_nf90_err(ncret) 1324 ncret = nf90_put_var(ncid, ncvarid, & 1325 & vvn(0:nxmaxn-1, 0:nymaxn-1, 1:nzmax, cm_index, 1:maxnests)) 1326 call handle_nf90_err(ncret) 1327 1328 ncret = nf90_def_var(ncid, 'wwn', NF90_FLOAT, & 1329 & dim4dids, ncvarid) 1330 call handle_nf90_err(ncret) 1331 ncret = nf90_def_var_deflate(ncid, ncvarid, & 1332 & shuffle=0, & 1333 & deflate=1, & 1334 & deflate_level=DEF_LEVEL) 1335 call handle_nf90_err(ncret) 1336 ncret = nf90_put_var(ncid, ncvarid, & 1337 & wwn(0:nxmaxn-1, 0:nymaxn-1, 1:nzmax, cm_index, 1:maxnests)) 1338 call handle_nf90_err(ncret) 1339 1340 ncret = nf90_def_var(ncid, 'ttn', NF90_FLOAT, & 1341 & dim4dids, ncvarid) 1342 call handle_nf90_err(ncret) 1343 ncret = nf90_def_var_deflate(ncid, ncvarid, & 1344 & shuffle=0, & 1345 & deflate=1, & 1346 & deflate_level=DEF_LEVEL) 1347 call handle_nf90_err(ncret) 1348 ncret = nf90_put_var(ncid, ncvarid, & 1349 & ttn(0:nxmaxn-1, 0:nymaxn-1, 1:nzmax, cm_index, 1:maxnests)) 1350 call handle_nf90_err(ncret) 1351 1352 ncret = nf90_def_var(ncid, 'qvn', NF90_FLOAT, & 1353 & dim4dids, ncvarid) 1354 call handle_nf90_err(ncret) 1355 ncret = nf90_def_var_deflate(ncid, ncvarid, & 1356 & shuffle=0, & 1357 & deflate=1, & 1358 & deflate_level=DEF_LEVEL) 1359 call handle_nf90_err(ncret) 1360 ncret = nf90_put_var(ncid, ncvarid, & 1361 & qvn(0:nxmaxn-1, 0:nymaxn-1, 1:nzmax, cm_index, 1:maxnests)) 1362 call handle_nf90_err(ncret) 1363 1364 ncret = nf90_def_var(ncid, 'pvn', NF90_FLOAT, & 1365 & dim4dids, ncvarid) 1366 call handle_nf90_err(ncret) 1367 ncret = nf90_def_var_deflate(ncid, ncvarid, & 1368 & shuffle=0, & 1369 & deflate=1, & 1370 & deflate_level=DEF_LEVEL) 1371 call handle_nf90_err(ncret) 1372 ncret = nf90_put_var(ncid, ncvarid, & 1373 & pvn(0:nxmaxn-1, 0:nymaxn-1, 1:nzmax, cm_index, 1:maxnests)) 1374 call handle_nf90_err(ncret) 1375 1376 ncret = nf90_def_var(ncid, 'rhon', NF90_FLOAT, & 1377 & dim4dids, ncvarid) 1378 call handle_nf90_err(ncret) 1379 ncret = nf90_def_var_deflate(ncid, ncvarid, & 1380 & shuffle=0, & 1381 & deflate=1, & 1382 & deflate_level=DEF_LEVEL) 1383 call handle_nf90_err(ncret) 1384 ncret = nf90_put_var(ncid, ncvarid, & 1385 & rhon(0:nxmaxn-1, 0:nymaxn-1, 1:nzmax, cm_index, 1:maxnests)) 1386 call handle_nf90_err(ncret) 1387 1388 ncret = nf90_def_var(ncid, 'drhodzn', NF90_FLOAT, & 1389 & dim4dids, ncvarid) 1390 call handle_nf90_err(ncret) 1391 ncret = nf90_def_var_deflate(ncid, ncvarid, & 1392 & shuffle=0, & 1393 & deflate=1, & 1394 & deflate_level=DEF_LEVEL) 1395 call handle_nf90_err(ncret) 1396 ncret = nf90_put_var(ncid, ncvarid, & 1397 & drhodzn(0:nxmaxn-1, 0:nymaxn-1, 1:nzmax, cm_index, 1:maxnests)) 1398 call handle_nf90_err(ncret) 1399 1400 1401 ! Note the new dimensions 1402 dim4dids = (/nxmaxn_dimid, nymaxn_dimid, nuvzmax_dimid, maxnests_dimid/) 1403 1404 ncret = nf90_def_var(ncid, 'tthn', NF90_FLOAT, & 1405 & dim4dids, ncvarid) 1406 call handle_nf90_err(ncret) 1407 ncret = nf90_def_var_deflate(ncid, ncvarid, & 1408 & shuffle=0, & 1409 & deflate=1, & 1410 & deflate_level=DEF_LEVEL) 1411 call handle_nf90_err(ncret) 1412 ncret = nf90_put_var(ncid, ncvarid, & 1413 & tthn(0:nxmaxn-1, 0:nymaxn-1, 1:nuvzmax, cm_index, 1:maxnests)) 1414 call handle_nf90_err(ncret) 1415 1416 ncret = nf90_def_var(ncid, 'qvhn', NF90_FLOAT, & 1417 & dim4dids, ncvarid) 1418 call handle_nf90_err(ncret) 1419 ncret = nf90_def_var_deflate(ncid, ncvarid, & 1420 & shuffle=0, & 1421 & deflate=1, & 1422 & deflate_level=DEF_LEVEL) 1423 call handle_nf90_err(ncret) 1424 ncret = nf90_put_var(ncid, ncvarid, & 1425 & qvhn(0:nxmaxn-1, 0:nymaxn-1, 1:nuvzmax, cm_index, 1:maxnests)) 1426 call handle_nf90_err(ncret) 1427 1428 ! Note the new dimensions 1429 dim4dids = (/nxmaxn_dimid, nymaxn_dimid, zero_to_nzmax_dimid, maxnests_dimid/) 1430 1431 ncret = nf90_def_var(ncid, 'cloudsn', NF90_INT, & 1432 & dim4dids, ncvarid) 1433 call handle_nf90_err(ncret) 1434 ncret = nf90_def_var_deflate(ncid, ncvarid, & 1435 & shuffle=0, & 1436 & deflate=1, & 1437 & deflate_level=DEF_LEVEL) 1438 call handle_nf90_err(ncret) 1439 ncret = nf90_put_var(ncid, ncvarid, & 1440 & cloudsn(0:nxmaxn-1, 0:nymaxn-1, 0:nzmax, cm_index, 1:maxnests)) 1441 call handle_nf90_err(ncret) 1442 1443 ! Note the new dimensions 1444 dim3dids = (/nxmaxn_dimid, nymaxn_dimid, maxnests_dimid/) 1445 1446 ncret = nf90_def_var(ncid, 'cloudsnh', NF90_INT, & 1447 & dim3dids, ncvarid) 1448 call handle_nf90_err(ncret) 1449 ncret = nf90_def_var_deflate(ncid, ncvarid, & 1450 & shuffle=0, & 1451 & deflate=1, & 1452 & deflate_level=DEF_LEVEL) 1453 call handle_nf90_err(ncret) 1454 ncret = nf90_put_var(ncid, ncvarid, & 1455 & cloudsnh(0:nxmaxn-1, 0:nymaxn-1, cm_index, 1:maxnests)) 1456 call handle_nf90_err(ncret) 1457 1458 1459 1460 1461 1462 1463 1464 1465 1466 PRINT *, 'SUM(uun): ', SUM(uun(:,:,:,cm_index,:)) 1467 PRINT *, 'SUM(qvhn): ', SUM(qvhn(:,:,:,cm_index,:)) 1468 PRINT *, 'SUM(cloudsn): ', SUM(cloudsn(:,:,:,cm_index,:)) 1469 1470 1082 1471 1083 1472 ! 2d nested fields … … 1103 1492 WRITE(iounit) vdepn(:,:,:,cm_index,:) 1104 1493 1494 dim3dids = (/nxmax_dimid, nymax_dimid, maxnests_dimid/) 1495 1496 ncret = nf90_def_var(ncid, 'psn', NF90_FLOAT, & 1497 & dim3dids, ncvarid) 1498 call handle_nf90_err(ncret) 1499 ncret = nf90_def_var_deflate(ncid, ncvarid, & 1500 & shuffle=0, & 1501 & deflate=1, & 1502 & deflate_level=DEF_LEVEL) 1503 call handle_nf90_err(ncret) 1504 ncret = nf90_put_var(ncid, ncvarid, & 1505 & psn(0:nxmaxn-1, 0:nymaxn-1, 1, cm_index, 1:maxnests)) 1506 call handle_nf90_err(ncret) 1507 1508 1509 1510 1511 1512 1513 PRINT *, 'SUM(psn): ', SUM(psn(:,:,:,cm_index,:)) 1514 1515 1516 1517 1518 1519 1520 1105 1521 ! Auxiliary variables for nests 1106 1522 WRITE(iounit) xresoln(:) … … 1165 1581 ! Get dimensions 1166 1582 ncret = nf90_inq_dimid(ncid, 'nxmax', nxmax_dimid) 1583 call handle_nf90_err(ncret) 1167 1584 ncret = nf90_inquire_dimension(ncid, nxmax_dimid, nxmax_dimname, & 1168 1585 & temp_nxmax) 1586 call handle_nf90_err(ncret) 1169 1587 PRINT *, 'temp_nxmax: ', temp_nxmax 1170 1588 1171 1589 ncret = nf90_inq_dimid(ncid, 'nymax', nymax_dimid) 1590 call handle_nf90_err(ncret) 1172 1591 ncret = nf90_inquire_dimension(ncid, nymax_dimid, nymax_dimname, & 1173 1592 & temp_nymax) 1593 call handle_nf90_err(ncret) 1174 1594 PRINT *, 'temp_nymax: ', temp_nymax 1175 1595 1176 1596 ncret = nf90_inq_dimid(ncid, 'nzmax', nzmax_dimid) 1597 call handle_nf90_err(ncret) 1177 1598 ncret = nf90_inquire_dimension(ncid, nzmax_dimid, nzmax_dimname, & 1178 1599 & temp_nzmax) 1600 call handle_nf90_err(ncret) 1179 1601 PRINT *, 'temp_nzmax: ', temp_nzmax 1180 1602 1181 1603 ncret = nf90_inq_dimid(ncid, 'nuvzmax', nuvzmax_dimid) 1604 call handle_nf90_err(ncret) 1182 1605 ncret = nf90_inquire_dimension(ncid, nuvzmax_dimid, nuvzmax_dimname, & 1183 1606 & temp_nuvzmax) 1607 call handle_nf90_err(ncret) 1184 1608 PRINT *, 'temp_nuvzmax: ', temp_nuvzmax 1185 1609 1186 1610 ncret = nf90_inq_dimid(ncid, 'nwzmax', nwzmax_dimid) 1611 call handle_nf90_err(ncret) 1187 1612 ncret = nf90_inquire_dimension(ncid, nwzmax_dimid, nwzmax_dimname, & 1188 1613 & temp_nwzmax) 1614 call handle_nf90_err(ncret) 1189 1615 PRINT *, 'temp_nwzmax: ', temp_nwzmax 1190 1616 1191 1617 ncret = nf90_inq_dimid(ncid, 'numclass', numclass_dimid) 1618 call handle_nf90_err(ncret) 1192 1619 ncret = nf90_inquire_dimension(ncid, numclass_dimid, numclass_dimname, & 1193 1620 & temp_numclass) 1621 call handle_nf90_err(ncret) 1194 1622 PRINT *, 'temp_numclass: ', temp_numclass 1195 1623 1196 1624 ncret = nf90_inq_dimid(ncid, 'maxspec', maxspec_dimid) 1625 call handle_nf90_err(ncret) 1197 1626 ncret = nf90_inquire_dimension(ncid, maxspec_dimid, maxspec_dimname, & 1198 1627 & temp_maxspec) 1628 call handle_nf90_err(ncret) 1199 1629 PRINT *, 'temp_maxspec: ', temp_maxspec 1200 1630 … … 1235 1665 ! Get the varid , then read into scalar variable 1236 1666 ncret = nf90_inq_varid(ncid, 'nx', ncvarid) 1667 call handle_nf90_err(ncret) 1237 1668 ncret = nf90_get_var(ncid, ncvarid, nx) 1669 call handle_nf90_err(ncret) 1238 1670 1239 1671 ncret = nf90_inq_varid(ncid, 'ny', ncvarid) 1672 call handle_nf90_err(ncret) 1240 1673 ncret = nf90_get_var(ncid, ncvarid, ny) 1674 call handle_nf90_err(ncret) 1241 1675 1242 1676 ncret = nf90_inq_varid(ncid, 'nxmin1', ncvarid) 1677 call handle_nf90_err(ncret) 1243 1678 ncret = nf90_get_var(ncid, ncvarid, nxmin1) 1679 call handle_nf90_err(ncret) 1244 1680 1245 1681 ncret = nf90_inq_varid(ncid, 'nymin1', ncvarid) 1682 call handle_nf90_err(ncret) 1246 1683 ncret = nf90_get_var(ncid, ncvarid, nymin1) 1684 call handle_nf90_err(ncret) 1247 1685 1248 1686 ncret = nf90_inq_varid(ncid, 'nxfield', ncvarid) 1687 call handle_nf90_err(ncret) 1249 1688 ncret = nf90_get_var(ncid, ncvarid, nxfield) 1689 call handle_nf90_err(ncret) 1250 1690 1251 1691 ncret = nf90_inq_varid(ncid, 'nuvz', ncvarid) 1692 call handle_nf90_err(ncret) 1252 1693 ncret = nf90_get_var(ncid, ncvarid, nuvz) 1694 call handle_nf90_err(ncret) 1253 1695 1254 1696 ncret = nf90_inq_varid(ncid, 'nwz', ncvarid) 1697 call handle_nf90_err(ncret) 1255 1698 ncret = nf90_get_var(ncid, ncvarid, nwz) 1699 call handle_nf90_err(ncret) 1256 1700 1257 1701 ncret = nf90_inq_varid(ncid, 'nz', ncvarid) 1702 call handle_nf90_err(ncret) 1258 1703 ncret = nf90_get_var(ncid, ncvarid, nz) 1704 call handle_nf90_err(ncret) 1259 1705 1260 1706 ncret = nf90_inq_varid(ncid, 'nmixz', ncvarid) 1707 call handle_nf90_err(ncret) 1261 1708 ncret = nf90_get_var(ncid, ncvarid, nmixz) 1709 call handle_nf90_err(ncret) 1262 1710 1263 1711 ncret = nf90_inq_varid(ncid, 'nlev_ec', ncvarid) 1712 call handle_nf90_err(ncret) 1264 1713 ncret = nf90_get_var(ncid, ncvarid, nlev_ec) 1714 call handle_nf90_err(ncret) 1265 1715 1266 1716 ncret = nf90_inq_varid(ncid, 'dx', ncvarid) 1717 call handle_nf90_err(ncret) 1267 1718 ncret = nf90_get_var(ncid, ncvarid, dx) 1719 call handle_nf90_err(ncret) 1268 1720 1269 1721 ncret = nf90_inq_varid(ncid, 'dy', ncvarid) 1722 call handle_nf90_err(ncret) 1270 1723 ncret = nf90_get_var(ncid, ncvarid, dy) 1724 call handle_nf90_err(ncret) 1271 1725 1272 1726 ncret = nf90_inq_varid(ncid, 'xlon0', ncvarid) 1727 call handle_nf90_err(ncret) 1273 1728 ncret = nf90_get_var(ncid, ncvarid, xlon0) 1729 call handle_nf90_err(ncret) 1274 1730 1275 1731 ncret = nf90_inq_varid(ncid, 'ylat0', ncvarid) 1732 call handle_nf90_err(ncret) 1276 1733 ncret = nf90_get_var(ncid, ncvarid, ylat0) 1734 call handle_nf90_err(ncret) 1277 1735 1278 1736 ncret = nf90_inq_varid(ncid, 'dxconst', ncvarid) 1737 call handle_nf90_err(ncret) 1279 1738 ncret = nf90_get_var(ncid, ncvarid, dxconst) 1739 call handle_nf90_err(ncret) 1280 1740 1281 1741 ncret = nf90_inq_varid(ncid, 'dyconst', ncvarid) 1742 call handle_nf90_err(ncret) 1282 1743 ncret = nf90_get_var(ncid, ncvarid, dyconst) 1744 call handle_nf90_err(ncret) 1283 1745 1284 1746 … … 1291 1753 1292 1754 ncret = nf90_inq_varid(ncid, 'oro', ncvarid) 1755 call handle_nf90_err(ncret) 1293 1756 ncret = nf90_get_var(ncid, ncvarid, oro(0:nxmax-1,0:nymax-1)) 1757 call handle_nf90_err(ncret) 1294 1758 1295 1759 ncret = nf90_inq_varid(ncid, 'excessoro', ncvarid) 1760 call handle_nf90_err(ncret) 1296 1761 ncret = nf90_get_var(ncid, ncvarid, excessoro(0:nxmax-1,0:nymax-1)) 1762 call handle_nf90_err(ncret) 1297 1763 1298 1764 ncret = nf90_inq_varid(ncid, 'lsm', ncvarid) 1765 call handle_nf90_err(ncret) 1299 1766 ncret = nf90_get_var(ncid, ncvarid, lsm(0:nxmax-1,0:nymax-1)) 1767 call handle_nf90_err(ncret) 1300 1768 1301 1769 ncret = nf90_inq_varid(ncid, 'xlanduse', ncvarid) 1770 call handle_nf90_err(ncret) 1302 1771 ncret = nf90_get_var(ncid, ncvarid, xlanduse(0:nxmax-1,0:nymax-1, 1:numclass)) 1772 call handle_nf90_err(ncret) 1303 1773 1304 1774 ncret = nf90_inq_varid(ncid, 'height', ncvarid) 1775 call handle_nf90_err(ncret) 1305 1776 ncret = nf90_get_var(ncid, ncvarid, height(1:nzmax)) 1777 call handle_nf90_err(ncret) 1306 1778 1307 1779 … … 1330 1802 ! Get the varid and read the variable into the array 1331 1803 ncret = nf90_inq_varid(ncid, 'uu', ncvarid) 1804 call handle_nf90_err(ncret) 1332 1805 ncret = nf90_get_var(ncid, ncvarid, uu(0:nxmax-1,0:nymax-1,1:nzmax,cm_index)) 1806 call handle_nf90_err(ncret) 1333 1807 1334 1808 ncret = nf90_inq_varid(ncid, 'vv', ncvarid) 1809 call handle_nf90_err(ncret) 1335 1810 ncret = nf90_get_var(ncid, ncvarid, vv(0:nxmax-1,0:nymax-1,1:nzmax,cm_index)) 1811 call handle_nf90_err(ncret) 1336 1812 1337 1813 ncret = nf90_inq_varid(ncid, 'uupol', ncvarid) 1814 call handle_nf90_err(ncret) 1338 1815 ncret = nf90_get_var(ncid, ncvarid, uupol(0:nxmax-1,0:nymax-1,1:nzmax,cm_index)) 1816 call handle_nf90_err(ncret) 1339 1817 1340 1818 ncret = nf90_inq_varid(ncid, 'vvpol', ncvarid) 1819 call handle_nf90_err(ncret) 1341 1820 ncret = nf90_get_var(ncid, ncvarid, vvpol(0:nxmax-1,0:nymax-1,1:nzmax,cm_index)) 1821 call handle_nf90_err(ncret) 1342 1822 1343 1823 ncret = nf90_inq_varid(ncid, 'ww', ncvarid) 1824 call handle_nf90_err(ncret) 1344 1825 ncret = nf90_get_var(ncid, ncvarid, ww(0:nxmax-1,0:nymax-1,1:nzmax,cm_index)) 1826 call handle_nf90_err(ncret) 1345 1827 1346 1828 ncret = nf90_inq_varid(ncid, 'tt', ncvarid) 1829 call handle_nf90_err(ncret) 1347 1830 ncret = nf90_get_var(ncid, ncvarid, tt(0:nxmax-1,0:nymax-1,1:nzmax,cm_index)) 1831 call handle_nf90_err(ncret) 1348 1832 1349 1833 ncret = nf90_inq_varid(ncid, 'qv', ncvarid) 1834 call handle_nf90_err(ncret) 1350 1835 ncret = nf90_get_var(ncid, ncvarid, qv(0:nxmax-1,0:nymax-1,1:nzmax,cm_index)) 1836 call handle_nf90_err(ncret) 1351 1837 1352 1838 ncret = nf90_inq_varid(ncid, 'pv', ncvarid) 1839 call handle_nf90_err(ncret) 1353 1840 ncret = nf90_get_var(ncid, ncvarid, pv(0:nxmax-1,0:nymax-1,1:nzmax,cm_index)) 1841 call handle_nf90_err(ncret) 1354 1842 1355 1843 ncret = nf90_inq_varid(ncid, 'rho', ncvarid) 1844 call handle_nf90_err(ncret) 1356 1845 ncret = nf90_get_var(ncid, ncvarid, rho(0:nxmax-1,0:nymax-1,1:nzmax,cm_index)) 1846 call handle_nf90_err(ncret) 1357 1847 1358 1848 ncret = nf90_inq_varid(ncid, 'drhodz', ncvarid) 1849 call handle_nf90_err(ncret) 1359 1850 ncret = nf90_get_var(ncid, ncvarid, drhodz(0:nxmax-1,0:nymax-1,1:nzmax,cm_index)) 1851 call handle_nf90_err(ncret) 1360 1852 1361 1853 ncret = nf90_inq_varid(ncid, 'clouds', ncvarid) 1854 call handle_nf90_err(ncret) 1362 1855 ncret = nf90_get_var(ncid, ncvarid, clouds(0:nxmax-1,0:nzmax-1,1:nzmax,cm_index)) 1856 call handle_nf90_err(ncret) 1363 1857 1364 1858 ncret = nf90_inq_varid(ncid, 'tth', ncvarid) 1859 call handle_nf90_err(ncret) 1365 1860 ncret = nf90_get_var(ncid, ncvarid, tth(0:nxmax-1,0:nymax-1,1:nuvzmax,cm_index)) 1861 call handle_nf90_err(ncret) 1366 1862 1367 1863 ncret = nf90_inq_varid(ncid, 'qvh', ncvarid) 1864 call handle_nf90_err(ncret) 1368 1865 ncret = nf90_get_var(ncid, ncvarid, qvh(0:nxmax-1,0:nymax-1,1:nuvzmax,cm_index)) 1866 call handle_nf90_err(ncret) 1369 1867 1370 1868 ncret = nf90_inq_varid(ncid, 'pplev', ncvarid) 1869 call handle_nf90_err(ncret) 1371 1870 ncret = nf90_get_var(ncid, ncvarid, pplev(0:nxmax-1,0:nymax-1,1:nuvzmax,cm_index)) 1871 call handle_nf90_err(ncret) 1372 1872 1373 1873 ncret = nf90_inq_varid(ncid, 'cloudsh', ncvarid) 1874 call handle_nf90_err(ncret) 1374 1875 ncret = nf90_get_var(ncid, ncvarid, cloudsh(0:nxmax-1,0:nymax-1,cm_index)) 1876 call handle_nf90_err(ncret) 1375 1877 1376 1878 … … 1410 1912 ! Get the varid and read the variable into the array 1411 1913 ncret = nf90_inq_varid(ncid, 'ps', ncvarid) 1914 call handle_nf90_err(ncret) 1412 1915 ncret = nf90_get_var(ncid, ncvarid, ps(0:nxmax-1,0:nymax-1,1,cm_index)) 1916 call handle_nf90_err(ncret) 1413 1917 1414 1918 ncret = nf90_inq_varid(ncid, 'sd', ncvarid) 1919 call handle_nf90_err(ncret) 1415 1920 ncret = nf90_get_var(ncid, ncvarid, sd(0:nxmax-1,0:nymax-1,1,cm_index)) 1921 call handle_nf90_err(ncret) 1416 1922 1417 1923 ncret = nf90_inq_varid(ncid, 'msl', ncvarid) 1924 call handle_nf90_err(ncret) 1418 1925 ncret = nf90_get_var(ncid, ncvarid, msl(0:nxmax-1,0:nymax-1,1,cm_index)) 1926 call handle_nf90_err(ncret) 1419 1927 1420 1928 ncret = nf90_inq_varid(ncid, 'tcc', ncvarid) 1929 call handle_nf90_err(ncret) 1421 1930 ncret = nf90_get_var(ncid, ncvarid, tcc(0:nxmax-1,0:nymax-1,1,cm_index)) 1931 call handle_nf90_err(ncret) 1422 1932 1423 1933 ncret = nf90_inq_varid(ncid, 'u10', ncvarid) 1934 call handle_nf90_err(ncret) 1424 1935 ncret = nf90_get_var(ncid, ncvarid, u10(0:nxmax-1,0:nymax-1,1,cm_index)) 1936 call handle_nf90_err(ncret) 1425 1937 1426 1938 ncret = nf90_inq_varid(ncid, 'v10', ncvarid) 1939 call handle_nf90_err(ncret) 1427 1940 ncret = nf90_get_var(ncid, ncvarid, v10(0:nxmax-1,0:nymax-1,1,cm_index)) 1941 call handle_nf90_err(ncret) 1428 1942 1429 1943 ncret = nf90_inq_varid(ncid, 'tt2', ncvarid) 1944 call handle_nf90_err(ncret) 1430 1945 ncret = nf90_get_var(ncid, ncvarid, tt2(0:nxmax-1,0:nymax-1,1,cm_index)) 1946 call handle_nf90_err(ncret) 1431 1947 1432 1948 ncret = nf90_inq_varid(ncid, 'td2', ncvarid) 1949 call handle_nf90_err(ncret) 1433 1950 ncret = nf90_get_var(ncid, ncvarid, td2(0:nxmax-1,0:nymax-1,1,cm_index)) 1951 call handle_nf90_err(ncret) 1434 1952 1435 1953 ncret = nf90_inq_varid(ncid, 'lsprec', ncvarid) 1954 call handle_nf90_err(ncret) 1436 1955 ncret = nf90_get_var(ncid, ncvarid, lsprec(0:nxmax-1,0:nymax-1,1,cm_index)) 1956 call handle_nf90_err(ncret) 1437 1957 1438 1958 ncret = nf90_inq_varid(ncid, 'convprec', ncvarid) 1959 call handle_nf90_err(ncret) 1439 1960 ncret = nf90_get_var(ncid, ncvarid, convprec(0:nxmax-1,0:nymax-1,1,cm_index)) 1961 call handle_nf90_err(ncret) 1440 1962 1441 1963 ncret = nf90_inq_varid(ncid, 'sshf', ncvarid) 1964 call handle_nf90_err(ncret) 1442 1965 ncret = nf90_get_var(ncid, ncvarid, sshf(0:nxmax-1,0:nymax-1,1,cm_index)) 1966 call handle_nf90_err(ncret) 1443 1967 1444 1968 ncret = nf90_inq_varid(ncid, 'ssr', ncvarid) 1969 call handle_nf90_err(ncret) 1445 1970 ncret = nf90_get_var(ncid, ncvarid, ssr(0:nxmax-1,0:nymax-1,1,cm_index)) 1971 call handle_nf90_err(ncret) 1446 1972 1447 1973 ncret = nf90_inq_varid(ncid, 'surfstr', ncvarid) 1974 call handle_nf90_err(ncret) 1448 1975 ncret = nf90_get_var(ncid, ncvarid, surfstr(0:nxmax-1,0:nymax-1,1,cm_index)) 1976 call handle_nf90_err(ncret) 1449 1977 1450 1978 ncret = nf90_inq_varid(ncid, 'ustar', ncvarid) 1979 call handle_nf90_err(ncret) 1451 1980 ncret = nf90_get_var(ncid, ncvarid, ustar(0:nxmax-1,0:nymax-1,1,cm_index)) 1981 call handle_nf90_err(ncret) 1452 1982 1453 1983 ncret = nf90_inq_varid(ncid, 'wstar', ncvarid) 1984 call handle_nf90_err(ncret) 1454 1985 ncret = nf90_get_var(ncid, ncvarid, wstar(0:nxmax-1,0:nymax-1,1,cm_index)) 1986 call handle_nf90_err(ncret) 1455 1987 1456 1988 ncret = nf90_inq_varid(ncid, 'hmix', ncvarid) 1989 call handle_nf90_err(ncret) 1457 1990 ncret = nf90_get_var(ncid, ncvarid, hmix(0:nxmax-1,0:nymax-1,1,cm_index)) 1991 call handle_nf90_err(ncret) 1458 1992 1459 1993 ncret = nf90_inq_varid(ncid, 'tropopause', ncvarid) 1994 call handle_nf90_err(ncret) 1460 1995 ncret = nf90_get_var(ncid, ncvarid, tropopause(0:nxmax-1,0:nymax-1,1,cm_index)) 1996 call handle_nf90_err(ncret) 1461 1997 1462 1998 ncret = nf90_inq_varid(ncid, 'oli', ncvarid) 1999 call handle_nf90_err(ncret) 1463 2000 ncret = nf90_get_var(ncid, ncvarid, oli(0:nxmax-1,0:nymax-1,1,cm_index)) 2001 call handle_nf90_err(ncret) 1464 2002 1465 2003 ncret = nf90_inq_varid(ncid, 'diffk', ncvarid) 2004 call handle_nf90_err(ncret) 1466 2005 ncret = nf90_get_var(ncid, ncvarid, diffk(0:nxmax-1,0:nymax-1,1,cm_index)) 2006 call handle_nf90_err(ncret) 1467 2007 1468 2008 … … 1477 2017 1478 2018 ncret = nf90_inq_varid(ncid, 'vdep', ncvarid) 2019 call handle_nf90_err(ncret) 1479 2020 ncret = nf90_get_var(ncid, ncvarid, vdep(0:nxmax-1,0:nymax-1,1:maxspec, cm_index)) 2021 call handle_nf90_err(ncret) 1480 2022 1481 2023 … … 1494 2036 1495 2037 ncret = nf90_inq_varid(ncid, 'z0', ncvarid) 2038 call handle_nf90_err(ncret) 1496 2039 ncret = nf90_get_var(ncid, ncvarid, z0(1:numclass)) 2040 call handle_nf90_err(ncret) 1497 2041 1498 2042 ncret = nf90_inq_varid(ncid, 'akm', ncvarid) 2043 call handle_nf90_err(ncret) 1499 2044 ncret = nf90_get_var(ncid, ncvarid, akm(1:nwzmax)) 2045 call handle_nf90_err(ncret) 1500 2046 1501 2047 ncret = nf90_inq_varid(ncid, 'bkm', ncvarid) 2048 call handle_nf90_err(ncret) 1502 2049 ncret = nf90_get_var(ncid, ncvarid, bkm(1:nwzmax)) 2050 call handle_nf90_err(ncret) 1503 2051 1504 2052 ncret = nf90_inq_varid(ncid, 'akz', ncvarid) 2053 call handle_nf90_err(ncret) 1505 2054 ncret = nf90_get_var(ncid, ncvarid, akz(1:nuvzmax)) 2055 call handle_nf90_err(ncret) 1506 2056 1507 2057 ncret = nf90_inq_varid(ncid, 'bkz', ncvarid) 2058 call handle_nf90_err(ncret) 1508 2059 ncret = nf90_get_var(ncid, ncvarid, bkz(1:nuvzmax)) 2060 call handle_nf90_err(ncret) 1509 2061 1510 2062 ncret = nf90_inq_varid(ncid, 'aknew', ncvarid) 2063 call handle_nf90_err(ncret) 1511 2064 ncret = nf90_get_var(ncid, ncvarid, aknew(1:nzmax)) 2065 call handle_nf90_err(ncret) 1512 2066 1513 2067 ncret = nf90_inq_varid(ncid, 'bknew', ncvarid) 2068 call handle_nf90_err(ncret) 1514 2069 ncret = nf90_get_var(ncid, ncvarid, bknew(1:nzmax)) 2070 call handle_nf90_err(ncret) 1515 2071 1516 2072 … … 1527 2083 ! sure we are working with consistent arrays 1528 2084 ncret = nf90_inq_dimid(ncid, 'maxnests', maxnests_dimid) 2085 call handle_nf90_err(ncret) 1529 2086 ncret = nf90_inquire_dimension(ncid, maxnests_dimid, maxnests_dimname, & 1530 2087 & temp_maxnests) 2088 call handle_nf90_err(ncret) 1531 2089 PRINT *, 'temp_maxnests: ', temp_maxnests 1532 2090 1533 2091 ncret = nf90_inq_dimid(ncid, 'nxmaxn', nxmaxn_dimid) 2092 call handle_nf90_err(ncret) 1534 2093 ncret = nf90_inquire_dimension(ncid, nxmaxn_dimid, nxmaxn_dimname, & 1535 2094 & temp_nxmaxn) 2095 call handle_nf90_err(ncret) 1536 2096 PRINT *, 'temp_nxmaxn: ', temp_nxmaxn 1537 2097 1538 2098 ncret = nf90_inq_dimid(ncid, 'nymaxn', nymaxn_dimid) 2099 call handle_nf90_err(ncret) 1539 2100 ncret = nf90_inquire_dimension(ncid, nymaxn_dimid, nymaxn_dimname, & 1540 2101 & temp_nymaxn) 2102 call handle_nf90_err(ncret) 1541 2103 PRINT *, 'temp_nymaxn: ', temp_nymaxn 1542 2104 … … 1571 2133 1572 2134 ncret = nf90_inq_varid(ncid, 'nxn', ncvarid) 2135 call handle_nf90_err(ncret) 1573 2136 ncret = nf90_get_var(ncid, ncvarid, nxn(1:maxnests)) 2137 call handle_nf90_err(ncret) 1574 2138 1575 2139 ncret = nf90_inq_varid(ncid, 'nyn', ncvarid) 2140 call handle_nf90_err(ncret) 1576 2141 ncret = nf90_get_var(ncid, ncvarid, nyn(1:maxnests)) 2142 call handle_nf90_err(ncret) 1577 2143 1578 2144 ncret = nf90_inq_varid(ncid, 'dxn', ncvarid) 2145 call handle_nf90_err(ncret) 1579 2146 ncret = nf90_get_var(ncid, ncvarid, dxn(1:maxnests)) 2147 call handle_nf90_err(ncret) 1580 2148 1581 2149 ncret = nf90_inq_varid(ncid, 'dyn', ncvarid) 2150 call handle_nf90_err(ncret) 1582 2151 ncret = nf90_get_var(ncid, ncvarid, dyn(1:maxnests)) 2152 call handle_nf90_err(ncret) 1583 2153 1584 2154 ncret = nf90_inq_varid(ncid, 'xlon0n', ncvarid) 2155 call handle_nf90_err(ncret) 1585 2156 ncret = nf90_get_var(ncid, ncvarid, xlon0n(1:maxnests)) 2157 call handle_nf90_err(ncret) 1586 2158 1587 2159 ncret = nf90_inq_varid(ncid, 'ylat0n', ncvarid) 2160 call handle_nf90_err(ncret) 1588 2161 ncret = nf90_get_var(ncid, ncvarid, ylat0n(1:maxnests)) 2162 call handle_nf90_err(ncret) 1589 2163 1590 2164 … … 1594 2168 1595 2169 ncret = nf90_inq_varid(ncid, 'oron', ncvarid) 2170 call handle_nf90_err(ncret) 1596 2171 ncret = nf90_get_var(ncid, ncvarid, oron(0:nxmaxn-1,0:nymaxn-1,1:maxnests)) 2172 call handle_nf90_err(ncret) 1597 2173 1598 2174 ncret = nf90_inq_varid(ncid, 'excessoron', ncvarid) 2175 call handle_nf90_err(ncret) 1599 2176 ncret = nf90_get_var(ncid, ncvarid, excessoron(0:nxmaxn-1,0:nymaxn-1,1:maxnests)) 2177 call handle_nf90_err(ncret) 1600 2178 1601 2179 ncret = nf90_inq_varid(ncid, 'lsmn', ncvarid) 2180 call handle_nf90_err(ncret) 1602 2181 ncret = nf90_get_var(ncid, ncvarid, lsmn(0:nxmaxn-1,0:nymaxn-1,1:maxnests)) 2182 call handle_nf90_err(ncret) 1603 2183 1604 2184 ncret = nf90_inq_varid(ncid, 'xlandusen', ncvarid) 2185 call handle_nf90_err(ncret) 1605 2186 ncret = nf90_get_var(ncid, ncvarid, xlandusen(0:nxmaxn-1,0:nymaxn-1,1:numclass,1:maxnests)) 1606 1607 1608 PRINT *, 'SUM(xlandusen): ', & 1609 & SUM(xlandusen)2187 call handle_nf90_err(ncret) 2188 2189 2190 PRINT *, 'SUM(oron): ', SUM(oron) 1610 2191 1611 2192 … … 1625 2206 READ(iounit) tthn(:,:,:,cm_index,:) 1626 2207 READ(iounit) qvhn(:,:,:,cm_index,:) 2208 2209 2210 ncret = nf90_inq_varid(ncid, 'uun', ncvarid) 2211 call handle_nf90_err(ncret) 2212 ncret = nf90_get_var(ncid, ncvarid, uun(0:nxmaxn-1,0:nymaxn-1,1:nzmax,cm_index,1:maxnests)) 2213 call handle_nf90_err(ncret) 2214 2215 ncret = nf90_inq_varid(ncid, 'vvn', ncvarid) 2216 call handle_nf90_err(ncret) 2217 ncret = nf90_get_var(ncid, ncvarid, vvn(0:nxmaxn-1,0:nymaxn-1,1:nzmax,cm_index,1:maxnests)) 2218 call handle_nf90_err(ncret) 2219 2220 ncret = nf90_inq_varid(ncid, 'wwn', ncvarid) 2221 call handle_nf90_err(ncret) 2222 ncret = nf90_get_var(ncid, ncvarid, wwn(0:nxmaxn-1,0:nymaxn-1,1:nzmax,cm_index,1:maxnests)) 2223 call handle_nf90_err(ncret) 2224 2225 ncret = nf90_inq_varid(ncid, 'ttn', ncvarid) 2226 call handle_nf90_err(ncret) 2227 ncret = nf90_get_var(ncid, ncvarid, ttn(0:nxmaxn-1,0:nymaxn-1,1:nzmax,cm_index,1:maxnests)) 2228 call handle_nf90_err(ncret) 2229 2230 ncret = nf90_inq_varid(ncid, 'qvn', ncvarid) 2231 call handle_nf90_err(ncret) 2232 ncret = nf90_get_var(ncid, ncvarid, qvn(0:nxmaxn-1,0:nymaxn-1,1:nzmax,cm_index,1:maxnests)) 2233 call handle_nf90_err(ncret) 2234 2235 ncret = nf90_inq_varid(ncid, 'pvn', ncvarid) 2236 call handle_nf90_err(ncret) 2237 ncret = nf90_get_var(ncid, ncvarid, pvn(0:nxmaxn-1,0:nymaxn-1,1:nzmax,cm_index,1:maxnests)) 2238 call handle_nf90_err(ncret) 2239 2240 ncret = nf90_inq_varid(ncid, 'rhon', ncvarid) 2241 call handle_nf90_err(ncret) 2242 ncret = nf90_get_var(ncid, ncvarid, rhon(0:nxmaxn-1,0:nymaxn-1,1:nzmax,cm_index,1:maxnests)) 2243 call handle_nf90_err(ncret) 2244 2245 ncret = nf90_inq_varid(ncid, 'drhodzn', ncvarid) 2246 call handle_nf90_err(ncret) 2247 ncret = nf90_get_var(ncid, ncvarid, drhodzn(0:nxmaxn-1,0:nymaxn-1,1:nzmax,cm_index,1:maxnests)) 2248 call handle_nf90_err(ncret) 2249 2250 ncret = nf90_inq_varid(ncid, 'tthn', ncvarid) 2251 call handle_nf90_err(ncret) 2252 ncret = nf90_get_var(ncid, ncvarid, tthn(0:nxmaxn-1,0:nymaxn-1,1:nuvzmax,cm_index,1:maxnests)) 2253 call handle_nf90_err(ncret) 2254 2255 ncret = nf90_inq_varid(ncid, 'qvhn', ncvarid) 2256 call handle_nf90_err(ncret) 2257 ncret = nf90_get_var(ncid, ncvarid, qvhn(0:nxmaxn-1,0:nymaxn-1,1:nuvzmax,cm_index,1:maxnests)) 2258 call handle_nf90_err(ncret) 2259 2260 ncret = nf90_inq_varid(ncid, 'cloudsn', ncvarid) 2261 call handle_nf90_err(ncret) 2262 ncret = nf90_get_var(ncid, ncvarid, cloudsn(0:nxmaxn-1,0:nymaxn-1,0:nzmax,cm_index,1:maxnests)) 2263 call handle_nf90_err(ncret) 2264 2265 ncret = nf90_inq_varid(ncid, 'cloudsnh', ncvarid) 2266 call handle_nf90_err(ncret) 2267 ncret = nf90_get_var(ncid, ncvarid, cloudsnh(0:nxmaxn-1,0:nymaxn-1,cm_index,1:maxnests)) 2268 call handle_nf90_err(ncret) 2269 2270 2271 2272 2273 PRINT *, 'SUM(uun): ', SUM(uun(:,:,:,cm_index,:)) 2274 PRINT *, 'SUM(qvhn): ', SUM(qvhn(:,:,:,cm_index,:)) 2275 PRINT *, 'SUM(cloudsn): ', SUM(cloudsn(:,:,:,cm_index,:)) 2276 2277 2278 1627 2279 1628 2280 ! 2d nested fields … … 1648 2300 READ(iounit) vdepn(:,:,:,cm_index,:) 1649 2301 2302 ncret = nf90_inq_varid(ncid, 'psn', ncvarid) 2303 call handle_nf90_err(ncret) 2304 ncret = nf90_get_var(ncid, ncvarid, psn(0:nxmaxn-1,0:nymaxn-1,1,cm_index,1:maxnests)) 2305 call handle_nf90_err(ncret) 2306 2307 2308 2309 PRINT *, 'SUM(psn): ', SUM(psn(:,:,:,cm_index,:)) 2310 2311 2312 1650 2313 ! Auxiliary variables for nests 1651 2314 READ(iounit) xresoln(:) … … 1733 2396 END SUBROUTINE fpmetbinary_filetext 1734 2397 2398 subroutine handle_nf90_err(status) 2399 2400 ! Custom routine for checking NF90 error status 2401 ! and aborting if necessary 2402 use netcdf 2403 implicit none 2404 integer, intent (in) :: status 2405 2406 if (status /= nf90_noerr) then 2407 print *, trim(nf90_strerror(status)) 2408 stop "Stopped..." 2409 endif 2410 end subroutine handle_nf90_err 2411 2412 2413 1735 2414 1736 2415 END MODULE fpmetbinary_mod
Note: See TracChangeset
for help on using the changeset viewer.