source: branches/iLoveclim/SOURCES/Greenmint40_files/lect-clim-act-greenmint_mod.f90

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

initial import GRISLI trunk

File size: 2.9 KB
Line 
1!> \file lect-clim-act-greenmint_mod.f90
2!!Module pour la lecture du climat
3!<
4
5!> \namespace lect_clim_act_greenmint
6!! Module pour la lecture du climat
7!! \author ...
8!! \date ...
9!! @note Used module
10!! @note   - use module3D_phy
11!! @note   - use ablation_ann
12!<
13
14module lect_clim_act_greenmint       ! version climat annuel
15
16  use module3D_phy
17  use ablation_ann          ! le module pdd base sur Tann et Tjuly
18contains
19 
20subroutine input_climat_ref()
21
22
23! l'accumulation a deja ete lue dans lect-topo parce qu'elle est dans le même fichier
24! que la topo : precip
25
26
27!    temperature en surface :    parametrisation EISMINT
28
29 call Tsgreen             ! Tann et Tjuly en fonction de S et Ylat
30
31 TA0(:,:)=Tann(:,:)
32
33
34! ecriture dans le fichier param
35write(num_rep_42,*)'!___________________________________________________________' 
36write(num_rep_42,*) ' ! module lect_clim_act_greenmint'
37write(num_rep_42,*) ' ! temperatures surface : parametrisation EISMINT'
38write(num_rep_42,*) ' ! zel   = max(S,20.*(ylat-65.))'
39write(num_rep_42,*) ' ! Tann  = 49.13-0.007992*Zel-0.7576*ylat'
40write(num_rep_42,*) ' ! Tjuly = 30.78-0.006277*S-0.3262*ylat'
41write(num_rep_42,*) ' ! precip lue en meme temps que topo'
42write(num_rep_42,*)'!___________________________________________________________' 
43write(num_rep_42,*)
44
45end subroutine input_climat_ref
46
47!---------------------------------------------------------------------------------------------
48! parametrisation de la temperature . Cette routine gere la partie dependance en altitude
49! c'est donc le S courant qui compte
50
51subroutine Tsgreen
52
53real :: Zel
54
55      do j=1,ny
56        do i=1,nx
57           zel=max(S(i,j),20.*(ylat(i,j)-65.))
58           Tann(i,j)=49.13-0.007992*Zel-0.7576*ylat(i,j)
59           Tjuly(i,j)= 30.78-0.006277*S(i,j)-0.3262*ylat(i,j)
60        end do
61     end do
62   end subroutine Tsgreen
63
64!!$!-------------------------------------------------------------------------------------------
65!!$subroutine massb_perturb_Tparam               ! calcule le mass balance en mode perturbation
66!!$                                              ! avec la temperature parametree greenmint   
67!!$                                              ! version Groenland (greenmint)     
68!!$
69!!$use climat_perturb_mod
70!!$
71!!$implicit none
72!!$
73!!$
74!!$!     surface temperature
75!!$call Tsgreen
76!!$
77!!$
78!!$do j=1,ny
79!!$   do i=1,nx
80!!$
81!!$      if(retroac.eq.1) then           ! full retroaction acc.
82!!$         acc(i,j)=precip(i,j)*exp(rappact*(tann(i,j)-ta0(i,j)))
83!!$         
84!!$      else if(retroac.eq.0) then
85!!$         acc(i,j)=precip(i,j)
86!!$         
87!!$      endif
88!!$   end do
89!!$end do
90!!$
91!!$!     ablation et bilan de masse sont maintenant appeles par forclim
92!!$
93!!$     
94!!$     debug_3D(:,:,29)=Tann(:,:)-Ta0(:,:)
95!!$     debug_3D(:,:,30)=Acc(:,:)-precip(:,:)
96!!$     debug_3D(:,:,31)=Acc(:,:)-bmelt(:,:)
97!!$
98!!$     
99!!$
100!!$     return
101!!$   end subroutine massb_perturb_Tparam
102
103 end module  lect_clim_act_greenmint
Note: See TracBrowser for help on using the repository browser.