35       character*8 lakonl,lakon(*)
    36       character*20 sideload(*),labmpc(*)
    39       integer mi(*),itg(*),ieg(*),ntg,nteq,nflow,nload,
    40      &     ielmat(mi(3),*),iflag,ider,iaxial,nalt,nalf,
    41      &     nelemload(2,*),nope,nopes,mint2d,i,j,k,l,nrhcon(*),
    42      &     node,imat,ntmat_,id,ifaceq(8,6),ifacet(6,4),numf,
    43      &     ifacew(8,5),node1,node2,nshcon(*),nelem,ig,index,konl(20),
    44      &     ipkon(*),kon(*),idof,ineighe(*),idir,ncocon(2,*),
    45      &     iinc,istep,jltyp,nfield,ikforc(*),ipobody(2,*),
    46      &     ilforc(*),nforc,nodem,idirf(8),ieq,nactdog(0:3,*),nbody,
    47      &     nacteq(0:3,*),ielprop(*),nodef(8),iin,kflag,ibody(3,*),icase,
    48      &     inv, index2,nmethod,nelem0,nodem0,nelem1,nodem1,nelem2,
    49      &     nodem2,nelemswirl,nmpc,nodempc(3,*),ipompc(*),
    50      &     iponoel(*),inoel(2,*),iplausi,indexe
    52       real*8 bc(nteq),xloadact(2,*),cp,h(2),physcon(*),r,dvi,rho,
    53      &     xl2(3,8),coords(3),dxsj2,temp,xi,et,weight,xsj2(3),
    54      &     gastemp,v(0:mi(2),*),shcon(0:3,ntmat_,*),co(3,*),shp2(7,8),
    55      &     field,prop(*),tg1,tg2,dtime,ttime,time,g(3),eta,
    56      &     xforcact(*),areaj,xflow,tvar(2),f,
df(8),camt(*),camf(*),
    57      &     camp(*),tl2(8),cama(*),vamt,vamf,vamp,vama,term,
    58      &     rhcon(0:1,ntmat_,*),xbodyact(7,*),sinktemp,kappa,a,t,tt,pt,
    59      &     dtheta,ts1,ts2,xs2(3,7),xk1,xk2,xdenom1,xdenom2,expon,pt1,
    60      &     pt2,dt1,dt2,xcst,xnum1,xnum2,qred_crit,xflow_crit,
    61      &     xflow0,xflow1,reltime,coefmpc(*),qat,qaf,ramt,ramf,ramp,
    62      &     xflow2,
r1,r2,rout,rin,uout,uin,heat,cocon(0:6,ntmat_,*),
    63      &     cp_cor,u,ct,vold(0:mi(2),*),xloadold(2,*),omega,bnac,
    64      &     xflow360,tt1,tt2,t1,t2,heatnod,heatfac
    68       data ifaceq /4,3,2,1,11,10,9,12,
    69      &            5,6,7,8,13,14,15,16,
    71      &            2,3,7,6,10,19,14,18,
    72      &            3,4,8,7,11,20,15,19,
    73      &            4,1,5,8,12,17,16,20/
    74       data ifacet /1,3,2,7,6,5,
    78       data ifacew /1,3,2,9,8,7,0,0,
   117             if(nactdog(j,node).eq.0) cycle
   120             if(dabs(v(j,node)).gt.1.d-30) 
then   121                if(dabs(bc(idof)/v(j,node)).lt.1.d-13) bc(idof)=0.d0
   126                if(dabs(bnac).gt.camt(1)) 
then   127                   camt(1)=dabs(bc(idof))
   131                if(dabs(bnac).gt.camf(1)) 
then   132                   camf(1)=dabs(bc(idof))
   136                if(dabs(bnac).gt.camp(1)) 
then   137                   camp(1)=dabs(bc(idof))
   141                if(dabs(bnac).gt.cama(1)) 
then   142                   cama(1)=dabs(bc(idof))
   156             if(nactdog(j,node).eq.0) cycle
   157             v(j,node)=v(j,node)+bc(nactdog(j,node))*dtheta
   159             if((j.eq.0).and.(dabs(v(j,node)-vold(j,node)).gt.vamt)) 
then   160                vamt=dabs(v(j,node)-vold(j,node))
   162      &             (dabs(v(j,node)-vold(j,node)).gt.vamf)) 
