1 |
jscott |
1.1 |
|
2 |
|
|
#include "ctrparam.h" |
3 |
|
|
|
4 |
|
|
! ========================================================== |
5 |
|
|
! |
6 |
|
|
! MESH.F: subroutines for setting vertical coordinates |
7 |
|
|
! of the model. |
8 |
|
|
! |
9 |
|
|
! ---------------------------------------------------------- |
10 |
|
|
! |
11 |
|
|
! Revision History: |
12 |
|
|
! |
13 |
|
|
! When Who What |
14 |
|
|
! ---- ---------- ------- |
15 |
|
|
! 073100 Chien Wang repack based on CliChem3 & M24x11 |
16 |
|
|
! |
17 |
|
|
! ========================================================== |
18 |
|
|
|
19 |
|
|
SUBROUTINE MESH09(N,DST,DSB,SIGF,SIGH,DSIGH,DSIGF) |
20 |
|
|
|
21 |
|
|
IMPLICIT REAL*8 (A-H,O-Z) |
22 |
|
|
dimension sigf(n),sigh(0:n),dsigh(n),dsigf(n) |
23 |
|
|
dimension sig0(9),sige0(0:9) |
24 |
|
|
creal *4 sig0(9),sige0(0:9) |
25 |
|
|
CB for LM=9 |
26 |
|
|
DATA SIG0/.974264e0,.907372e0,.796957e0,.640124e0,.470418e0, |
27 |
|
|
& .318899e0, |
28 |
|
|
* .195759e0,.094938e0,.016897e0/ |
29 |
|
|
DATA SIGE0/1.e0,.948665e0,.866530e0,.728953e0,.554415e0,.390144e0, |
30 |
|
|
* .251540e0,.143737e0,.061602e0,0.e0/ |
31 |
|
|
ptop=10.e0 |
32 |
|
|
psrf=984.e0 |
33 |
|
|
do l=0,9 |
34 |
|
|
sigh(n-l)=sige0(l) |
35 |
|
|
enddo |
36 |
|
|
do l=1,9 |
37 |
|
|
sigf(n-l+1)=sig0(l) |
38 |
|
|
enddo |
39 |
|
|
print *,' ' |
40 |
|
|
print '(A35,I2)','VERTICAL GRID FOR LM=',N |
41 |
|
|
print *,' ' |
42 |
|
|
print *,' L SIGH PH SIGF PF' |
43 |
|
|
print *,' ' |
44 |
|
|
do l=0,n |
45 |
|
|
pp=sigh(l)*(psrf-ptop)+ptop |
46 |
|
|
if(l.eq.0)then |
47 |
|
|
print '(i5,2f10.2)',l,sigh(l),pp |
48 |
|
|
else |
49 |
|
|
pp1=sigf(l)*(psrf-ptop)+ptop |
50 |
|
|
print '(i5,4f10.2)',l,sigh(l),pp,sigf(l),pp1 |
51 |
|
|
endif |
52 |
|
|
enddo |
53 |
|
|
return |
54 |
|
|
end |
55 |
|
|
|
56 |
|
|
SUBROUTINE MESH11(N,DST,DSB,SIGF,SIGH,DSIGH,DELSF) |
57 |
|
|
|
58 |
|
|
IMPLICIT REAL*8 (A-H,O-Z) |
59 |
|
|
dimension sigf(n),sigh(0:n),dsigh(n),dsigf(n) |
60 |
|
|
real sig0(11),sige0(0:11),prnew(5) |
61 |
|
|
data prnew/30.,60.,100.,150.,200./ |
62 |
|
|
CB for LM=11 |
63 |
|
|
DATA SIGE0/1.,.948665,.866530,.728953,.554415,.390144, |
64 |
|
|
* .251540,.143737,.092402,.0513347,.02053388,0./ |
65 |
|
|
DATA SIG0/.974264,.907372,.796957,.640124,.470418,.318899, |
66 |
|
|
* .195759,.112936,.066735,.0308008,.0051335/ |
67 |
|
|
CE for LM=11 |
68 |
|
|
do l=0,11 |
69 |
|
|
sigh(n-l)=sige0(l) |
70 |
|
|
enddo |
71 |
|
|
do l=1,11 |
72 |
|
|
sigf(n-l+1)=sig0(l) |
73 |
|
|
enddo |
74 |
|
|
ptop=10. |
75 |
|
|
psrf=984. |
76 |
|
|
do l=1,4 |
77 |
|
|
pp=sigh(l)*(psrf-ptop)+ptop |
78 |
|
|
ppm1=sigh(l-1)*(psrf-ptop)+ptop |
79 |
|
|
ppf=sqrt(pp*ppm1) |
80 |
|
|
sigf(l)=(ppf-ptop)/(psrf-ptop) |
81 |
|
|
enddo |
82 |
|
|
print *,' ' |
83 |
|
|
print '(A35,I2)','VERTICAL GRID FOR LM=',N |
84 |
|
|
print *,' ' |
85 |
|
|
print *,' L SIGH PH SIGF PF' |
86 |
|
|
print *,' ' |
87 |
|
|
do l=0,n |
88 |
|
|
pp=sigh(l)*(psrf-ptop)+ptop |
89 |
|
|
if(l.eq.0)then |
90 |
|
|
print '(i5,f12.5,f10.2)',l,sigh(l),pp |
91 |
|
|
else |
92 |
|
|
pp1=sigf(l)*(psrf-ptop)+ptop |
93 |
|
|
print '(i5,2(f12.5,f10.2))',l,sigh(l),pp,sigf(l),pp1 |
94 |
|
|
endif |
95 |
|
|
enddo |
96 |
|
|
return |
97 |
|
|
end |