source: trunk/SOURCES/ablation_bord.f90 @ 23

Last change on this file since 23 was 4, checked in by dumas, 10 years ago

initial import GRISLI trunk

File size: 1.5 KB
Line 
1!> \file ablation_bord.f90
2!! Clacul de l'ablation sur le bord
3!<
4     
5
6!> SUBROUTINE: Ablation_bord
7!! Calcule l'ablation pour les points du bord
8!! \author ...
9!! \date ....
10!! @note cas des bords de calotte : un point du bord peut perdre en plus la glace
11!! amenée par l'écoulement.
12!! @note Calcule l'ablation pour les points du bord avec H=0 mais apport par l'amont
13!! diagnostic pour la fermeture du bilan d'eau
14!! par convention ablation negative dans la zone d'ablation
15!! @note Used modules:
16!! @note  - use module3D_phy
17!>
18
19subroutine   ablation_bord
20
21
22use module3D_phy
23implicit none
24integer :: ip1,im1,jp1,jm1   ! pour chercher les voisins
25integer :: somm
26
27
28! Dans les zones sans glace ou le calcul icethick a donne un H negatif
29! ablbord contient pour l'instant Hneg/dt
30! ailleurs ablbord=0
31
32where (ice(:,:).eq.1)    !  quand glace : abl=bm-acc
33   ablbord(:,:)=0.
34endwhere
35
36! pour être au bord, il suffit que la somme des ice voisins soit > 0
37do j=1,ny
38   do i=1,nx
39      if (ice(i,j).eq.0) then   ! seulment pour les noeuds sans glace
40         im1=max(i-1,1)
41         jm1=max(j-1,1)
42         ip1=min(i+1,nx)
43         jp1=min(j+1,ny)
44
45         somm=ice(ip1,j)+ice(im1,j)+ice(i,jp1)+ice(i,jm1)
46         if (somm.gt.0) then                               ! voisins englaces
47            ablbord(i,j)=bm(i,j)-Acc(i,j)-ablbord(i,j)     !  Ablvrai=bmpdd-Acc-Hcalc/dt
48         else
49            ablbord(i,j)=hdot(i,j)-acc(i,j)   ! on ne fond que ce qui est tombe + existant
50         endif
51
52      end if
53   end do
54end do
55
56end subroutine ablation_bord
Note: See TracBrowser for help on using the repository browser.