then   163                vamf=dabs(v(j,node)-vold(j,node))
   165      &             (dabs(v(j,node)-vold(j,node)).gt.vamp)) 
then   166                vamp=dabs(v(j,node)-vold(j,node))
   175          if(lakon(ieg(i))(6:7).eq.
'GV') 
then   178             if(nactdog(3,node).eq.0) cycle
   179             index=ielprop(ieg(i))
   180             v(3,node)=v(3,node)+bc(nactdog(3,node))*dtheta
   181             if(v(3,node).gt.0.99999d0) 
then   183             elseif(v(3,node).lt.0.12501) 
then   186             if(dabs(v(3,node)).gt.vama) vama=dabs(v(3,node))
   191          elseif(lakon(ieg(i))(2:7).eq.
'ACCTUB') 
then   194             if(nactdog(3,node).eq.0) cycle
   195             index=ielprop(ieg(i))
   197             if(nint(prop(index+1)).eq.2) 
then   199                v(3,node)=v(3,node)+bc(nactdog(3,node))*
   201                if(v(3,node).lt.0.1)
then   205             elseif(nint(prop(index+1)).eq.3) 
then   206                v(3,node)=v(3,node)+bc(nactdog(3,node))*dtheta
   207                if(v(3,node).lt.0.1)
then   211             if(dabs(v(3,node)).gt.vama) vama=dabs(v(3,node))
   215          elseif(lakon(ieg(i))(2:5).eq.
'LICH') 
then   216             if((lakon(ieg(i))(6:7).eq.
'SG').or.
   217      &         (lakon(ieg(i))(6:7).eq.
'WE').or.
   218      &         (lakon(ieg(i))(6:7).eq.
'DS')) 
then   221                if(nactdog(3,node).eq.0) cycle
   222                index=ielprop(ieg(i))
   223                if(lakon(ieg(i))(6:7).eq.
'SG') 
then   224                   eta=prop(index+4)+bc(nactdog(3,node))*dtheta
   226                   nelem=nint(prop(index+7))      
   227                elseif(lakon(ieg(i))(6:7).eq.
'WE') 
then   228                   eta=prop(index+4)+bc(nactdog(3,node))*dtheta
   230                   nelem=nint(prop(index+7))      
   231                elseif(lakon(ieg(i))(6:7).eq.
'DS') 
then   232                   eta=prop(index+7)+bc(nactdog(3,node))*dtheta
   234                   nelem=nint(prop(index+9))      
   244                if((eta.lt.0.d0).or.(eta.gt.1.d0)) 
then   271      &                 cp,r,dvi,rhcon,nrhcon,rho)
   281                         if(ibody(1,j).eq.2) 
