- Timestamp:
- Jul 24, 2013, 10:06:39 AM (11 years ago)
- Location:
- LMDZ5/trunk
- Files:
-
- 23 edited
- 1 moved
Legend:
- Unmodified
- Added
- Removed
-
LMDZ5/trunk/create_make_gcm
r1714 r1810 42 42 echo 'LIBF = $(GCM)/libf' 43 43 if [ "$CRAY" = '0' ] ; then 44 # echo 'LIBO = $(GCM)/libo/$(MACHINE)'45 44 echo 'LIBO = $(LIBOGCM)/$(MACHINE)' 46 45 else 47 46 echo 'LIBO = $(GCM)/libo' 48 47 fi 49 #echo 'LOCAL_DIR=$(GCM)'50 #echo $localdir51 48 echo "LOCAL_DIR=`echo $localdir`" 52 49 echo 'BIBIO = $(LIBF)/bibio' … … 180 177 strj=`echo $stri | tr [A-Z] [a-z]` 181 178 str2="" 182 for dirinc in filtrez bibio grid dyn3d $diri $diri/*/ ; do179 for dirinc in filtrez bibio grid dyn3d phydev $diri $diri/*/ ; do 183 180 # Recherche dans l'ordre hierarchique inverse car seule la derniere 184 181 # ligne est conservee 182 if [ $dirinc = phydev ] ; then 183 dirstr='$(PHYS)' 184 libstr='phy$(PHYS)' 185 else 186 dirstr=$dirinc 187 libstr=$dirinc 188 fi 185 189 if [ -f $dirinc/$stri ] ; then 186 str2='$(LIBF)/'$dir inc/$stri190 str2='$(LIBF)/'$dirstr/$stri 187 191 elif [ -f $dirinc/$strj ] ; then 188 str2='$(LIBF)/'$dir inc/$stri192 str2='$(LIBF)/'$dirstr/$stri 189 193 elif [ -f $dirinc/$strj.F90 ] || [ -f $dirinc/$strj.F ] ; then 190 strlib=`echo $ dirinc| awk -F/ ' { print $1 } '`194 strlib=`echo $libstr | awk -F/ ' { print $1 } '` 191 195 str2='$(LIBO)/lib'$strlib'.a('$strj'.o)' 192 196 fi -
LMDZ5/trunk/libf/dyn3dmem/advect_new_mod.F90
r1632 r1810 15 15 SUBROUTINE advect_new_allocate 16 16 USE bands 17 USE allocate_field 17 USE allocate_field_mod 18 18 USE parallel 19 USE dimensions 19 USE dimensions_mod 20 20 IMPLICIT NONE 21 21 TYPE(distrib),POINTER :: d … … 36 36 37 37 SUBROUTINE advect_new_switch_caldyn(dist) 38 USE allocate_field 38 USE allocate_field_mod 39 39 USE bands 40 40 USE parallel -
LMDZ5/trunk/libf/dyn3dmem/advtrac_mod.F90
r1632 r1810 7 7 SUBROUTINE advtrac_allocate 8 8 USE bands 9 USE allocate_field 9 USE allocate_field_mod 10 10 USE parallel 11 11 USE infotrac … … 22 22 23 23 SUBROUTINE advtrac_switch_vanleer(dist) 24 USE allocate_field 24 USE allocate_field_mod 25 25 USE bands 26 26 USE parallel -
LMDZ5/trunk/libf/dyn3dmem/allocate_field_mod.F90
r1809 r1810 1 MODULE allocate_field 1 MODULE allocate_field_mod 2 2 3 3 INTERFACE allocate_u … … 158 158 SUBROUTINE allocate1d_u2d(field,d) 159 159 USE parallel 160 USE dimensions 160 USE dimensions_mod 161 161 IMPLICIT NONE 162 162 REAL,POINTER :: field(:,:) … … 175 175 SUBROUTINE allocate2d_u2d(field,dim1,d) 176 176 USE parallel 177 USE dimensions 177 USE dimensions_mod 178 178 IMPLICIT NONE 179 179 REAL,POINTER :: field(:,:,:) … … 192 192 SUBROUTINE allocate3d_u2d(field,dim1,dim2,d) 193 193 USE parallel 194 USE dimensions 194 USE dimensions_mod 195 195 IMPLICIT NONE 196 196 REAL,POINTER :: field(:,:,:,:) … … 211 211 SUBROUTINE allocate1d_v2d(field,d) 212 212 USE parallel 213 USE dimensions 213 USE dimensions_mod 214 214 IMPLICIT NONE 215 215 REAL,POINTER :: field(:,:) … … 228 228 SUBROUTINE allocate2d_v2d(field,dim1,d) 229 229 USE parallel 230 USE dimensions 230 USE dimensions_mod 231 231 IMPLICIT NONE 232 232 REAL,POINTER :: field(:,:,:) … … 245 245 SUBROUTINE allocate3d_v2d(field,dim1,dim2,d) 246 246 USE parallel 247 USE dimensions 247 USE dimensions_mod 248 248 IMPLICIT NONE 249 249 REAL,POINTER :: field(:,:,:,:) … … 511 511 USE parallel 512 512 USE mod_hallo 513 USE dimensions 513 USE dimensions_mod 514 514 IMPLICIT NONE 515 515 REAL,POINTER :: field(:,:) … … 548 548 USE parallel 549 549 USE mod_hallo 550 USE dimensions 550 USE dimensions_mod 551 551 IMPLICIT NONE 552 552 REAL,POINTER :: field(:,:,:) … … 585 585 USE parallel 586 586 USE mod_hallo 587 USE dimensions 587 USE dimensions_mod 588 588 IMPLICIT NONE 589 589 REAL,POINTER :: field(:,:,:,:) … … 625 625 USE parallel 626 626 USE mod_hallo 627 USE dimensions 627 USE dimensions_mod 628 628 IMPLICIT NONE 629 629 REAL,POINTER :: field(:,:) … … 662 662 USE parallel 663 663 USE mod_hallo 664 USE dimensions 664 USE dimensions_mod 665 665 IMPLICIT NONE 666 666 REAL,POINTER :: field(:,:,:) … … 699 699 USE parallel 700 700 USE mod_hallo 701 USE dimensions 701 USE dimensions_mod 702 702 IMPLICIT NONE 703 703 REAL,POINTER :: field(:,:,:,:) … … 733 733 END SUBROUTINE switch3d_v2d 734 734 735 END MODULE allocate_field 736 737 738 739 735 END MODULE allocate_field_mod 736 737 738 739 -
LMDZ5/trunk/libf/dyn3dmem/caladvtrac_mod.F90
r1632 r1810 21 21 SUBROUTINE caladvtrac_allocate 22 22 USE bands 23 USE allocate_field 23 USE allocate_field_mod 24 24 USE parallel 25 25 USE infotrac … … 55 55 56 56 SUBROUTINE caladvtrac_switch_caldyn(dist) 57 USE allocate_field 57 USE allocate_field_mod 58 58 USE bands 59 59 USE parallel … … 74 74 75 75 SUBROUTINE caladvtrac_switch_vanleer(dist) 76 USE allocate_field 76 USE allocate_field_mod 77 77 USE bands 78 78 USE parallel -
LMDZ5/trunk/libf/dyn3dmem/caldyn_mod.F90
r1632 r1810 20 20 SUBROUTINE caldyn_allocate 21 21 USE bands 22 USE allocate_field 22 USE allocate_field_mod 23 23 USE parallel 24 USE dimensions 24 USE dimensions_mod 25 25 USE advect_new_mod,ONLY : advect_new_allocate 26 26 IMPLICIT NONE … … 47 47 48 48 SUBROUTINE caldyn_switch_caldyn(dist) 49 USE allocate_field 49 USE allocate_field_mod 50 50 USE bands 51 51 USE parallel -
LMDZ5/trunk/libf/dyn3dmem/call_calfis_mod.F90
r1793 r1810 36 36 SUBROUTINE call_calfis_allocate 37 37 USE bands 38 USE allocate_field 38 USE allocate_field_mod 39 39 USE parallel 40 USE dimensions 40 USE dimensions_mod 41 41 USE infotrac 42 42 IMPLICIT NONE … … 74 74 SUBROUTINE call_calfis(itau,lafin,clesphy0,ucov_dyn,vcov_dyn,teta_dyn,masse_dyn,ps_dyn, & 75 75 phis_dyn,q_dyn,flxw_dyn) 76 USE dimensions 76 USE dimensions_mod 77 77 USE parallel 78 78 USE times -
LMDZ5/trunk/libf/dyn3dmem/call_dissip_mod.F90
r1673 r1810 22 22 SUBROUTINE call_dissip_allocate 23 23 USE bands 24 USE allocate_field 24 USE allocate_field_mod 25 25 USE parallel 26 USE dimensions 26 USE dimensions_mod 27 27 USE dissip_mod, ONLY : dissip_allocate 28 28 IMPLICIT NONE … … 50 50 51 51 SUBROUTINE call_dissip_switch_dissip(dist) 52 USE allocate_field 52 USE allocate_field_mod 53 53 USE bands 54 54 USE parallel … … 78 78 79 79 SUBROUTINE call_dissip(ucov_dyn,vcov_dyn,teta_dyn,p_dyn,pk_dyn,ps_dyn) 80 USE dimensions 80 USE dimensions_mod 81 81 USE parallel 82 82 USE times -
LMDZ5/trunk/libf/dyn3dmem/dimensions_mod.F90
r1632 r1810 1 MODULE dimensions 1 MODULE dimensions_mod 2 2 INCLUDE 'dimensions.h' 3 3 INCLUDE 'paramet.h' 4 END MODULE dimensions 4 END MODULE dimensions_mod -
LMDZ5/trunk/libf/dyn3dmem/dissip_mod.F90
r1632 r1810 7 7 SUBROUTINE dissip_allocate 8 8 USE bands 9 USE allocate_field 9 USE allocate_field_mod 10 10 USE parallel 11 USE dimensions 11 USE dimensions_mod 12 12 USE gradiv2_mod, ONLY : gradiv2_allocate 13 13 USE nxgraro2_mod, ONLY : nxgraro2_allocate … … 23 23 24 24 SUBROUTINE dissip_switch_dissip(dist) 25 USE allocate_field 25 USE allocate_field_mod 26 26 USE bands 27 27 USE parallel -
LMDZ5/trunk/libf/dyn3dmem/divgrad2_mod.F90
r1632 r1810 7 7 SUBROUTINE divgrad2_allocate 8 8 USE bands 9 USE allocate_field 9 USE allocate_field_mod 10 10 USE parallel 11 USE dimensions 11 USE dimensions_mod 12 12 IMPLICIT NONE 13 13 TYPE(distrib),POINTER :: d … … 20 20 21 21 SUBROUTINE divgrad2_switch_dissip(dist) 22 USE allocate_field 22 USE allocate_field_mod 23 23 USE bands 24 24 USE parallel -
LMDZ5/trunk/libf/dyn3dmem/dynredem_mod.F90
r1684 r1810 7 7 8 8 SUBROUTINE dynredem_write_u(ncid,id,var,ll) 9 USE dimensions 9 USE dimensions_mod 10 10 USE parallel 11 11 USE mod_hallo … … 72 72 73 73 SUBROUTINE dynredem_write_v(ncid,id,var,ll) 74 USE dimensions 74 USE dimensions_mod 75 75 USE parallel 76 76 USE mod_hallo … … 137 137 138 138 SUBROUTINE dynredem_read_u(ncid,id,var,ll) 139 USE dimensions 139 USE dimensions_mod 140 140 USE parallel 141 141 USE mod_hallo -
LMDZ5/trunk/libf/dyn3dmem/gradiv2_mod.F90
r1632 r1810 9 9 SUBROUTINE gradiv2_allocate 10 10 USE bands 11 USE allocate_field 11 USE allocate_field_mod 12 12 USE parallel 13 USE dimensions 13 USE dimensions_mod 14 14 IMPLICIT NONE 15 15 TYPE(distrib),POINTER :: d … … 24 24 25 25 SUBROUTINE gradiv2_switch_dissip(dist) 26 USE allocate_field 26 USE allocate_field_mod 27 27 USE bands 28 28 USE parallel -
LMDZ5/trunk/libf/dyn3dmem/groupe_mod.F90
r1632 r1810 8 8 SUBROUTINE groupe_allocate 9 9 USE bands 10 USE allocate_field 10 USE allocate_field_mod 11 11 USE parallel 12 12 USE infotrac … … 25 25 26 26 SUBROUTINE groupe_switch_caldyn(dist) 27 USE allocate_field 27 USE allocate_field_mod 28 28 USE bands 29 29 USE parallel -
LMDZ5/trunk/libf/dyn3dmem/integrd_mod.F90
r1632 r1810 11 11 SUBROUTINE integrd_allocate 12 12 USE bands 13 USE allocate_field 13 USE allocate_field_mod 14 14 USE parallel 15 USE dimensions 15 USE dimensions_mod 16 16 USE advect_new_mod,ONLY : advect_new_allocate 17 17 IMPLICIT NONE … … 28 28 29 29 SUBROUTINE integrd_switch_caldyn(dist) 30 USE allocate_field 30 USE allocate_field_mod 31 31 USE bands 32 32 USE parallel -
LMDZ5/trunk/libf/dyn3dmem/leapfrog_loc.F
r1806 r1810 27 27 USE mod_filtreg_p 28 28 USE write_field_loc 29 USE allocate_field 29 USE allocate_field_mod 30 30 USE call_dissip_mod, ONLY : call_dissip 31 31 USE call_calfis_mod, ONLY : call_calfis -
LMDZ5/trunk/libf/dyn3dmem/leapfrog_mod.F90
r1632 r1810 39 39 SUBROUTINE leapfrog_allocate 40 40 USE bands 41 USE allocate_field 41 USE allocate_field_mod 42 42 USE parallel 43 USE dimensions 43 USE dimensions_mod 44 44 USE infotrac 45 45 USE caldyn_mod,ONLY : caldyn_allocate … … 94 94 95 95 SUBROUTINE leapfrog_switch_caldyn(dist) 96 USE allocate_field 96 USE allocate_field_mod 97 97 USE bands 98 98 USE parallel … … 143 143 144 144 SUBROUTINE leapfrog_switch_dissip(dist) 145 USE allocate_field 145 USE allocate_field_mod 146 146 USE bands 147 147 USE parallel -
LMDZ5/trunk/libf/dyn3dmem/mod_hallo.F90
r1803 r1810 63 63 64 64 subroutine Init_mod_hallo 65 USE dimensions 65 USE dimensions_mod 66 66 implicit none 67 67 integer :: jj_nb_gather(0:mpi_size-1) … … 196 196 197 197 subroutine Register_SendField(Field,ij,ll,offset,size,target,a_request) 198 USE dimensions 198 USE dimensions_mod 199 199 implicit none 200 200 … … 216 216 217 217 subroutine Register_RecvField(Field,ij,ll,offset,size,target,a_request) 218 USE dimensions 218 USE dimensions_mod 219 219 implicit none 220 220 … … 239 239 240 240 subroutine Register_SwapField(FieldS,FieldR,ij,ll,jj_Nb_New,a_request) 241 USE dimensions 241 USE dimensions_mod 242 242 implicit none 243 243 … … 287 287 288 288 subroutine Register_SwapFieldHallo(FieldS,FieldR,ij,ll,jj_Nb_New,Up,Down,a_request) 289 USE dimensions 289 USE dimensions_mod 290 290 291 291 implicit none … … 341 341 SUBROUTINE Register_SwapField1d_u(FieldS,FieldR,new_dist,a_request,old_dist,up,down) 342 342 USE parallel 343 USE dimensions 343 USE dimensions_mod 344 344 IMPLICIT NONE 345 345 … … 372 372 SUBROUTINE Register_SwapField2d_u1d(FieldS,FieldR,new_dist,a_request,old_dist,up,down) 373 373 USE parallel 374 USE dimensions 374 USE dimensions_mod 375 375 IMPLICIT NONE 376 376 … … 406 406 SUBROUTINE Register_SwapField3d_u(FieldS,FieldR,new_dist,a_request,old_dist,up,down) 407 407 USE parallel 408 USE dimensions 408 USE dimensions_mod 409 409 IMPLICIT NONE 410 410 … … 441 441 SUBROUTINE Register_SwapField1d_u2d(FieldS,FieldR,new_dist,a_request,old_dist,up,down) 442 442 USE parallel 443 USE dimensions 443 USE dimensions_mod 444 444 445 445 IMPLICIT NONE … … 473 473 SUBROUTINE Register_SwapField2d_u2d(FieldS,FieldR,new_dist,a_request,old_dist,up,down) 474 474 USE parallel 475 USE dimensions 475 USE dimensions_mod 476 476 477 477 IMPLICIT NONE … … 508 508 SUBROUTINE Register_SwapField3d_u2d(FieldS,FieldR,new_dist,a_request,old_dist,up,down) 509 509 USE parallel 510 USE dimensions 510 USE dimensions_mod 511 511 IMPLICIT NONE 512 512 … … 547 547 SUBROUTINE Register_SwapField1d_v(FieldS,FieldR,new_dist,a_request,old_dist,up,down) 548 548 USE parallel 549 USE dimensions 549 USE dimensions_mod 550 550 IMPLICIT NONE 551 551 … … 578 578 SUBROUTINE Register_SwapField2d_v1d(FieldS,FieldR,new_dist,a_request,old_dist,up,down) 579 579 USE parallel 580 USE dimensions 580 USE dimensions_mod 581 581 IMPLICIT NONE 582 582 … … 612 612 SUBROUTINE Register_SwapField3d_v(FieldS,FieldR,new_dist,a_request,old_dist,up,down) 613 613 USE parallel 614 USE dimensions 614 USE dimensions_mod 615 615 IMPLICIT NONE 616 616 … … 648 648 SUBROUTINE Register_SwapField1d_v2d(FieldS,FieldR,new_dist,a_request,old_dist,up,down) 649 649 USE parallel 650 USE dimensions 650 USE dimensions_mod 651 651 IMPLICIT NONE 652 652 … … 679 679 SUBROUTINE Register_SwapField2d_v2d(FieldS,FieldR,new_dist,a_request,old_dist,up,down) 680 680 USE parallel 681 USE dimensions 681 USE dimensions_mod 682 682 IMPLICIT NONE 683 683 … … 713 713 SUBROUTINE Register_SwapField3d_v2d(FieldS,FieldR,new_dist,a_request,old_dist,up,down) 714 714 USE parallel 715 USE dimensions 715 USE dimensions_mod 716 716 IMPLICIT NONE 717 717 … … 748 748 SUBROUTINE Register_SwapField_gen_u(FieldS,FieldR,ll,old_dist,new_dist,Up,Down,a_request) 749 749 USE parallel 750 USE dimensions 750 USE dimensions_mod 751 751 IMPLICIT NONE 752 752 … … 801 801 SUBROUTINE Register_SwapField_gen_v(FieldS,FieldR,ll,old_dist,new_dist,Up,Down,a_request) 802 802 USE parallel 803 USE dimensions 803 USE dimensions_mod 804 804 IMPLICIT NONE 805 805 … … 860 860 861 861 subroutine Register_Hallo(Field,ij,ll,RUp,Rdown,SUp,SDown,a_request) 862 USE dimensions 862 USE dimensions_mod 863 863 implicit none 864 864 … … 927 927 928 928 subroutine Register_Hallo_u(Field,ll,RUp,Rdown,SUp,SDown,a_request) 929 USE dimensions 929 USE dimensions_mod 930 930 implicit none 931 931 #ifdef CPP_MPI … … 992 992 993 993 subroutine Register_Hallo_v(Field,ll,RUp,Rdown,SUp,SDown,a_request) 994 USE dimensions 994 USE dimensions_mod 995 995 implicit none 996 996 #ifdef CPP_MPI … … 1057 1057 1058 1058 subroutine SendRequest(a_Request) 1059 USE dimensions 1059 USE dimensions_mod 1060 1060 implicit none 1061 1061 … … 1181 1181 1182 1182 subroutine WaitRequest(a_Request) 1183 USE dimensions 1183 USE dimensions_mod 1184 1184 implicit none 1185 1185 … … 1275 1275 1276 1276 subroutine WaitSendRequest(a_Request) 1277 USE dimensions 1277 USE dimensions_mod 1278 1278 implicit none 1279 1279 … … 1331 1331 1332 1332 subroutine WaitRecvRequest(a_Request) 1333 USE dimensions 1333 USE dimensions_mod 1334 1334 implicit none 1335 1335 … … 1412 1412 1413 1413 subroutine CopyField(FieldS,FieldR,ij,ll,jj_Nb_New) 1414 USE dimensions 1414 USE dimensions_mod 1415 1415 1416 1416 implicit none … … 1450 1450 1451 1451 subroutine CopyFieldHallo(FieldS,FieldR,ij,ll,jj_Nb_New,Up,Down) 1452 USE dimensions 1452 USE dimensions_mod 1453 1453 1454 1454 implicit none … … 1490 1490 1491 1491 subroutine Gather_field_u(field_loc,field_glo,ll) 1492 USE dimensions 1492 USE dimensions_mod 1493 1493 implicit none 1494 1494 integer :: ll … … 1513 1513 1514 1514 subroutine Gather_field_v(field_loc,field_glo,ll) 1515 USE dimensions 1515 USE dimensions_mod 1516 1516 implicit none 1517 1517 integer :: ll … … 1541 1541 1542 1542 subroutine Scatter_field_u(field_glo,field_loc,ll) 1543 USE dimensions 1543 USE dimensions_mod 1544 1544 implicit none 1545 1545 integer :: ll … … 1575 1575 1576 1576 subroutine Scatter_field_v(field_glo,field_loc,ll) 1577 USE dimensions 1577 USE dimensions_mod 1578 1578 implicit none 1579 1579 integer :: ll -
LMDZ5/trunk/libf/dyn3dmem/nxgraro2_mod.F90
r1632 r1810 9 9 SUBROUTINE nxgraro2_allocate 10 10 USE bands 11 USE allocate_field 11 USE allocate_field_mod 12 12 USE parallel 13 USE dimensions 13 USE dimensions_mod 14 14 IMPLICIT NONE 15 15 TYPE(distrib),POINTER :: d … … 24 24 25 25 SUBROUTINE nxgraro2_switch_dissip(dist) 26 USE allocate_field 26 USE allocate_field_mod 27 27 USE bands 28 28 USE parallel -
LMDZ5/trunk/libf/dyn3dmem/parallel.F90
r1678 r1810 369 369 #ifdef CPP_COUPLE 370 370 use mod_prism_proto 371 #endif372 #ifdef CPP_EARTH373 371 ! Ehouarn: surface_data module is in 'phylmd' ... 374 372 use surface_data, only : type_ocean -
LMDZ5/trunk/libf/dyn3dmem/vlspltgen_mod.F90
r1632 r1810 12 12 SUBROUTINE vlspltgen_allocate 13 13 USE bands 14 USE allocate_field 14 USE allocate_field_mod 15 15 USE parallel 16 16 USE infotrac … … 34 34 35 35 SUBROUTINE vlspltgen_switch_vanleer(dist) 36 USE allocate_field 36 USE allocate_field_mod 37 37 USE bands 38 38 USE parallel -
LMDZ5/trunk/libf/dyn3dmem/vlz_mod.F90
r1632 r1810 10 10 SUBROUTINE vlz_allocate 11 11 USE bands 12 USE allocate_field 12 USE allocate_field_mod 13 13 USE parallel 14 14 USE infotrac 15 USE dimensions 15 USE dimensions_mod 16 16 IMPLICIT NONE 17 17 TYPE(distrib),POINTER :: d … … 26 26 27 27 SUBROUTINE vlz_switch_vanleer(dist) 28 USE allocate_field 28 USE allocate_field_mod 29 29 USE bands 30 30 USE parallel -
LMDZ5/trunk/libf/dyn3dpar/parallel.F90
r1678 r1810 201 201 #ifdef CPP_COUPLE 202 202 use mod_prism_proto 203 #endif204 #ifdef CPP_EARTH205 203 ! Ehouarn: surface_data module is in 'phylmd' ... 206 204 use surface_data, only : type_ocean -
LMDZ5/trunk/makelmdz
r1789 r1810 306 306 FLAG_PARA='' 307 307 else 308 FLAG_PARA=" par"308 FLAG_PARA="$paramem" 309 309 fi 310 310 … … 351 351 fi 352 352 353 if [[ "$veget" == "orchidee2.0" ]] 354 then 355 # orchidee2.0 : 356 # Compile with ORCHIDEE 2.0 (or more recent) 353 354 #============================================================================== 355 if [ "$veget" = "true" -o "$veget" = "orchidee1.9" -o "$veget" = "orchidee2.0" ] 356 then 357 358 INCLUDE="${INCLUDE} -I${ORCH_INCDIR}" 357 359 CPP_KEY="$CPP_KEY CPP_VEGET" 358 INCLUDE="${INCLUDE} -I${ORCH_INCDIR}" 359 LIB="${LIB} -L${ORCH_LIBDIR} -l${LIBPREFIX}orchidee " 360 elif [[ "$veget" == "orchidee1.9" ]] 361 then 362 # orchidee1.9 : 363 # Compile with ORCHIDEE version up to the inclusion of OpenMP in ORCHIDEE : tag 1.9-1.9.5(version AR5)-1.9.6 364 CPP_KEY="$CPP_KEY CPP_VEGET ORCHIDEE_NOOPENMP" 365 INCLUDE="${INCLUDE} -I${ORCH_INCDIR}" 366 LIB="${LIB} -L${ORCH_LIBDIR} -l${LIBPREFIX}sechiba -l${LIBPREFIX}parameters -l${LIBPREFIX}stomate -l${LIBPREFIX}parallel -l${LIBPREFIX}orglob" 367 elif [[ "$veget" == "true" ]] 368 then 369 # true : 370 # Obsolete, for backward compatibility. To be used with ORCHIDEE tag 1.9-1.9.6 371 # For this case, cpp flag ORCHIDEE_NOOPENMP must be added to the makelmdz_fcm arguments 372 CPP_KEY="$CPP_KEY CPP_VEGET" 373 INCLUDE="${INCLUDE} -I${ORCH_INCDIR}" 374 LIB="${LIB} -L${ORCH_LIBDIR} -l${LIBPREFIX}sechiba -l${LIBPREFIX}parameters -l${LIBPREFIX}stomate -l${LIBPREFIX}parallel -l${LIBPREFIX}orglob" 375 elif [[ "$veget" != "false" ]] 376 then 360 # temporary, for Orchidee versions 1.9.* (before openmp activation) 361 if [[ "$veget" == "orchidee1.9" ]] ; then 362 CPP_KEY="$CPP_KEY ORCHIDEE_NOOPENMP" 363 fi 364 if [[ "$veget" == "orchidee2.0" ]] ; then 365 listlibs=orchidee 366 else 367 listlibs="sechiba parameters stomate parallel orglob" 368 fi 369 LIB="${LIB} -L${ORCH_LIBDIR}" 370 for lib in sechiba parameters stomate parallel orglob ; do 371 if [ -f ${ORCH_LIBDIR}/lib${LIBPREFIX}$lib.a ] ; then 372 LIB="${LIB} -l${LIBPREFIX}$lib " 373 fi 374 done 375 elif [[ "$veget" != "false" ]] ; then 377 376 echo "Option -v $veget does not exist" 378 377 echo "Use ./makelmdz -h for more information" … … 380 379 fi 381 380 381 #=============================================================================== 382 382 if [[ $io == ioipsl ]] 383 383 then … … 453 453 ######################################################################## 454 454 455 dimension=`echo $dim | wc -w` 456 echo dimension $dimension 457 458 if (( $dimension == 3 )) 459 then 460 cd $LIBFGCM/grid 461 \rm fxyprim.h 462 cp -p fxy_${grille}.h fxyprim.h 455 if (( $dimc == 3 )) ; then 456 cd $LIBFGCM/grid 457 \rm fxyprim.h 458 cp -p fxy_${grille}.h fxyprim.h 459 filtre="FILTRE=$filtre" 460 INCLUDE="$INCLUDE "'-I$(LIBF)/dyn3d${FLAG_PARA} ' 461 elif (( $dimc == 2 )) ; then 462 filtre="FILTRE= L_FILTRE= " 463 INCLUDE="$INCLUDE "'-I$(LIBF)/dyn2d' 464 elif (( $dimc == 1 )) ; then 465 filtre="L_DYN= DYN= FILTRE= L_FILTRE= DIRMAIN=phy$physique " 466 INCLUDE="$INCLUDE "'-I$(LIBF)/dyn3d' # Pas tres propre 463 467 else 464 echo "Probleme dans les dimensions de la dynamique !!" 465 echo "Non reactive pour l'instant !!!" 466 fi 467 468 ###################################################################### 469 # Gestion du filtre qui n'existe qu'en 3d. 470 ###################################################################### 471 472 if (( `expr $dimc \> 2` == 1 )) 473 then 474 filtre="FILTRE=$filtre" 475 else 476 filtre="FILTRE= L_FILTRE= " 477 fi 478 echo MACRO FILTRE $filtre 479 480 echo $dimc 468 echo Dimension dimc=$dimc pas prevu ; exit 469 fi 481 470 482 471 ###################################################################### 483 472 # Creation du suffixe de la configuration 484 473 ###################################################################### 485 486 474 487 475 SUFF_NAME=_${dim_full} … … 531 519 ######################################################################## 532 520 cd $LMDGCM 521 533 522 find libf -name '*.[Fh]' -print > tmp77 534 523 find libf -name '*.[Fh]' -exec egrep -i " *use *ioipsl" {} \; -print > tmp90 … … 560 549 561 550 # library directory name: 562 if [[ "$parallel" == "none" ]] 563 then 564 nomlib=${arch}_${physique}_${dim_full}_${grille}_${compil_mod} 565 else 566 nomlib=${arch}_${physique}_${dim_full}_${grille}_${compil_mod}_${FLAG_PARA} 567 fi 551 nomlib=`echo ${arch}_${physique}_${dim_full}_${grille}_${compil_mod}_parall${parallel}_${CPP_KEY}_${FLAG_PARA} | sed -e 's/ //g' -e 's/-//g ' | sed -e 's/CPP_//g'` 552 echo $nomlib 568 553 569 554 if [[ ! -d "${LIBOGCM}/${nomlib}" ]] … … 585 570 INCLUDE="$INCLUDE"' -I$(LIBF)/phy'"$physique" 586 571 fi 587 INCLUDE="$INCLUDE"' -I $(LIBF)/dyn'${dimc}'d'$FLAG_PARA' -I'${LIBOGCM}/${nomlib}572 INCLUDE="$INCLUDE"' -I'${LIBOGCM}/${nomlib} 588 573 589 574 # ranlib utility (check it exists or else default to ls) … … 645 630 DIM=$dimc \ 646 631 FLAG_PARA=$FLAG_PARA \ 647 L_ADJNT= "$adjnt"\632 L_ADJNT=$adjnt \ 648 633 L_COSP="$lcosp" \ 649 634 L_CHIMIE="$libchimie" \ … … 660 645 PROG=$code 661 646 647 662 648 if [[ -r $LIBFGCM/grid/dimensions.h ]] 663 649 then
Note: See TracChangeset
for help on using the changeset viewer.