33 character*1 kind1,kind2
35 character*81 tieset(3,*),mastset,set(*),slavset
37 integer ncont,ntie,i,j,k,nset,istartset(*),iendset(*),ialset(*),
38 & imast,nelem,jface,ncone,islav,ismallsliding,ipos,mortar,istep,
56 if((tieset(1,i)(81:81).eq.kind1).or.
57 & (tieset(1,i)(81:81).eq.kind2))
then 58 if(tietol(1,i).lt.0.d0)
then 68 if(set(j).eq.mastset)
exit 71 ipos=index(mastset,
' ')
72 write(*,*)
'*ERROR in allocont: master surface ',
74 write(*,*)
' does not exist or does not contain' 75 write(*,*)
' element faces' 86 call isortii(ialset(istartset(imast)),idummy,
87 & iendset(imast)-istartset(imast)+1,kflag)
89 do j=istartset(imast)+1,iendset(imast)
90 if(ialset(j).eq.ialset(j-1)) cycle
92 ialset(jact)=ialset(j)
97 do j=istartset(imast),iendset(imast)
99 nelem=int(ialset(j)/10.d0)
100 jface=ialset(j)-10*nelem
102 if(lakon(nelem)(4:5).eq.
'20')
then 104 elseif(lakon(nelem)(4:4).eq.
'2')
then 106 elseif(lakon(nelem)(4:4).eq.
'8')
then 108 elseif(lakon(nelem)(4:5).eq.
'10')
then 110 elseif(lakon(nelem)(4:4).eq.
'4')
then 112 elseif(lakon(nelem)(4:5).eq.
'15')
then 118 elseif(lakon(nelem)(4:4).eq.
'6')
then 130 ipos=index(slavset,
' ')-1
131 if(slavset(ipos:ipos).eq.
'T')
then 137 elseif(slavset(ipos:ipos).eq.
'M')
then 143 elseif(slavset(ipos:ipos).eq.
'P')
then 149 elseif(slavset(ipos:ipos).eq.
'G')
then 155 elseif(slavset(ipos:ipos).eq.
'O')
then 172 if(set(j).eq.slavset)
exit 177 &
'*ERROR in allocont: element slave surface ',
179 write(*,*)
' does not exist' 183 if((set(j)(1:ipos-1).eq.slavset(1:ipos-1)).and.
184 & (set(j)(ipos:ipos).eq.
'T'))
then 190 write(*,*)
'*ERROR in allocont: slave surface ',
192 write(*,*)
' does not exist' 203 if((istep.eq.1).and.((mortar.eq.1).or.(.not.nodeslavsurf)))
206 call isortii(ialset(istartset(islav)),idummy,
207 & iendset(islav)-istartset(islav)+1,kflag)
208 jact=istartset(islav)
209 do j=istartset(islav)+1,iendset(islav)
210 if(ialset(j).eq.ialset(j-1)) cycle
212 ialset(jact)=ialset(j)
220 do j=istartset(islav),iendset(islav)
221 if(ialset(j).gt.0)
then 227 if(k.ge.ialset(j-1))
exit subroutine isortii(ix, iy, n, kflag)
Definition: isortii.f:6