29       logical flow_flag,surface
    33       character*20 sideload(*),label
    34       character*80 amname(*),amplitude
    35       character*81 set(*),elset
    36       character*132 textpart(16)
    38       integer istartset(*),iendset(*),ialset(*),nelemload(2,*),mi(*),
    39      &  ielmat(mi(3),*),nset,nload,nload_,ntmat_,istep,istat,n,i,
    41      &  iamload(2,*),nam,iamptemp,ipos,ne,node,iampfilm,iline,ipol,inl,
    42      &  ipoinp(2,*),inp(3,*),nam_,namtot,namtot_,namta(3,*),idelay1,
    43      &  idelay2,ipoinpc(0:*)
    45       real*8 xload(2,*),xmagfilm,xmagtemp,amta(2,*)
    54          write(*,*) 
'*ERROR in films: *FILM should only be used'    55          write(*,*) 
'  within a STEP'    60          if((textpart(i)(1:6).eq.
'OP=NEW').and.(.not.flow_flag)) 
then    62                if(sideload(j)(1:1).eq.
'F') 
then    66          elseif(textpart(i)(1:10).eq.
'AMPLITUDE=') 
then    67             read(textpart(i)(11:90),
'(a80)') amplitude
    69                if(amname(j).eq.amplitude) 
then    75                write(*,*)
'*ERROR in films: nonexistent amplitude'    82          elseif(textpart(i)(1:10).eq.
'TIMEDELAY=') 
THEN    84                write(*,*) 
'*ERROR in films: the parameter TIME DELAY'    85                write(*,*) 
'       is used twice in the same keyword'    95                write(*,*) 
'*ERROR in films: increase nam_'   100             if(iamptemp.eq.0) 
then   101                write(*,*) 
'*ERROR in films: time delay must be'   102                write(*,*) 
'       preceded by the amplitude parameter'   105             namta(3,nam)=sign(iamptemp,namta(3,iamptemp))
   110                namtot=namta(2,nam-1)
   113             if(namtot.gt.namtot_) 
then   114                write(*,*) 
'*ERROR films: increase namtot_'   119             read(textpart(i)(11:30),
'(f20.0)',iostat=istat) 
   121             if(istat.gt.0) 
