Changeset 7571 for branches/UKMO/dev_r5518_MEDUSA_optim_MG_MS_RH/NEMOGCM/NEMO/TOP_SRC/MEDUSA/trcbio_medusa.F90
- Timestamp:
- 2017-01-17T11:33:49+01:00 (7 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/UKMO/dev_r5518_MEDUSA_optim_MG_MS_RH/NEMOGCM/NEMO/TOP_SRC/MEDUSA/trcbio_medusa.F90
r7497 r7571 359 359 !! Jpalm -- 11-10-2015 -- adapt diag to iom_use 360 360 !! 2D var for diagnostics. 361 REAL(wp), POINTER, DIMENSION(:,: ) :: fprn2d, fdpn2d, fprd2d, fdpd2d, fprds2d, fsdiss2d, fgmipn2d362 REAL(wp), POINTER, DIMENSION(:,: ) :: fgmid2d, fdzmi2d, fgmepn2d, fgmepd2d, fgmezmi2d, fgmed2d363 REAL(wp), POINTER, DIMENSION(:,: ) :: fdzme2d, fslown2d, fdd2d, ffetop2d, ffebot2d, ffescav2d364 REAL(wp), POINTER, DIMENSION(:,: ) :: fjln2d, fnln2d, ffln2d, fjld2d, fnld2d, ffld2d, fsld2d2365 REAL(wp), POINTER, DIMENSION(:,: ) :: fsld2d, fregen2d, fregensi2d, ftempn2d, ftempsi2d, ftempfe2d366 REAL(wp), POINTER, DIMENSION(:,: ) :: ftempc2d, ftempca2d, freminn2d, freminsi2d, freminfe2d367 REAL(wp), POINTER, DIMENSION(:,: ) :: freminc2d, freminca2d368 REAL(wp), POINTER, DIMENSION(:,: ) :: zw2d361 REAL(wp), ALLOCATABLE, DIMENSION(:,: ) :: fprn2d, fdpn2d, fprd2d, fdpd2d, fprds2d, fsdiss2d, fgmipn2d 362 REAL(wp), ALLOCATABLE, DIMENSION(:,: ) :: fgmid2d, fdzmi2d, fgmepn2d, fgmepd2d, fgmezmi2d, fgmed2d 363 REAL(wp), ALLOCATABLE, DIMENSION(:,: ) :: fdzme2d, fslown2d, fdd2d, ffetop2d, ffebot2d, ffescav2d 364 REAL(wp), ALLOCATABLE, DIMENSION(:,: ) :: fjln2d, fnln2d, ffln2d, fjld2d, fnld2d, ffld2d, fsld2d2 365 REAL(wp), ALLOCATABLE, DIMENSION(:,: ) :: fsld2d, fregen2d, fregensi2d, ftempn2d, ftempsi2d, ftempfe2d 366 REAL(wp), ALLOCATABLE, DIMENSION(:,: ) :: ftempc2d, ftempca2d, freminn2d, freminsi2d, freminfe2d 367 REAL(wp), ALLOCATABLE, DIMENSION(:,: ) :: freminc2d, freminca2d 368 REAL(wp), ALLOCATABLE, DIMENSION(:,: ) :: zw2d 369 369 # if defined key_roam 370 REAL(wp), POINTER, DIMENSION(:,: ) :: ffastca2d, rivn2d, rivsi2d, rivc2d, rivalk2d, fslowc2d371 REAL(wp), POINTER, DIMENSION(:,: ) :: fdpn22d, fdpd22d, fdzmi22d, fdzme22d, zimesn2d, zimesd2d372 REAL(wp), POINTER, DIMENSION(:,: ) :: zimesc2d, zimesdc2d, ziexcr2d, ziresp2d, zigrow2d, zemesn2d373 REAL(wp), POINTER, DIMENSION(:,: ) :: zemesd2d, zemesc2d, zemesdc2d, zeexcr2d, zeresp2d, zegrow2d374 REAL(wp), POINTER, DIMENSION(:,: ) :: mdetc2d, gmidc2d, gmedc2d, f_pco2a2d, f_pco2w2d, f_co2flux2d375 REAL(wp), POINTER, DIMENSION(:,: ) :: f_TDIC2d, f_TALK2d, f_kw6602d, f_pp02d, f_o2flux2d, f_o2sat2d376 REAL(wp), POINTER, DIMENSION(:,: ) :: dms_andr2d, dms_simo2d, dms_aran2d, dms_hall2d, dms_surf2d377 REAL(wp), POINTER, DIMENSION(:,: ) :: iben_n2d, iben_fe2d, iben_c2d, iben_si2d, iben_ca2d, oben_n2d378 REAL(wp), POINTER, DIMENSION(:,: ) :: oben_fe2d, oben_c2d, oben_si2d, oben_ca2d, sfr_ocal2d379 REAL(wp), POINTER, DIMENSION(:,: ) :: sfr_oarg2d, lyso_ca2d370 REAL(wp), ALLOCATABLE, DIMENSION(:,: ) :: ffastca2d, rivn2d, rivsi2d, rivc2d, rivalk2d, fslowc2d 371 REAL(wp), ALLOCATABLE, DIMENSION(:,: ) :: fdpn22d, fdpd22d, fdzmi22d, fdzme22d, zimesn2d, zimesd2d 372 REAL(wp), ALLOCATABLE, DIMENSION(:,: ) :: zimesc2d, zimesdc2d, ziexcr2d, ziresp2d, zigrow2d, zemesn2d 373 REAL(wp), ALLOCATABLE, DIMENSION(:,: ) :: zemesd2d, zemesc2d, zemesdc2d, zeexcr2d, zeresp2d, zegrow2d 374 REAL(wp), ALLOCATABLE, DIMENSION(:,: ) :: mdetc2d, gmidc2d, gmedc2d, f_pco2a2d, f_pco2w2d, f_co2flux2d 375 REAL(wp), ALLOCATABLE, DIMENSION(:,: ) :: f_TDIC2d, f_TALK2d, f_kw6602d, f_pp02d, f_o2flux2d, f_o2sat2d 376 REAL(wp), ALLOCATABLE, DIMENSION(:,: ) :: dms_andr2d, dms_simo2d, dms_aran2d, dms_hall2d, dms_surf2d 377 REAL(wp), ALLOCATABLE, DIMENSION(:,: ) :: iben_n2d, iben_fe2d, iben_c2d, iben_si2d, iben_ca2d, oben_n2d 378 REAL(wp), ALLOCATABLE, DIMENSION(:,: ) :: oben_fe2d, oben_c2d, oben_si2d, oben_ca2d, sfr_ocal2d 379 REAL(wp), ALLOCATABLE, DIMENSION(:,: ) :: sfr_oarg2d, lyso_ca2d 380 380 !! AXY (23/11/16): extra MOCSY diagnostics 381 REAL(wp), POINTER, DIMENSION(:,: ) :: f_xco2a_2d, f_fco2w_2d, f_fco2a_2d382 REAL(wp), POINTER, DIMENSION(:,: ) :: f_ocnrhosw_2d, f_ocnschco2_2d, f_ocnkwco2_2d383 REAL(wp), POINTER, DIMENSION(:,: ) :: f_ocnk0_2d, f_co2starair_2d, f_ocndpco2_2d381 REAL(wp), ALLOCATABLE, DIMENSION(:,: ) :: f_xco2a_2d, f_fco2w_2d, f_fco2a_2d 382 REAL(wp), ALLOCATABLE, DIMENSION(:,: ) :: f_ocnrhosw_2d, f_ocnschco2_2d, f_ocnkwco2_2d 383 REAL(wp), ALLOCATABLE, DIMENSION(:,: ) :: f_ocnk0_2d, f_co2starair_2d, f_ocndpco2_2d 384 384 # endif 385 385 !! 386 386 !! 3D var for diagnostics. 387 REAL(wp), POINTER, DIMENSION(:,:,:) :: tpp3d, detflux3d, remin3dn387 REAL(wp), ALLOCATABLE, DIMENSION(:,:,:) :: tpp3d, detflux3d, remin3dn 388 388 !! 389 389 # if defined key_roam 390 390 !! AXY (04/11/16) 391 391 !! 2D var for new CMIP6 diagnostics (behind a key_roam ifdef for simplicity) 392 REAL(wp), POINTER, DIMENSION(:,: ) :: fgco2, intdissic, intdissin, intdissisi, inttalk, o2min, zo2min393 REAL(wp), POINTER, DIMENSION(:,: ) :: fbddtalk, fbddtdic, fbddtdife, fbddtdin, fbddtdisi392 REAL(wp), ALLOCATABLE, DIMENSION(:,: ) :: fgco2, intdissic, intdissin, intdissisi, inttalk, o2min, zo2min 393 REAL(wp), ALLOCATABLE, DIMENSION(:,: ) :: fbddtalk, fbddtdic, fbddtdife, fbddtdin, fbddtdisi 394 394 !! 395 395 !! 3D var for new CMIP6 diagnostics 396 REAL(wp), POINTER, DIMENSION(:,:,:) :: tppd3397 REAL(wp), POINTER, DIMENSION(:,:,:) :: bddtalk3, bddtdic3, bddtdife3, bddtdin3, bddtdisi3398 REAL(wp), POINTER, DIMENSION(:,:,:) :: fd_nit3, fd_sil3, fd_car3, fd_cal3399 REAL(wp), POINTER, DIMENSION(:,:,:) :: co33, co3satarag3, co3satcalc3, dcalc3400 REAL(wp), POINTER, DIMENSION(:,:,:) :: expc3, expn3401 REAL(wp), POINTER, DIMENSION(:,:,:) :: fediss3, fescav3402 REAL(wp), POINTER, DIMENSION(:,:,:) :: migrazp3, migrazd3, megrazp3, megrazd3, megrazz3403 REAL(wp), POINTER, DIMENSION(:,:,:) :: o2sat3, pbsi3, pcal3, remoc3404 REAL(wp), POINTER, DIMENSION(:,:,:) :: pnlimj3, pnlimn3, pnlimfe3, pdlimj3, pdlimn3, pdlimfe3, pdlimsi3396 REAL(wp), ALLOCATABLE, DIMENSION(:,:,:) :: tppd3 397 REAL(wp), ALLOCATABLE, DIMENSION(:,:,:) :: bddtalk3, bddtdic3, bddtdife3, bddtdin3, bddtdisi3 398 REAL(wp), ALLOCATABLE, DIMENSION(:,:,:) :: fd_nit3, fd_sil3, fd_car3, fd_cal3 399 REAL(wp), ALLOCATABLE, DIMENSION(:,:,:) :: co33, co3satarag3, co3satcalc3, dcalc3 400 REAL(wp), ALLOCATABLE, DIMENSION(:,:,:) :: expc3, expn3 401 REAL(wp), ALLOCATABLE, DIMENSION(:,:,:) :: fediss3, fescav3 402 REAL(wp), ALLOCATABLE, DIMENSION(:,:,:) :: migrazp3, migrazd3, megrazp3, megrazd3, megrazz3 403 REAL(wp), ALLOCATABLE, DIMENSION(:,:,:) :: o2sat3, pbsi3, pcal3, remoc3 404 REAL(wp), ALLOCATABLE, DIMENSION(:,:,:) :: pnlimj3, pnlimn3, pnlimfe3, pdlimj3, pdlimn3, pdlimfe3, pdlimsi3 405 405 # endif 406 406 !!--------------------------------------------------------------------- … … 579 579 if ( kt == nittrc000 ) CALL trc_nam_iom_medusa !! initialise iom_use test 580 580 !! 581 CALL wrk_alloc( jpi, jpj, zw2d)581 ALLOCATE( zw2d(jpi, jpj) ) 582 582 zw2d(:,:) = 0.0 !! 583 583 IF ( med_diag%PRN%dgsave ) THEN 584 CALL wrk_alloc( jpi, jpj, fprn2d)584 ALLOCATE( fprn2d(jpi, jpj)) 585 585 fprn2d(:,:) = 0.0 !! 586 586 ENDIF 587 587 IF ( med_diag%MPN%dgsave ) THEN 588 CALL wrk_alloc( jpi, jpj, fdpn2d)588 ALLOCATE( fdpn2d(jpi, jpj)) 589 589 fdpn2d(:,:) = 0.0 !! 590 590 ENDIF 591 591 IF ( med_diag%PRD%dgsave ) THEN 592 CALL wrk_alloc( jpi, jpj, fprd2d)592 ALLOCATE( fprd2d(jpi, jpj)) 593 593 fprd2d(:,:) = 0.0 !! 594 594 ENDIF 595 595 IF( med_diag%MPD%dgsave ) THEN 596 CALL wrk_alloc( jpi, jpj, fdpd2d)596 ALLOCATE( fdpd2d(jpi, jpj)) 597 597 fdpd2d(:,:) = 0.0 !! 598 598 ENDIF 599 599 IF( med_diag%OPAL%dgsave ) THEN 600 CALL wrk_alloc( jpi, jpj, fprds2d)600 ALLOCATE( fprds2d(jpi, jpj)) 601 601 fprds2d(:,:) = 0.0 !! 602 602 ENDIF 603 603 IF( med_diag%OPALDISS%dgsave ) THEN 604 CALL wrk_alloc( jpi, jpj, fsdiss2d)604 ALLOCATE( fsdiss2d(jpi, jpj)) 605 605 fsdiss2d(:,:) = 0.0 !! 606 606 ENDIF 607 607 IF( med_diag%GMIPn%dgsave ) THEN 608 CALL wrk_alloc( jpi, jpj, fgmipn2d)608 ALLOCATE( fgmipn2d(jpi, jpj)) 609 609 fgmipn2d(:,:) = 0.0 !! 610 610 ENDIF 611 611 IF( med_diag%GMID%dgsave ) THEN 612 CALL wrk_alloc( jpi, jpj, fgmid2d)612 ALLOCATE( fgmid2d(jpi, jpj)) 613 613 fgmid2d(:,:) = 0.0 !! 614 614 ENDIF 615 615 IF( med_diag%MZMI%dgsave ) THEN 616 CALL wrk_alloc( jpi, jpj, fdzmi2d)616 ALLOCATE( fdzmi2d(jpi, jpj)) 617 617 fdzmi2d(:,:) = 0.0 !! 618 618 ENDIF 619 619 IF( med_diag%GMEPN%dgsave ) THEN 620 CALL wrk_alloc( jpi, jpj, fgmepn2d)620 ALLOCATE( fgmepn2d(jpi, jpj)) 621 621 fgmepn2d(:,:) = 0.0 !! 622 622 ENDIF 623 623 IF( med_diag%GMEPD%dgsave ) THEN 624 CALL wrk_alloc( jpi, jpj, fgmepd2d)624 ALLOCATE( fgmepd2d(jpi, jpj)) 625 625 fgmepd2d(:,:) = 0.0 !! 626 626 ENDIF 627 627 IF( med_diag%GMEZMI%dgsave ) THEN 628 CALL wrk_alloc( jpi, jpj, fgmezmi2d)628 ALLOCATE( fgmezmi2d(jpi, jpj)) 629 629 fgmezmi2d(:,:) = 0.0 !! 630 630 ENDIF 631 631 IF( med_diag%GMED%dgsave ) THEN 632 CALL wrk_alloc( jpi, jpj, fgmed2d)632 ALLOCATE( fgmed2d(jpi, jpj)) 633 633 fgmed2d(:,:) = 0.0 !! 634 634 ENDIF 635 635 IF( med_diag%MZME%dgsave ) THEN 636 CALL wrk_alloc( jpi, jpj, fdzme2d)636 ALLOCATE( fdzme2d(jpi, jpj)) 637 637 fdzme2d(:,:) = 0.0 !! 638 638 ENDIF 639 639 IF( med_diag%DETN%dgsave ) THEN 640 CALL wrk_alloc( jpi, jpj, fslown2d)640 ALLOCATE( fslown2d(jpi, jpj)) 641 641 fslown2d(:,:) = 0.0 !! 642 642 ENDIF 643 643 IF( med_diag%MDET%dgsave ) THEN 644 CALL wrk_alloc( jpi, jpj, fdd2d)644 ALLOCATE( fdd2d(jpi, jpj)) 645 645 fdd2d(:,:) = 0.0 !! 646 646 ENDIF 647 647 IF( med_diag%AEOLIAN%dgsave ) THEN 648 CALL wrk_alloc( jpi, jpj, ffetop2d)648 ALLOCATE( ffetop2d(jpi, jpj)) 649 649 ffetop2d(:,:) = 0.0 !! 650 650 ENDIF 651 651 IF( med_diag%BENTHIC%dgsave ) THEN 652 CALL wrk_alloc( jpi, jpj, ffebot2d)652 ALLOCATE( ffebot2d(jpi, jpj) ) 653 653 ffebot2d(:,:) = 0.0 !! 654 654 ENDIF 655 655 IF( med_diag%SCAVENGE%dgsave ) THEN 656 CALL wrk_alloc( jpi, jpj, ffescav2d)656 ALLOCATE( ffescav2d(jpi, jpj)) 657 657 ffescav2d(:,:) = 0.0 !! 658 658 ENDIF 659 659 IF( med_diag%PN_JLIM%dgsave ) THEN 660 CALL wrk_alloc( jpi, jpj, fjln2d)660 ALLOCATE( fjln2d(jpi, jpj)) 661 661 fjln2d(:,:) = 0.0 !! 662 662 ENDIF 663 663 IF( med_diag%PN_NLIM%dgsave ) THEN 664 CALL wrk_alloc( jpi, jpj, fnln2d)664 ALLOCATE( fnln2d(jpi, jpj)) 665 665 fnln2d(:,:) = 0.0 !! 666 666 ENDIF 667 667 IF( med_diag%PN_FELIM%dgsave ) THEN 668 CALL wrk_alloc( jpi, jpj, ffln2d)668 ALLOCATE( ffln2d(jpi, jpj)) 669 669 ffln2d(:,:) = 0.0 !! 670 670 ENDIF 671 671 IF( med_diag%PD_JLIM%dgsave ) THEN 672 CALL wrk_alloc( jpi, jpj, fjld2d)672 ALLOCATE( fjld2d(jpi, jpj)) 673 673 fjld2d(:,:) = 0.0 !! 674 674 ENDIF 675 675 IF( med_diag%PD_NLIM%dgsave ) THEN 676 CALL wrk_alloc( jpi, jpj, fnld2d)676 ALLOCATE( fnld2d(jpi, jpj)) 677 677 fnld2d(:,:) = 0.0 !! 678 678 ENDIF 679 679 IF( med_diag%PD_FELIM%dgsave ) THEN 680 CALL wrk_alloc( jpi, jpj, ffld2d)680 ALLOCATE( ffld2d(jpi, jpj)) 681 681 ffld2d(:,:) = 0.0 !! 682 682 ENDIF 683 683 IF( med_diag%PD_SILIM%dgsave ) THEN 684 CALL wrk_alloc( jpi, jpj, fsld2d2)684 ALLOCATE( fsld2d2(jpi, jpj) ) 685 685 fsld2d2(:,:) = 0.0 !! 686 686 ENDIF 687 687 IF( med_diag%PDSILIM2%dgsave ) THEN 688 CALL wrk_alloc( jpi, jpj, fsld2d)688 ALLOCATE( fsld2d(jpi, jpj)) 689 689 fsld2d(:,:) = 0.0 !! 690 690 ENDIF … … 693 693 !! 694 694 IF( med_diag%TOTREG_N%dgsave ) THEN 695 CALL wrk_alloc( jpi, jpj, fregen2d)695 ALLOCATE( fregen2d(jpi, jpj)) 696 696 fregen2d(:,:) = 0.0 !! 697 697 ENDIF 698 698 IF( med_diag%TOTRG_SI%dgsave ) THEN 699 CALL wrk_alloc( jpi, jpj, fregensi2d)699 ALLOCATE( fregensi2d(jpi, jpj)) 700 700 fregensi2d(:,:) = 0.0 !! 701 701 ENDIF … … 704 704 !! 705 705 IF( med_diag%FASTN%dgsave ) THEN 706 CALL wrk_alloc( jpi, jpj, ftempn2d)706 ALLOCATE( ftempn2d(jpi, jpj)) 707 707 ftempn2d(:,:) = 0.0 !! 708 708 ENDIF 709 709 IF( med_diag%FASTSI%dgsave ) THEN 710 CALL wrk_alloc( jpi, jpj, ftempsi2d)710 ALLOCATE( ftempsi2d(jpi, jpj)) 711 711 ftempsi2d(:,:) = 0.0 !! 712 712 ENDIF 713 713 IF( med_diag%FASTFE%dgsave ) THEN 714 CALL wrk_alloc( jpi, jpj, ftempfe2d)714 ALLOCATE( ftempfe2d(jpi, jpj) ) 715 715 ftempfe2d(:,:) = 0.0 !! 716 716 ENDIF 717 717 IF( med_diag%FASTC%dgsave ) THEN 718 CALL wrk_alloc( jpi, jpj, ftempc2d)718 ALLOCATE( ftempc2d(jpi, jpj) ) 719 719 ftempc2d(:,:) = 0.0 !! 720 720 ENDIF 721 721 IF( med_diag%FASTCA%dgsave ) THEN 722 CALL wrk_alloc( jpi, jpj, ftempca2d)722 ALLOCATE( ftempca2d(jpi, jpj)) 723 723 ftempca2d(:,:) = 0.0 !! 724 724 ENDIF … … 727 727 !! 728 728 IF( med_diag%REMINN%dgsave ) THEN 729 CALL wrk_alloc( jpi, jpj, freminn2d)729 ALLOCATE( freminn2d(jpi, jpj) ) 730 730 freminn2d(:,:) = 0.0 !! 731 731 ENDIF 732 732 IF( med_diag%REMINSI%dgsave ) THEN 733 CALL wrk_alloc( jpi, jpj, freminsi2d)733 ALLOCATE( freminsi2d(jpi, jpj) ) 734 734 freminsi2d(:,:) = 0.0 !! 735 735 ENDIF 736 736 IF( med_diag%REMINFE%dgsave ) THEN 737 CALL wrk_alloc( jpi, jpj, freminfe2d)737 ALLOCATE( freminfe2d(jpi, jpj) ) 738 738 freminfe2d(:,:) = 0.0 !! 739 739 ENDIF 740 740 IF( med_diag%REMINC%dgsave ) THEN 741 CALL wrk_alloc( jpi, jpj, freminc2d)741 ALLOCATE( freminc2d(jpi, jpj)) 742 742 freminc2d(:,:) = 0.0 !! 743 743 ENDIF 744 744 IF( med_diag%REMINCA%dgsave ) THEN 745 CALL wrk_alloc( jpi, jpj, freminca2d)745 ALLOCATE( freminca2d(jpi, jpj)) 746 746 freminca2d(:,:) = 0.0 !! 747 747 ENDIF … … 751 751 !! 752 752 IF( med_diag%RR_0100%dgsave ) THEN 753 CALL wrk_alloc( jpi, jpj, ffastca2d)753 ALLOCATE( ffastca2d(jpi, jpj) ) 754 754 ffastca2d(:,:) = 0.0 !! 755 755 ENDIF 756 756 757 757 IF( med_diag%ATM_PCO2%dgsave ) THEN 758 CALL wrk_alloc( jpi, jpj, f_pco2a2d)758 ALLOCATE( f_pco2a2d(jpi, jpj) ) 759 759 f_pco2a2d(:,:) = 0.0 !! 760 760 ENDIF … … 763 763 !! 764 764 IF( med_diag%OCN_PCO2%dgsave ) THEN 765 CALL wrk_alloc( jpi, jpj, f_pco2w2d)765 ALLOCATE( f_pco2w2d(jpi, jpj) ) 766 766 f_pco2w2d(:,:) = 0.0 !! 767 767 ENDIF … … 770 770 !! 771 771 IF( med_diag%CO2FLUX%dgsave ) THEN 772 CALL wrk_alloc( jpi, jpj, f_co2flux2d)772 ALLOCATE( f_co2flux2d(jpi, jpj)) 773 773 f_co2flux2d(:,:) = 0.0 !! 774 774 ENDIF … … 777 777 !! 778 778 IF( med_diag%TCO2%dgsave ) THEN 779 CALL wrk_alloc( jpi, jpj, f_TDIC2d)779 ALLOCATE( f_TDIC2d(jpi, jpj)) 780 780 f_TDIC2d(:,:) = 0.0 !! 781 781 ENDIF 782 782 IF( med_diag%TALK%dgsave ) THEN 783 CALL wrk_alloc( jpi, jpj, f_TALK2d)783 ALLOCATE( f_TALK2d(jpi, jpj) ) 784 784 f_TALK2d(:,:) = 0.0 !! 785 785 ENDIF 786 786 IF( med_diag%KW660%dgsave ) THEN 787 CALL wrk_alloc( jpi, jpj, f_kw6602d)787 ALLOCATE( f_kw6602d(jpi, jpj) ) 788 788 f_kw6602d(:,:) = 0.0 !! 789 789 ENDIF 790 790 IF( med_diag%ATM_PP0%dgsave ) THEN 791 CALL wrk_alloc( jpi, jpj, f_pp02d)791 ALLOCATE( f_pp02d(jpi, jpj) ) 792 792 f_pp02d(:,:) = 0.0 !! 793 793 ENDIF 794 794 IF( med_diag%O2FLUX%dgsave ) THEN 795 CALL wrk_alloc( jpi, jpj, f_o2flux2d)795 ALLOCATE( f_o2flux2d(jpi, jpj)) 796 796 f_o2flux2d(:,:) = 0.0 !! 797 797 ENDIF 798 798 IF( med_diag%O2SAT%dgsave ) THEN 799 CALL wrk_alloc( jpi, jpj, f_o2sat2d)799 ALLOCATE( f_o2sat2d(jpi, jpj) ) 800 800 f_o2sat2d(:,:) = 0.0 !! 801 801 ENDIF … … 804 804 !! 805 805 IF( med_diag%SFR_OCAL%dgsave ) THEN 806 CALL wrk_alloc( jpi, jpj, sfr_ocal2d)806 ALLOCATE( sfr_ocal2d(jpi, jpj) ) 807 807 sfr_ocal2d(:,:) = 0.0 !! 808 808 ENDIF 809 809 IF( med_diag%SFR_OARG%dgsave ) THEN 810 CALL wrk_alloc( jpi, jpj, sfr_oarg2d)810 ALLOCATE( sfr_oarg2d(jpi, jpj) ) 811 811 sfr_oarg2d(:,:) = 0.0 !! 812 812 ENDIF … … 815 815 !! 816 816 IF( med_diag%IBEN_N%dgsave ) THEN 817 CALL wrk_alloc( jpi, jpj, iben_n2d)817 ALLOCATE( iben_n2d(jpi, jpj) ) 818 818 iben_n2d(:,:) = 0.0 !! 819 819 ENDIF 820 820 IF( med_diag%IBEN_FE%dgsave ) THEN 821 CALL wrk_alloc( jpi, jpj, iben_fe2d)821 ALLOCATE( iben_fe2d(jpi, jpj) ) 822 822 iben_fe2d(:,:) = 0.0 !! 823 823 ENDIF 824 824 IF( med_diag%IBEN_C%dgsave ) THEN 825 CALL wrk_alloc( jpi, jpj, iben_c2d)825 ALLOCATE( iben_c2d(jpi, jpj) ) 826 826 iben_c2d(:,:) = 0.0 !! 827 827 ENDIF 828 828 IF( med_diag%IBEN_SI%dgsave ) THEN 829 CALL wrk_alloc( jpi, jpj, iben_si2d)829 ALLOCATE( iben_si2d(jpi, jpj) ) 830 830 iben_si2d(:,:) = 0.0 !! 831 831 ENDIF 832 832 IF( med_diag%IBEN_CA%dgsave ) THEN 833 CALL wrk_alloc( jpi, jpj, iben_ca2d)833 ALLOCATE( iben_ca2d(jpi, jpj) ) 834 834 iben_ca2d(:,:) = 0.0 !! 835 835 ENDIF 836 836 IF( med_diag%OBEN_N%dgsave ) THEN 837 CALL wrk_alloc( jpi, jpj, oben_n2d)837 ALLOCATE( oben_n2d(jpi, jpj) ) 838 838 oben_n2d(:,:) = 0.0 !! 839 839 ENDIF 840 840 IF( med_diag%OBEN_FE%dgsave ) THEN 841 CALL wrk_alloc( jpi, jpj, oben_fe2d)841 ALLOCATE( oben_fe2d(jpi, jpj) ) 842 842 oben_fe2d(:,:) = 0.0 !! 843 843 ENDIF 844 844 IF( med_diag%OBEN_C%dgsave ) THEN 845 CALL wrk_alloc( jpi, jpj, oben_c2d)845 ALLOCATE( oben_c2d(jpi, jpj) ) 846 846 oben_c2d(:,:) = 0.0 !! 847 847 ENDIF 848 848 IF( med_diag%OBEN_SI%dgsave ) THEN 849 CALL wrk_alloc( jpi, jpj, oben_si2d)849 ALLOCATE( oben_si2d(jpi, jpj) ) 850 850 oben_si2d(:,:) = 0.0 !! 851 851 ENDIF 852 852 IF( med_diag%OBEN_CA%dgsave ) THEN 853 CALL wrk_alloc( jpi, jpj, oben_ca2d)853 ALLOCATE( oben_ca2d(jpi, jpj) ) 854 854 oben_ca2d(:,:) = 0.0 !! 855 855 ENDIF … … 858 858 !! 859 859 IF( med_diag%RIV_N%dgsave ) THEN 860 CALL wrk_alloc( jpi, jpj, rivn2d)860 ALLOCATE( rivn2d(jpi, jpj) ) 861 861 rivn2d(:,:) = 0.0 !! 862 862 ENDIF 863 863 IF( med_diag%RIV_SI%dgsave ) THEN 864 CALL wrk_alloc( jpi, jpj, rivsi2d)864 ALLOCATE( rivsi2d(jpi, jpj) ) 865 865 rivsi2d(:,:) = 0.0 !! 866 866 ENDIF 867 867 IF( med_diag%RIV_C%dgsave ) THEN 868 CALL wrk_alloc( jpi, jpj, rivc2d)868 ALLOCATE( rivc2d(jpi, jpj)) 869 869 rivc2d(:,:) = 0.0 !! 870 870 ENDIF 871 871 IF( med_diag%RIV_ALK%dgsave ) THEN 872 CALL wrk_alloc( jpi, jpj, rivalk2d)872 ALLOCATE( rivalk2d(jpi, jpj) ) 873 873 rivalk2d(:,:) = 0.0 !! 874 874 ENDIF 875 875 IF( med_diag%DETC%dgsave ) THEN 876 CALL wrk_alloc( jpi, jpj, fslowc2d)876 ALLOCATE( fslowc2d(jpi, jpj) ) 877 877 fslowc2d(:,:) = 0.0 !! 878 878 ENDIF … … 881 881 !! 882 882 IF( med_diag%LYSO_CA%dgsave ) THEN 883 CALL wrk_alloc( jpi, jpj, lyso_ca2d)883 ALLOCATE( lyso_ca2d(jpi, jpj) ) 884 884 lyso_ca2d(:,:) = 0.0 !! 885 885 ENDIF … … 888 888 !! 889 889 IF( med_diag%PN_LLOSS%dgsave ) THEN 890 CALL wrk_alloc( jpi, jpj, fdpn22d)890 ALLOCATE( fdpn22d(jpi, jpj) ) 891 891 fdpn22d(:,:) = 0.0 !! 892 892 ENDIF 893 893 IF( med_diag%PD_LLOSS%dgsave ) THEN 894 CALL wrk_alloc( jpi, jpj, fdpd22d)894 ALLOCATE( fdpd22d(jpi, jpj) ) 895 895 fdpd22d(:,:) = 0.0 !! 896 896 ENDIF 897 897 IF( med_diag%ZI_LLOSS%dgsave ) THEN 898 CALL wrk_alloc( jpi, jpj, fdzmi22d)898 ALLOCATE( fdzmi22d(jpi, jpj) ) 899 899 fdzmi22d(:,:) = 0.0 !! 900 900 ENDIF 901 901 IF( med_diag%ZE_LLOSS%dgsave ) THEN 902 CALL wrk_alloc( jpi, jpj, fdzme22d)902 ALLOCATE( fdzme22d(jpi, jpj)) 903 903 fdzme22d(:,:) = 0.0 !! 904 904 ENDIF 905 905 IF( med_diag%ZI_MES_N%dgsave ) THEN 906 CALL wrk_alloc( jpi, jpj, zimesn2d)906 ALLOCATE( zimesn2d(jpi, jpj)) 907 907 zimesn2d(:,:) = 0.0 !! 908 908 ENDIF 909 909 IF( med_diag%ZI_MES_D%dgsave ) THEN 910 CALL wrk_alloc( jpi, jpj, zimesd2d)910 ALLOCATE( zimesd2d(jpi, jpj) ) 911 911 zimesd2d(:,:) = 0.0 !! 912 912 ENDIF 913 913 IF( med_diag%ZI_MES_C%dgsave ) THEN 914 CALL wrk_alloc( jpi, jpj, zimesc2d)914 ALLOCATE( zimesc2d(jpi, jpj) ) 915 915 zimesc2d(:,:) = 0.0 !! 916 916 ENDIF 917 917 IF( med_diag%ZI_MESDC%dgsave ) THEN 918 CALL wrk_alloc( jpi, jpj, zimesdc2d)918 ALLOCATE( zimesdc2d(jpi, jpj) ) 919 919 zimesdc2d(:,:) = 0.0 !! 920 920 ENDIF 921 921 IF( med_diag%ZI_EXCR%dgsave ) THEN 922 CALL wrk_alloc( jpi, jpj, ziexcr2d)922 ALLOCATE( ziexcr2d(jpi, jpj) ) 923 923 ziexcr2d(:,:) = 0.0 !! 924 924 ENDIF 925 925 IF( med_diag%ZI_RESP%dgsave ) THEN 926 CALL wrk_alloc( jpi, jpj, ziresp2d)926 ALLOCATE( ziresp2d(jpi, jpj) ) 927 927 ziresp2d(:,:) = 0.0 !! 928 928 ENDIF 929 929 IF( med_diag%ZI_GROW%dgsave ) THEN 930 CALL wrk_alloc( jpi, jpj, zigrow2d)930 ALLOCATE( zigrow2d (jpi, jpj) ) 931 931 zigrow2d(:,:) = 0.0 !! 932 932 ENDIF 933 933 IF( med_diag%ZE_MES_N%dgsave ) THEN 934 CALL wrk_alloc( jpi, jpj, zemesn2d)934 ALLOCATE( zemesn2d(jpi, jpj)) 935 935 zemesn2d(:,:) = 0.0 !! 936 936 ENDIF 937 937 IF( med_diag%ZE_MES_D%dgsave ) THEN 938 CALL wrk_alloc( jpi, jpj, zemesd2d)938 ALLOCATE( zemesd2d(jpi, jpj) ) 939 939 zemesd2d(:,:) = 0.0 !! 940 940 ENDIF 941 941 IF( med_diag%ZE_MES_C%dgsave ) THEN 942 CALL wrk_alloc( jpi, jpj, zemesc2d)942 ALLOCATE( zemesc2d(jpi, jpj) ) 943 943 zemesc2d(:,:) = 0.0 !! 944 944 ENDIF 945 945 IF( med_diag%ZE_MESDC%dgsave ) THEN 946 CALL wrk_alloc( jpi, jpj, zemesdc2d)946 ALLOCATE( zemesdc2d(jpi, jpj) ) 947 947 zemesdc2d(:,:) = 0.0 !! 948 948 ENDIF 949 949 IF( med_diag%ZE_EXCR%dgsave ) THEN 950 CALL wrk_alloc( jpi, jpj, zeexcr2d)950 ALLOCATE( zeexcr2d(jpi, jpj) ) 951 951 zeexcr2d(:,:) = 0.0 !! 952 952 ENDIF 953 953 IF( med_diag%ZE_RESP%dgsave ) THEN 954 CALL wrk_alloc( jpi, jpj, zeresp2d)954 ALLOCATE( zeresp2d(jpi, jpj) ) 955 955 zeresp2d(:,:) = 0.0 !! 956 956 ENDIF 957 957 IF( med_diag%ZE_GROW%dgsave ) THEN 958 CALL wrk_alloc( jpi, jpj, zegrow2d)958 ALLOCATE( zegrow2d(jpi, jpj) ) 959 959 zegrow2d(:,:) = 0.0 !! 960 960 ENDIF 961 961 IF( med_diag%MDETC%dgsave ) THEN 962 CALL wrk_alloc( jpi, jpj, mdetc2d)962 ALLOCATE( mdetc2d(jpi, jpj)) 963 963 mdetc2d(:,:) = 0.0 !! 964 964 ENDIF 965 965 IF( med_diag%GMIDC%dgsave ) THEN 966 CALL wrk_alloc( jpi, jpj, gmidc2d)966 ALLOCATE( gmidc2d(jpi, jpj) ) 967 967 gmidc2d(:,:) = 0.0 !! 968 968 ENDIF 969 969 IF( med_diag%GMEDC%dgsave ) THEN 970 CALL wrk_alloc( jpi, jpj, gmedc2d)970 ALLOCATE( gmedc2d(jpi, jpj) ) 971 971 gmedc2d(:,:) = 0.0 !! 972 972 ENDIF … … 976 976 IF (jdms .eq. 1) THEN 977 977 IF( med_diag%DMS_SURF%dgsave ) THEN 978 CALL wrk_alloc( jpi, jpj, dms_surf2d)978 ALLOCATE( dms_surf2d(jpi, jpj)) 979 979 dms_surf2d(:,:) = 0.0 !! 980 980 ENDIF 981 981 IF( med_diag%DMS_ANDR%dgsave ) THEN 982 CALL wrk_alloc( jpi, jpj, dms_andr2d)982 ALLOCATE( dms_andr2d(jpi, jpj)) 983 983 dms_andr2d(:,:) = 0.0 !! 984 984 ENDIF 985 985 IF( med_diag%DMS_SIMO%dgsave ) THEN 986 CALL wrk_alloc( jpi, jpj, dms_simo2d)986 ALLOCATE( dms_simo2d(jpi, jpj) ) 987 987 dms_simo2d(:,:) = 0.0 !! 988 988 ENDIF 989 989 IF( med_diag%DMS_ARAN%dgsave ) THEN 990 CALL wrk_alloc( jpi, jpj, dms_aran2d)990 ALLOCATE( dms_aran2d(jpi, jpj)) 991 991 dms_aran2d(:,:) = 0.0 !! 992 992 ENDIF 993 993 IF( med_diag%DMS_HALL%dgsave ) THEN 994 CALL wrk_alloc( jpi, jpj, dms_hall2d)994 ALLOCATE( dms_hall2d(jpi, jpj)) 995 995 dms_hall2d(:,:) = 0.0 !! 996 996 ENDIF … … 999 999 !! AXY (24/11/16): extra MOCSY diagnostics, 2D 1000 1000 IF( med_diag%ATM_XCO2%dgsave ) THEN 1001 CALL wrk_alloc( jpi, jpj, f_xco2a_2d)1001 ALLOCATE( f_xco2a_2d(jpi, jpj) ) 1002 1002 f_xco2a_2d(:,:) = 0.0 !! 1003 1003 ENDIF 1004 1004 IF( med_diag%OCN_FCO2%dgsave ) THEN 1005 CALL wrk_alloc( jpi, jpj, f_fco2w_2d)1005 ALLOCATE( f_fco2w_2d(jpi, jpj) ) 1006 1006 f_fco2w_2d(:,:) = 0.0 !! 1007 1007 ENDIF 1008 1008 IF( med_diag%ATM_FCO2%dgsave ) THEN 1009 CALL wrk_alloc( jpi, jpj, f_fco2a_2d)1009 ALLOCATE( f_fco2a_2d(jpi, jpj) ) 1010 1010 f_fco2a_2d(:,:) = 0.0 !! 1011 1011 ENDIF 1012 1012 IF( med_diag%OCN_RHOSW%dgsave ) THEN 1013 CALL wrk_alloc( jpi, jpj, f_ocnrhosw_2d)1013 ALLOCATE( f_ocnrhosw_2d(jpi, jpj) ) 1014 1014 f_ocnrhosw_2d(:,:) = 0.0 !! 1015 1015 ENDIF 1016 1016 IF( med_diag%OCN_SCHCO2%dgsave ) THEN 1017 CALL wrk_alloc( jpi, jpj, f_ocnschco2_2d)1017 ALLOCATE( f_ocnschco2_2d(jpi, jpj) ) 1018 1018 f_ocnschco2_2d(:,:) = 0.0 !! 1019 1019 ENDIF 1020 1020 IF( med_diag%OCN_KWCO2%dgsave ) THEN 1021 CALL wrk_alloc( jpi, jpj, f_ocnkwco2_2d)1021 ALLOCATE( f_ocnkwco2_2d(jpi, jpj) ) 1022 1022 f_ocnkwco2_2d(:,:) = 0.0 !! 1023 1023 ENDIF 1024 1024 IF( med_diag%OCN_K0%dgsave ) THEN 1025 CALL wrk_alloc( jpi, jpj, f_ocnk0_2d)1025 ALLOCATE( f_ocnk0_2d(jpi, jpj) ) 1026 1026 f_ocnk0_2d(:,:) = 0.0 !! 1027 1027 ENDIF 1028 1028 IF( med_diag%CO2STARAIR%dgsave ) THEN 1029 CALL wrk_alloc( jpi, jpj, f_co2starair_2d)1029 ALLOCATE( f_co2starair_2d(jpi, jpj) ) 1030 1030 f_co2starair_2d(:,:) = 0.0 !! 1031 1031 ENDIF 1032 1032 IF( med_diag%OCN_DPCO2%dgsave ) THEN 1033 CALL wrk_alloc( jpi, jpj, f_ocndpco2_2d)1033 ALLOCATE( f_ocndpco2_2d(jpi, jpj) ) 1034 1034 f_ocndpco2_2d(:,:) = 0.0 !! 1035 1035 ENDIF 1036 1036 # endif 1037 1037 IF( med_diag%TPP3%dgsave ) THEN 1038 CALL wrk_alloc( jpi, jpj, jpk, tpp3d)1038 ALLOCATE( tpp3d(jpi, jpj, jpk) ) 1039 1039 tpp3d(:,:,:) = 0.0 !! 1040 1040 ENDIF 1041 1041 IF( med_diag%DETFLUX3%dgsave ) THEN 1042 CALL wrk_alloc( jpi, jpj, jpk, detflux3d)1042 ALLOCATE( detflux3d(jpi, jpj, jpk) ) 1043 1043 detflux3d(:,:,:) = 0.0 !! 1044 1044 ENDIF 1045 1045 IF( med_diag%REMIN3N%dgsave ) THEN 1046 CALL wrk_alloc( jpi, jpj, jpk, remin3dn)1046 ALLOCATE( remin3dn(jpi, jpj, jpk) ) 1047 1047 remin3dn(:,:,:) = 0.0 !! 1048 1048 ENDIF … … 1052 1052 !! needed for coupling/passed through restart 1053 1053 !! IF( med_diag%FGCO2%dgsave ) THEN 1054 CALL wrk_alloc( jpi, jpj, fgco2)1054 ALLOCATE( fgco2 (jpi, jpj) ) 1055 1055 fgco2(:,:) = 0.0 !! 1056 1056 !! ENDIF 1057 1057 IF( med_diag%INTDISSIC%dgsave ) THEN 1058 CALL wrk_alloc( jpi, jpj, intdissic)1058 ALLOCATE( intdissic(jpi, jpj) ) 1059 1059 intdissic(:,:) = 0.0 !! 1060 1060 ENDIF 1061 1061 IF( med_diag%INTDISSIN%dgsave ) THEN 1062 CALL wrk_alloc( jpi, jpj, intdissin)1062 ALLOCATE( intdissin(jpi, jpj) ) 1063 1063 intdissin(:,:) = 0.0 !! 1064 1064 ENDIF 1065 1065 IF( med_diag%INTDISSISI%dgsave ) THEN 1066 CALL wrk_alloc( jpi, jpj, intdissisi)1066 ALLOCATE( intdissisi(jpi, jpj) ) 1067 1067 intdissisi(:,:) = 0.0 !! 1068 1068 ENDIF 1069 1069 IF( med_diag%INTTALK%dgsave ) THEN 1070 CALL wrk_alloc( jpi, jpj, inttalk)1070 ALLOCATE( inttalk(jpi, jpj) ) 1071 1071 inttalk(:,:) = 0.0 !! 1072 1072 ENDIF 1073 1073 IF( med_diag%O2min%dgsave ) THEN 1074 CALL wrk_alloc( jpi, jpj, o2min)1074 ALLOCATE( o2min(jpi, jpj) ) 1075 1075 o2min(:,:) = 1.e3 !! set to high value as we're looking for min(o2) 1076 1076 ENDIF 1077 1077 IF( med_diag%ZO2min%dgsave ) THEN 1078 CALL wrk_alloc( jpi, jpj, zo2min)1078 ALLOCATE( zo2min (jpi, jpj) ) 1079 1079 zo2min(:,:) = 0.0 !! 1080 1080 ENDIF 1081 1081 IF( med_diag%FBDDTALK%dgsave ) THEN 1082 CALL wrk_alloc( jpi, jpj, fbddtalk)1082 ALLOCATE( fbddtalk(jpi, jpj) ) 1083 1083 fbddtalk(:,:) = 0.0 !! 1084 1084 ENDIF 1085 1085 IF( med_diag%FBDDTDIC%dgsave ) THEN 1086 CALL wrk_alloc( jpi, jpj, fbddtdic)1086 ALLOCATE( fbddtdic(jpi, jpj) ) 1087 1087 fbddtdic(:,:) = 0.0 !! 1088 1088 ENDIF 1089 1089 IF( med_diag%FBDDTDIFE%dgsave ) THEN 1090 CALL wrk_alloc( jpi, jpj, fbddtdife)1090 ALLOCATE( fbddtdife(jpi, jpj) ) 1091 1091 fbddtdife(:,:) = 0.0 !! 1092 1092 ENDIF 1093 1093 IF( med_diag%FBDDTDIN%dgsave ) THEN 1094 CALL wrk_alloc( jpi, jpj, fbddtdin)1094 ALLOCATE( fbddtdin(jpi, jpj) ) 1095 1095 fbddtdin(:,:) = 0.0 !! 1096 1096 ENDIF 1097 1097 IF( med_diag%FBDDTDISI%dgsave ) THEN 1098 CALL wrk_alloc( jpi, jpj, fbddtdisi)1098 ALLOCATE( fbddtdisi(jpi, jpj) ) 1099 1099 fbddtdisi(:,:) = 0.0 !! 1100 1100 ENDIF … … 1102 1102 !! AXY (10/11/16): CMIP6 diagnostics, 3D 1103 1103 IF( med_diag%TPPD3%dgsave ) THEN 1104 CALL wrk_alloc( jpi, jpj, jpk, tppd3)1104 ALLOCATE( tppd3(jpi, jpj, jpk) ) 1105 1105 tppd3(:,:,:) = 0.0 !! 1106 1106 ENDIF 1107 1107 IF( med_diag%BDDTALK3%dgsave ) THEN 1108 CALL wrk_alloc( jpi, jpj, jpk, bddtalk3)1108 ALLOCATE( bddtalk3(jpi, jpj, jpk) ) 1109 1109 bddtalk3(:,:,:) = 0.0 !! 1110 1110 ENDIF 1111 1111 IF( med_diag%BDDTDIC3%dgsave ) THEN 1112 CALL wrk_alloc( jpi, jpj, jpk, bddtdic3)1112 ALLOCATE( bddtdic3(jpi, jpj, jpk) ) 1113 1113 bddtdic3(:,:,:) = 0.0 !! 1114 1114 ENDIF 1115 1115 IF( med_diag%BDDTDIFE3%dgsave ) THEN 1116 CALL wrk_alloc( jpi, jpj, jpk, bddtdife3)1116 ALLOCATE( bddtdife3(jpi, jpj, jpk) ) 1117 1117 bddtdife3(:,:,:) = 0.0 !! 1118 1118 ENDIF 1119 1119 IF( med_diag%BDDTDIN3%dgsave ) THEN 1120 CALL wrk_alloc( jpi, jpj, jpk, bddtdin3)1120 ALLOCATE( bddtdin3(jpi, jpj, jpk) ) 1121 1121 bddtdin3(:,:,:) = 0.0 !! 1122 1122 ENDIF 1123 1123 IF( med_diag%BDDTDISI3%dgsave ) THEN 1124 CALL wrk_alloc( jpi, jpj, jpk, bddtdisi3)1124 ALLOCATE( bddtdisi3(jpi, jpj, jpk) ) 1125 1125 bddtdisi3(:,:,:) = 0.0 !! 1126 1126 ENDIF 1127 1127 IF( med_diag%FD_NIT3%dgsave ) THEN 1128 CALL wrk_alloc( jpi, jpj, jpk, fd_nit3)1128 ALLOCATE( fd_nit3(jpi, jpj, jpk) ) 1129 1129 fd_nit3(:,:,:) = 0.0 !! 1130 1130 ENDIF 1131 1131 IF( med_diag%FD_SIL3%dgsave ) THEN 1132 CALL wrk_alloc( jpi, jpj, jpk, fd_sil3)1132 ALLOCATE( fd_sil3(jpi, jpj, jpk) ) 1133 1133 fd_sil3(:,:,:) = 0.0 !! 1134 1134 ENDIF 1135 1135 IF( med_diag%FD_CAR3%dgsave ) THEN 1136 CALL wrk_alloc( jpi, jpj, jpk, fd_car3)1136 ALLOCATE( fd_car3(jpi, jpj, jpk) ) 1137 1137 fd_car3(:,:,:) = 0.0 !! 1138 1138 ENDIF 1139 1139 IF( med_diag%FD_CAL3%dgsave ) THEN 1140 CALL wrk_alloc( jpi, jpj, jpk, fd_cal3)1140 ALLOCATE( fd_cal3(jpi, jpj, jpk) ) 1141 1141 fd_cal3(:,:,:) = 0.0 !! 1142 1142 ENDIF 1143 1143 IF( med_diag%DCALC3%dgsave ) THEN 1144 CALL wrk_alloc( jpi, jpj, jpk, dcalc3)1144 ALLOCATE( dcalc3(jpi, jpj, jpk) ) 1145 1145 dcalc3(:,:,: ) = 0.0 !! 1146 1146 ENDIF 1147 1147 IF( med_diag%EXPC3%dgsave ) THEN 1148 CALL wrk_alloc( jpi, jpj, jpk, expc3)1148 ALLOCATE( expc3(jpi, jpj, jpk) ) 1149 1149 expc3(:,:,: ) = 0.0 !! 1150 1150 ENDIF 1151 1151 IF( med_diag%EXPN3%dgsave ) THEN 1152 CALL wrk_alloc( jpi, jpj, jpk, expn3)1152 ALLOCATE( expn3(jpi, jpj, jpk) ) 1153 1153 expn3(:,:,: ) = 0.0 !! 1154 1154 ENDIF 1155 1155 IF( med_diag%FEDISS3%dgsave ) THEN 1156 CALL wrk_alloc( jpi, jpj, jpk, fediss3)1156 ALLOCATE( fediss3(jpi, jpj, jpk) ) 1157 1157 fediss3(:,:,: ) = 0.0 !! 1158 1158 ENDIF 1159 1159 IF( med_diag%FESCAV3%dgsave ) THEN 1160 CALL wrk_alloc( jpi, jpj, jpk, fescav3)1160 ALLOCATE( fescav3(jpi, jpj, jpk) ) 1161 1161 fescav3(:,:,: ) = 0.0 !! 1162 1162 ENDIF 1163 1163 IF( med_diag%MIGRAZP3%dgsave ) THEN 1164 CALL wrk_alloc( jpi, jpj, jpk, migrazp3)1164 ALLOCATE( migrazp3(jpi, jpj, jpk) ) 1165 1165 migrazp3(:,:,: ) = 0.0 !! 1166 1166 ENDIF 1167 1167 IF( med_diag%MIGRAZD3%dgsave ) THEN 1168 CALL wrk_alloc( jpi, jpj, jpk, migrazd3)1168 ALLOCATE( migrazd3(jpi, jpj, jpk) ) 1169 1169 migrazd3(:,:,: ) = 0.0 !! 1170 1170 ENDIF 1171 1171 IF( med_diag%MEGRAZP3%dgsave ) THEN 1172 CALL wrk_alloc( jpi, jpj, jpk, megrazp3)1172 ALLOCATE( megrazp3(jpi, jpj, jpk) ) 1173 1173 megrazp3(:,:,: ) = 0.0 !! 1174 1174 ENDIF 1175 1175 IF( med_diag%MEGRAZD3%dgsave ) THEN 1176 CALL wrk_alloc( jpi, jpj, jpk, megrazd3)1176 ALLOCATE( megrazd3(jpi, jpj, jpk) ) 1177 1177 megrazd3(:,:,: ) = 0.0 !! 1178 1178 ENDIF 1179 1179 IF( med_diag%MEGRAZZ3%dgsave ) THEN 1180 CALL wrk_alloc( jpi, jpj, jpk, megrazz3)1180 ALLOCATE( megrazz3(jpi, jpj, jpk) ) 1181 1181 megrazz3(:,:,: ) = 0.0 !! 1182 1182 ENDIF 1183 1183 IF( med_diag%O2SAT3%dgsave ) THEN 1184 CALL wrk_alloc( jpi, jpj, jpk, o2sat3)1184 ALLOCATE( o2sat3(jpi, jpj, jpk) ) 1185 1185 o2sat3(:,:,: ) = 0.0 !! 1186 1186 ENDIF 1187 1187 IF( med_diag%PBSI3%dgsave ) THEN 1188 CALL wrk_alloc( jpi, jpj, jpk, pbsi3)1188 ALLOCATE( pbsi3(jpi, jpj, jpk) ) 1189 1189 pbsi3(:,:,: ) = 0.0 !! 1190 1190 ENDIF 1191 1191 IF( med_diag%PCAL3%dgsave ) THEN 1192 CALL wrk_alloc( jpi, jpj, jpk, pcal3)1192 ALLOCATE( pcal3(jpi, jpj, jpk) ) 1193 1193 pcal3(:,:,: ) = 0.0 !! 1194 1194 ENDIF 1195 1195 IF( med_diag%REMOC3%dgsave ) THEN 1196 CALL wrk_alloc( jpi, jpj, jpk, remoc3)1196 ALLOCATE( remoc3(jpi, jpj, jpk) ) 1197 1197 remoc3(:,:,: ) = 0.0 !! 1198 1198 ENDIF 1199 1199 IF( med_diag%PNLIMJ3%dgsave ) THEN 1200 CALL wrk_alloc( jpi, jpj, jpk, pnlimj3)1200 ALLOCATE( pnlimj3(jpi, jpj, jpk) ) 1201 1201 pnlimj3(:,:,: ) = 0.0 !! 1202 1202 ENDIF 1203 1203 IF( med_diag%PNLIMN3%dgsave ) THEN 1204 CALL wrk_alloc( jpi, jpj, jpk, pnlimn3)1204 ALLOCATE( pnlimn3(jpi, jpj, jpk) ) 1205 1205 pnlimn3(:,:,: ) = 0.0 !! 1206 1206 ENDIF 1207 1207 IF( med_diag%PNLIMFE3%dgsave ) THEN 1208 CALL wrk_alloc( jpi, jpj, jpk, pnlimfe3)1208 ALLOCATE( pnlimfe3(jpi, jpj, jpk) ) 1209 1209 pnlimfe3(:,:,: ) = 0.0 !! 1210 1210 ENDIF 1211 1211 IF( med_diag%PDLIMJ3%dgsave ) THEN 1212 CALL wrk_alloc( jpi, jpj, jpk, pdlimj3)1212 ALLOCATE( pdlimj3(jpi, jpj, jpk) ) 1213 1213 pdlimj3(:,:,: ) = 0.0 !! 1214 1214 ENDIF 1215 1215 IF( med_diag%PDLIMN3%dgsave ) THEN 1216 CALL wrk_alloc( jpi, jpj, jpk, pdlimn3)1216 ALLOCATE( pdlimn3(jpi, jpj, jpk) ) 1217 1217 pdlimn3(:,:,: ) = 0.0 !! 1218 1218 ENDIF 1219 1219 IF( med_diag%PDLIMFE3%dgsave ) THEN 1220 CALL wrk_alloc( jpi, jpj, jpk, pdlimfe3)1220 ALLOCATE( pdlimfe3(jpi, jpj, jpk) ) 1221 1221 pdlimfe3(:,:,: ) = 0.0 !! 1222 1222 ENDIF 1223 1223 IF( med_diag%PDLIMSI3%dgsave ) THEN 1224 CALL wrk_alloc( jpi, jpj, jpk, pdlimsi3)1224 ALLOCATE( pdlimsi3(jpi, jpj, jpk) ) 1225 1225 pdlimsi3(:,:,: ) = 0.0 !! 1226 1226 ENDIF … … 4799 4799 IF( med_diag%ATM_PCO2%dgsave ) THEN 4800 4800 CALL iom_put( "ATM_PCO2" , f_pco2a2d ) 4801 CALL wrk_dealloc( jpi, jpj,f_pco2a2d )4801 DEALLOCATE( f_pco2a2d ) 4802 4802 ENDIF 4803 4803 IF( med_diag%OCN_PH%dgsave ) THEN … … 4807 4807 IF( med_diag%OCN_PCO2%dgsave ) THEN 4808 4808 CALL iom_put( "OCN_PCO2" , f_pco2w2d ) 4809 CALL wrk_dealloc( jpi, jpj,f_pco2w2d )4809 DEALLOCATE( f_pco2w2d ) 4810 4810 ENDIF 4811 4811 IF( med_diag%OCNH2CO3%dgsave ) THEN … … 4823 4823 IF( med_diag%CO2FLUX%dgsave ) THEN 4824 4824 CALL iom_put( "CO2FLUX" , f_co2flux2d ) 4825 CALL wrk_dealloc( jpi, jpj,f_co2flux2d )4825 DEALLOCATE( f_co2flux2d ) 4826 4826 ENDIF 4827 4827 !! … … 4842 4842 CO2Flux_out_cpl = zn_co2_flx 4843 4843 ENDIF 4844 CALL wrk_dealloc( jpi, jpj,fgco2 )4844 DEALLOCATE( fgco2 ) 4845 4845 !! --- 4846 4846 IF( med_diag%OM_CAL%dgsave ) THEN … … 4852 4852 IF( med_diag%TCO2%dgsave ) THEN 4853 4853 CALL iom_put( "TCO2" , f_TDIC2d ) 4854 CALL wrk_dealloc( jpi, jpj,f_TDIC2d )4854 DEALLOCATE( f_TDIC2d ) 4855 4855 ENDIF 4856 4856 IF( med_diag%TALK%dgsave ) THEN 4857 4857 CALL iom_put( "TALK" , f_TALK2d ) 4858 CALL wrk_dealloc( jpi, jpj,f_TALK2d )4858 DEALLOCATE( f_TALK2d ) 4859 4859 ENDIF 4860 4860 IF( med_diag%KW660%dgsave ) THEN 4861 4861 CALL iom_put( "KW660" , f_kw6602d ) 4862 CALL wrk_dealloc( jpi, jpj,f_kw6602d )4862 DEALLOCATE( f_kw6602d ) 4863 4863 ENDIF 4864 4864 IF( med_diag%ATM_PP0%dgsave ) THEN 4865 4865 CALL iom_put( "ATM_PP0" , f_pp02d ) 4866 CALL wrk_dealloc( jpi, jpj,f_pp02d )4866 DEALLOCATE( f_pp02d ) 4867 4867 ENDIF 4868 4868 IF( med_diag%O2FLUX%dgsave ) THEN 4869 4869 CALL iom_put( "O2FLUX" , f_o2flux2d ) 4870 CALL wrk_dealloc( jpi, jpj,f_o2flux2d )4870 DEALLOCATE( f_o2flux2d ) 4871 4871 ENDIF 4872 4872 IF( med_diag%O2SAT%dgsave ) THEN 4873 4873 CALL iom_put( "O2SAT" , f_o2sat2d ) 4874 CALL wrk_dealloc( jpi, jpj, f_o2sat2d)4874 DEALLOCATE( f_o2sat2d) 4875 4875 ENDIF 4876 4876 IF( med_diag%CAL_CCD%dgsave ) THEN … … 4889 4889 DMS_out_cpl = zn_dms_srf 4890 4890 ENDIF 4891 CALL wrk_dealloc( jpi, jpj,dms_surf2d )4891 DEALLOCATE( dms_surf2d ) 4892 4892 ENDIF 4893 4893 IF( med_diag%DMS_ANDR%dgsave ) THEN 4894 4894 CALL iom_put( "DMS_ANDR" , dms_andr2d ) 4895 CALL wrk_dealloc( jpi, jpj,dms_andr2d )4895 DEALLOCATE( dms_andr2d ) 4896 4896 ENDIF 4897 4897 IF( med_diag%DMS_SIMO%dgsave ) THEN 4898 4898 CALL iom_put( "DMS_SIMO" , dms_simo2d ) 4899 CALL wrk_dealloc( jpi, jpj,dms_simo2d )4899 DEALLOCATE( dms_simo2d ) 4900 4900 ENDIF 4901 4901 IF( med_diag%DMS_ARAN%dgsave ) THEN 4902 4902 CALL iom_put( "DMS_ARAN" , dms_aran2d ) 4903 CALL wrk_dealloc( jpi, jpj,dms_aran2d )4903 DEALLOCATE( dms_aran2d ) 4904 4904 ENDIF 4905 4905 IF( med_diag%DMS_HALL%dgsave ) THEN 4906 4906 CALL iom_put( "DMS_HALL" , dms_hall2d ) 4907 CALL wrk_dealloc( jpi, jpj,dms_hall2d )4907 DEALLOCATE( dms_hall2d ) 4908 4908 ENDIF 4909 4909 ENDIF … … 4911 4911 IF( med_diag%ATM_XCO2%dgsave ) THEN 4912 4912 CALL iom_put( "ATM_XCO2" , f_xco2a_2d ) 4913 CALL wrk_dealloc( jpi, jpj,f_xco2a_2d )4913 DEALLOCATE( f_xco2a_2d ) 4914 4914 ENDIF 4915 4915 IF( med_diag%OCN_FCO2%dgsave ) THEN 4916 4916 CALL iom_put( "OCN_FCO2" , f_fco2w_2d ) 4917 CALL wrk_dealloc( jpi, jpj,f_fco2w_2d )4917 DEALLOCATE( f_fco2w_2d ) 4918 4918 ENDIF 4919 4919 IF( med_diag%ATM_FCO2%dgsave ) THEN 4920 4920 CALL iom_put( "ATM_FCO2" , f_fco2a_2d ) 4921 CALL wrk_dealloc( jpi, jpj,f_fco2a_2d )4921 DEALLOCATE( f_fco2a_2d ) 4922 4922 ENDIF 4923 4923 IF( med_diag%OCN_RHOSW%dgsave ) THEN 4924 4924 CALL iom_put( "OCN_RHOSW" , f_ocnrhosw_2d ) 4925 CALL wrk_dealloc( jpi, jpj,f_ocnrhosw_2d )4925 DEALLOCATE( f_ocnrhosw_2d ) 4926 4926 ENDIF 4927 4927 IF( med_diag%OCN_SCHCO2%dgsave ) THEN 4928 4928 CALL iom_put( "OCN_SCHCO2" , f_ocnschco2_2d ) 4929 CALL wrk_dealloc( jpi, jpj,f_ocnschco2_2d )4929 DEALLOCATE( f_ocnschco2_2d ) 4930 4930 ENDIF 4931 4931 IF( med_diag%OCN_KWCO2%dgsave ) THEN 4932 4932 CALL iom_put( "OCN_KWCO2" , f_ocnkwco2_2d ) 4933 CALL wrk_dealloc( jpi, jpj,f_ocnkwco2_2d )4933 DEALLOCATE( f_ocnkwco2_2d ) 4934 4934 ENDIF 4935 4935 IF( med_diag%OCN_K0%dgsave ) THEN 4936 4936 CALL iom_put( "OCN_K0" , f_ocnk0_2d ) 4937 CALL wrk_dealloc( jpi, jpj,f_ocnk0_2d )4937 DEALLOCATE( f_ocnk0_2d ) 4938 4938 ENDIF 4939 4939 IF( med_diag%CO2STARAIR%dgsave ) THEN 4940 4940 CALL iom_put( "CO2STARAIR" , f_co2starair_2d ) 4941 CALL wrk_dealloc( jpi, jpj,f_co2starair_2d )4941 DEALLOCATE( f_co2starair_2d ) 4942 4942 ENDIF 4943 4943 IF( med_diag%OCN_DPCO2%dgsave ) THEN 4944 4944 CALL iom_put( "OCN_DPCO2" , f_ocndpco2_2d ) 4945 CALL wrk_dealloc( jpi, jpj,f_ocndpco2_2d )4945 DEALLOCATE( f_ocndpco2_2d ) 4946 4946 ENDIF 4947 4947 # endif … … 5100 5100 IF( med_diag%RR_1000%dgsave ) THEN 5101 5101 CALL iom_put( "RR_1000" , ffastca2d ) 5102 CALL wrk_dealloc( jpi, jpj, ffastca2d)5102 DEALLOCATE( ffastca2d) 5103 5103 ENDIF 5104 5104 IF( med_diag%SDC_1000%dgsave ) THEN … … 5492 5492 IF ( med_diag%PN_JLIM%dgsave ) THEN 5493 5493 CALL iom_put( "PN_JLIM" , fjln2d ) 5494 CALL wrk_dealloc( jpi, jpj,fjln2d )5494 DEALLOCATE( fjln2d ) 5495 5495 ENDIF 5496 5496 IF ( med_diag%PN_NLIM%dgsave ) THEN 5497 5497 CALL iom_put( "PN_NLIM" , fnln2d ) 5498 CALL wrk_dealloc( jpi, jpj,fnln2d )5498 DEALLOCATE( fnln2d ) 5499 5499 ENDIF 5500 5500 IF ( med_diag%PN_FELIM%dgsave ) THEN 5501 5501 CALL iom_put( "PN_FELIM" , ffln2d ) 5502 CALL wrk_dealloc( jpi, jpj,ffln2d )5502 DEALLOCATE( ffln2d ) 5503 5503 ENDIF 5504 5504 IF ( med_diag%PD_JLIM%dgsave ) THEN 5505 5505 CALL iom_put( "PD_JLIM" , fjld2d ) 5506 CALL wrk_dealloc( jpi, jpj, fjld2d)5506 DEALLOCATE( fjld2d) 5507 5507 ENDIF 5508 5508 IF ( med_diag%PD_NLIM%dgsave ) THEN 5509 5509 CALL iom_put( "PD_NLIM" , fnld2d ) 5510 CALL wrk_dealloc( jpi, jpj,fnld2d )5510 DEALLOCATE( fnld2d ) 5511 5511 ENDIF 5512 5512 IF ( med_diag%PD_FELIM%dgsave ) THEN 5513 5513 CALL iom_put( "PD_FELIM" , ffld2d ) 5514 CALL wrk_dealloc( jpi, jpj, ffld2d)5514 DEALLOCATE( ffld2d) 5515 5515 ENDIF 5516 5516 IF ( med_diag%PD_SILIM%dgsave ) THEN 5517 5517 CALL iom_put( "PD_SILIM" , fsld2d2 ) 5518 CALL wrk_dealloc( jpi, jpj,fsld2d2 )5518 DEALLOCATE( fsld2d2 ) 5519 5519 ENDIF 5520 5520 IF ( med_diag%PDSILIM2%dgsave ) THEN 5521 5521 CALL iom_put( "PDSILIM2" , fsld2d ) 5522 CALL wrk_dealloc( jpi, jpj,fsld2d )5522 DEALLOCATE( fsld2d ) 5523 5523 ENDIF 5524 5524 IF ( med_diag%INTFLX_N%dgsave ) THEN … … 5607 5607 IF ( med_diag%PRN%dgsave ) THEN 5608 5608 CALL iom_put( "PRN" , fprn2d ) 5609 CALL wrk_dealloc( jpi, jpj,fprn2d )5609 DEALLOCATE( fprn2d ) 5610 5610 ENDIF 5611 5611 IF ( med_diag%MPN%dgsave ) THEN 5612 5612 CALL iom_put( "MPN" ,fdpn2d ) 5613 CALL wrk_dealloc( jpi, jpj,fdpn2d )5613 DEALLOCATE( fdpn2d ) 5614 5614 ENDIF 5615 5615 IF ( med_diag%PRD%dgsave ) THEN 5616 5616 CALL iom_put( "PRD" ,fprd2d ) 5617 CALL wrk_dealloc( jpi, jpj,fprd2d )5617 DEALLOCATE( fprd2d ) 5618 5618 ENDIF 5619 5619 IF( med_diag%MPD%dgsave ) THEN 5620 5620 CALL iom_put( "MPD" , fdpd2d ) 5621 CALL wrk_dealloc( jpi, jpj,fdpd2d )5621 DEALLOCATE( fdpd2d ) 5622 5622 ENDIF 5623 5623 ! IF( med_diag%DSED%dgsave ) THEN … … 5626 5626 IF( med_diag%OPAL%dgsave ) THEN 5627 5627 CALL iom_put( "OPAL" , fprds2d ) 5628 CALL wrk_dealloc( jpi, jpj,fprds2d )5628 DEALLOCATE( fprds2d ) 5629 5629 ENDIF 5630 5630 IF( med_diag%OPALDISS%dgsave ) THEN 5631 5631 CALL iom_put( "OPALDISS" , fsdiss2d ) 5632 CALL wrk_dealloc( jpi, jpj,fsdiss2d )5632 DEALLOCATE( fsdiss2d ) 5633 5633 ENDIF 5634 5634 IF( med_diag%GMIPn%dgsave ) THEN 5635 5635 CALL iom_put( "GMIPn" , fgmipn2d ) 5636 CALL wrk_dealloc( jpi, jpj,fgmipn2d )5636 DEALLOCATE( fgmipn2d ) 5637 5637 ENDIF 5638 5638 IF( med_diag%GMID%dgsave ) THEN 5639 5639 CALL iom_put( "GMID" , fgmid2d ) 5640 CALL wrk_dealloc( jpi, jpj,fgmid2d )5640 DEALLOCATE( fgmid2d ) 5641 5641 ENDIF 5642 5642 IF( med_diag%MZMI%dgsave ) THEN 5643 5643 CALL iom_put( "MZMI" , fdzmi2d ) 5644 CALL wrk_dealloc( jpi, jpj,fdzmi2d )5644 DEALLOCATE( fdzmi2d ) 5645 5645 ENDIF 5646 5646 IF( med_diag%GMEPN%dgsave ) THEN 5647 5647 CALL iom_put( "GMEPN" , fgmepn2d ) 5648 CALL wrk_dealloc( jpi, jpj,fgmepn2d )5648 DEALLOCATE( fgmepn2d ) 5649 5649 ENDIF 5650 5650 IF( med_diag%GMEPD%dgsave ) THEN 5651 5651 CALL iom_put( "GMEPD" , fgmepd2d ) 5652 CALL wrk_dealloc( jpi, jpj,fgmepd2d )5652 DEALLOCATE( fgmepd2d ) 5653 5653 ENDIF 5654 5654 IF( med_diag%GMEZMI%dgsave ) THEN 5655 5655 CALL iom_put( "GMEZMI" , fgmezmi2d ) 5656 CALL wrk_dealloc( jpi, jpj,fgmezmi2d )5656 DEALLOCATE( fgmezmi2d ) 5657 5657 ENDIF 5658 5658 IF( med_diag%GMED%dgsave ) THEN 5659 5659 CALL iom_put( "GMED" , fgmed2d ) 5660 CALL wrk_dealloc( jpi, jpj,fgmed2d )5660 DEALLOCATE( fgmed2d ) 5661 5661 ENDIF 5662 5662 IF( med_diag%MZME%dgsave ) THEN 5663 5663 CALL iom_put( "MZME" , fdzme2d ) 5664 CALL wrk_dealloc( jpi, jpj, fdzme2d)5664 DEALLOCATE( fdzme2d) 5665 5665 ENDIF 5666 5666 ! IF( med_diag%DEXP%dgsave ) THEN … … 5669 5669 IF( med_diag%DETN%dgsave ) THEN 5670 5670 CALL iom_put( "DETN" , fslown2d ) 5671 CALL wrk_dealloc( jpi, jpj, fslown2d)5671 DEALLOCATE( fslown2d) 5672 5672 ENDIF 5673 5673 IF( med_diag%MDET%dgsave ) THEN 5674 5674 CALL iom_put( "MDET" , fdd2d ) 5675 CALL wrk_dealloc( jpi, jpj,fdd2d )5675 DEALLOCATE( fdd2d ) 5676 5676 ENDIF 5677 5677 IF( med_diag%AEOLIAN%dgsave ) THEN 5678 5678 CALL iom_put( "AEOLIAN" , ffetop2d ) 5679 CALL wrk_dealloc( jpi, jpj,ffetop2d )5679 DEALLOCATE( ffetop2d ) 5680 5680 ENDIF 5681 5681 IF( med_diag%BENTHIC%dgsave ) THEN 5682 5682 CALL iom_put( "BENTHIC" , ffebot2d ) 5683 CALL wrk_dealloc( jpi, jpj,ffebot2d )5683 DEALLOCATE( ffebot2d ) 5684 5684 ENDIF 5685 5685 IF( med_diag%SCAVENGE%dgsave ) THEN 5686 5686 CALL iom_put( "SCAVENGE" , ffescav2d ) 5687 CALL wrk_dealloc( jpi, jpj,ffescav2d )5687 DEALLOCATE( ffescav2d ) 5688 5688 ENDIF 5689 5689 !! 5690 5690 IF( med_diag%TOTREG_N%dgsave ) THEN 5691 5691 CALL iom_put( "TOTREG_N" , fregen2d ) 5692 CALL wrk_dealloc( jpi, jpj,fregen2d )5692 DEALLOCATE( fregen2d ) 5693 5693 ENDIF 5694 5694 IF( med_diag%TOTRG_SI%dgsave ) THEN 5695 5695 CALL iom_put( "TOTRG_SI" , fregensi2d ) 5696 CALL wrk_dealloc( jpi, jpj,fregensi2d )5696 DEALLOCATE( fregensi2d ) 5697 5697 ENDIF 5698 5698 !! 5699 5699 IF( med_diag%FASTN%dgsave ) THEN 5700 5700 CALL iom_put( "FASTN" , ftempn2d ) 5701 CALL wrk_dealloc( jpi, jpj,ftempn2d )5701 DEALLOCATE( ftempn2d ) 5702 5702 ENDIF 5703 5703 IF( med_diag%FASTSI%dgsave ) THEN 5704 5704 CALL iom_put( "FASTSI" , ftempsi2d ) 5705 CALL wrk_dealloc( jpi, jpj,ftempsi2d )5705 DEALLOCATE( ftempsi2d ) 5706 5706 ENDIF 5707 5707 IF( med_diag%FASTFE%dgsave ) THEN 5708 5708 CALL iom_put( "FASTFE" , ftempfe2d ) 5709 CALL wrk_dealloc( jpi, jpj,ftempfe2d )5709 DEALLOCATE( ftempfe2d ) 5710 5710 ENDIF 5711 5711 IF( med_diag%FASTC%dgsave ) THEN 5712 5712 CALL iom_put( "FASTC" , ftempc2d ) 5713 CALL wrk_dealloc( jpi, jpj, ftempc2d)5713 DEALLOCATE( ftempc2d) 5714 5714 ENDIF 5715 5715 IF( med_diag%FASTCA%dgsave ) THEN 5716 5716 CALL iom_put( "FASTCA" , ftempca2d ) 5717 CALL wrk_dealloc( jpi, jpj,ftempca2d )5717 DEALLOCATE( ftempca2d ) 5718 5718 ENDIF 5719 5719 !! 5720 5720 IF( med_diag%REMINN%dgsave ) THEN 5721 5721 CALL iom_put( "REMINN" , freminn2d ) 5722 CALL wrk_dealloc( jpi, jpj,freminn2d )5722 DEALLOCATE( freminn2d ) 5723 5723 ENDIF 5724 5724 IF( med_diag%REMINSI%dgsave ) THEN 5725 5725 CALL iom_put( "REMINSI" , freminsi2d ) 5726 CALL wrk_dealloc( jpi, jpj,freminsi2d )5726 DEALLOCATE( freminsi2d ) 5727 5727 ENDIF 5728 5728 IF( med_diag%REMINFE%dgsave ) THEN 5729 5729 CALL iom_put( "REMINFE" , freminfe2d ) 5730 CALL wrk_dealloc( jpi, jpj, freminfe2d)5730 DEALLOCATE( freminfe2d) 5731 5731 ENDIF 5732 5732 IF( med_diag%REMINC%dgsave ) THEN 5733 5733 CALL iom_put( "REMINC" , freminc2d ) 5734 CALL wrk_dealloc( jpi, jpj,freminc2d )5734 DEALLOCATE( freminc2d ) 5735 5735 ENDIF 5736 5736 IF( med_diag%REMINCA%dgsave ) THEN 5737 5737 CALL iom_put( "REMINCA" , freminca2d ) 5738 CALL wrk_dealloc( jpi, jpj,freminca2d )5738 DEALLOCATE( freminca2d ) 5739 5739 ENDIF 5740 5740 IF( med_diag%SEAFLRN%dgsave ) THEN … … 5758 5758 IF( med_diag%RIV_N%dgsave ) THEN 5759 5759 CALL iom_put( "RIV_N" , rivn2d ) 5760 CALL wrk_dealloc( jpi, jpj,rivn2d )5760 DEALLOCATE( rivn2d ) 5761 5761 ENDIF 5762 5762 IF( med_diag%RIV_SI%dgsave ) THEN 5763 5763 CALL iom_put( "RIV_SI" , rivsi2d ) 5764 CALL wrk_dealloc( jpi, jpj,rivsi2d )5764 DEALLOCATE( rivsi2d ) 5765 5765 ENDIF 5766 5766 IF( med_diag%RIV_C%dgsave ) THEN 5767 5767 CALL iom_put( "RIV_C" , rivc2d ) 5768 CALL wrk_dealloc( jpi, jpj,rivc2d )5768 DEALLOCATE( rivc2d ) 5769 5769 ENDIF 5770 5770 IF( med_diag%RIV_ALK%dgsave ) THEN 5771 5771 CALL iom_put( "RIV_ALK" , rivalk2d ) 5772 CALL wrk_dealloc( jpi, jpj, rivalk2d)5772 DEALLOCATE( rivalk2d) 5773 5773 ENDIF 5774 5774 IF( med_diag%DETC%dgsave ) THEN 5775 5775 CALL iom_put( "DETC" , fslowc2d ) 5776 CALL wrk_dealloc( jpi, jpj,fslowc2d )5776 DEALLOCATE( fslowc2d ) 5777 5777 ENDIF 5778 5778 !! 5779 5779 IF( med_diag%PN_LLOSS%dgsave ) THEN 5780 5780 CALL iom_put( "PN_LLOSS" , fdpn22d ) 5781 CALL wrk_dealloc( jpi, jpj,fdpn22d )5781 DEALLOCATE( fdpn22d ) 5782 5782 ENDIF 5783 5783 IF( med_diag%PD_LLOSS%dgsave ) THEN 5784 5784 CALL iom_put( "PD_LLOSS" , fdpd22d ) 5785 CALL wrk_dealloc( jpi, jpj,fdpd22d )5785 DEALLOCATE( fdpd22d ) 5786 5786 ENDIF 5787 5787 IF( med_diag%ZI_LLOSS%dgsave ) THEN 5788 5788 CALL iom_put( "ZI_LLOSS" , fdzmi22d ) 5789 CALL wrk_dealloc( jpi, jpj,fdzmi22d )5789 DEALLOCATE( fdzmi22d ) 5790 5790 ENDIF 5791 5791 IF( med_diag%ZE_LLOSS%dgsave ) THEN 5792 5792 CALL iom_put( "ZE_LLOSS" , fdzme22d ) 5793 CALL wrk_dealloc( jpi, jpj,fdzme22d )5793 DEALLOCATE( fdzme22d ) 5794 5794 ENDIF 5795 5795 IF( med_diag%ZI_MES_N%dgsave ) THEN 5796 5796 CALL iom_put( "ZI_MES_N" , zimesn2d ) 5797 CALL wrk_dealloc( jpi, jpj,zimesn2d )5797 DEALLOCATE( zimesn2d ) 5798 5798 ENDIF 5799 5799 IF( med_diag%ZI_MES_D%dgsave ) THEN 5800 5800 CALL iom_put( "ZI_MES_D" , zimesd2d ) 5801 CALL wrk_dealloc( jpi, jpj,zimesd2d )5801 DEALLOCATE( zimesd2d ) 5802 5802 ENDIF 5803 5803 IF( med_diag%ZI_MES_C%dgsave ) THEN 5804 5804 CALL iom_put( "ZI_MES_C" , zimesc2d ) 5805 CALL wrk_dealloc( jpi, jpj,zimesc2d )5805 DEALLOCATE( zimesc2d ) 5806 5806 ENDIF 5807 5807 IF( med_diag%ZI_MESDC%dgsave ) THEN 5808 5808 CALL iom_put( "ZI_MESDC" ,zimesdc2d ) 5809 CALL wrk_dealloc( jpi, jpj,zimesdc2d )5809 DEALLOCATE( zimesdc2d ) 5810 5810 ENDIF 5811 5811 IF( med_diag%ZI_EXCR%dgsave ) THEN 5812 5812 CALL iom_put( "ZI_EXCR" , ziexcr2d ) 5813 CALL wrk_dealloc( jpi, jpj,ziexcr2d )5813 DEALLOCATE( ziexcr2d ) 5814 5814 ENDIF 5815 5815 IF( med_diag%ZI_RESP%dgsave ) THEN 5816 5816 CALL iom_put( "ZI_RESP" , ziresp2d ) 5817 CALL wrk_dealloc( jpi, jpj,ziresp2d )5817 DEALLOCATE( ziresp2d ) 5818 5818 ENDIF 5819 5819 IF( med_diag%ZI_GROW%dgsave ) THEN 5820 5820 CALL iom_put( "ZI_GROW" , zigrow2d ) 5821 CALL wrk_dealloc( jpi, jpj,zigrow2d )5821 DEALLOCATE( zigrow2d ) 5822 5822 ENDIF 5823 5823 IF( med_diag%ZE_MES_N%dgsave ) THEN 5824 5824 CALL iom_put( "ZE_MES_N" , zemesn2d ) 5825 CALL wrk_dealloc( jpi, jpj,zemesn2d )5825 DEALLOCATE( zemesn2d ) 5826 5826 ENDIF 5827 5827 IF( med_diag%ZE_MES_D%dgsave ) THEN 5828 5828 CALL iom_put( "ZE_MES_D" , zemesd2d ) 5829 CALL wrk_dealloc( jpi, jpj,zemesd2d )5829 DEALLOCATE( zemesd2d ) 5830 5830 ENDIF 5831 5831 IF( med_diag%ZE_MES_C%dgsave ) THEN 5832 5832 CALL iom_put( "ZE_MES_C" , zemesc2d ) 5833 CALL wrk_dealloc( jpi, jpj,zemesc2d )5833 DEALLOCATE( zemesc2d ) 5834 5834 ENDIF 5835 5835 IF( med_diag%ZE_MESDC%dgsave ) THEN 5836 5836 CALL iom_put( "ZE_MESDC" , zemesdc2d ) 5837 CALL wrk_dealloc( jpi, jpj,zemesdc2d )5837 DEALLOCATE( zemesdc2d ) 5838 5838 ENDIF 5839 5839 IF( med_diag%ZE_EXCR%dgsave ) THEN 5840 5840 CALL iom_put( "ZE_EXCR" , zeexcr2d ) 5841 CALL wrk_dealloc( jpi, jpj,zeexcr2d )5841 DEALLOCATE( zeexcr2d ) 5842 5842 ENDIF 5843 5843 IF( med_diag%ZE_RESP%dgsave ) THEN 5844 5844 CALL iom_put( "ZE_RESP" , zeresp2d ) 5845 CALL wrk_dealloc( jpi, jpj,zeresp2d )5845 DEALLOCATE( zeresp2d ) 5846 5846 ENDIF 5847 5847 IF( med_diag%ZE_GROW%dgsave ) THEN 5848 5848 CALL iom_put( "ZE_GROW" , zegrow2d ) 5849 CALL wrk_dealloc( jpi, jpj,zegrow2d )5849 DEALLOCATE( zegrow2d ) 5850 5850 ENDIF 5851 5851 IF( med_diag%MDETC%dgsave ) THEN 5852 5852 CALL iom_put( "MDETC" , mdetc2d ) 5853 CALL wrk_dealloc( jpi, jpj,mdetc2d )5853 DEALLOCATE( mdetc2d ) 5854 5854 ENDIF 5855 5855 IF( med_diag%GMIDC%dgsave ) THEN 5856 5856 CALL iom_put( "GMIDC" , gmidc2d ) 5857 CALL wrk_dealloc( jpi, jpj,gmidc2d )5857 DEALLOCATE( gmidc2d ) 5858 5858 ENDIF 5859 5859 IF( med_diag%GMEDC%dgsave ) THEN 5860 5860 CALL iom_put( "GMEDC" , gmedc2d ) 5861 CALL wrk_dealloc( jpi, jpj,gmedc2d )5861 DEALLOCATE( gmedc2d ) 5862 5862 ENDIF 5863 5863 IF( med_diag%IBEN_N%dgsave ) THEN 5864 5864 CALL iom_put( "IBEN_N" , iben_n2d ) 5865 CALL wrk_dealloc( jpi, jpj,iben_n2d )5865 DEALLOCATE( iben_n2d ) 5866 5866 ENDIF 5867 5867 IF( med_diag%IBEN_FE%dgsave ) THEN 5868 5868 CALL iom_put( "IBEN_FE" , iben_fe2d ) 5869 CALL wrk_dealloc( jpi, jpj,iben_fe2d )5869 DEALLOCATE( iben_fe2d ) 5870 5870 ENDIF 5871 5871 IF( med_diag%IBEN_C%dgsave ) THEN 5872 5872 CALL iom_put( "IBEN_C" , iben_c2d ) 5873 CALL wrk_dealloc( jpi, jpj,iben_c2d )5873 DEALLOCATE( iben_c2d ) 5874 5874 ENDIF 5875 5875 IF( med_diag%IBEN_SI%dgsave ) THEN 5876 5876 CALL iom_put( "IBEN_SI" , iben_si2d ) 5877 CALL wrk_dealloc( jpi, jpj,iben_si2d )5877 DEALLOCATE( iben_si2d ) 5878 5878 ENDIF 5879 5879 IF( med_diag%IBEN_CA%dgsave ) THEN 5880 5880 CALL iom_put( "IBEN_CA" , iben_ca2d ) 5881 CALL wrk_dealloc( jpi, jpj,iben_ca2d )5881 DEALLOCATE( iben_ca2d ) 5882 5882 ENDIF 5883 5883 IF( med_diag%OBEN_N%dgsave ) THEN 5884 5884 CALL iom_put( "OBEN_N" , oben_n2d ) 5885 CALL wrk_dealloc( jpi, jpj,oben_n2d )5885 DEALLOCATE( oben_n2d ) 5886 5886 ENDIF 5887 5887 IF( med_diag%OBEN_FE%dgsave ) THEN 5888 5888 CALL iom_put( "OBEN_FE" , oben_fe2d ) 5889 CALL wrk_dealloc( jpi, jpj,oben_fe2d )5889 DEALLOCATE( oben_fe2d ) 5890 5890 ENDIF 5891 5891 IF( med_diag%OBEN_C%dgsave ) THEN 5892 5892 CALL iom_put( "OBEN_C" , oben_c2d ) 5893 CALL wrk_dealloc( jpi, jpj,oben_c2d )5893 DEALLOCATE( oben_c2d ) 5894 5894 ENDIF 5895 5895 IF( med_diag%OBEN_SI%dgsave ) THEN 5896 5896 CALL iom_put( "OBEN_SI" , oben_si2d ) 5897 CALL wrk_dealloc( jpi, jpj,oben_si2d )5897 DEALLOCATE( oben_si2d ) 5898 5898 ENDIF 5899 5899 IF( med_diag%OBEN_CA%dgsave ) THEN 5900 5900 CALL iom_put( "OBEN_CA" , oben_ca2d ) 5901 CALL wrk_dealloc( jpi, jpj,oben_ca2d )5901 DEALLOCATE( oben_ca2d ) 5902 5902 ENDIF 5903 5903 IF( med_diag%SFR_OCAL%dgsave ) THEN 5904 5904 CALL iom_put( "SFR_OCAL" , sfr_ocal2d ) 5905 CALL wrk_dealloc( jpi, jpj,sfr_ocal2d )5905 DEALLOCATE( sfr_ocal2d ) 5906 5906 ENDIF 5907 5907 IF( med_diag%SFR_OARG%dgsave ) THEN 5908 5908 CALL iom_put( "SFR_OARG" , sfr_oarg2d ) 5909 CALL wrk_dealloc( jpi, jpj,sfr_oarg2d )5909 DEALLOCATE( sfr_oarg2d ) 5910 5910 ENDIF 5911 5911 IF( med_diag%LYSO_CA%dgsave ) THEN 5912 5912 CALL iom_put( "LYSO_CA" , lyso_ca2d ) 5913 CALL wrk_dealloc( jpi, jpj,lyso_ca2d )5913 DEALLOCATE( lyso_ca2d ) 5914 5914 ENDIF 5915 5915 # endif … … 5918 5918 IF( med_diag%TPP3%dgsave ) THEN 5919 5919 CALL iom_put( "TPP3" , tpp3d ) 5920 CALL wrk_dealloc( jpi, jpj, jpk,tpp3d )5920 DEALLOCATE( tpp3d ) 5921 5921 ENDIF 5922 5922 IF( med_diag%DETFLUX3%dgsave ) THEN 5923 5923 CALL iom_put( "DETFLUX3" , detflux3d ) 5924 CALL wrk_dealloc( jpi, jpj, jpk,detflux3d )5924 DEALLOCATE( detflux3d ) 5925 5925 ENDIF 5926 5926 IF( med_diag%REMIN3N%dgsave ) THEN 5927 5927 CALL iom_put( "REMIN3N" , remin3dn ) 5928 CALL wrk_dealloc( jpi, jpj, jpk,remin3dn )5928 DEALLOCATE( remin3dn ) 5929 5929 ENDIF 5930 5930 # if defined key_roam … … 5939 5939 IF( med_diag%INTDISSIC%dgsave ) THEN 5940 5940 CALL iom_put( "INTDISSIC" , intdissic ) 5941 CALL wrk_dealloc( jpi, jpj,intdissic )5941 DEALLOCATE( intdissic ) 5942 5942 ENDIF 5943 5943 IF( med_diag%INTDISSIN%dgsave ) THEN 5944 5944 CALL iom_put( "INTDISSIN" , intdissin ) 5945 CALL wrk_dealloc( jpi, jpj,intdissin )5945 DEALLOCATE( intdissin ) 5946 5946 ENDIF 5947 5947 IF( med_diag%INTDISSISI%dgsave ) THEN 5948 5948 CALL iom_put( "INTDISSISI" , intdissisi ) 5949 CALL wrk_dealloc( jpi, jpj,intdissisi )5949 DEALLOCATE( intdissisi ) 5950 5950 ENDIF 5951 5951 IF( med_diag%INTTALK%dgsave ) THEN 5952 5952 CALL iom_put( "INTTALK" , inttalk ) 5953 CALL wrk_dealloc( jpi, jpj,inttalk )5953 DEALLOCATE( inttalk ) 5954 5954 ENDIF 5955 5955 IF( med_diag%O2min%dgsave ) THEN 5956 5956 CALL iom_put( "O2min" , o2min ) 5957 CALL wrk_dealloc( jpi, jpj,o2min )5957 DEALLOCATE( o2min ) 5958 5958 ENDIF 5959 5959 IF( med_diag%ZO2min%dgsave ) THEN 5960 5960 CALL iom_put( "ZO2min" , zo2min ) 5961 CALL wrk_dealloc( jpi, jpj,zo2min )5961 DEALLOCATE( zo2min ) 5962 5962 ENDIF 5963 5963 IF( med_diag%FBDDTALK%dgsave ) THEN 5964 5964 CALL iom_put( "FBDDTALK" , fbddtalk ) 5965 CALL wrk_dealloc( jpi, jpj,fbddtalk )5965 DEALLOCATE( fbddtalk ) 5966 5966 ENDIF 5967 5967 IF( med_diag%FBDDTDIC%dgsave ) THEN 5968 5968 CALL iom_put( "FBDDTDIC" , fbddtdic ) 5969 CALL wrk_dealloc( jpi, jpj,fbddtdic )5969 DEALLOCATE( fbddtdic ) 5970 5970 ENDIF 5971 5971 IF( med_diag%FBDDTDIFE%dgsave ) THEN 5972 5972 CALL iom_put( "FBDDTDIFE" , fbddtdife ) 5973 CALL wrk_dealloc( jpi, jpj,fbddtdife )5973 DEALLOCATE( fbddtdife ) 5974 5974 ENDIF 5975 5975 IF( med_diag%FBDDTDIN%dgsave ) THEN 5976 5976 CALL iom_put( "FBDDTDIN" , fbddtdin ) 5977 CALL wrk_dealloc( jpi, jpj,fbddtdin )5977 DEALLOCATE( fbddtdin ) 5978 5978 ENDIF 5979 5979 IF( med_diag%FBDDTDISI%dgsave ) THEN 5980 5980 CALL iom_put( "FBDDTDISI" , fbddtdisi ) 5981 CALL wrk_dealloc( jpi, jpj,fbddtdisi )5981 DEALLOCATE( fbddtdisi ) 5982 5982 ENDIF 5983 5983 !! … … 5985 5985 IF( med_diag%TPPD3%dgsave ) THEN 5986 5986 CALL iom_put( "TPPD3" , tppd3 ) 5987 CALL wrk_dealloc( jpi, jpj, jpk,tppd3 )5987 DEALLOCATE( tppd3 ) 5988 5988 ENDIF 5989 5989 IF( med_diag%BDDTALK3%dgsave ) THEN 5990 5990 CALL iom_put( "BDDTALK3" , bddtalk3 ) 5991 CALL wrk_dealloc( jpi, jpj, jpk,bddtalk3 )5991 DEALLOCATE( bddtalk3 ) 5992 5992 ENDIF 5993 5993 IF( med_diag%BDDTDIC3%dgsave ) THEN 5994 5994 CALL iom_put( "BDDTDIC3" , bddtdic3 ) 5995 CALL wrk_dealloc( jpi, jpj, jpk,bddtdic3 )5995 DEALLOCATE( bddtdic3 ) 5996 5996 ENDIF 5997 5997 IF( med_diag%BDDTDIFE3%dgsave ) THEN 5998 5998 CALL iom_put( "BDDTDIFE3" , bddtdife3 ) 5999 CALL wrk_dealloc( jpi, jpj, jpk,bddtdife3 )5999 DEALLOCATE( bddtdife3 ) 6000 6000 ENDIF 6001 6001 IF( med_diag%BDDTDIN3%dgsave ) THEN 6002 6002 CALL iom_put( "BDDTDIN3" , bddtdin3 ) 6003 CALL wrk_dealloc( jpi, jpj, jpk,bddtdin3 )6003 DEALLOCATE( bddtdin3 ) 6004 6004 ENDIF 6005 6005 IF( med_diag%BDDTDISI3%dgsave ) THEN 6006 6006 CALL iom_put( "BDDTDISI3" , bddtdisi3 ) 6007 CALL wrk_dealloc( jpi, jpj, jpk,bddtdisi3 )6007 DEALLOCATE( bddtdisi3 ) 6008 6008 ENDIF 6009 6009 IF( med_diag%FD_NIT3%dgsave ) THEN 6010 6010 CALL iom_put( "FD_NIT3" , fd_nit3 ) 6011 CALL wrk_dealloc( jpi, jpj, jpk,fd_nit3 )6011 DEALLOCATE( fd_nit3 ) 6012 6012 ENDIF 6013 6013 IF( med_diag%FD_SIL3%dgsave ) THEN 6014 6014 CALL iom_put( "FD_SIL3" , fd_sil3 ) 6015 CALL wrk_dealloc( jpi, jpj, jpk,fd_sil3 )6015 DEALLOCATE( fd_sil3 ) 6016 6016 ENDIF 6017 6017 IF( med_diag%FD_CAL3%dgsave ) THEN 6018 6018 CALL iom_put( "FD_CAL3" , fd_cal3 ) 6019 CALL wrk_dealloc( jpi, jpj, jpk,fd_cal3 )6019 DEALLOCATE( fd_cal3 ) 6020 6020 ENDIF 6021 6021 IF( med_diag%FD_CAR3%dgsave ) THEN 6022 6022 CALL iom_put( "FD_CAR3" , fd_car3 ) 6023 CALL wrk_dealloc( jpi, jpj, jpk,fd_car3 )6023 DEALLOCATE( fd_car3 ) 6024 6024 ENDIF 6025 6025 IF( med_diag%CO33%dgsave ) THEN … … 6034 6034 IF( med_diag%EXPC3%dgsave ) THEN 6035 6035 CALL iom_put( "EXPC3" , expc3 ) 6036 CALL wrk_dealloc( jpi, jpj, jpk,expc3 )6036 DEALLOCATE( expc3 ) 6037 6037 ENDIF 6038 6038 IF( med_diag%EXPN3%dgsave ) THEN 6039 6039 CALL iom_put( "EXPN3" , expn3 ) 6040 CALL wrk_dealloc( jpi, jpj, jpk,expn3 )6040 DEALLOCATE( expn3 ) 6041 6041 ENDIF 6042 6042 IF( med_diag%DCALC3%dgsave ) THEN 6043 6043 CALL iom_put( "DCALC3" , dcalc3 ) 6044 CALL wrk_dealloc( jpi, jpj, jpk,dcalc3 )6044 DEALLOCATE( dcalc3 ) 6045 6045 ENDIF 6046 6046 IF( med_diag%FEDISS3%dgsave ) THEN 6047 6047 CALL iom_put( "FEDISS3" , fediss3 ) 6048 CALL wrk_dealloc( jpi, jpj, jpk,fediss3 )6048 DEALLOCATE( fediss3 ) 6049 6049 ENDIF 6050 6050 IF( med_diag%FESCAV3%dgsave ) THEN 6051 6051 CALL iom_put( "FESCAV3" , fescav3 ) 6052 CALL wrk_dealloc( jpi, jpj, jpk,fescav3 )6052 DEALLOCATE( fescav3 ) 6053 6053 ENDIF 6054 6054 IF( med_diag%MIGRAZP3%dgsave ) THEN 6055 6055 CALL iom_put( "MIGRAZP3" , migrazp3 ) 6056 CALL wrk_dealloc( jpi, jpj, jpk,migrazp3 )6056 DEALLOCATE( migrazp3 ) 6057 6057 ENDIF 6058 6058 IF( med_diag%MIGRAZD3%dgsave ) THEN 6059 6059 CALL iom_put( "MIGRAZD3" , migrazd3 ) 6060 CALL wrk_dealloc( jpi, jpj, jpk,migrazd3 )6060 DEALLOCATE( migrazd3 ) 6061 6061 ENDIF 6062 6062 IF( med_diag%MEGRAZP3%dgsave ) THEN 6063 6063 CALL iom_put( "MEGRAZP3" , megrazp3 ) 6064 CALL wrk_dealloc( jpi, jpj, jpk,megrazp3 )6064 DEALLOCATE( megrazp3 ) 6065 6065 ENDIF 6066 6066 IF( med_diag%MEGRAZD3%dgsave ) THEN 6067 6067 CALL iom_put( "MEGRAZD3" , megrazd3 ) 6068 CALL wrk_dealloc( jpi, jpj, jpk,megrazd3 )6068 DEALLOCATE( megrazd3 ) 6069 6069 ENDIF 6070 6070 IF( med_diag%MEGRAZZ3%dgsave ) THEN 6071 6071 CALL iom_put( "MEGRAZZ3" , megrazz3 ) 6072 CALL wrk_dealloc( jpi, jpj, jpk,megrazz3 )6072 DEALLOCATE( megrazz3 ) 6073 6073 ENDIF 6074 6074 IF( med_diag%O2SAT3%dgsave ) THEN 6075 6075 CALL iom_put( "O2SAT3" , o2sat3 ) 6076 CALL wrk_dealloc( jpi, jpj, jpk,o2sat3 )6076 DEALLOCATE( o2sat3 ) 6077 6077 ENDIF 6078 6078 IF( med_diag%PBSI3%dgsave ) THEN 6079 6079 CALL iom_put( "PBSI3" , pbsi3 ) 6080 CALL wrk_dealloc( jpi, jpj, jpk,pbsi3 )6080 DEALLOCATE( pbsi3 ) 6081 6081 ENDIF 6082 6082 IF( med_diag%PCAL3%dgsave ) THEN 6083 6083 CALL iom_put( "PCAL3" , pcal3 ) 6084 CALL wrk_dealloc( jpi, jpj, jpk,pcal3 )6084 DEALLOCATE( pcal3 ) 6085 6085 ENDIF 6086 6086 IF( med_diag%REMOC3%dgsave ) THEN 6087 6087 CALL iom_put( "REMOC3" , remoc3 ) 6088 CALL wrk_dealloc( jpi, jpj, jpk,remoc3 )6088 DEALLOCATE( remoc3 ) 6089 6089 ENDIF 6090 6090 IF( med_diag%PNLIMJ3%dgsave ) THEN 6091 6091 CALL iom_put( "PNLIMJ3" , pnlimj3 ) 6092 CALL wrk_dealloc( jpi, jpj, jpk,pnlimj3 )6092 DEALLOCATE( pnlimj3 ) 6093 6093 ENDIF 6094 6094 IF( med_diag%PNLIMN3%dgsave ) THEN 6095 6095 CALL iom_put( "PNLIMN3" , pnlimn3 ) 6096 CALL wrk_dealloc( jpi, jpj, jpk,pnlimn3 )6096 DEALLOCATE( pnlimn3 ) 6097 6097 ENDIF 6098 6098 IF( med_diag%PNLIMFE3%dgsave ) THEN 6099 6099 CALL iom_put( "PNLIMFE3" , pnlimfe3 ) 6100 CALL wrk_dealloc( jpi, jpj, jpk,pnlimfe3 )6100 DEALLOCATE( pnlimfe3 ) 6101 6101 ENDIF 6102 6102 IF( med_diag%PDLIMJ3%dgsave ) THEN 6103 6103 CALL iom_put( "PDLIMJ3" , pdlimj3 ) 6104 CALL wrk_dealloc( jpi, jpj, jpk,pdlimj3 )6104 DEALLOCATE( pdlimj3 ) 6105 6105 ENDIF 6106 6106 IF( med_diag%PDLIMN3%dgsave ) THEN 6107 6107 CALL iom_put( "PDLIMN3" , pdlimn3 ) 6108 CALL wrk_dealloc( jpi, jpj, jpk,pdlimn3 )6108 DEALLOCATE( pdlimn3 ) 6109 6109 ENDIF 6110 6110 IF( med_diag%PDLIMFE3%dgsave ) THEN 6111 6111 CALL iom_put( "PDLIMFE3" , pdlimfe3 ) 6112 CALL wrk_dealloc( jpi, jpj, jpk,pdlimfe3 )6112 DEALLOCATE( pdlimfe3 ) 6113 6113 ENDIF 6114 6114 IF( med_diag%PDLIMSI3%dgsave ) THEN 6115 6115 CALL iom_put( "PDLIMSI3" , pdlimsi3 ) 6116 CALL wrk_dealloc( jpi, jpj, jpk,pdlimsi3 )6116 DEALLOCATE( pdlimsi3 ) 6117 6117 ENDIF 6118 6118 6119 6119 # endif 6120 6120 6121 CALL wrk_dealloc( jpi, jpj,zw2d )6121 DEALLOCATE( zw2d ) 6122 6122 6123 6123 ENDIF ! end of ln_diatrc option
Note: See TracChangeset
for help on using the changeset viewer.