then   282                            g(1)=g(1)+xbodyact(1,j)*xbodyact(2,j)
   283                            g(2)=g(2)+xbodyact(1,j)*xbodyact(3,j)
   284                            g(3)=g(3)+xbodyact(1,j)*xbodyact(4,j)
   286                         index=ipobody(2,index)
   292                   call flux(node1,node2,nodem,nelem,lakon,kon,ipkon,
   294      &                 ielprop,prop,kflag,v,xflow,f,nodef,idirf,
df,
   295      &                 cp,r,rho,physcon,g,co,dvi,numf,vold,set,shcon,
   296      &                 nshcon,rhcon,nrhcon,ntmat_,mi,ider,ttime,time,
   315          if(v(2,node).lt.0) 
then   316             write(*,*) 
'wrong pressure; node ',node
   326          if(v(0,node).lt.0) 
then   339          if ((lakon(nelem)(4:5).eq.
'ATR').or. 
   340      &        (lakon(nelem)(4:5).eq.
'RTA')) 
then   341             xflow=v(1,kon(ipkon(nelem)+2))
   343                Write(*,*)
'*WARNING in resultnet.f'   344                write(*,*)
'Element',nelem,
'of TYPE ABSOLUTE TO RELATIVE'   345                write(*,*)
'The flow direction is no more conform '   346                write(*,*)
'to element definition'   347                write(*,*)
'Check the pertinence of the results'   349          elseif(lakon(nelem)(2:3).eq.
'RE') 
then   351             if(lakon(nelem)(4:5).ne.
'BR') 
then   352                nodem=kon(ipkon(nelem)+2)
   355                   Write(*,*)
'*WARNING in resultnet.f'   356                   write(*,*)
'Element',nelem,
'of TYPE RESTRICTOR'   357                   write(*,*)
'The flow direction is no more conform '   358                   write(*,*)
'to element definition'   359                   write(*,*)
'Check the pertinence of the results'   362             elseif(lakon(nelem)(4:5).eq.
'BR') 
then   365                nelem0=nint(prop(index+1))
   366                nodem0=kon(ipkon(nelem0)+2)
   369                nelem1=nint(prop(index+2))
   370                nodem1=kon(ipkon(nelem1)+2)
   373                nelem2=nint(prop(index+3))
   374                nodem2=kon(ipkon(nelem2)+2)
   377                if((xflow0.lt.0).or.(xflow1.lt.0).or.(xflow2.lt.0)) 
then   378                   Write(*,*)
'*WARNING in resultnet.f'   379                   write(*,*)
'Element',nelem,
'of TYPE BRANCH'   380                   write(*,*)
'The flow direction is no more conform '   381                   write(*,*)
'to element definition'   382                   write(*,*)
'Check the pertinence of the results'   398          elseif(nelem.gt.0) 
then   400             nodem=kon(ipkon(nelem)+2)
   410      &           shcon,nshcon,cp,r,dvi,rhcon,nrhcon,rho)
   417             if(lakon(nelem)(2:5).eq.
'GAPF') 
then   419                if(lakon(nelem)(2:6).eq.
'GAPFA') 
then   421                elseif(lakon(nelem)(2:6).eq.
'GAPFI') 
then   425             elseif(lakon(nelem)(2:3).eq.
'RE') 
then   429                if(lakon(nelem)(4:5).eq.
'EX') 
then   430                   if(lakon(nint(prop(index+4)))(2:6).eq.
'GAPFA') 
then   432                   elseif(lakon(nint(prop(index+4)))(2:6).eq.
'GAPFI')
then   441                if(lakon(nelem)(4:5).eq.
'BE') 
then   444                elseif(lakon(nelem)(4:5).eq.
'BR') 
then   445                   if(lakon(nelem)(4:6).eq.
'BRJ') 
then   446                      if(nelem.eq.nint(prop(index+2)))
then   448                      elseif(nelem.eq.nint(prop(index+3))) 
then   451                   elseif(lakon(nelem)(4:6).eq.
'BRS') 
then   452                      if(nelem.eq.nint(prop(index+2)))
then   454                      elseif(nelem.eq.nint(prop(index+3))) 
then   461                   if(node.eq.node1) 
then   463                   elseif(node.eq.node2) 
then   467             elseif(lakon(nelem)(2:3).eq.
'UP') 
then   477             xflow360=dabs(xflow*iaxial)
   478             call ts_calc(xflow360,tt,pt,kappa,r,a,t,icase)
   482             if(lakon(nelem)(2:3).eq.
'RE') 
then   487                if(xflow.lt.0d0) 
then   494                   qred_crit=dsqrt(kappa/r)*(1.+0.5*(kappa-1.))
   495      &                 **(-0.5d0*(kappa+1.)/(kappa-1.))
   497                   qred_crit=dsqrt(1/r)*(1.+0.5*(kappa-1.)/kappa)
   498      &                 **(-0.5d0*(kappa+1.)/(kappa-1.))
   500                xflow_crit=qred_crit*pt*a/dsqrt(tt)   
   502                if(xflow360.ge.xflow_crit) 
then   503                   v(1,nodem)=inv*xflow_crit/iaxial
   506                      if(nactdog(0,node2).ne.0) 
then   509                         v(3,node2)=v(3,node1)
   510                         v(0,node2)=v(3,node2)
   511      &                       *(1+0.5d0*(kappa-1)/kappa)
   533          if((node1.ne.0).and.(node2.ne.0)) 
