26 character*20 label,sideload(*)
28 integer nelemload(2,*),iamload(2,*),nelement,nload,nload_,j,
29 & iamplitude,nam,isector,id,idefload(*)
31 real*8 xload(2,*),value
33 call nident2(nelemload,nelement,nload,id)
40 if(nelemload(1,id).eq.nelement)
then 42 if (sideload(id).eq.label)
then 43 if(nelemload(2,id).eq.isector)
then 48 if(idefload(id).eq.0)
then 53 if(iamload(1,id).ne.iamplitude)
then 54 write(*,*)
'*ERROR in loadadd:' 55 write(*,*)
' it is not allowed to ' 56 write(*,*)
' define two distributed' 57 write(*,*)
' loads/fluxes with' 58 write(*,*)
' different amplitudes ' 59 write(*,*)
' in one step' 60 write(*,*)
'element: ',nelement,
' face:',
65 xload(1,id)=xload(1,id)+
value 69 iamload(1,id)=iamplitude
70 iamload(2,id)=iamplitude
73 elseif(nelemload(2,id).lt.isector)
then 76 elseif(sideload(id).lt.label)
then 80 if((id.eq.0).or.(nelemload(1,id).ne.nelement))
then 98 if(nload.gt.nload_)
then 99 write(*,*)
'*ERROR in loadadd: increase nload_' 106 nelemload(1,j)=nelemload(1,j-1)
107 nelemload(2,j)=nelemload(2,j-1)
108 idefload(j)=idefload(j-1)
109 sideload(j)=sideload(j-1)
110 xload(1,j)=xload(1,j-1)
111 xload(2,j)=xload(2,j-1)
113 iamload(1,j)=iamload(1,j-1)
114 iamload(2,j)=iamload(2,j-1)
120 nelemload(1,id+1)=nelement
121 nelemload(2,id+1)=isector
127 iamload(1,id+1)=iamplitude
subroutine nident2(x, px, n, id)
Definition: nident2.f:27