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