then   540             if((lakon(nelem)(2:8).ne.
'ACCTUBE').and.
   541      &         (lakon(nelem)(2:5).ne.
'CROS').and.
   542      &         (lakon(nelem)(2:4).ne.
'MRG').and.
   543      &         (lakon(nelem)(2:4).ne.
'RCV').and.
   544      &         (lakon(nelem)(2:3).ne.
'RO').and.
   545      &         (lakon(nelem)(2:5).ne.
'RIMS').and.
   546      &         (lakon(nelem)(2:6).ne.
'SPUMP').and.
   547      &         (lakon(nelem)(2:3).ne.
'VO')) 
then   548                if(nactdog(1,nodem).ne.0) 
then   549                   if(((v(1,nodem).gt.1.d-12).and.
   550      &                (v(2,node1).lt.0.999d0*v(2,node2))).or.
   551      &               ((v(1,nodem).lt.-1.d-12).and.
   552      &                (0.999d0*v(2,node1).gt.v(2,node2)))) 
then   554                      write(*,*) 
'*WARNING in resultnet: the flow'   555                      write(*,*) 
'         direction is not conform'   556                      write(*,*) 
'         to the pressure gradient'   557                      write(*,*) 
'         element',nelem
   587          if((lakon(nelem)(2:3).ne.
'LP').and.
   588      &      (lakon(nelem)(2:3).ne.
'LI')) 
then   594             elseif(node2.eq.0) 
then   605             gastemp=(ts1+ts2)/2.d0
   627             elseif(node2.eq.0) 
then   644          if(lakon(nelem)(2:6).eq.
'GAPFI') 
then   645             if((node1.ne.0).and.(node2.ne.0)) 
then   646                a=prop(ielprop(nelem)+1)
   650                xflow360=xflow*iaxial
   654                   if(dabs(tg2/ts2-(1+0.5*(kappa-1)/kappa)).lt.1e-5) 
then   655                      pt2=dabs(xflow360)*dsqrt(tg2*r)/a
   656      &                    *(1+0.5*(kappa-1)/kappa)
   657      &                    **(0.5*(kappa+1)/(kappa-1))
   660                   tt1=v(0,node1)-physcon(1)
   661                   tt2=v(0,node2)-physcon(1)
   663                   call ts_calc(xflow360,tt1,pt1,kappa,r,a,t1,icase)
   664                   call ts_calc(xflow360,tt2,pt2,kappa,r,a,t2,icase)
   670                   if(v(2,nodem).ge.(pt2/pt1))
then   674                   tt1=v(0,node2)-physcon(1)
   675                   call ts_calc(xflow360,tt1,pt1,kappa,r,a,t1,icase)
   676                   tt2=v(0,node1)-physcon(1)
   677                   call ts_calc(xflow360,tt2,pt2,kappa,r,a,t2,icase)
   687             if (nacteq(0,node1).ne.0) 
then   690                if(nacteq(3,node1).eq.0) 
then   691                   if (xflow.lt.0d0)
then   692                      term=cp*(tg1-tg2)*xflow
   698                elseif(lakon(nelem)(2:6).eq.
'GAPFI') 
then   699                   if((nacteq(3,node1).eq.node2)) 
then   709             if (nacteq(1,node1).ne.0) 
then   711                bc(ieq)=bc(ieq)-xflow
   721             if (nacteq(0,node2).ne.0) 
then   724                if(nacteq(3,node2).eq.0) 
then   725                   if (xflow.gt.0d0)
then   726                      term=cp*(tg2-tg1)*xflow
   732                elseif(lakon(nelem)(2:6).eq.
'GAPFI') 
then   733                   if(nacteq(3,node2).eq.node1) 
then   744             if(lakon(nelem)(2:8).ne.
'ACCTUBE') 
then   745                if (nacteq(1,node2).ne.0) 
then   747                   bc(ieq)=bc(ieq)+xflow
   752                if (nacteq(1,node2).ne.0) 
then   753                   if(nelem.ne.nint(prop(ielprop(nelem)+14))) 
then   755                      bc(ieq)=bc(ieq)+xflow-v(0,nodem)
   760                      bc(ieq)=bc(ieq)+xflow
   770          if (nacteq(2,nodem).ne.0) 
