Last change
on this file since 37 was
4,
checked in by dumas, 10 years ago
|
initial import GRISLI trunk
|
File size:
2.4 KB
|
Line | |
---|
1 | !> \file initial2-0.4.f90 |
---|
2 | !!Initialisation du modele |
---|
3 | !< |
---|
4 | |
---|
5 | !> SUBROUTINE INITIAL2 |
---|
6 | !! Cette routine permet d'initialiser le modele. |
---|
7 | !! \author ... |
---|
8 | !! \date 19 Novembre 1999 |
---|
9 | !! @note Elle appelle toutes les routines d'initialisation des differents packages. |
---|
10 | !! @note C'est cette routine qui est appellee dans le main |
---|
11 | !! @note Used modules: |
---|
12 | !! @note - use module3D_phy |
---|
13 | !! @note - use param_phy_mod |
---|
14 | !< |
---|
15 | |
---|
16 | |
---|
17 | subroutine INITIAL2() |
---|
18 | |
---|
19 | USE module3D_phy |
---|
20 | USE param_phy_mod |
---|
21 | implicit none |
---|
22 | real,dimension(NZ) ::cord_vert |
---|
23 | |
---|
24 | ! INITIALISATION DES TABLEAUX |
---|
25 | |
---|
26 | cord_vert(1)=0. |
---|
27 | cord_vert(NZ)=1. |
---|
28 | do K=1,NZ |
---|
29 | if ((K.ne.1).and.(K.ne.NZ)) cord_vert(K)=(K-1.)/(NZ-1.) |
---|
30 | CDE(K)=1.-cord_vert(K) |
---|
31 | end do |
---|
32 | |
---|
33 | ABL(:,:)=0. |
---|
34 | BDOT(:,:)=0. |
---|
35 | BMELT(:,:)=0. |
---|
36 | EPSXX(:,:)=0. |
---|
37 | EPSYY(:,:)=0. |
---|
38 | EPSXY(:,:)=0. |
---|
39 | HWATER(:,:)=0. |
---|
40 | CALV(:,:)=0. |
---|
41 | HDOT(:,:)=0. |
---|
42 | HDOTWATER(:,:)=0. |
---|
43 | PDD(:,:)=0. |
---|
44 | SLOPE(:,:)=0. |
---|
45 | TBDOT(:,:)=0. |
---|
46 | TAUB(:,:)=0. |
---|
47 | TG(:,:)=0. |
---|
48 | UBX(:,:)=0. |
---|
49 | UBY(:,:)=0. |
---|
50 | UZK(:,:)=0. |
---|
51 | UXBAR(:,:)=0. |
---|
52 | UYBAR(:,:)=0. |
---|
53 | VBAR(:,:)=0. |
---|
54 | XX(:,:)=0. |
---|
55 | IBASE(:,:)=1 |
---|
56 | TPMP(:,:,1)=0 |
---|
57 | TPMP(:,:,NZ)=-0.00087*H(:,:) |
---|
58 | |
---|
59 | MK(:,:)=MK0(:,:) |
---|
60 | grzone(:,:)=.false. |
---|
61 | |
---|
62 | |
---|
63 | !-------Initialisation des fronts. |
---|
64 | FRONT(:,:) =0 |
---|
65 | FRONTFACEX(:,:)=0 |
---|
66 | FRONTFACEY(:,:)=0 |
---|
67 | |
---|
68 | !-------Initialisation des flot... devrait etre mise dans input_topo. |
---|
69 | ! en tout cas on le fait pour mismip |
---|
70 | |
---|
71 | do J=1,NY |
---|
72 | do I=1,NX |
---|
73 | if ((BSOC(I,J)+H(I,J)*RO/ROW -SEALEVEL).LT.0.) then |
---|
74 | FLOT(I,J)=.TRUE. |
---|
75 | else |
---|
76 | FLOT(I,J)=.FALSE. |
---|
77 | endif |
---|
78 | enddo |
---|
79 | enddo |
---|
80 | |
---|
81 | |
---|
82 | FLOTMX(:,:)=FLOT(:,:) |
---|
83 | FLOTMY(:,:)=FLOT(:,:) |
---|
84 | OKUMAT(:,:)=.FALSE. |
---|
85 | OKVMAT(:,:)=.FALSE. |
---|
86 | GZMX(:,:)=.FALSE. |
---|
87 | GZMY(:,:)=.FALSE. |
---|
88 | FLGZMX(:,:)=.FALSE. |
---|
89 | FLGZMY(:,:)=.FALSE. |
---|
90 | ILEMX(:,:)=.FALSE. |
---|
91 | ILEMY(:,:)=.FALSE. |
---|
92 | |
---|
93 | |
---|
94 | do J=2,NY |
---|
95 | do I=2,NX |
---|
96 | SDX(I,J)=(S(I,J)-S(I-1,J))/DX |
---|
97 | SDY(I,J)=(S(I,J)-S(I,J-1))/DX |
---|
98 | end do |
---|
99 | end do |
---|
100 | |
---|
101 | |
---|
102 | |
---|
103 | do K=1,NZ |
---|
104 | do I=1,NX |
---|
105 | do J=1,NY |
---|
106 | UX(I,J,K)=0. |
---|
107 | UY(I,J,K)=0. |
---|
108 | UZR(I,J,K)=0. |
---|
109 | T(I,J,K)=0. |
---|
110 | !CT(I,J,K)=6.62E7 |
---|
111 | !CP(I,J,K)=2009. |
---|
112 | end do |
---|
113 | end do |
---|
114 | end do |
---|
115 | |
---|
116 | do K=2,NZ-1 |
---|
117 | do I=1,NX |
---|
118 | do J=1,NY |
---|
119 | TPMP(I,J,K)=-0.00087*(K-1)/(NZ-1)*H(I,J) |
---|
120 | end do |
---|
121 | end do |
---|
122 | end do |
---|
123 | |
---|
124 | do K=NZ+1,NZ+NZM |
---|
125 | do I=1,NX |
---|
126 | do J=1,NY |
---|
127 | T(I,J,K)=0. |
---|
128 | end do |
---|
129 | end do |
---|
130 | end do |
---|
131 | end subroutine INITIAL2 |
---|
Note: See
TracBrowser
for help on using the repository browser.