26 logical multistage,tied,fluidperiodic,fluidcyclic
29 character*81 tieset(3,*)
30 character*132 textpart(16)
32 integer istep,istat,n,i,key,ipos,iline,ipol,inl,ipoinp(2,*),
33 & inp(3,*),ntie,ntie_,ipoinpc(0:*)
43 write(*,*)
'*ERROR in ties: *TIE should' 44 write(*,*)
' be placed before all step definitions' 49 if(ntie.gt.ntie_)
then 50 write(*,*)
'*ERROR in ties: increase ntie_' 56 tieset(1,ntie)(1:1)=
' ' 59 if(textpart(i)(1:18).eq.
'POSITIONTOLERANCE=')
then 60 read(textpart(i)(19:38),
'(f20.0)',iostat=istat)
62 if(istat.gt.0)
call inputerror(inpc,ipoinpc,iline,
64 elseif(textpart(i)(1:5).eq.
'NAME=')
then 65 read(textpart(i)(6:85),
'(a80)',iostat=istat)
66 & tieset(1,ntie)(1:80)
67 if(istat.gt.0)
call inputerror(inpc,ipoinpc,iline,
69 elseif(textpart(i)(1:14).eq.
'CYCLICSYMMETRY')
then 71 elseif(textpart(i)(1:10).eq.
'MULTISTAGE')
then 74 elseif(textpart(i)(1:13).eq.
'FLUIDPERIODIC')
then 77 elseif(textpart(i)(1:11).eq.
'FLUIDCYCLIC')
then 80 elseif(textpart(i)(1:9).eq.
'ADJUST=NO')
then 84 &
'*WARNING in ties: parameter not recognized:' 86 & textpart(i)(1:index(textpart(i),
' ')-1)
91 if(tieset(1,ntie)(1:1).eq.
' ')
then 92 write(*,*)
'*ERROR in ties: tie name is lacking' 98 call getnewline(inpc,textpart,istat,n,key,iline,ipol,inl,
100 if((istat.lt.0).or.(key.eq.1))
then 101 write(*,*)
'*ERROR in ties: definition of the tie' 102 write(*,*)
' is not complete.' 107 tieset(1,ntie)(81:81)=
'M' 109 tieset(1,ntie)(81:81)=
'T' 110 elseif(fluidperiodic)
then 111 tieset(1,ntie)(81:81)=
'P' 112 elseif(fluidcyclic)
then 113 tieset(1,ntie)(81:81)=
'Z' 115 tieset(1,ntie)(81:81)=
' ' 122 tieset(2,ntie)(1:80)=textpart(1)(1:80)
123 tieset(2,ntie)(81:81)=
' ' 127 tieset(3,ntie)(1:80)=textpart(2)(1:80)
128 tieset(3,ntie)(81:81)=
' ' 129 ipos=index(tieset(3,ntie),
' ')
130 tieset(3,ntie)(ipos:ipos)=
'T' 131 elseif(multistage)
then 135 tieset(2,ntie)(1:80)=textpart(1)(1:80)
136 tieset(2,ntie)(81:81)=
' ' 137 ipos=index(tieset(2,ntie),
' ')
138 tieset(2,ntie)(ipos:ipos)=
'S' 140 tieset(3,ntie)(1:80)=textpart(2)(1:80)
141 tieset(3,ntie)(81:81)=
' ' 142 ipos=index(tieset(3,ntie),
' ')
143 tieset(3,ntie)(ipos:ipos)=
'S' 144 elseif((fluidperiodic).or.(fluidcyclic))
then 148 tieset(2,ntie)(1:80)=textpart(1)(1:80)
149 tieset(2,ntie)(81:81)=
' ' 150 ipos=index(tieset(2,ntie),
' ')
151 tieset(2,ntie)(ipos:ipos)=
'T' 153 tieset(3,ntie)(1:80)=textpart(2)(1:80)
154 tieset(3,ntie)(81:81)=
' ' 155 ipos=index(tieset(3,ntie),
' ')
156 tieset(3,ntie)(ipos:ipos)=
'T' 162 tieset(2,ntie)(1:80)=textpart(1)(1:80)
163 tieset(2,ntie)(81:81)=
' ' 165 tieset(3,ntie)(1:80)=textpart(2)(1:80)
166 tieset(3,ntie)(81:81)=
' ' 169 call getnewline(inpc,textpart,istat,n,key,iline,ipol,inl,
170 & ipoinp,inp,ipoinpc)
subroutine getnewline(inpc, textpart, istat, n, key, iline, ipol, inl, ipoinp, inp, ipoinpc)
Definition: getnewline.f:21