then   775             if(lakon(nelem)(2:3).eq.
'LI') 
then   784                      if(ibody(1,j).eq.2) 
then   785                         g(1)=g(1)+xbodyact(1,j)*xbodyact(2,j)
   786                         g(2)=g(2)+xbodyact(1,j)*xbodyact(3,j)
   787                         g(3)=g(3)+xbodyact(1,j)*xbodyact(4,j)
   789                      index=ipobody(2,index)
   795             call flux(node1,node2,nodem,nelem,lakon,kon,ipkon,
   797      &           ielprop,prop,kflag,v,xflow,f,nodef,idirf,
df,
   798      &           cp,r,rho,physcon,g,co,dvi,numf,vold,set,shcon,
   799      &           nshcon,rhcon,nrhcon,ntmat_,mi,ider,ttime,time,iaxial)
   807          if(sideload(i)(3:4).eq.
'FC') 
then   818             call nident(itg,node,ntg,id)
   822             read(sideload(i)(2:2),
'(i1)') ig
   826             if(lakonl(4:4).eq.
'2') 
then   829             elseif(lakonl(4:4).eq.
'8') 
then   832             elseif(lakonl(4:5).eq.
'10') 
then   835             elseif(lakonl(4:4).eq.
'4') 
then   838             elseif(lakonl(4:5).eq.
'15') 
then   844             if(lakonl(4:5).eq.
'8R') 
then   846             elseif((lakonl(4:4).eq.
'8').or.(lakonl(4:6).eq.
'20R'))
   848                if(lakonl(7:7).eq.
'A') 
then   853             elseif(lakonl(4:4).eq.
'2') 
then   855             elseif(lakonl(4:5).eq.
'10') 
then   857             elseif(lakonl(4:4).eq.
'4') 
then   861             if(lakonl(4:4).eq.
'6') 
then   869             if(lakonl(4:5).eq.
'15') 
then   887             if((nope.eq.20).or.(nope.eq.8)) 
then   889                   tl2(k)=v(0,konl(ifaceq(k,ig)))
   891                      xl2(j,k)=co(j,konl(ifaceq(k,ig)))+
   892      &                    v(j,konl(ifaceq(k,ig)))
   895             elseif((nope.eq.10).or.(nope.eq.4)) 
then   897                   tl2(k)=v(0,konl(ifacet(k,ig)))
   899                      xl2(j,k)=co(j,konl(ifacet(k,ig)))+
   900      &                    v(j,konl(ifacet(k,ig)))
   905                   tl2(k)=v(0,konl(ifacew(k,ig)))
   907                      xl2(j,k)=co(j,konl(ifacew(k,ig)))+
   908      &                    v(j,konl(ifacew(k,ig)))
   917                if((lakonl(4:5).eq.
'8R').or.
   918      &              ((lakonl(4:4).eq.
'6').and.(nopes.eq.4))) 
then   922                elseif((lakonl(4:4).eq.
'8').or.
   923      &                 (lakonl(4:6).eq.
'20R').or.
   924      &                 ((lakonl(4:5).eq.
'15').and.(nopes.eq.8))) 
then   928                elseif(lakonl(4:4).eq.
'2') 
then   932                elseif((lakonl(4:5).eq.
'10').or.
   933      &                 ((lakonl(4:5).eq.
'15').and.(nopes.eq.6))) 
then   937                elseif((lakonl(4:4).eq.
'4').or.
   938      &                 ((lakonl(4:4).eq.
'6').and.(nopes.eq.3))) 
then   945                   call shape8q(xi,et,xl2,xsj2,xs2,shp2,iflag)
   946                elseif(nopes.eq.4) 
then   947                   call shape4q(xi,et,xl2,xsj2,xs2,shp2,iflag)
   948                elseif(nopes.eq.6) 
