Changeset 3540 for LMDZ6/trunk/libf/phylmd/phyaqua_mod.F90
- Timestamp:
- Jun 25, 2019, 4:50:13 PM (5 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
LMDZ6/trunk/libf/phylmd/phyaqua_mod.F90
-
Property
svn:keywords
set to
Id
r3531 r3540 1 ! 2 ! $Id$ 3 ! 1 4 MODULE phyaqua_mod 2 5 ! Routines complementaires pour la physique planetaire. … … 34 37 USE mod_grid_phy_lmdz 35 38 USE ioipsl_getin_p_mod, ONLY : getin_p 39 USE phys_cal_mod , ONLY: year_len 36 40 IMPLICIT NONE 37 41 … … 72 76 CHARACTER *2 cnbl 73 77 74 REAL phy_nat(nlon, 360)75 REAL phy_alb(nlon, 360)76 REAL phy_sst(nlon, 360)77 REAL phy_bil(nlon, 360)78 REAL phy_rug(nlon, 360)79 REAL phy_ice(nlon, 360)80 REAL phy_fter(nlon, 360)81 REAL phy_foce(nlon, 360)82 REAL phy_fsic(nlon, 360)83 REAL phy_flic(nlon, 360)78 REAL phy_nat(nlon, year_len) 79 REAL phy_alb(nlon, year_len) 80 REAL phy_sst(nlon, year_len) 81 REAL phy_bil(nlon, year_len) 82 REAL phy_rug(nlon, year_len) 83 REAL phy_ice(nlon, year_len) 84 REAL phy_fter(nlon, year_len) 85 REAL phy_foce(nlon, year_len) 86 REAL phy_fsic(nlon, year_len) 87 REAL phy_flic(nlon, year_len) 84 88 85 89 INTEGER, SAVE :: read_climoz = 0 ! read ozone climatology … … 125 129 ! ------------------------------- 126 130 131 132 if (year_len.ne.360) then 133 write (*,*) 'iniaqua: 360 day calendar is required !' 134 stop 135 endif 127 136 128 137 type_aqua = iflag_phys/100 … … 223 232 ! endif !alb_ocean 224 233 225 DO i = 1, 360234 DO i = 1, year_len 226 235 ! IM Terraplanete phy_sst(:,i) = 260.+50.*cos(rlatd(:))**2 227 236 ! IM ajout calcul profil sst selon le cas considere (cf. FBr) … … 544 553 USE mod_grid_phy_lmdz, ONLY: klon_glo 545 554 USE mod_phys_lmdz_transfert_para, ONLY: gather 555 USE phys_cal_mod, ONLY: year_len 546 556 IMPLICIT NONE 547 557 include "netcdf.inc" 548 558 549 559 INTEGER, INTENT (IN) :: klon 550 REAL, INTENT (IN) :: phy_nat(klon, 360)551 REAL, INTENT (IN) :: phy_alb(klon, 360)552 REAL, INTENT (IN) :: phy_sst(klon, 360)553 REAL, INTENT (IN) :: phy_bil(klon, 360)554 REAL, INTENT (IN) :: phy_rug(klon, 360)555 REAL, INTENT (IN) :: phy_ice(klon, 360)556 REAL, INTENT (IN) :: phy_fter(klon, 360)557 REAL, INTENT (IN) :: phy_foce(klon, 360)558 REAL, INTENT (IN) :: phy_flic(klon, 360)559 REAL, INTENT (IN) :: phy_fsic(klon, 360)560 561 REAL :: phy_glo(klon_glo, 360) ! temporary variable, to store phy_***(:)560 REAL, INTENT (IN) :: phy_nat(klon, year_len) 561 REAL, INTENT (IN) :: phy_alb(klon, year_len) 562 REAL, INTENT (IN) :: phy_sst(klon, year_len) 563 REAL, INTENT (IN) :: phy_bil(klon, year_len) 564 REAL, INTENT (IN) :: phy_rug(klon, year_len) 565 REAL, INTENT (IN) :: phy_ice(klon, year_len) 566 REAL, INTENT (IN) :: phy_fter(klon, year_len) 567 REAL, INTENT (IN) :: phy_foce(klon, year_len) 568 REAL, INTENT (IN) :: phy_flic(klon, year_len) 569 REAL, INTENT (IN) :: phy_fsic(klon, year_len) 570 571 REAL :: phy_glo(klon_glo, year_len) ! temporary variable, to store phy_***(:) 562 572 ! on the whole physics grid 563 573 INTEGER :: k … … 665 675 666 676 ! write the 'times' 667 DO k = 1, 360677 DO k = 1, year_len 668 678 #ifdef NC_DOUBLE 669 679 ierr = nf_put_var1_double(nid, id_tim, k, dble(k)) … … 809 819 SUBROUTINE profil_sst(nlon, rlatd, type_profil, phy_sst) 810 820 USE dimphy 821 USE phys_cal_mod , ONLY: year_len 811 822 IMPLICIT NONE 812 823 813 824 INTEGER nlon, type_profil, i, k, j 814 REAL :: rlatd(nlon), phy_sst(nlon, 360)825 REAL :: rlatd(nlon), phy_sst(nlon, year_len) 815 826 INTEGER imn, imx, amn, amx, kmn, kmx 816 827 INTEGER p, pplus, nlat_max … … 825 836 ENDIF 826 837 WRITE (*, *) ' profil_sst: type_profil=', type_profil 827 DO i = 1, 360838 DO i = 1, year_len 828 839 ! phy_sst(:,i) = 260.+50.*cos(rlatd(:))**2 829 840 … … 1018 1029 imx = 1 1019 1030 kmx = 1 1020 DO k = 1, 3601031 DO k = 1, year_len 1021 1032 DO i = 2, nlon 1022 1033 IF (phy_sst(i,k)<amn) THEN -
Property
svn:keywords
set to
Note: See TracChangeset
for help on using the changeset viewer.