call inputerror(inpc,ipoinpc,iline,
   123          elseif(textpart(i)(1:14).eq.
'FILMAMPLITUDE=') 
then   124             read(textpart(i)(15:94),
'(a80)') amplitude
   126                if(amname(j).eq.amplitude) 
then   132                write(*,*)
'*ERROR in films: nonexistent amplitude'   139          elseif(textpart(i)(1:14).eq.
'FILMTIMEDELAY=') 
THEN   140             if(idelay2.ne.0) 
then   141                write(*,*) 
'*ERROR in films: the parameter FILM TIME'   142                write(*,*) 
'       DELAY is used twice in the same'   143                write(*,*) 
'       keyword; '   152                write(*,*) 
'*ERROR in films: increase nam_'   157             if(iampfilm.eq.0) 
then   158                write(*,*) 
'*ERROR in films: film time delay must be'   159                write(*,*) 
'       preceded by the film amplitude'   160                write(*,*) 
'       parameter'   163             namta(3,nam)=sign(iampfilm,namta(3,iampfilm))
   168                namtot=namta(2,nam-1)
   171             if(namtot.gt.namtot_) 
then   172                write(*,*) 
'*ERROR films: increase namtot_'   177             read(textpart(i)(15:34),
'(f20.0)',iostat=istat) 
   179             if(istat.gt.0) 
call inputerror(inpc,ipoinpc,iline,
   183      &        
'*WARNING in films: parameter not recognized:'   185      &                 textpart(i)(1:index(textpart(i),
' ')-1)
   192          call getnewline(inpc,textpart,istat,n,key,iline,ipol,inl,
   193      &        ipoinp,inp,ipoinpc)
   194          if((istat.lt.0).or.(key.eq.1)) 
return   196          read(textpart(2)(1:20),
'(a20)',iostat=istat) label
   200          if(label(2:4).eq.
'NEG') label(2:4)=
'1  '   201          if(label(2:4).eq.
'POS') label(2:4)=
'2  '   202          if(label(2:2).eq.
'N') label(2:2)=
'5'   203          if(label(2:2).eq.
'P') label(2:2)=
'6'   208          if((label(3:4).ne.
'NU').and.(label(3:4).ne.
'FC')) 
then   209             read(textpart(3)(1:20),
'(f20.0)',iostat=istat) xmagtemp
   210             if(istat.gt.0) 
call inputerror(inpc,ipoinpc,iline,
   212             read(textpart(4)(1:20),
'(f20.0)',iostat=istat) xmagfilm
   213             if(istat.gt.0) 
call inputerror(inpc,ipoinpc,iline,
   220          elseif(label(3:4).eq.
'FC') 
then   221             read(textpart(3)(1:10),
'(i10)',iostat=istat) node
   222             if(istat.gt.0) 
call inputerror(inpc,ipoinpc,iline,
   225             read(textpart(4)(1:20),
'(f20.0)',iostat=istat) xmagfilm
   226             if(istat.gt.0) xmagfilm=-1.d0
   228          if(((label(1:2).ne.
'F1').and.(label(1:2).ne.
'F2').and.
   229      &       (label(1:2).ne.
'F0').and.
   230      &       (label(1:2).ne.
'F3').and.(label(1:2).ne.
'F4').and.
   231      &       (label(1:2).ne.
'F5').and.(label(1:2).ne.
'F6')).or.
   232      &      ((label(3:4).ne.
'  ').and.(label(3:4).ne.
'NU').and.
   233      &       (label(3:4).ne.
'FC'))) 
then   238          read(textpart(1)(1:10),
'(i10)',iostat=istat) l
   241                write(*,*) 
'*ERROR in films: element ',l
   242                write(*,*) 
'       is not defined'   246             if((lakon(l)(1:2).eq.
'CP').or.
   247      &           (lakon(l)(2:2).eq.
'A').or.
   248      &           (lakon(l)(7:7).eq.
'E').or.
   249      &           (lakon(l)(7:7).eq.
'S').or.
   250      &           (lakon(l)(7:7).eq.
'A')) 
then   251                if(label(1:2).eq.
'F1') 
then   253                elseif(label(1:2).eq.
'F2') 
then   255                elseif(label(1:2).eq.
'F3') 
then   257                elseif(label(1:2).eq.
'F4') 
then   259                elseif(label(1:2).eq.
'F5') 
then   261                elseif(label(1:2).eq.
'F6') 
then   265             call loadaddt(l,label,xmagfilm,xmagtemp,nelemload,sideload,
   266      &           xload,nload,nload_,iamload,
   267      &           iamptemp,iampfilm,nam,node,iload)
   269             read(textpart(1)(1:80),
'(a80)',iostat=istat) elset
   271             ipos=index(elset,
' ')
   274                if(set(i).eq.elset) 
exit   283                   if(set(i).eq.elset) 
exit   287                   write(*,*) 
'*ERROR in films: element set '   288                   write(*,*) 
'       or facial surface ',elset
   289                   write(*,*) 
'       has not yet been defined. '   296             l=ialset(istartset(i))
   298                write(label(2:2),
'(i1)') l-10*(l/10)
   301             if((lakon(l)(1:2).eq.
'CP').or.
   302      &           (lakon(l)(2:2).eq.
'A').or.
   303      &           (lakon(l)(7:7).eq.
'E').or.
   304      &           (lakon(l)(7:7).eq.
'S').or.
   305      &           (lakon(l)(7:7).eq.
'A')) 
then   306                if(label(1:2).eq.
'F1') 
then   308                elseif(label(1:2).eq.
'F2') 
then   310                elseif(label(1:2).eq.
'F3') 
then   312                elseif(label(1:2).eq.
'F4') 
then   314                elseif(label(1:2).eq.
'F5') 
then   316                elseif(label(1:2).eq.
'F6') 
then   321             do j=istartset(i),iendset(i)
   322                if(ialset(j).gt.0) 
then   325                      write(label(2:2),
'(i1)') l-10*(l/10)
   328                   call loadaddt(l,label,xmagfilm,xmagtemp,nelemload,
   329      &                 sideload,xload,nload,nload_,iamload,
   330      &                 iamptemp,iampfilm,nam,node,iload)
   335                      if(l.ge.ialset(j-1)) 
exit   336                      call loadaddt(l,label,xmagfilm,xmagtemp,nelemload,
   337      &                    sideload,xload,nload,nload_,iamload,
   338      &                    iamptemp,iampfilm,nam,node,iload)
 
subroutine loadaddt(nelement, label, valfilm, valtemp, nelemload, sideload, xload, nload, nload_, iamload, iamptemp, iampfilm, nam, node, iload)
Definition: loadaddt.f:22
 
subroutine getnewline(inpc, textpart, istat, n, key, iline, ipol, inl, ipoinp, inp, ipoinpc)
Definition: getnewline.f:21