Changeset 173 for trunk/SOURCES
- Timestamp:
- 01/08/18 17:15:03 (7 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/SOURCES/Ant16_files/bmelt-ant-regions-initmip_mod.f90
r148 r173 23 23 real,dimension(nx,ny) :: bmshelf !< fusion basale sous shelf 24 24 25 REAL,dimension(nx,ny) :: dist_talu !< distance du point au talu continental26 25 REAL,dimension(nx,ny) :: typeshelf !< Type de shelf Ronne->1 Ross ->2 .... 27 26 … … 38 37 real,dimension(nx,ny) :: bmgrz_0 !< fusion basale a la grounding zone 39 38 real,dimension(nx,ny) :: bmshelf_0 !< fusion basale sous shelf 39 integer :: flag_dist 40 real,dimension(nx,ny) :: coef_bmelt_dist 40 41 41 42 CONTAINS … … 48 49 49 50 real*8, dimension(:,:), pointer :: tab !< tableau 2d real pointer 51 real :: bmelt_dist0 50 52 character(len=100) :: file_number_shelves ! fichier avec les zones ice-shelves 51 53 character(len=100) :: file_bmelt_anom 54 real,dimension(nx,ny) :: dist_talus ! distance au talus 55 character(len=100) :: file_dist_talus ! fichier distance au talus 52 56 53 57 namelist/bmelt_ant_reg_initmip/bmelt_regions,bmgrz_regions, & 54 bmelt_talus,bmgrz_talus,bmelt_coef,file_number_shelves 58 bmelt_talus,bmgrz_talus,bmelt_coef,file_number_shelves, & 59 flag_dist,file_dist_talus,bmelt_dist0 55 60 namelist/bmelt_anom_initMIP/file_bmelt_anom, bmelt_time 56 61 … … 71 76 write(num_rep_42,*) 'bmelt_coef = ', bmelt_coef 72 77 write(num_rep_42,*) 'file_numer_shelves = ', file_number_shelves 78 write(num_rep_42,*) 'flag_dist = ', flag_dist 79 write(num_rep_42,*) 'file_dist_talus = ', file_dist_talus 80 write(num_rep_42,*) 'bmelt_dist0 = ', bmelt_dist0 73 81 write(num_rep_42,*)'/' 74 82 write(num_rep_42,428) '! bmelt_regions : fonte basale sous shelves pour les 18 regions initMIP' … … 77 85 write(num_rep_42,428) '! bmelt_coef : coef fonte (1 pour conserver val)' 78 86 write(num_rep_42,428) '! file_numer_ice-shelves : fichier zones ice shelves' 87 write(num_rep_42,428) '! flag_dist : flag pour bmelt fnct distance talus' 88 write(num_rep_42,428) '! file_dist_talus : fichier de distance talus' 89 write(num_rep_42,428) '! bmelt_dist0 : coef de bmelt au talus' 79 90 write(num_rep_42,*) 80 91 … … 87 98 typeshelf(:,:) = tab(:,:) 88 99 100 101 if (flag_dist.eq.1) then 102 file_dist_talus=TRIM(DIRNAMEINP)//trim(file_dist_talus) 103 call Read_Ncdf_var('z',file_dist_talus,tab) 104 dist_talus(:,:) = min(max(tab(:,:),0.),400.) 105 coef_bmelt_dist(:,:)= 1. / ((1/bmelt_dist0)*(1+(bmelt_dist0-1)*(dist_talus(:,:)/400.)**2)) 106 else 107 coef_bmelt_dist(:,:)= 1. 108 endif 89 109 90 110 bms_init: do j=1,ny … … 172 192 shelf: if (flot(i,j)) then ! partie flottante 173 193 174 bmelt(i,j)=coef_talus*bmshelf(i,j) 194 bmelt(i,j)=coef_talus*bmshelf(i,j)*coef_bmelt_dist(i,j) 175 195 176 196 if (fbm(i,j)) then 177 bmelt(i,j)=coef_talus*bmgrz(i,j) 197 bmelt(i,j)=coef_talus*bmgrz(i,j)*coef_bmelt_dist(i,j) 178 198 endif 179 199 … … 197 217 ! en fonction du nombre de points flottants 198 218 199 bmelt(i,j)= ngr/4.*bmgrz(i,j)*coef_talus+(1.-ngr/4.)*bmelt(i,j)219 bmelt(i,j)= (ngr/4.*bmgrz(i,j)*coef_talus)*coef_bmelt_dist(i,j)+(1.-ngr/4.)*bmelt(i,j) 200 220 201 221 … … 204 224 end do 205 225 end do 206 207 226 208 227
Note: See TracChangeset
for help on using the changeset viewer.