- Timestamp:
- 12/17/15 18:21:50 (9 years ago)
- Location:
- branches/iLoveclim
- Files:
-
- 1 added
- 13 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/iLoveclim
-
branches/iLoveclim/SOURCES/3D-physique-gen_mod.f90
r11 r32 137 137 real :: SECYEAR !< for relation an/seconds 138 138 !real :: S22 ! ct for PDD calculation 139 real :: sealevel !< niveau des mers139 real,target :: sealevel !< niveau des mers 140 140 ! real :: SIGMA ! variabilite Tday 141 141 real :: SURF !< … … 235 235 integer,dimension(nx,ny) :: IBASE !< type de base (froide, temperee) 236 236 237 real,dimension(nx,ny) :: ACC !< Accumulation 'o'237 real,dimension(nx,ny),target :: ACC !< Accumulation 'o' 238 238 real,dimension(nx,ny) :: ABL !< Ablation 'o' negative quand perte 239 239 real,dimension(nx,ny) :: ABLBORD !< Ablation dans les zones non englacees … … 251 251 !hassine 252 252 real, dimension(nx,ny) :: beta_centre !< beta on major node (average) 253 real (kind = 8),dimension(nx,ny),target :: calvin_GRIS ! calving flux[m3/s] given to CLIO 253 254 real, dimension(nx,ny) :: coef_drag !< coefficient de la loi de friction non lineaire : depend de la valeur de alpha_drag 254 255 !< si alpha_drag = 1, coef_drag = drag_centre 255 256 ! 256 real,dimension(nx,ny) :: BM !< mass balance 'o'257 real,dimension(nx,ny),target :: BM !< mass balance 'o' 257 258 real,dimension(nx,ny) :: BMELT !< basal melting 'o' 258 259 real,dimension(nx,ny) :: CORRBMELT !< correction du basal melting 'o' … … 287 288 real,dimension(nx,ny) :: GHF !< geothermal heat flux J/m2/a 'o' 288 289 real,dimension(nx,ny) :: GHF0 !< geothermal heat flux J/m2/a 'o' 289 real,dimension(nx,ny) :: H !< ice thickness 'o'290 real,dimension(nx,ny),target :: H !< ice thickness 'o' 290 291 real,dimension(nx,ny) :: H0 !< initial ice thickness, must be initialized before init_iso 291 292 … … 321 322 real,dimension(nx,ny) :: NEFFMX !< pression effective '>' 322 323 real,dimension(nx,ny) :: NEFFMY !< pression effective '^' 324 real(kind=8),dimension(nx,ny),target :: RUNOF_OC ! Ablation at the ice shelf that is given to CLIO 323 325 real,dimension(nx,ny) :: TOBMX !< cisaillement basal '>' 324 326 real,dimension(nx,ny) :: TOBMY !< cisaillement basal '^' 325 327 real,dimension(nx,ny) :: SW !< for bedrock isostasy 326 real,dimension(nx,ny) :: S !< altitude of ice sheet surface328 real,dimension(nx,ny),target :: S !< altitude of ice sheet surface 327 329 real,dimension(nx,ny) :: S_sealev !< altitude of ice sheet surface for sea 328 330 !< level calculation (present ice sheet) … … 336 338 real,dimension(nx,ny) :: S0 !< altitude actuelle de la surface 337 339 real,dimension(nx,ny) :: slv !< niveau de flottaison (sealevel et lakes) 338 real,dimension(nx,ny) :: TJULY !< Ground air temperature July 339 real,dimension(nx,ny) :: TANN !< Ground air temperature annual 340 real,dimension(nx,ny,12) :: Tmois !< Ground air temperature monthly 340 real,dimension(nx,ny),target :: TJULY !< Ground air temperature July 341 real,dimension(nx,ny),target :: TANN !< Ground air temperature annual 342 real,dimension(nx,ny,12),target :: Tmois !< Ground air temperature monthly 343 real,dimension(nx,ny,12),target :: Pmois !< Liquid precipitation monthly 341 344 real,dimension(nx,ny) :: TSHELF !< temperature des shelfs pour viscosite 342 345 real,dimension(nx,ny) :: TJ0 !< initial air temperature at sea level July … … 484 487 integer :: num_cptr = 30 !< Id of cptr 485 488 integer :: num_debug = 33 !< Id of ritz debug 486 integer :: num_ritz = 35 489 integer :: num_ritz = 3535 !< Id of ritz 487 490 integer :: num_templlib = 36 !< Id of ritz templlib 488 491 integer :: num_rep_42 = 42 !< Id of reponse -
branches/iLoveclim/SOURCES/Hemin40_files/module_choix-hemin40-0.4.f90
r25 r32 47 47 !--------------Module climat --------------- 48 48 !use climat_forcage_mois_mod ! forcage mensuel GCM 1 Snapshot Fev 2015 49 use climat_Grice2sea_years_mod ! forcage avec SMB type MAR Fev2015 49 !use climat_Grice2sea_years_mod ! forcage avec SMB type MAR Fev2015 50 use climat_coupl_atm_mod ! couplage iLOVECLIM 50 51 51 52 ! Anciens modules pas encore valides … … 58 59 !!!!!!use climat_regions_delta 59 60 60 !use ablation_mod ! calcul de l'ablation (PDD ou autre methode)61 use no_ablation ! pas de calcul de l'ablation => lecture fichier SMB (necessaire avec climat_Grice2sea_years_mod)61 use ablation_mod ! calcul de l'ablation (PDD ou autre methode) 62 !use no_ablation ! pas de calcul de l'ablation => lecture fichier SMB (necessaire avec climat_Grice2sea_years_mod) 62 63 63 64 ! pas de lacs proglaciaires -
branches/iLoveclim/SOURCES/Hemin40_files/paradim-hemin40_mod.f90
r10 r32 15 15 16 16 character(len=7), parameter :: geoplace='hemin40' ! geoplace 17 character(len= 20), parameter :: dirnameinp='../../INPUT/HEMIN40/' ! input directory18 character(len= 20), parameter :: dirforcage='../../INPUT/Forcage/' ! input directory17 character(len=31), parameter :: dirnameinp='inputdata/grisli/INPUT/HEMIN40/' ! input directory 18 character(len=31), parameter :: dirforcage='inputdata/grisli/INPUT/Forcage/' ! input directory 19 19 20 20 ! dimensionnement grilles -
branches/iLoveclim/SOURCES/Netcdf-routines/io_netcdf_GRISLI.f90
r10 r32 97 97 implicit none 98 98 ! open(22,file='../SOURCES/Fichiers-parametres/netcdf_type.dat') 99 open(22,file=trim(dirsource)//'/Fichiers-parametres/netcdf_type.dat') 99 !open(22,file=trim(dirsource)//'/Fichiers-parametres/netcdf_type.dat') 100 open(22,file=trim(dirsource)//'/netcdf_type.dat') 101 100 102 read(22,'(i3)') ncdf_type 101 103 close(22) -
branches/iLoveclim/SOURCES/Netcdf-routines/sortie_netcdf_GRISLI_mod.0.2-hassine.f90
r31 r32 178 178 !------------------------------------ 179 179 ! open(num_file,file='../'//trim(dirsource)//'/Fichiers-parametres/'//geoplace//'_TEMPS-NETCDF.dat') 180 open(num_file,file=trim(dirsource)//'/Fichiers-parametres/'//geoplace//'_TEMPS-NETCDF.dat',status='old')181 180 ! open(num_file,file=trim(dirsource)//'/Fichiers-parametres/'//geoplace//'_TEMPS-NETCDF.dat',status='old') 181 open(num_file,file=trim(dirsource)//'/'//geoplace//'_TEMPS-NETCDF.dat',status='old') 182 182 183 183 ! passe les commentaires qui se terminent par une ligne de ~~~ … … 236 236 237 237 ! open(num_file,file='../'//trim(dirsource)//'/Fichiers-parametres/'//geoplace//'_LISTE-VAR-NETCDF.dat') 238 open(num_file,file=trim(dirsource)//'/Fichiers-parametres/'//geoplace//'_LISTE-VAR-NETCDF.dat') 238 ! open(num_file,file=trim(dirsource)//'/Fichiers-parametres/'//geoplace//'_LISTE-VAR-NETCDF.dat') 239 open(num_file,file=trim(dirsource)//'/'//geoplace//'_LISTE-VAR-NETCDF.dat') 239 240 240 241 !saute les commentaires … … 297 298 298 299 !open(num_file,file='../'//trim(dirsource)//'/Netcdf-routines/Description_Variables.dat') 299 open(num_file,file=trim(dirsource)//'/Netcdf-routines/Description_Variables.dat') 300 !open(num_file,file=trim(dirsource)//'/Netcdf-routines/Description_Variables.dat') 301 open(num_file,file=trim(dirsource)//'/Description_Variables.dat') 300 302 301 303 do !saut des commentaires et des variables 1D … … 405 407 end do predef 406 408 409 !aurel, tend in GRISLI is updated by Loveclim 410 ifin = 0 ! tend in here should be tend_loveclim 411 407 412 ! boucle sur les numeros de variables 408 413 boucle_var: do i=1,ntab … … 659 664 logical :: fait 660 665 661 662 666 ! instructions 663 if (itracebug.eq.1) call tracebug(' Entree dans routine sortie_netcdf_cat') 667 if (itracebug.eq.1) call tracebug(' Entree dans routine sortie_netcdf_cat') 664 668 665 669 … … 1186 1190 1187 1191 ! open(72,file='../'//trim(dirsource)//'/Netcdf-routines/Description_Variables.dat') 1188 open(72,file=trim(dirsource)//'/Netcdf-routines/Description_Variables.dat') 1192 !open(72,file=trim(dirsource)//'/Netcdf-routines/Description_Variables.dat') 1193 open(72,file=trim(dirsource)//'/Description_Variables.dat') 1189 1194 1190 1195 do -
branches/iLoveclim/SOURCES/ablation_mod.f90
r31 r32 32 32 REAL, dimension(nx,ny) :: PDDCT ! ct for PDD calculation 33 33 REAL, dimension(nx,ny) :: PDDCT2 ! ct for PDD calculation 34 integer :: methode_abl=0 ! selection methode pdd (0) ou van den Berg 2008 (1)34 integer,target :: methode_abl ! selection methode pdd ou van den Berg 2008 35 35 36 36 contains -
branches/iLoveclim/SOURCES/initial-0.3.f90
r31 r32 59 59 if (icompteur.ne.0) then ! reprise d un fichier cptr 60 60 call read_recovery(icompteur) 61 time = tbegin 61 !dcdmr --- GRISLI - LOVECLIM 62 ! time = tbegin 63 !dcdmr --- GRISLI - LOVECLIM 62 64 call sortie_ncdf_cat 63 65 ! else if (icompteur.eq.2) then ! reprise d'un fichier cptr mais sans la topo -
branches/iLoveclim/SOURCES/initial-phy-2.f90
r22 r32 34 34 !-------------------------------------------------------------- 35 35 ! dirsource='SOURCES' 36 dirsource='../../SOURCES' 36 !dcdmr --- GRISLI - LOVECLIM 37 ! dirsource='../../SOURCES' 38 dirsource='inputdata/grisli' 37 39 ! filin='../'//trim(dirsource)//'/Fichiers-parametres/'//trim(geoplace)//'_param_list.dat' 38 filin=trim(geoplace)//'_param_list.dat' 39 40 ! filin=trim(geoplace)//'_param_list.dat' 41 filin='./'//trim(dirsource)//'/'//trim(geoplace)//'_param_list.dat' 42 !dcdmr --- GRISLI - LOVECLIM 40 43 open(num_param,file=filin) 41 44 … … 51 54 !------------------------------------- 52 55 428 format(A) ! formats pour les ecritures dans 42 53 54 ! filin='../Param/param'//runname 55 filin='param'//runname 56 !dcdmr --- GRISLI - LOVECLIM 57 ! filin='param'//runname 58 filin='restartdata/param'//runname 59 !dcdmr --- GRISLI - LOVECLIM 56 60 open(num_rep_42,file=filin) 57 61 … … 140 144 read(num_param,timesteps) 141 145 146 write(*,*) "Le temps dans initial-phy-2.F90", time, tbegin 147 142 148 ! dmr&aurel ## namelist/timesteps/dtmin,dtmax,dtt,testdiag,tbegin,tend 143 149 write(num_rep_42,428)'!___________________________________________________________' -
branches/iLoveclim/SOURCES/main3D-0.4-40km.f90
r24 r32 100 100 !< 101 101 102 program main3D102 subroutine ISM_NORD 103 103 104 104 USE module3D_phy … … 112 112 use resolmeca_SIA_L1 113 113 ! use track_debug 114 !dcdmr --- GRISLI - LOVECLIM 115 use input_timerCplGRIS 116 !dcdmr --- GRISLI - LOVECLIM 114 117 115 118 implicit none 116 119 117 120 118 119 integer :: m 120 121 ! good luck 122 123 call grisli_init ! Initializations 124 125 time_loop: do nt=1,ntmax !____________________________ debut boucle temporelle 126 127 if (time.ge.tend) exit 128 if (time.gt.10) itracebug = 0 129 call step_time_loop() 130 121 !dcdmr --- GRISLI - LOVECLIM 122 !cdc appel d'initial au premier passage dans grisli 123 ! pour demarrer avec climat initialise 124 if (time.eq.tbegin) call grisli_init ! Initializations 125 ! mab: timCplGRISyr corresponds to a certain amout of DAYS 126 TEND = real(TIME) + real(timCplGRISyr) 127 128 PRINT*,'******* Appel de GRISLI Nord *******' 129 PRINT*,'TIME = ',TIME,' TEND = ',TEND 130 131 time_loop: DO WHILE (time.LT.tend) !____________________________ debut boucle temporelle 132 call step_time_loop 133 nt= nt+1 !cdc ajoute pour incrementer nt 134 IF (nt.gt.ntmax) exit 131 135 end do time_loop 136 132 137 if (itracebug.eq.1) call tracebug('dans main avant call out_recovery ') 133 138 call out_recovery(iout) 134 139 135 write(6,*) "end of the run at time = ",time136 write(6,*) "_____________________________________________________________________"137 138 end program main3D140 ! write(6,*) "end of the run at time = ",time 141 ! write(6,*) "_____________________________________________________________________" 142 143 end subroutine ISM_NORD 139 144 140 145 … … 177 182 marine=.true. 178 183 ! ----------------------------------fin des modifs run les plus usuelles 179 ! DIRNAMEOUT='. ./RESULTATS/'180 DIRNAMEOUT=' ./'184 ! DIRNAMEOUT='./' 185 DIRNAMEOUT='outputdata/ism/' 181 186 182 187 call initial ! routine qui appel toutes les routines d'initialisation -
branches/iLoveclim/SOURCES/out_cptr_mod.f90
r8 r32 463 463 write(num_file1,*) 464 464 write(num_file1,*) 'age de la glace' 465 tab1(:,:,:) = tdep(:,:,:) - time466 write(num_file1,*) t ab1(:,:,:)! note: on decide d'ecrire le temps 'relatif'465 !tab1(:,:,:) = tdep(:,:,:) - time 466 write(num_file1,*) tdep(:,:,:) - time ! note: on decide d'ecrire le temps 'relatif' 467 467 468 468 close(num_file1) -
branches/iLoveclim/SOURCES/out_horiz_mod.f90
r10 r32 88 88 !------------------------------------ 89 89 ! open(num_dat,file='../'//trim(dirsource)//'/Fichiers-parametres/TEMPS-HZ.dat') 90 open(num_dat,file=trim(dirsource)//'/Fichiers-parametres/TEMPS-HZ.dat') 90 !open(num_dat,file=trim(dirsource)//'/Fichiers-parametres/TEMPS-HZ.dat') 91 open(num_dat,file=trim(dirsource)//'/TEMPS-HZ.dat') 91 92 92 93 ! passe les commentaires qui se terminent par une ligne de ~~~ … … 136 137 137 138 ! open(num_dat,file='../'//trim(dirsource)//'/Fichiers-parametres/LISTE-VAR-HZ.dat') 138 open(num_dat,file=trim(dirsource)//'/Fichiers-parametres/LISTE-VAR-HZ.dat') 139 !open(num_dat,file=trim(dirsource)//'/Fichiers-parametres/LISTE-VAR-HZ.dat') 140 open(num_dat,file=trim(dirsource)//'/LISTE-VAR-HZ.dat') 141 139 142 140 143 !saute les commentaires -
branches/iLoveclim/SOURCES/util_recovery.f90
r31 r32 35 35 36 36 !open(num_file,file='../SOURCES/Fichiers-parametres/TEMPS-CPTR-NC.dat') 37 open(num_file,file=trim(dirsource)//'/Fichiers-parametres/TEMPS-CPTR-NC.dat') 37 !open(num_file,file=trim(dirsource)//'/Fichiers-parametres/TEMPS-CPTR-NC.dat') 38 open(num_file,file=trim(dirsource)//'/TEMPS-CPTR-NC.dat') 38 39 39 40 ! passe les commentaires qui se terminent par une ligne de ~~~ … … 84 85 logic_out=.FALSE. 85 86 87 ! aurel, dec15. en plus des id avec des "k" etc. on va rajouter 88 ! un identifiant "grestart" pour identifier ces .nc restarts 89 ! des autres 90 86 91 if ((mod(abs(dble(TIME)),dble(DTOUT)).lt.dble(dtmin)).OR. & 87 92 (ABS(TIME+297000).LT.dtmin) .OR. & … … 103 108 write(ntime,'(i10)') INT(abs(dble(tab_time(indice)))/dble(DTOUT)) 104 109 if (tab_time(indice) .Lt. 0) then 105 filin=runname//'- k'//trim(ADJUSTL(ntime))110 filin=runname//'-grestart-k'//trim(ADJUSTL(ntime)) 106 111 else 107 filin=runname//' +k'//trim(ADJUSTL(ntime))112 filin=runname//'-grestart+k'//trim(ADJUSTL(ntime)) 108 113 end if 109 114 … … 111 116 if (TIME .ge. Tend) then 112 117 time_out(1)=TIME 113 filin=runname//' _2'118 filin=runname//'-grestart_2' 114 119 else 115 120 time_out(1)=TIME 116 filin=runname//' _1'121 filin=runname//'-grestart_1' 117 122 end if 118 123 end if
Note: See TracChangeset
for help on using the changeset viewer.