then   949                   call shape6tri(xi,et,xl2,xsj2,xs2,shp2,iflag)
   951                   call shape3tri(xi,et,xl2,xsj2,xs2,shp2,iflag)
   954                dxsj2=dsqrt(xsj2(1)*xsj2(1)+xsj2(2)*xsj2(2)+
   963                   temp=temp+tl2(j)*shp2(4,j)
   965                      coords(k)=coords(k)+xl2(k,j)*shp2(4,j)
   970                if(sideload(i)(5:6).ne.
'NU') 
then   973                   read(sideload(i)(2:2),
'(i1)') jltyp
   975                   call film(h,sinktemp,temp,istep,
   976      &                 iinc,tvar,nelem,l,coords,jltyp,field,nfield,
   977      &                 sideload(i),node,areaj,v,mi,ipkon,kon,lakon,
   978      &                 iponoel,inoel,ielprop,prop,ielmat,shcon,nshcon,
   979      &                 rhcon,nrhcon,ntmat_,cocon,ncocon,
   980      &                 ipobody,xbodyact,ibody,heatnod,heatfac)
   984                if(lakonl(5:7).eq.
'0RA') 
then   985                   term=2.d0*((temp-sinktemp)*h(1)+heatnod)*dxsj2*weight
   990                   term=((temp-sinktemp)*h(1)+heatnod)*dxsj2*weight
  1004          call nident(ikforc,idof,nforc,id)
  1006             if(ikforc(id).eq.idof) 
then  1009                   term=xforcact(ilforc(id))
  1010                   bc(ieq)=bc(ieq)+term
  1025          if(lakon(nelem)(2:3).ne.
'VO') cycle
  1029          if((lakon(nelem)(2:5).eq.
'VOFR').and.
  1030      &        (nint(prop(ielprop(nelem)+8)).eq.0)) cycle
  1034          if((lakon(nelem)(2:5).eq.
'VOFR').and.
  1035      &        (nint(prop(ielprop(nelem)+8)).eq.1)) cycle
  1039          if((lakon(nelem)(2:5).eq.
'VOFO').and.
  1040      &        (nint(prop(ielprop(nelem)+6)).eq.0)) cycle
  1042          nodem=kon(ipkon(nelem)+2)
  1044          if(xflow.gt.0d0) 
then  1045             node1=kon(ipkon(nelem)+1)
  1046             node2=kon(ipkon(nelem)+3)
  1048             node1=kon(ipkon(nelem)+1)
  1049             node2=kon(ipkon(nelem)+3)
  1052          if(xflow.gt.0d0) 
then  1053             r1=prop(ielprop(nelem)+2)
  1054             r2=prop(ielprop(nelem)+1)
  1063             r1=prop(ielprop(nelem)+2)
  1064             r2=prop(ielprop(nelem)+1)
  1078          if((lakon(nelem)(2:3).ne.
'LP').and.
  1079      &      (lakon(nelem)(2:3).ne.
'LI')) 
then  1080             gastemp=(tg1+tg2)/2.d0
  1089          imat=ielmat(1,nelem)
  1091      &        shcon,nshcon,cp,r,dvi,rhcon,nrhcon,rho)
  1095          uout=prop(ielprop(nelem)+5)*rout
  1096          uin=prop(ielprop(nelem)+5)*rin
  1101          if((lakon(nelem)(2:5).eq.
'VOFR') .and.
  1102      &        (nint(prop(ielprop(nelem)+8)).eq.(-1))) 
then  1104             uout=prop(ielprop(nelem)+7)*rout
  1105             uin=prop(ielprop(nelem)+7)*rin
  1107             heat=0.5d0*cp/cp_cor*(uout**2-uin**2)*xflow
  1109          elseif (((lakon(nelem)(2:5).eq.
'VOFO')
  1110      &           .and.(nint(prop(ielprop(nelem)+6)).eq.(-1)))) 
then  1112             uout=prop(ielprop(nelem)+5)*rout
  1113             uin=prop(ielprop(nelem)+5)*rin
  1115             heat=0.5d0*cp/cp_cor*(uout**2-uin**2)*xflow
  1119          elseif((lakon(nelem)(2:5).eq.
'VOFO')
  1120      &           .and.((nint(prop(ielprop(nelem)+6)).eq.1))) 
then  1122             heat=cp/cp_cor*(uout**2-uin**2)*xflow
  1128          if(xflow.gt.0d0)
then  1131                bc(ieq)=bc(ieq)+heat
  1138                bc(ieq)=bc(ieq)+heat
  1150          if((lakon(nelem)(2:4).eq.
'ATR').or.
  1151      &        (lakon(nelem)(2:4).eq.
'RTA'))  
then  1153             nodem=kon(ipkon(nelem)+2)
  1155             if(xflow.gt.0d0) 
then  1156                node1=kon(ipkon(nelem)+1)
  1157                node2=kon(ipkon(nelem)+3)
  1159                node1=kon(ipkon(nelem)+1)
  1160                node2=kon(ipkon(nelem)+3)
  1167             if((lakon(nelem)(2:3).ne.
'LP').and.
  1168      &           (lakon(nelem)(2:3).ne.
'LI')) 
then  1169                gastemp=(tg1+tg2)/2.d0
  1178             imat=ielmat(1,nelem)
  1180      &           shcon,nshcon,cp,r,dvi,rhcon,nrhcon,rho)
  1184             index=ielprop(nelem)
  1192             if(nint(prop(index+3)).ne.0) 
