1 | SUBROUTINE trajet_sens(itmp1, w, bi, bj, w_dk, bi_dt, bj_dt)
2 | IMPLICIT NONE
3 | c
4 | c&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
5 | c expression des fonctions derivee de psi par rapport a ....
6 | c in -->
7 | c in, iin,itmp1, w, bi , bj, w_dk, bi_dt, bj_dt
8 | c
9 | c
10 | c out -->
11 | c psi
12 | c dpsi6d? cf cecile.inc
13 | c&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
14 | c
15 | c.......................................................................
16 | c
17 | INCLUDE 'cecile.inc'
18 | include 'propradia.inc'
19 | c pour kgb6p
20 | include 'propradiabis.inc'
21 | c pour kgskgbar
22 | include 'radiatif.inc'
23 | c include 'radiatif.inc'
24 | c include 'entre.inc'
25 |
26 | double precision w
27 | double precision bi, bj
28 | double precision w_dk, bi_dt, bj_dt
29 |
30 | c.......................................................................
31 | c DOUBLE PRECISION tmp1,tmp2,tmp3,tmp4,tmp5
32 | INTEGER itmp1
33 | c ,itmp2,itmp3,itmp4,itmp5
34 | c.......................................................................
35 | c
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 | c -----{calcul de dpsi6d ? ...}
44 |
45 |
46 | c..........derivee par rapport a k..................................
47 | c dpsidk(in,iin,itmp1)=dpsidk(in,iin,itmp1)
48 | c & +w_dk(iin,itmp1)
49 |
50 | c var_dpsidk(in,iin,itmp1)=var_dpsidk(in,iin,itmp1)
51 | c & +w_dk(iin,itmp1)**2
52 |
53 |
54 | c..........derivee par rapport a kgbar................................
55 | cc dpsidkgbar(in,iin,itmp1)=dpsidkgbar(in,iin,itmp1)
56 | cc & +w_dk(iin,itmp1)*kgskgbar
57 |
58 | cc var_dpsidkgbar(in,iin,itmp1)=var_dpsidkgbar(in,iin,itmp1)
59 | cc & +(w_dk(iin,itmp1)*kgskgbar)**2
60 |
61 |
62 |
63 | c..........derivee selon fv...........................................
64 | dpsi6dfv(in,iin,itmp1)=dpsi6dfv(in,iin,itmp1)
65 | & +(w_dk
66 | & * 5.5* eta(ibande)* 1.D+2
67 | & * delta_eta(ibande)*1.d+2*(bi-bj))
68 |
69 |
70 | cccc var_dpsi6dfv(in,iin,itmp1)=var_dpsi6dfv(in,iin,itmp1)
71 | cccc & +(w_dk
72 | cccc & * 5.5* eta(ibande)* 1.D+2
73 | cccc & * delta_eta(ibande)*1.d+2*(bi-bj))**2
74 |
75 | c..........derivee selon fmco, fmco2, fmh2o..........................
76 | c rajouter le 14 novembre 1999 a Toulouse
77 | dpsi6dfmco(in,iin,itmp1)=dpsi6dfmco(in,iin,itmp1)
78 | & +(w_dk
79 | & * kgskgbar(1)*kgb6p(1,ibande)
80 | & * delta_eta(ibande)*1.d+2*(bi-bj))
81 |
82 | cccc var_dpsi6dfmco(in,iin,itmp1)=var_dpsi6dfmco(in,iin,itmp1)
83 | cccc & +(w_dk
84 | cccc & * kgskgbar(1)*kgb6p(1,ibande)
85 | cccc & * delta_eta(ibande)*1.d+2*(bi-bj))**2
86 |
87 | ccc
88 | dpsi6dfmco2(in,iin,itmp1)=dpsi6dfmco2(in,iin,itmp1)
89 | & +(w_dk
90 | & * kgskgbar(2)*kgb6p(2,ibande)
91 | & * delta_eta(ibande)*1.d+2*(bi-bj))
92 |
93 | cccc var_dpsi6dfmco2(in,iin,itmp1)=var_dpsi6dfmco2(in,iin,itmp1)
94 | cccc & +(w_dk
95 | cccc & * kgskgbar(2)*kgb6p(2,ibande)
96 | cccc & * delta_eta(ibande)*1.d+2*(bi-bj))**2
97 | ccc
98 |
99 | dpsi6dfmh2o(in,iin,itmp1)=dpsi6dfmh2o(in,iin,itmp1)
100 | & +(w_dk
101 | & * kgskgbar(3)*kgb6p(3,ibande)
102 | & * delta_eta(ibande)*1.d+2*(bi-bj))
103 |
104 | cccc var_dpsi6dfmh2o(in,iin,itmp1)=var_dpsi6dfmh2o(in,iin,itmp1)
105 | cccc & +(w_dk
106 | cccc & * kgskgbar(3)*kgb6p(3,ibande)
107 | cccc & * delta_eta(ibande)*1.d+2*(bi-bj))**2
108 |
109 |
110 | c..........derivee selon temperature..................................
111 | dpsi6dt(in,iin,itmp1)= dpsi6dt(in,iin,itmp1)
112 | & + w*delta_eta(ibande)*1.d+2*
113 | & (bi_dt-bj_dt)
114 | c if ((in.eq.1).and.(iin.eq. 0) .and.(itmp1 .eq. 1)) then
115 | c print*, dpsi6dt(in,iin,itmp1),(bi_dt-bj_dt),bi_dt,bj_dt
116 | c read *
117 | c endif
118 | c print *, 'var-dpsi avant recalcul'
119 | c print *, var_dpsi6dt(in,iin,itmp1)
120 | c endif
121 |
122 | cccc var_dpsi6dt(in,iin,itmp1)=var_dpsi6dt(in,iin,itmp1)
123 | cccc & + (w*delta_eta(ibande)*1.d+2*
124 | cccc & (bi_dt-bj_dt) )**2
125 |
126 |
127 | ccccc if ((in.eq.89).and.(iin.eq. 77) .and.(itmp1 .eq. 72)) then
128 | cccc print *, 'dans trajet_sens'
129 | ccc print *, 'in,iin,itmp1: ', in,iin,itmp1
130 | ccc print *, 'w, bi_dt-bj_dt,var_dpsi6dt(in,iin,itmp1)'
131 | ccc print *, w, bi_dt-bj_dt,var_dpsi6dt(in,iin,itmp1)
132 | cccc print *, 'AU CARRE: ',(w*delta_eta(ibande)*1.d+2*
133 | cccc & (bi_dt-bj_dt) )**2
134 | ccc read *
135 | ccccc endif
136 | c
137 | c.......................................................................
138 | c
139 | RETURN
140 | END
trajet_sens.f could be called by:
trajet.f | [archivage/code2000X_testCG] | - 260 - 377 - 490 - 647 - 761 |
trajet.f | [resultats/pt1_complet] | - 207 - 278 - 365 - 479 - 556 |
trajet.f | [src] | - 317 - 452 - 578 - 755 - 890 |