1*59599516SKenneth E. Jansen subroutine gensvb (ientmp, iBCBtmp, BCBtmp, mattmp, 2*59599516SKenneth E. Jansen & ienb, iBCB, BCB, materb) 3*59599516SKenneth E. Jansenc 4*59599516SKenneth E. Jansenc---------------------------------------------------------------------- 5*59599516SKenneth E. Jansenc 6*59599516SKenneth E. Jansenc This routine saves the boundary element block. 7*59599516SKenneth E. Jansenc 8*59599516SKenneth E. Jansenc input: 9*59599516SKenneth E. Jansenc ientmp (npro,nshl) : boundary nodal connectivity 10*59599516SKenneth E. Jansenc iBCtmp (npro,ndiBCB) : boundary condition codes 11*59599516SKenneth E. Jansenc BCBtmp (npro,nshlb,ndBCB) : boundary condition values 12*59599516SKenneth E. Jansenc mattmp (npro) : material type flag 13*59599516SKenneth E. Jansenc 14*59599516SKenneth E. Jansenc output: 15*59599516SKenneth E. Jansenc ienb (npro,nshl) : boundary nodal connectivity 16*59599516SKenneth E. Jansenc iBCB (npro,ndiBCB) : boundary condition codes 17*59599516SKenneth E. Jansenc BCB (npro,nshlb,ndBCB) : boundary condition values 18*59599516SKenneth E. Jansenc materb (npro) : material type flag 19*59599516SKenneth E. Jansenc 20*59599516SKenneth E. Jansenc 21*59599516SKenneth E. Jansenc Zdenek Johan, Winter 1992. 22*59599516SKenneth E. Jansenc---------------------------------------------------------------------- 23*59599516SKenneth E. Jansenc 24*59599516SKenneth E. Jansen include "common.h" 25*59599516SKenneth E. Jansenc 26*59599516SKenneth E. Jansen dimension ientmp(npro,nshl), 27*59599516SKenneth E. Jansen & iBCBtmp(npro,ndiBCB), BCBtmp(npro,ndBCB) 28*59599516SKenneth E. Jansen 29*59599516SKenneth E. Jansen dimension mattmp(npro), ienb(npro,nshl), 30*59599516SKenneth E. Jansen & iBCB(npro,ndiBCB), BCB(npro,nshlb,ndBCB), 31*59599516SKenneth E. Jansen & materb(npro) 32*59599516SKenneth E. Jansenc 33*59599516SKenneth E. Jansenc.... generate the boundary element mapping 34*59599516SKenneth E. Jansenc 35*59599516SKenneth E. Jansen do i = 1, nshl 36*59599516SKenneth E. Jansen ienb(:,i) = ientmp(:,i) 37*59599516SKenneth E. Jansen enddo 38*59599516SKenneth E. Jansenc 39*59599516SKenneth E. Jansenc.... save the boundary element data 40*59599516SKenneth E. Jansenc 41*59599516SKenneth E. Jansen iBCB = iBCBtmp 42*59599516SKenneth E. Jansen do i = 1, nenbl ! This is NOT NSHLB as we are just copying the 43*59599516SKenneth E. Jansen ! piecewise constant data given by NSpre and 44*59599516SKenneth E. Jansen ! higher order coefficients must be zero 45*59599516SKenneth E. Jansen do j = 1, ndBCB 46*59599516SKenneth E. Jansen BCB(:,i,j) = BCBtmp(:,j) 47*59599516SKenneth E. Jansen end do 48*59599516SKenneth E. Jansen end do 49*59599516SKenneth E. Jansen do i = nenbl+1, nshlb 50*59599516SKenneth E. Jansen do j = 1, ndBCB 51*59599516SKenneth E. Jansen BCB(:,i,j) = zero 52*59599516SKenneth E. Jansen end do 53*59599516SKenneth E. Jansen end do 54*59599516SKenneth E. Jansen 55*59599516SKenneth E. Jansen materb = mattmp 56*59599516SKenneth E. Jansenc 57*59599516SKenneth E. Jansenc.... return 58*59599516SKenneth E. Jansenc 59*59599516SKenneth E. Jansen return 60*59599516SKenneth E. Jansen end 61