then  1193                nelemswirl=nint(prop(index+3))
  1194                index2=ielprop(nelemswirl)
  1198                if(lakon(nelemswirl)(2:5).eq.
'ORPN') 
then  1203                elseif(lakon(nelemswirl)(2:5).eq.
'VOFO') 
then  1208                elseif(lakon(nelemswirl)(2:5).eq.
'VOFR') 
then  1213             if(lakon(nelem)(2:4).eq.
'ATR') 
then  1214                heat=cp/cp_cor*(0.5d0*(u**2-2d0*u*ct)*xflow)
  1216             elseif(lakon(nelem)(2:4).eq.
'RTA') 
then  1217                heat=cp/cp_cor*(-0.5d0*(u**2-2d0*u*ct)*xflow)
  1222             if(xflow.gt.0d0)
then  1225                   bc(ieq)=bc(ieq)+heat
  1232                   bc(ieq)=bc(ieq)+heat
  1244          if(labmpc(i)(1:7).ne.
'NETWORK') cycle
  1246          if(labmpc(i)(8:8).eq.
' ') 
then  1253                node=nodempc(1,index)
  1254                idir=nodempc(2,index)
  1255                bc(j)=bc(j)-v(idir,node)*coefmpc(index)
  1256                index=nodempc(3,index)
  1270       if(nalt.gt.0) qat=qat/nalt
  1274       if(nalf.gt.0) qaf=qaf/nalf
  1284          if(nacteq(0,node).ne.0) 
then  1285             ramt=
max(ramt,dabs(bc(nacteq(0,node))))
  1287          if(nacteq(1,node).ne.0) 
then  1288             ramf=
max(ramf,dabs(bc(nacteq(1,node))))
  1290          if(nacteq(2,node).ne.0) 
then  1291             ramp=
max(ramp,dabs(bc(nacteq(2,node))))
 subroutine shape8q(xi, et, xl, xsj, xs, shp, iflag)
Definition: shape8q.f:20
 
#define max(a, b)
Definition: cascade.c:32
 
subroutine shape3tri(xi, et, xl, xsj, xs, shp, iflag)
Definition: shape3tri.f:20
 
subroutine df(x, u, uprime, rpar, nev)
Definition: subspace.f:133
 
subroutine flux(node1, node2, nodem, nelem, lakon, kon, ipkon, nactdog, identity, ielprop, prop, kflag, v, xflow, f, nodef, idirf, df, cp, R, rho, physcon, g, co, dvi, numf, vold, set, shcon, nshcon, rhcon, nrhcon, ntmat_, mi, ider, ttime, time, iaxial)
Definition: flux.f:24
 
subroutine ts_calc(xflow, Tt, Pt, kappa, r, A, Ts, icase)
Definition: ts_calc.f:20
 
static double * r1
Definition: filtermain.c:48
 
subroutine shape4q(xi, et, xl, xsj, xs, shp, iflag)
Definition: shape4q.f:20
 
subroutine cp_corrected(cp, Tg1, Tg2, cp_cor)
Definition: cp_corrected.f:24
 
subroutine nident(x, px, n, id)
Definition: nident.f:26
 
subroutine networkmpc_rhs(i, ipompc, nodempc, coefmpc, labmpc, v, bc, j, mi)
Definition: networkmpc_rhs.f:23
 
subroutine shape6tri(xi, et, xl, xsj, xs, shp, iflag)
Definition: shape6tri.f:20
 
subroutine film(h, sink, temp, kstep, kinc, time, noel, npt, coords, jltyp, field, nfield, loadtype, node, area, vold, mi, ipkon, kon, lakon, iponoel, inoel, ielprop, prop, ielmat, shcon, nshcon, rhcon, nrhcon, ntmat_, cocon, ncocon, ipobody, xbody, ibody, heatnod, heatfac)
Definition: film.f:24
 
subroutine materialdata_tg(imat, ntmat_, t1l, shcon, nshcon, sph, r, dvi, rhcon, nrhcon, rho)
Definition: materialdata_tg.f:20