1 | !> \file lineartemp-0.2.F |
---|
2 | !! Linear temperature in ice |
---|
3 | !< |
---|
4 | |
---|
5 | !> SUBROUTINE: LINEARTEMP |
---|
6 | !! Calculate the linear temperature in ice |
---|
7 | !! \author ... |
---|
8 | !! \date ... |
---|
9 | !! @note Used modules: |
---|
10 | !! @note - use module3D_phy |
---|
11 | !! @note - use icetemp_declar |
---|
12 | !< |
---|
13 | |
---|
14 | subroutine LINEARTEMP |
---|
15 | |
---|
16 | ! ********************************************************* |
---|
17 | ! (********** LINEAR TEMPERATURE IN ICE *******************) |
---|
18 | ! ********************************************************* |
---|
19 | |
---|
20 | USE module3D_phy |
---|
21 | USE icetemp_declar |
---|
22 | implicit none |
---|
23 | |
---|
24 | ! character(len=80) :: filin |
---|
25 | |
---|
26 | ! char SccsId[] = "@(#)lineartemp.f 1.3 date delta= 01/06/95 heure delta= 14:56:20 date lecture= 01/09/95" |
---|
27 | |
---|
28 | |
---|
29 | ! filin='templin.res' |
---|
30 | |
---|
31 | |
---|
32 | ! open(num_templin,file=filin) |
---|
33 | ! write(num_templin,*) 'temperature initiale lineaire' |
---|
34 | |
---|
35 | |
---|
36 | do I=1,NX |
---|
37 | do J=1,NY |
---|
38 | H1(I,J)=H(I,J) |
---|
39 | B1(I,J)=B(I,J) |
---|
40 | TG(I,J)=0. |
---|
41 | BMELT(I,J)=0. |
---|
42 | T(I,J,1)=min(0.,TS(I,J)) |
---|
43 | ! TPMP(I,J,1)=0. |
---|
44 | ! TPMP(I,J,NZ)=-0.00087*H(I,J) |
---|
45 | ! T(I,J,NZ)=TPMP(I,J,NZ) |
---|
46 | ! pour partir d'une tempéature plus froide |
---|
47 | ! T(I,J,NZ)=TPMP(I,J,NZ)-10. |
---|
48 | |
---|
49 | if (H(i,j).gt.1.) T(I,J,NZ)=TPMP(I,J,NZ)-20. |
---|
50 | |
---|
51 | |
---|
52 | |
---|
53 | do K=2,NZ-1 |
---|
54 | ! TPMP(I,J,K)=-0.00087*(K-1)/(NZ-1)*H(I,J) |
---|
55 | ! T(I,J,K)=T(I,J,1)-(T(I,J,1)-TPMP(I,J,NZ))*(K-1)/(NZ-1) |
---|
56 | T(I,J,K)=T(I,J,1)-(T(I,J,1)-T(I,J,NZ))*(K-1)/(NZ-1) |
---|
57 | ! write(num_templin,*) T(I,J,K) |
---|
58 | end do |
---|
59 | do K=NZ+1,NZ+NZM |
---|
60 | T(I,J,K)=(T(I,J,K-1)-GHF(i,j)*DZM/cm) |
---|
61 | end do |
---|
62 | end do |
---|
63 | end do |
---|
64 | close(num_templin) |
---|
65 | |
---|
66 | |
---|
67 | end subroutine LINEARTEMP |
---|