Changeset 2545 for LMDZ5/trunk/libf/phylmd/cpl_mod.F90
- Timestamp:
- Jun 7, 2016, 9:46:53 AM (9 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
LMDZ5/trunk/libf/phylmd/cpl_mod.F90
r2538 r2545 52 52 REAL, ALLOCATABLE, DIMENSION(:,:), SAVE :: cpl_windsp 53 53 !$OMP THREADPRIVATE(cpl_windsp) 54 REAL, ALLOCATABLE, DIMENSION(:,:), SAVE :: cpl_sens_rain, cpl_sens_snow55 !$OMP THREADPRIVATE(cpl_sens_rain, cpl_sens_snow)56 54 REAL, ALLOCATABLE, DIMENSION(:,:), SAVE :: cpl_taumod 57 55 !$OMP THREADPRIVATE(cpl_taumod) … … 92 90 REAL, ALLOCATABLE, DIMENSION(:,:), SAVE :: cpl_windsp2D 93 91 !$OMP THREADPRIVATE(cpl_windsp2D) 94 REAL, ALLOCATABLE, DIMENSION(:,:,:), SAVE :: cpl_sens_rain2D, cpl_sens_snow2D95 !$OMP THREADPRIVATE(cpl_sens_rain2D, cpl_sens_snow2D)96 92 REAL, ALLOCATABLE, DIMENSION(:,:), SAVE :: cpl_atm_co22D 97 93 !$OMP THREADPRIVATE(cpl_atm_co22D) … … 172 168 ALLOCATE(cpl_windsp(klon,2), stat = error) 173 169 sum_error = sum_error + error 174 ALLOCATE(cpl_sens_rain(klon,2), stat = error) 175 sum_error = sum_error + error 176 ALLOCATE(cpl_sens_snow(klon,2), stat = error) 170 ALLOCATE(cpl_taumod(klon,2), stat = error) 177 171 sum_error = sum_error + error 178 172 ALLOCATE(cpl_rriv2D(nbp_lon,jj_nb), stat=error) … … 537 531 SUBROUTINE cpl_send_ocean_fields(itime, knon, knindex, & 538 532 swdown, lwdown, fluxlat, fluxsens, & 539 precip_rain, precip_snow, evap, tsurf, fder, albsol, taux, tauy, windsp,& 540 sens_prec_liq, sens_prec_sol, lat_prec_liq, lat_prec_sol) 533 precip_rain, precip_snow, evap, tsurf, fder, albsol, taux, tauy, windsp) 541 534 ! 542 535 ! This subroutine cumulates some fields for each time-step during a coupling … … 559 552 REAL, DIMENSION(klon), INTENT(IN) :: evap, tsurf, fder, albsol 560 553 REAL, DIMENSION(klon), INTENT(IN) :: taux, tauy, windsp 561 REAL, DIMENSION(klon), INTENT(IN) :: sens_prec_liq, sens_prec_sol562 REAL, DIMENSION(klon), INTENT(IN) :: lat_prec_liq, lat_prec_sol563 554 564 555 ! Local variables … … 592 583 cpl_tauy(1:knon,cpl_index) = 0.0 593 584 cpl_windsp(1:knon,cpl_index) = 0.0 594 cpl_sens_rain(1:knon,cpl_index) = 0.0595 cpl_sens_snow(1:knon,cpl_index) = 0.0596 585 cpl_taumod(1:knon,cpl_index) = 0.0 597 586 IF (carbon_cycle_cpl) cpl_atm_co2(1:knon,cpl_index) = 0.0 … … 625 614 cpl_windsp(ig,cpl_index) = cpl_windsp(ig,cpl_index) + & 626 615 windsp(ig) / REAL(nexca) 627 cpl_sens_rain(ig,cpl_index) = cpl_sens_rain(ig,cpl_index) + &628 sens_prec_liq(ig) / REAL(nexca)629 cpl_sens_snow(ig,cpl_index) = cpl_sens_snow(ig,cpl_index) + &630 sens_prec_sol(ig) / REAL(nexca)631 616 cpl_taumod(ig,cpl_index) = cpl_taumod(ig,cpl_index) + & 632 617 SQRT ( taux(ig)*taux(ig)+tauy(ig)*tauy(ig) ) / REAL (nexca) … … 669 654 sum_error = sum_error + error 670 655 ALLOCATE(cpl_windsp2D(nbp_lon,jj_nb), stat=error) 671 sum_error = sum_error + error672 ALLOCATE(cpl_sens_rain2D(nbp_lon,jj_nb,2), stat=error)673 sum_error = sum_error + error674 ALLOCATE(cpl_sens_snow2D(nbp_lon,jj_nb,2), stat=error)675 656 sum_error = sum_error + error 676 657 ALLOCATE(cpl_taumod2D(nbp_lon,jj_nb,2), stat=error) … … 725 706 knon, knindex) 726 707 727 CALL gath2cpl(cpl_sens_rain(:,cpl_index), cpl_sens_rain2D(:,:,cpl_index), &728 knon, knindex)729 730 CALL gath2cpl(cpl_sens_snow(:,cpl_index), cpl_sens_snow2D(:,:,cpl_index), &731 knon, knindex)732 733 708 CALL gath2cpl(cpl_taumod(:,cpl_index), cpl_taumod2D(:,:,cpl_index), & 734 709 knon, knindex) … … 747 722 pctsrf, lafin, rlon, rlat, & 748 723 swdown, lwdown, fluxlat, fluxsens, & 749 precip_rain, precip_snow, evap, tsurf, fder, albsol, taux, tauy,& 750 sens_prec_liq, sens_prec_sol, lat_prec_liq, lat_prec_sol) 724 precip_rain, precip_snow, evap, tsurf, fder, albsol, taux, tauy) 751 725 ! 752 726 ! This subroutine cumulates some fields for each time-step during a coupling … … 772 746 REAL, DIMENSION(klon), INTENT(IN) :: albsol, taux, tauy 773 747 REAL, DIMENSION(klon,nbsrf), INTENT(IN) :: pctsrf 774 REAL, DIMENSION(klon), INTENT(IN) :: sens_prec_liq, sens_prec_sol775 REAL, DIMENSION(klon), INTENT(IN) :: lat_prec_liq, lat_prec_sol776 748 LOGICAL, INTENT(IN) :: lafin 777 749 … … 806 778 cpl_taux(1:knon,cpl_index) = 0.0 807 779 cpl_tauy(1:knon,cpl_index) = 0.0 808 cpl_sens_rain(1:knon,cpl_index) = 0.0809 cpl_sens_snow(1:knon,cpl_index) = 0.0810 780 cpl_taumod(1:knon,cpl_index) = 0.0 811 781 ENDIF … … 836 806 cpl_tauy(ig,cpl_index) = cpl_tauy(ig,cpl_index) + & 837 807 tauy(ig) / REAL(nexca) 838 cpl_sens_rain(ig,cpl_index) = cpl_sens_rain(ig,cpl_index) + &839 sens_prec_liq(ig) / REAL(nexca)840 cpl_sens_snow(ig,cpl_index) = cpl_sens_snow(ig,cpl_index) + &841 sens_prec_sol(ig) / REAL(nexca)842 808 cpl_taumod(ig,cpl_index) = cpl_taumod(ig,cpl_index) + & 843 809 SQRT ( taux(ig)*taux(ig)+tauy(ig)*tauy(ig) ) / REAL(nexca) … … 873 839 sum_error = sum_error + error 874 840 ALLOCATE(cpl_windsp2D(nbp_lon,jj_nb), stat=error) 875 sum_error = sum_error + error876 ALLOCATE(cpl_sens_rain2D(nbp_lon,jj_nb,2), stat=error)877 sum_error = sum_error + error878 ALLOCATE(cpl_sens_snow2D(nbp_lon,jj_nb,2), stat=error)879 841 sum_error = sum_error + error 880 842 ALLOCATE(cpl_taumod2D(nbp_lon,jj_nb,2), stat=error) … … 927 889 928 890 CALL gath2cpl(cpl_tauy(:,cpl_index), cpl_tauy2D(:,:,cpl_index), & 929 knon, knindex)930 931 CALL gath2cpl(cpl_sens_rain(:,cpl_index), cpl_sens_rain2D(:,:,cpl_index), &932 knon, knindex)933 934 CALL gath2cpl(cpl_sens_snow(:,cpl_index), cpl_sens_snow2D(:,:,cpl_index), &935 891 knon, knindex) 936 892 … … 1122 1078 tab_flds(:,:,ids_nsfice) = cpl_nsol2D(:,:,2) 1123 1079 tab_flds(:,:,ids_dflxdt) = cpl_fder2D(:,:,2) 1124 tab_flds(:,:,ids_qraioc) = cpl_sens_rain2D(:,:,1)1125 tab_flds(:,:,ids_qsnooc) = cpl_sens_snow2D(:,:,1)1126 tab_flds(:,:,ids_qraiic) = cpl_sens_rain2D(:,:,2)1127 tab_flds(:,:,ids_qsnoic) = cpl_sens_snow2D(:,:,2)1128 1080 1129 1081 IF (version_ocean=='nemo') THEN … … 1327 1279 DEALLOCATE(cpl_taux2D, cpl_tauy2D, cpl_windsp2D, cpl_taumod2D, stat=error ) 1328 1280 sum_error = sum_error + error 1329 DEALLOCATE(cpl_sens_rain2D, cpl_sens_snow2D, stat=error)1330 sum_error = sum_error + error1331 1332 1281 1333 1282 IF (carbon_cycle_cpl) THEN
Note: See TracChangeset
for help on using the changeset viewer.