32 character*20 sideload(*),label
33 character*81 set(*),elset
34 character*132 textpart(16)
36 integer istartset(*),iendset(*),ialset(*),nelemload(2,*),
37 & nset,nload,nload_,istep,istat,n,i,j,l,key,idefload(*),
38 & iamload(2,*),nam,iamplitude,ipos,ne,iline,ipol,inl,ipoinp(2,*),
39 & inp(3,*),idelay,isector,
42 real*8 xload(2,*),xmagnitude
51 &
'*ERROR reading *MASS FLOW: *MASS FLOW should only be used' 52 write(*,*)
' in the first STEP' 58 &
'*WARNING reading *MASS FLOW: parameter not recognized:' 60 & textpart(i)(1:index(textpart(i),
' ')-1)
66 call getnewline(inpc,textpart,istat,n,key,iline,ipol,inl,
68 if((istat.lt.0).or.(key.eq.1))
return 70 read(textpart(2)(1:20),
'(a20)',iostat=istat) label
72 read(textpart(3)(1:20),
'(f20.0)',iostat=istat) xmagnitude
73 if(xmagnitude.ne.0.d0)
then 74 write(*,*)
'*WARNING reading *MASS FLOW:' 75 write(*,*)
' magnitude for label: ',label
76 write(*,*)
' is not zero but' 77 write(*,*)
' takes the value: ',xmagnitude
78 write(*,*)
' it is set to zero' 82 if(istat.gt.0)
call inputerror(inpc,ipoinpc,iline,
84 if((label(1:2).ne.
'M1').and.(label(1:2).ne.
'M2').and.
85 & (label(1:2).ne.
'M ').and.
86 & (label(1:2).ne.
'M3').and.(label(1:2).ne.
'M4').and.
87 & (label(1:2).ne.
'M5').and.(label(1:2).ne.
'M6'))
then 92 read(textpart(1)(1:10),
'(i10)',iostat=istat) l
95 write(*,*)
'*ERROR reading *MASS FLOW: element ',l
96 write(*,*)
' is not defined' 100 if(lakon(l)(1:1).ne.
'F')
then 101 write(*,*)
'*ERROR reading *MASS FLOW: element ',l
102 write(*,*)
' is not a fluid element*' 105 call loadadd(l,label,xmagnitude,nelemload,sideload,
106 & xload,nload,nload_,iamload,iamplitude,
107 & nam,isector,idefload)
109 read(textpart(1)(1:80),
'(a80)',iostat=istat) elset
111 ipos=index(elset,
' ')
114 if(set(i).eq.elset)
exit 123 if(set(i).eq.elset)
exit 127 write(*,*)
'*ERROR reading *MASS FLOW: element set ' 128 write(*,*)
' or facial surface ',elset
129 write(*,*)
' has not yet been defined. ' 136 l=ialset(istartset(i))
137 if(.not.surface)
then 138 if(lakon(l)(1:1).ne.
'F')
then 139 write(*,*)
'*ERROR reading *MASS FLOW: element ',l
140 write(*,*)
' is not a fluid element*' 144 if(lakon(l/10)(1:1).ne.
'F')
then 145 write(*,*)
'*ERROR reading *MASS FLOW: element ',l/10
146 write(*,*)
' is not a fluid element*' 151 do j=istartset(i),iendset(i)
152 if(ialset(j).gt.0)
then 155 write(label(2:2),
'(i1)') l-10*(l/10)
158 call loadadd(l,label,xmagnitude,nelemload,sideload,
159 & xload,nload,nload_,iamload,iamplitude,
160 & nam,isector,idefload)
165 if(l.ge.ialset(j-1))
exit 166 call loadadd(l,label,xmagnitude,nelemload,
167 & sideload,xload,nload,nload_,
168 & iamload,iamplitude,nam,isector,idefload)
subroutine loadadd(nelement, label, value, nelemload, sideload, xload, nload, nload_, iamload, iamplitude, nam, isector, idefload)
Definition: loadadd.f:21
subroutine getnewline(inpc, textpart, istat, n, key, iline, ipol, inl, ipoinp, inp, ipoinpc)
Definition: getnewline.f:21