CalculiX  2.13
A Free Software Three-Dimensional Structural Finite Element Program
cd_lab_radius.f File Reference

Go to the source code of this file.

Functions/Subroutines

subroutine cd_lab_radius (rad, s, hst, cd_radius)
 

Function/Subroutine Documentation

◆ cd_lab_radius()

subroutine cd_lab_radius ( real*8  rad,
real*8  s,
real*8  hst,
real*8  cd_radius 
)
30 !
31  implicit none
32 !
33  integer id,i,number,n9
34 !
35  real*8 rad,s,cd_radius,rzs_tab(9),cd_sharp(9),rzs,hst
36 !
37  real*8 rzs_tab1(9)
38  data rzs_tab1
39  & /0d0,0.05d0,0.100d0,0.150d0,0.200d0,0.250d0,0.300d0,0.350d0,
40  & 0.400d0/
41 !
42  real*8 cd_sharp1(9)
43  data cd_sharp1
44  & /1d0,1.025d0,1.10d0,1.11d0,1.12d0,1.125d0,1.126d0,1.127d0,
45  & 1.127d0/
46 !
47  real*8 rzs_tab2(9)
48  data rzs_tab2
49  & /0d0,0.05d0,075d0,0.100d0,0.15d0,0.20d0,0.25d0,0.30d0,0.40d0/
50 !
51  real*8 cd_sharp2(9)
52  data cd_sharp2
53  & /1d0,1.10d0,1.15d0,1.20d0,1.26d0,1.31d0,1.34d0,1.36d0,1.37d0/
54 !
55  data n9 /9/
56 !
57  rzs=rad/s
58 !
59 ! straight labyrinth
60 !
61  if(hst.eq.0d0) then
62  call ident(rzs_tab1,rzs,n9,id)
63  number=9
64  do i=1,9
65  rzs_tab(i)=rzs_tab1(i)
66  cd_sharp(i)=cd_sharp1(i)
67  enddo
68 !
69 ! stepped labyrinth
70 !
71  else
72  call ident(rzs_tab2,rzs,n9,id)
73  number=9
74  do i=1,9
75  rzs_tab(i)=rzs_tab2(i)
76  cd_sharp(i)=cd_sharp2(i)
77  enddo
78  endif
79 !
80 ! linear interpolation
81 !
82 !
83  if(id.eq.1) then
84  cd_radius=cd_sharp(1)
85  elseif(id.eq.number) then
86  cd_radius=cd_sharp(number)
87  else
88  cd_radius=cd_sharp(id)+(cd_sharp(id+1)-cd_sharp(id))
89  & *(rzs-rzs_tab(id))/(rzs_tab(id+1)-rzs_tab(id))
90  endif
91 !
92  return
93 !
subroutine ident(x, px, n, id)
Definition: ident.f:26
Hosted by OpenAircraft.com, (Michigan UAV, LLC)