Changeset 2239 for LMDZ5/trunk
- Timestamp:
- Mar 23, 2015, 8:27:30 AM (10 years ago)
- Location:
- LMDZ5/trunk
- Files:
-
- 61 added
- 28 deleted
- 20 edited
- 10 copied
- 36 moved
Legend:
- Unmodified
- Added
- Removed
-
LMDZ5/trunk/bld.cfg
r2084 r2239 24 24 src::dyn %SRC_PATH/%DYN 25 25 src::phys %SRC_PATH/%PHYS 26 src::dyn_phys %DYN_PHYS 26 27 src::sisvat %SISVAT 27 28 src::rrtm %RRTM 28 29 src::grid %SRC_PATH/grid 29 src::filtrez % SRC_PATH/filtrez30 src:: bibio %SRC_PATH/bibio31 src::dyn3d_common % SRC_PATH/dyn3d_common30 src::filtrez %FILTRE 31 src::misc %SRC_PATH/misc 32 src::dyn3d_common %DYN_COMMON 32 33 src::cosp %COSP 33 34 src::ext_src %EXT_SRC -
LMDZ5/trunk/create_make_gcm
r2238 r2239 50 50 fi 51 51 echo "LOCAL_DIR=`echo $localdir`" 52 echo ' BIBIO = $(LIBF)/bibio'52 echo 'MISC = $(LIBF)/misc' 53 53 echo "FILTRE = filtre" 54 54 echo "PHYS = " 55 55 echo 'LIBPHY = $(LIBO)/libphy$(PHYS).a' 56 echo 'LIBDYN_PHY = $(LIBO)/libdynlmdz_phy$(PHYS).a' 56 57 echo 'DIRMAIN=dyn$(DIM)d$(FLAG_PARA)' 57 58 echo 'RM=rm' … … 62 63 echo 'L_DYN = -ldyn$(DIM)d$(FLAG_PARA) -ldyn3d_common' 63 64 echo 'L_FILTRE = -l$(FILTRE)' 65 echo 'L_DYN_PHY = -ldynlmdz_phy$(PHYS) ' 64 66 echo 'L_PHY = -lphy$(PHYS) ' 65 echo 'L_ BIBIO = -lbibio'67 echo 'L_MISC = -lmisc' 66 68 echo 'L_ADJNT =' 67 69 echo 'L_COSP = -lcosp' … … 89 91 echo 'DYN = dyn$(DIM)d' 90 92 echo 91 #echo 'main : chimie $(DYN) bibiophys $(OPTION_DEP) '92 echo 'main : $(DYN) bibio phys$(OPTION_DEP) '93 #echo 'main : chimie $(DYN) misc phys $(OPTION_DEP) ' 94 echo 'main : $(DYN) misc phys dyn_phy $(OPTION_DEP) ' 93 95 echo ' cd $(LIBO) ; $(RANLIB) lib*.a ; cd $(GCM) ;\' 94 96 echo ' cd $(LOCAL_DIR); \' 95 97 echo ' $(COMPILE90) $(LIBF)/$(DIRMAIN)/$(SOURCE) -o $(PROG).o ; \' 96 echo ' $(LINK) $(PROG).o -L$(LIBO) $(L_DYN) $(L_ ADJNT) $(L_COSP) $(L_PHY) $(L_DYN) $(L_DYN3D_COMMON) $(L_BIBIO) $(L_DYN3D_COMMON) $(L_PHY) $(L_DYN) $(L_FILTRE) $(OPLINK) $(OPTION_LINK) -o $(LOCAL_DIR)/$(PROG).e ; $(RM) $(PROG).o '98 echo ' $(LINK) $(PROG).o -L$(LIBO) $(L_DYN) $(L_DYN_PHY) $(L_ADJNT) $(L_COSP) $(L_PHY) $(L_DYN) $(L_DYN3D_COMMON) $(L_MISC) $(L_DYN3D_COMMON) $(L_PHY) $(L_DYN_PHY) $(L_DYN) $(L_FILTRE) $(OPLINK) $(OPTION_LINK) -o $(LOCAL_DIR)/$(PROG).e ; $(RM) $(PROG).o ' 97 99 echo 98 100 echo 'phys : $(LIBPHY)' … … 101 103 echo 'dyn1d :' 102 104 echo 105 echo 'dyn_phy: $(LIBDYN_PHYS)' 103 106 echo 104 107 #echo 'chimie : $(LIBO)/libchimie.a' 105 108 echo 106 echo ' bibio : $(LIBO)/libbibio.a'109 echo 'misc : $(LIBO)/libmisc.a' 107 110 echo 108 111 echo 'adjnt : $(LIBO)/libadjnt.a' -
LMDZ5/trunk/libf/dyn3d/advtrac.F90
r1987 r2239 79 79 80 80 IF(iadvtr.EQ.0) THEN 81 CALL initial0(ijp1llm,pbaruc)82 CALL initial0(ijmllm,pbarvc)81 pbaruc(:,:)=0 82 pbarvc(:,:)=0 83 83 ENDIF 84 84 -
LMDZ5/trunk/libf/dyn3d/fluxstokenc.F
r1907 r2239 83 83 84 84 IF(iadvtr.EQ.0) THEN 85 CALL initial0(ijp1llm,phic)86 CALL initial0(ijp1llm,tetac)87 CALL initial0(ijp1llm,pbaruc)88 CALL initial0(ijmllm,pbarvc)85 phic(:,:)=0 86 tetac(:,:)=0 87 pbaruc(:,:)=0 88 pbarvc(:,:)=0 89 89 ENDIF 90 90 -
LMDZ5/trunk/libf/dyn3d/leapfrog.F
r2221 r2239 437 437 #endif 438 438 ! #endif of #ifdef CPP_IOIPSL 439 #ifdef CPP_PHYS 439 440 CALL calfis( lafin , jD_cur, jH_cur, 440 441 $ ucov,vcov,teta,q,masse,ps,p,pk,phis,phi , 441 442 $ du,dv,dteta,dq, 442 443 $ flxw,dufi,dvfi,dtetafi,dqfi,dpfi ) 443 444 #endif 444 445 c ajout des tendances physiques: 445 446 c ------------------------------ -
LMDZ5/trunk/libf/dyn3d_common/diagedyn.F
r1952 r2239 53 53 c====================================================================== 54 54 55 USE control_mod, ONLY : planet_type 56 55 57 IMPLICIT NONE 56 58 C … … 60 62 #include "iniprint.h" 61 63 62 #ifdef CPP_EARTH 63 #include "../phylmd/YOMCST.h" 64 #include "../phylmd/YOETHF.h" 65 #endif 64 !#ifdef CPP_EARTH 65 !#include "../phylmd/YOMCST.h" 66 !#include "../phylmd/YOETHF.h" 67 !#endif 68 ! Ehouarn: for now set these parameters to what is in Earth physics... 69 ! (cf ../phylmd/suphel.h) 70 ! this should be generalized... 71 REAL,PARAMETER :: RCPD= 72 & 3.5*(1000.*(6.0221367E+23*1.380658E-23)/28.9644) 73 REAL,PARAMETER :: RCPV= 74 & 4.*(1000.*(6.0221367E+23*1.380658E-23)/18.0153) 75 REAL,PARAMETER :: RCS=RCPV 76 REAL,PARAMETER :: RCW=RCPV 77 REAL,PARAMETER :: RLSTT=2.8345E+6 78 REAL,PARAMETER :: RLVTT=2.5008E+6 79 ! 66 80 C 67 81 INTEGER imjmp1 … … 140 154 141 155 142 #ifdef CPP_EARTH 156 !#ifdef CPP_EARTH 157 IF (planet_type=="earth") THEN 158 143 159 c====================================================================== 144 160 C Compute Kinetic enrgy … … 314 330 ec_pre (idiag) = ec_tot 315 331 C 316 #else 317 write(lunout,*)'diagedyn: Needs Earth physics to function' 318 #endif 332 !#else 333 ELSE 334 write(lunout,*)'diagedyn: set to function with Earth parameters' 335 ENDIF ! of if (planet_type=="earth") 336 !#endif 319 337 ! #endif of #ifdef CPP_EARTH 320 338 RETURN -
LMDZ5/trunk/libf/dyn3dmem/call_calfis_mod.F90
r2221 r2239 227 227 !$OMP BARRIER 228 228 229 #ifdef CPP_PHYS 229 230 CALL calfis_loc(lafin ,jD_cur, jH_cur, & 230 231 ucov,vcov,teta,q,masse,ps,p,pk,phis,phi , & 231 232 du,dv,dteta,dq, & 232 233 flxw, dufi,dvfi,dtetafi,dqfi,dpfi ) 233 234 #endif 234 235 ijb=ij_begin 235 236 ije=ij_end -
LMDZ5/trunk/libf/dyn3dmem/gcm.F
r2230 r2239 13 13 USE parallel_lmdz 14 14 USE infotrac 15 USE mod_interface_dyn_phys 15 #ifdef CPP_PHYS 16 USE mod_interface_dyn_phys, ONLY: init_interface_dyn_phys 17 #endif 16 18 USE mod_hallo 17 19 USE Bands -
LMDZ5/trunk/libf/dyn3dpar/advtrac_p.F90
r1987 r2239 10 10 ! M.A Filiberti (04/2002) 11 11 ! 12 USE parallel_lmdz 13 USE Write_Field_p 14 USE Bands 12 USE parallel_lmdz, ONLY: ij_begin,ij_end,OMP_CHUNK,pole_nord,pole_sud,& 13 setdistrib 14 USE Write_Field_p, ONLY: WriteField_p 15 USE Bands, ONLY: jj_Nb_Caldyn,jj_Nb_vanleer 15 16 USE mod_hallo 16 17 USE Vampir -
LMDZ5/trunk/libf/dyn3dpar/covcont_p.F
r1907 r2239 1 1 SUBROUTINE covcont_p (klevel,ucov, vcov, ucont, vcont ) 2 USE parallel_lmdz 2 USE parallel_lmdz, ONLY: ij_begin,ij_end,OMP_CHUNK, 3 & pole_nord, pole_sud 3 4 IMPLICIT NONE 4 5 -
LMDZ5/trunk/libf/dyn3dpar/gcm.F
r2225 r2239 14 14 USE parallel_lmdz 15 15 USE infotrac 16 USE mod_interface_dyn_phys 16 #ifdef CPP_PHYS 17 USE mod_interface_dyn_phys, ONLY: init_interface_dyn_phys 18 #endif 17 19 USE mod_hallo 18 20 USE Bands -
LMDZ5/trunk/libf/dyn3dpar/leapfrog_p.F
r2221 r2239 825 825 cc$OMP BARRIER 826 826 ! CALL FTRACE_REGION_BEGIN("calfis") 827 #ifdef CPP_PHYS 827 828 CALL calfis_p(lafin ,jD_cur, jH_cur, 828 829 $ ucov,vcov,teta,q,masse,ps,p,pk,phis,phi , 829 830 $ du,dv,dteta,dq, 830 831 $ flxw, dufi,dvfi,dtetafi,dqfi,dpfi ) 832 #endif 831 833 ! CALL FTRACE_REGION_END("calfis") 832 834 ijb=ij_begin -
LMDZ5/trunk/libf/dyn3dpar/mod_hallo.F90
r1907 r2239 1 1 module mod_Hallo 2 USE parallel_lmdz 2 USE mod_const_mpi, ONLY: COMM_LMDZ,MPI_REAL_LMDZ 3 USE parallel_lmdz, ONLY: using_mpi, mpi_size, mpi_rank, omp_chunk, omp_rank, & 4 pole_nord, pole_sud, jj_begin, jj_end, & 5 jj_begin_para, jj_end_para 3 6 implicit none 4 7 logical,save :: use_mpi_alloc -
LMDZ5/trunk/libf/dyn3dpar/parallel_lmdz.F90
r2054 r2239 31 31 integer, save :: omp_size 32 32 !$OMP THREADPRIVATE(omp_rank) 33 34 ! Ehouarn: add "dummy variables" (which are in dyn3d_mem/parallel_lmdz.F90) 35 ! so that calfis_loc compiles even if using dyn3dpar 36 integer,save :: jjb_u 37 integer,save :: jje_u 38 integer,save :: jjnb_u 39 integer,save :: jjb_v 40 integer,save :: jje_v 41 integer,save :: jjnb_v 42 43 integer,save :: ijb_u 44 integer,save :: ije_u 45 integer,save :: ijnb_u 46 47 integer,save :: ijb_v 48 integer,save :: ije_v 49 integer,save :: ijnb_v 33 50 34 51 contains -
LMDZ5/trunk/libf/dynlmdz_phylmd/calfis_loc.F
r2233 r2239 36 36 USE IOPHY 37 37 #endif 38 #ifdef CPP_PARA 38 39 USE parallel_lmdz,ONLY:omp_chunk,using_mpi,jjb_u,jje_u,jjb_v,jje_v 39 40 USE Write_Field 40 41 Use Write_field_p 41 42 USE Times 43 #endif 42 44 USE infotrac, ONLY: nqtot, niadv, tname 43 45 USE control_mod, ONLY: planet_type, nsplit_phys 44 46 47 #ifdef CPP_PARA 45 48 IMPLICIT NONE 46 49 c======================================================================= … … 1186 1189 #endif 1187 1190 ! of #ifdef CPP_PHYS 1188 RETURN 1191 #endif 1192 ! of #ifdef CPP_PARA 1189 1193 END -
LMDZ5/trunk/libf/dynlmdz_phylmd/calfis_p.F
r2233 r2239 33 33 USE IOPHY 34 34 #endif 35 #ifdef CPP_PARA 35 36 USE parallel_lmdz, ONLY : omp_chunk, using_mpi 36 37 USE Write_Field 37 38 Use Write_field_p 38 39 USE Times 40 #endif 39 41 USE infotrac, ONLY: nqtot, niadv, tname 40 42 USE control_mod, ONLY: planet_type, nsplit_phys … … 140 142 REAL,INTENT(OUT) :: pdpsfi(iip1,jjp1) ! tendency on surface pressure (Pa/s) 141 143 144 #ifdef CPP_PARA 142 145 #ifdef CPP_PHYS 143 146 ! Ehouarn: for now calfis_p needs some informations from physics to compile … … 1114 1117 #endif 1115 1118 ! of #ifdef CPP_PHYS 1116 RETURN 1119 #endif 1120 ! of #ifdef CPP_PARA 1117 1121 END -
LMDZ5/trunk/libf/dynlmdz_phylmd/gr_dyn_fi_p.F
r2233 r2239 3 3 ! 4 4 SUBROUTINE gr_dyn_fi_p(nfield,im,jm,ngrid,pdyn,pfi) 5 #ifdef CPP_P HYS5 #ifdef CPP_PARA 6 6 ! Interface with parallel physics, 7 7 USE mod_interface_dyn_phys … … 40 40 c$OMP END DO NOWAIT 41 41 #endif 42 ! of #ifdef CPP_P HYS42 ! of #ifdef CPP_PARA 43 43 RETURN 44 44 END -
LMDZ5/trunk/libf/dynlmdz_phylmd/gr_fi_dyn_p.F
r2233 r2239 3 3 ! 4 4 SUBROUTINE gr_fi_dyn_p(nfield,ngrid,im,jm,pfi,pdyn) 5 #ifdef CPP_P HYS5 #ifdef CPP_PARA 6 6 ! Interface with parallel physics, 7 7 USE mod_interface_dyn_phys … … 52 52 c$OMP END DO NOWAIT 53 53 #endif 54 ! of #ifdef CPP_P HYS54 ! of #ifdef CPP_PARA 55 55 RETURN 56 56 END -
LMDZ5/trunk/libf/dynlmdz_phylmd/iniphysiq.F90
r2233 r2239 148 148 WRITE (lunout, *) ' in the dynamics punjours=', punjours 149 149 WRITE (lunout, *) ' but in the physics RDAY=', rday 150 IF (abs(rday-punjours)>0.01 ) THEN150 IF (abs(rday-punjours)>0.01*punjours) THEN 151 151 ! stop here if the relative difference is more than 1% 152 152 abort_message = 'length of day discrepancy' … … 158 158 WRITE (lunout, *) ' in the dynamics pg=', pg 159 159 WRITE (lunout, *) ' but in the physics RG=', rg 160 IF (abs(rg-pg)>0.01 ) THEN160 IF (abs(rg-pg)>0.01*pg) THEN 161 161 ! stop here if the relative difference is more than 1% 162 162 abort_message = 'gravity discrepancy' … … 168 168 WRITE (lunout, *) ' in the dynamics prad=', prad 169 169 WRITE (lunout, *) ' but in the physics RA=', ra 170 IF (abs(ra-prad)>0.01 ) THEN170 IF (abs(ra-prad)>0.01*prad) THEN 171 171 ! stop here if the relative difference is more than 1% 172 172 abort_message = 'planet radius discrepancy' … … 178 178 WRITE (lunout, *) ' in the dynamics pr=', pr 179 179 WRITE (lunout, *) ' but in the physics RD=', rd 180 IF (abs(rd-pr)>0.01 ) THEN180 IF (abs(rd-pr)>0.01*pr) THEN 181 181 ! stop here if the relative difference is more than 1% 182 182 abort_message = 'reduced gas constant discrepancy' … … 188 188 WRITE (lunout, *) ' in the dynamics pcpp=', pcpp 189 189 WRITE (lunout, *) ' but in the physics RCPD=', rcpd 190 IF (abs(rcpd-pcpp)>0.01 ) THEN190 IF (abs(rcpd-pcpp)>0.01*pcpp) THEN 191 191 ! stop here if the relative difference is more than 1% 192 192 abort_message = 'specific heat discrepancy' -
LMDZ5/trunk/libf/dynlmdz_phylmd/mod_interface_dyn_phys.F90
r2233 r2239 7 7 8 8 9 #ifdef CPP_P HYS9 #ifdef CPP_PARA 10 10 ! Interface with parallel physics, 11 11 CONTAINS … … 55 55 END SUBROUTINE Init_interface_dyn_phys 56 56 #endif 57 ! of #ifdef CPP_P HYS57 ! of #ifdef CPP_PARA 58 58 END MODULE mod_interface_dyn_phys -
LMDZ5/trunk/libf/dynlmdz_phymar/iniphysiq.F90
r2238 r2239 22 22 rg, & ! gravity 23 23 rcpp ! specific heat of the atmosphere 24 USE phyaqua_mod, ONLY: iniaqua24 ! USE phyaqua_mod, ONLY: iniaqua 25 25 IMPLICIT NONE 26 26 ! … … 149 149 150 150 ! Additional initializations for aquaplanets 151 ! $OMP PARALLEL152 if (iflag_phys>=100) then153 call iniaqua(klon_omp,rlatd,rlond,iflag_phys)154 endif155 ! $OMP END PARALLEL151 !!$OMP PARALLEL 152 ! if (iflag_phys>=100) then 153 ! call iniaqua(klon_omp,rlatd,rlond,iflag_phys) 154 ! endif 155 !!$OMP END PARALLEL 156 156 157 157 END -
LMDZ5/trunk/libf/grid/dimension/makdim
r2204 r2239 12 12 fi 13 13 14 if (($1 % 8 != 0)) && (( $# = 3 ))14 if (($1 % 8 != 0)) && (( $# == 3 )) 15 15 then 16 16 echo "The number of longitudes must be a multiple of 8." -
LMDZ5/trunk/libf/phylmd/dyn1d/1DUTILS.h
r2238 r2239 1 #include " ../dyn3d/conf_gcm.F90"2 #include " ../dyn3d_common/q_sat.F"1 #include "conf_gcm.F90" 2 #include "q_sat.F" 3 3 4 4 ! … … 443 443 ! Declarations: 444 444 ! ------------- 445 #include "dimensions.h"446 #include "comconst.h"447 #include "temps.h"445 include "dimensions.h" 446 include "comconst.h" 447 include "temps.h" 448 448 !!#include "control.h" 449 #include "logic.h"450 #include "netcdf.inc"449 include "logic.h" 450 include "netcdf.inc" 451 451 452 452 ! Arguments: … … 587 587 ! Declarations: 588 588 ! ------------- 589 #include "dimensions.h"590 #include "comconst.h"591 #include "temps.h"589 include "dimensions.h" 590 include "comconst.h" 591 include "temps.h" 592 592 !!#include "control.h" 593 #include "logic.h"594 #include "netcdf.inc"593 include "logic.h" 594 include "netcdf.inc" 595 595 596 596 ! Arguments: … … 894 894 IMPLICIT NONE 895 895 896 #include "dimensions.h"897 #include "paramet.h"896 include "dimensions.h" 897 include "paramet.h" 898 898 ! 899 899 !======================================================================= -
LMDZ5/trunk/libf/phylmd/dyn1d/lmdz1d.F90
r2238 r2239 1 #ifdef CPP_1D2 #include "../dyn3d/mod_const_mpi.F90"3 #include "../dyn3d_common/control_mod.F90"4 #include "../dyn3d_common/infotrac.F90"5 #include "../dyn3d_common/disvert.F90"1 !#ifdef CPP_1D 2 !#include "../dyn3d/mod_const_mpi.F90" 3 !#include "../dyn3d_common/control_mod.F90" 4 !#include "../dyn3d_common/infotrac.F90" 5 !#include "../dyn3d_common/disvert.F90" 6 6 7 7 … … 1052 1052 #include "1Dconv.h" 1053 1053 1054 #endif1055 1054 !#endif 1055 -
LMDZ5/trunk/libf/phylmd/etat0_netcdf.F90
r2227 r2239 5 5 ! 6 6 SUBROUTINE etat0_netcdf(ib, masque, phis, letat0) 7 #ifndef CPP_1D 7 8 ! 8 9 !------------------------------------------------------------------------------- … … 535 536 !#endif of #ifdef CPP_EARTH 536 537 RETURN 537 538 #endif 539 !#endif of ifndef CPP_1D 538 540 END SUBROUTINE etat0_netcdf 539 541 ! -
LMDZ5/trunk/libf/phylmd/init_phys_lmdz.F90
r1907 r2239 3 3 ! 4 4 SUBROUTINE Init_Phys_lmdz(iim,jjp1,llm,nb_proc,distrib) 5 USE mod_phys_lmdz_para 6 USE mod_grid_phy_lmdz 5 USE mod_phys_lmdz_para, ONLY: Init_phys_lmdz_para, klon_omp 6 USE mod_grid_phy_lmdz, ONLY: Init_grid_phy_lmdz, nbp_lev 7 7 USE dimphy, ONLY : Init_dimphy 8 8 USE infotrac, ONLY : type_trac -
LMDZ5/trunk/libf/phylmd/limit_netcdf.F90
r2159 r2239 4 4 ! 5 5 SUBROUTINE limit_netcdf(interbar, extrap, oldice, masque) 6 #ifndef CPP_1D 6 7 ! 7 8 !------------------------------------------------------------------------------- … … 660 661 ! of #ifdef CPP_EARTH 661 662 663 #endif 664 ! of #ifndef CPP_1D 662 665 END SUBROUTINE limit_netcdf -
LMDZ5/trunk/makelmdz
r2238 r2239 77 77 78 78 CPP_KEY="" 79 INCLUDE='-I$(LIBF)/grid -I$(LIBF)/ bibio-I$(LIBF)/filtrez -I. '79 INCLUDE='-I$(LIBF)/grid -I$(LIBF)/misc -I$(LIBF)/filtrez -I. ' 80 80 LIB="" 81 81 adjnt="" … … 85 85 EXT_SRC="" 86 86 #src_dirs: directories containing source files 87 src_dirs="grid bibio"87 src_dirs="grid misc" 88 88 ######################################################################## 89 89 # lecture des options … … 288 288 #We'll use some physics 289 289 src_dirs="$src_dirs phy$physique" 290 LIBPHY='$(LIBO)/libphy'"$physique"'.a' 291 lib_phy='-lphy'"$physique" 290 292 CPP_KEY="$CPP_KEY CPP_PHYS" 291 293 if [[ "${physique:0:3}" == "lmd" ]] … … 417 419 then 418 420 CPP_KEY="$CPP_KEY CPP_COSP" 419 COSP_PATH="$LIBFGCM/ cosp"421 COSP_PATH="$LIBFGCM/phylmd/cosp" 420 422 src_dirs="$src_dirs cosp" 421 423 # LIB="${LIB} -l${LIBPREFIX}cosp" … … 498 500 if (( $dimc == 3 )) ; then 499 501 src_dirs="$src_dirs $filtre dyn3d_common dyn3d${FLAG_PARA}" 502 if [[ $physique != "nophys" ]] ; then 503 src_dirs="$src_dirs dynlmdz_phy${physique}" 504 libdyn_phy="-ldynlmdz_phy${physique}" 505 LIBDYN_PHYS='$(LIBO)/libdynlmdz_phy'"${physique}"'.a' 506 INCLUDE="$INCLUDE "'-I$(LIBF)/dynlmdz_phy'"${physique}" 507 fi 500 508 cd $LIBFGCM/grid 501 509 \rm fxyprim.h … … 504 512 INCLUDE="$INCLUDE "'-I$(LIBF)/dyn3d${FLAG_PARA} -I$(LIBF)/dyn3d_common ' 505 513 elif (( $dimc == 2 )) ; then 514 src_dirs="$src_dirs dyn2d" 506 515 filtre="FILTRE= L_FILTRE= " 507 516 INCLUDE="$INCLUDE "'-I$(LIBF)/dyn2d' 508 517 elif (( $dimc == 1 )) ; then 509 src_dirs="$src_dirs dyn3d dyn3d_common filtrez" 518 #src_dirs="$src_dirs dyn3d dyn3d_common filtrez" 519 src_dirs="$src_dirs phy${physique}/dyn1d" 510 520 CPP_KEY="$CPP_KEY CPP_1D" 511 filtre="L_DYN= DYN= FILTRE= L_FILTRE= DIRMAIN=phy$physique " 512 INCLUDE="$INCLUDE "'-I$(LIBF)/dyn3d -I$(LIBF)/dyn3d_common ' # Pas tres propre 521 filtre="L_DYN= DYN= FILTRE= L_FILTRE= " 522 #INCLUDE="$INCLUDE "'-I$(LIBF)/dyn3d -I$(LIBF)/dyn3d_common ' # Pas tres propre 523 INCLUDE="$INCLUDE "' -I$(LIBF)/phy'"$physique"'/dyn1d' 513 524 else 514 525 echo Dimension dimc=$dimc pas prevu ; exit … … 590 601 591 602 source_code=${code}.F 603 dirmain=dyn${dimc}d${FLAG_PARA} 592 604 if [[ -r $LMDGCM/libf/dyn${dimc}d${FLAG_PARA}/${code}.F90 ]] 593 605 then 594 606 source_code=${code}.F90 595 607 elif [[ -r $LMDGCM/libf/phy$physique/${code}.F90 ]] ; then 608 dirmain=phy$physique 609 source_code=${code}.F90 610 elif [[ -r $LMDGCM/libf/dynlmdz_phy$physique/${code}.F90 ]] ; then 611 dirmain=dynlmdz_phy${physique} 612 source_code=${code}.F90 613 elif [[ -r $LMDGCM/libf/phy$physique/dyn1d/${code}.F90 ]] ; then 614 dirmain=phy$physique/dyn1d 596 615 source_code=${code}.F90 597 616 fi … … 647 666 LIBO=${LIBOGCM}/${nomlib} \ 648 667 "PHYS=$physique" \ 668 LIBPHY=${LIBPHY} \ 669 LIBDYN_PHYS=${LIBDYN_PHYS} \ 649 670 DIM=$dimc \ 650 671 FLAG_PARA=$FLAG_PARA \ 672 L_PHY="$lib_phy" \ 673 L_DYN_PHY="$libdyn_phy" \ 651 674 L_ADJNT=$adjnt \ 652 675 L_COSP="$lcosp" \ … … 661 684 MOD_SUFFIX="mod" \ 662 685 AR=$arcommand \ 686 DIRMAIN=$dirmain \ 663 687 SOURCE=$source_code \ 664 688 PROG=$code … … 673 697 LIBO=${LIBOGCM}/${nomlib} \ 674 698 "PHYS=$physique" \ 699 LIBPHY=${LIBPHY} \ 700 LIBDYN_PHYS=${LIBDYN_PHYS} \ 675 701 DIM=$dimc \ 676 702 FLAG_PARA=$FLAG_PARA \ 703 L_PHY="$lib_phy" \ 704 L_DYN_PHY="$libdyn_phy" \ 677 705 L_ADJNT=$adjnt \ 678 706 L_COSP="$lcosp" \ … … 687 715 MOD_SUFFIX="mod" \ 688 716 AR=$arcommand \ 717 DIRMAIN=$dirmain \ 689 718 SOURCE=$source_code \ 690 719 PROG=$code -
LMDZ5/trunk/makelmdz_fcm
r2238 r2239 38 38 LIBOGCM=$LMDGCM/libo 39 39 LIBFGCM=$LMDGCM/libf 40 DYN_COMMON_PATH=$LIBFGCM/dyn3d_common 40 41 # path for optional packages, but default set to ".void_dir" 42 FILTRE_PATH=$LMDGCM/.void_dir 43 DYN_PHYS_PATH=$LMDGCM/.void_dir 41 44 RRTM_PATH=$LMDGCM/.void_dir 42 45 SISVAT_PATH=$LMDGCM/.void_dir … … 231 234 CPP_KEY="$CPP_KEY CPP_EARTH" 232 235 fi 236 # set the dyn/phys interface path 237 DYN_PHYS_PATH="${LIBFGCM}/dynlmdz_phy${physique}" 238 fi 239 240 if [[ "$filtre" == "filtrez" ]] 241 then 242 FILTRE_PATH=${LIBFGCM}/$filtre 233 243 fi 234 244 … … 342 352 then 343 353 CPP_KEY="$CPP_KEY CPP_COSP" 344 COSP_PATH="$LIBFGCM/ cosp"354 COSP_PATH="$LIBFGCM/phylmd/cosp" 345 355 # LIB="${LIB} -l${LIBPREFIX}cosp" 346 356 fi … … 410 420 \rm fxyprim.h 411 421 cp -p fxy_${grille}.h fxyprim.h 412 else 413 echo "Probleme dans les dimensions de la dynamique !!" 414 echo "Non reactive pour l'instant !!!" 422 #else 423 # echo "Probleme dans les dimensions de la dynamique !!" 424 # echo "Non reactive pour l'instant !!!" 425 fi 426 427 if (( $dimension == 1 )) 428 then 429 CPP_KEY="$CPP_KEY CPP_1D" 430 ##in 1D, add dyn3d to include path (because main prog is in physics) 431 INCLUDE="$INCLUDE -Ilibf/dyn3d -Ilibf/dyn3d_common" 432 ## no filtre in 1d: 433 FILTRE_PATH=$LMDGCM/.void_dir 434 ## no need to compile all routines in dyn3d_common either: 435 DYN_COMMON_PATH=$LMDGCM/.void_dir 436 ## no need to compile all routines in dynlmdz_phy... ; 437 ## (because key ones are included in 1D main program) 438 DYN_PHYS_PATH=$LMDGCM/.void_dir 415 439 fi 416 440 … … 473 497 else 474 498 SUFF_NAME=${SUFF_NAME}_seq 475 DYN=dyn${dimc}d 499 if (( $dimension == 1 )) 500 then 501 # dynamics-related routines in"dyn1d" subdirectory of phy${physique} 502 DYN=phy${physique}/dyn1d 503 else 504 DYN=dyn${dimc}d 505 fi 476 506 fi 477 507 … … 506 536 echo "%LIBO $LIBOGCM" >> $config_fcm 507 537 echo "%DYN $DYN" >> $config_fcm 538 echo "%DYN_COMMON $DYN_COMMON_PATH" >> $config_fcm 539 echo "%FILTRE $FILTRE_PATH" >> $config_fcm 508 540 echo "%PHYS phy${physique}" >> $config_fcm 541 echo "%DYN_PHYS $DYN_PHYS_PATH" >> $config_fcm 509 542 echo "%RRTM $RRTM_PATH" >> $config_fcm 510 543 echo "%SISVAT $SISVAT_PATH" >> $config_fcm
Note: See TracChangeset
for help on using the changeset viewer.