1*59599516SKenneth E. Jansen subroutine bc3LHS (iBC, BC, iens, EGmass ) 2*59599516SKenneth E. Jansenc 3*59599516SKenneth E. Jansenc---------------------------------------------------------------------- 4*59599516SKenneth E. Jansenc 5*59599516SKenneth E. Jansenc This routine satisfies the BC of LHS mass matrix for a single 6*59599516SKenneth E. Jansenc element. 7*59599516SKenneth E. Jansenc 8*59599516SKenneth E. Jansenc input: 9*59599516SKenneth E. Jansenc iBC (nshg) : boundary condition code 10*59599516SKenneth E. Jansenc BC (nshg,11) : Dirichlet BC constraint parameters 11*59599516SKenneth E. Jansenc ien (npro,nshl) : ien array for this element 12*59599516SKenneth E. Jansenc EGmass(npro,nedof,nedof) : element consistent mass matrix before BC 13*59599516SKenneth E. Jansenc 14*59599516SKenneth E. Jansenc output: 15*59599516SKenneth E. Jansenc EGmass(npro,nedof,nedof): LHS mass matrix after BC is satisfied 16*59599516SKenneth E. Jansenc 17*59599516SKenneth E. Jansenc 18*59599516SKenneth E. Jansenc Farzin Shakib, Winter 1987. 19*59599516SKenneth E. Jansenc Zdenek Johan, Spring 1990. (Modified for general divariant gas) 20*59599516SKenneth E. Jansenc---------------------------------------------------------------------- 21*59599516SKenneth E. Jansenc 22*59599516SKenneth E. Jansen include "common.h" 23*59599516SKenneth E. Jansenc 24*59599516SKenneth E. Jansen dimension iBC(nshg), ien(npro,nshl), 25*59599516SKenneth E. Jansen & BC(nshg,11), EGmass(npro,nedof,nedof) 26*59599516SKenneth E. Jansen integer iens(npro,nshl) 27*59599516SKenneth E. Jansenc 28*59599516SKenneth E. Jansenc prefer to show explicit absolute value needed for cubic modes and 29*59599516SKenneth E. Jansenc higher rather than inline abs on pointer as in past versions 30*59599516SKenneth E. Jansenc iens is the signed ien array ien is unsigned 31*59599516SKenneth E. Jansenc 32*59599516SKenneth E. Jansen ien=abs(iens) 33*59599516SKenneth E. Jansenc 34*59599516SKenneth E. Jansenc.... loop over elements 35*59599516SKenneth E. Jansenc 36*59599516SKenneth E. Jansen do iel = 1, npro 37*59599516SKenneth E. Jansenc 38*59599516SKenneth E. Jansenc.... loop over number of shape functions for this element 39*59599516SKenneth E. Jansenc 40*59599516SKenneth E. Jansen do inod = 1, nshl 41*59599516SKenneth E. Jansenc 42*59599516SKenneth E. Jansenc.... set up parameters 43*59599516SKenneth E. Jansenc 44*59599516SKenneth E. Jansen in = ien(iel,inod) 45*59599516SKenneth E. Jansen if (iBC(in) .eq. 0) goto 5000 46*59599516SKenneth E. Jansen ioff = (inod - 1) * nflow 47*59599516SKenneth E. Jansen i1 = ioff + 1 48*59599516SKenneth E. Jansen i2 = ioff + 2 49*59599516SKenneth E. Jansen i3 = ioff + 3 50*59599516SKenneth E. Jansen i4 = ioff + 4 51*59599516SKenneth E. Jansen i5 = ioff + 5 52*59599516SKenneth E. Jansenc 53*59599516SKenneth E. Jansenc.... pressure 54*59599516SKenneth E. Jansenc 55*59599516SKenneth E. Jansen if ( btest(iBC(in),2) ) then 56*59599516SKenneth E. Jansen 57*59599516SKenneth E. Jansen do i = 1, nedof 58*59599516SKenneth E. Jansen EGmass(iel,i,i1) = zero 59*59599516SKenneth E. Jansen EGmass(iel,i1,i) = zero 60*59599516SKenneth E. Jansen enddo 61*59599516SKenneth E. Jansen EGmass(iel,i1,i1) = one 62*59599516SKenneth E. Jansen endif 63*59599516SKenneth E. Jansenc 64*59599516SKenneth E. Jansenc.... density ( not activated yet for LHS matrix ) 65*59599516SKenneth E. Jansenc 66*59599516SKenneth E. Jansen 67*59599516SKenneth E. Jansenc 68*59599516SKenneth E. Jansenc.... velocities 69*59599516SKenneth E. Jansenc 70*59599516SKenneth E. Jansenc 71*59599516SKenneth E. Jansenc.... x1-velocity 72*59599516SKenneth E. Jansenc 73*59599516SKenneth E. Jansen if ( ibits(iBC(in),3,3) .eq. 1) then 74*59599516SKenneth E. Jansen do i = 1, nedof 75*59599516SKenneth E. Jansen EGmass(iel,i3,i) = EGmass(iel,i3,i) 76*59599516SKenneth E. Jansen & - BC(in,4) * EGmass(iel,i2,i) 77*59599516SKenneth E. Jansen EGmass(iel,i4,i) = EGmass(iel,i4,i) 78*59599516SKenneth E. Jansen & - BC(in,5) * EGmass(iel,i2,i) 79*59599516SKenneth E. Jansen enddo 80*59599516SKenneth E. Jansen do i = 1, nedof 81*59599516SKenneth E. Jansen EGmass(iel,i,i3) = EGmass(iel,i,i3) 82*59599516SKenneth E. Jansen & - BC(in,4) * EGmass(iel,i,i2) 83*59599516SKenneth E. Jansen EGmass(iel,i,i4) = EGmass(iel,i,i4) 84*59599516SKenneth E. Jansen & - BC(in,5) * EGmass(iel,i,i2) 85*59599516SKenneth E. Jansen enddo 86*59599516SKenneth E. Jansen do i = 1, nedof 87*59599516SKenneth E. Jansen EGmass(iel,i,i2) = zero 88*59599516SKenneth E. Jansen EGmass(iel,i2,i) = zero 89*59599516SKenneth E. Jansen enddo 90*59599516SKenneth E. Jansen EGmass(iel,i2,i2) = one 91*59599516SKenneth E. Jansen endif 92*59599516SKenneth E. Jansenc 93*59599516SKenneth E. Jansenc.... x2-velocity 94*59599516SKenneth E. Jansenc 95*59599516SKenneth E. Jansen if ( ibits(iBC(in),3,3) .eq. 2 ) then 96*59599516SKenneth E. Jansen do i = 1, nedof 97*59599516SKenneth E. Jansen EGmass(iel,i2,i) = EGmass(iel,i2,i) 98*59599516SKenneth E. Jansen & - BC(in,4) * EGmass(iel,i3,i) 99*59599516SKenneth E. Jansen EGmass(iel,i4,i) = EGmass(iel,i4,i) 100*59599516SKenneth E. Jansen & - BC(in,5) * EGmass(iel,i3,i) 101*59599516SKenneth E. Jansen enddo 102*59599516SKenneth E. Jansen do i = 1, nedof 103*59599516SKenneth E. Jansen EGmass(iel,i,i2) = EGmass(iel,i,i2) 104*59599516SKenneth E. Jansen & - BC(in,4) * EGmass(iel,i,i3) 105*59599516SKenneth E. Jansen EGmass(iel,i,i4) = EGmass(iel,i,i4) 106*59599516SKenneth E. Jansen & - BC(in,5) * EGmass(iel,i,i3) 107*59599516SKenneth E. Jansen enddo 108*59599516SKenneth E. Jansen 109*59599516SKenneth E. Jansen do i = 1, nedof 110*59599516SKenneth E. Jansen EGmass(iel,i,i3) = zero 111*59599516SKenneth E. Jansen EGmass(iel,i3,i) = zero 112*59599516SKenneth E. Jansen enddo 113*59599516SKenneth E. Jansen EGmass(iel,i3,i3) = one 114*59599516SKenneth E. Jansen endif 115*59599516SKenneth E. Jansenc 116*59599516SKenneth E. Jansenc.... x1-velocity and x2-velocity 117*59599516SKenneth E. Jansenc 118*59599516SKenneth E. Jansen if ( ibits(iBC(in),3,3) .eq. 3 ) then 119*59599516SKenneth E. Jansen do i = 1, nedof 120*59599516SKenneth E. Jansen EGmass(iel,i4,i) = EGmass(iel,i4,i) 121*59599516SKenneth E. Jansen & - BC(in,4) * EGmass(iel,i2,i) 122*59599516SKenneth E. Jansen & - BC(in,6) * EGmass(iel,i3,i) 123*59599516SKenneth E. Jansen enddo 124*59599516SKenneth E. Jansen do i = 1, nedof 125*59599516SKenneth E. Jansen EGmass(iel,i,i4) = EGmass(iel,i,i4) 126*59599516SKenneth E. Jansen & - BC(in,4) * EGmass(iel,i,i2) 127*59599516SKenneth E. Jansen & - BC(in,6) * EGmass(iel,i,i3) 128*59599516SKenneth E. Jansen enddo 129*59599516SKenneth E. Jansen 130*59599516SKenneth E. Jansen do i = 1, nedof 131*59599516SKenneth E. Jansen EGmass(iel,i,i2) = zero 132*59599516SKenneth E. Jansen EGmass(iel,i2,i) = zero 133*59599516SKenneth E. Jansen EGmass(iel,i,i3) = zero 134*59599516SKenneth E. Jansen EGmass(iel,i3,i) = zero 135*59599516SKenneth E. Jansen enddo 136*59599516SKenneth E. Jansen EGmass(iel,i2,i2) = one 137*59599516SKenneth E. Jansen EGmass(iel,i3,i3) = one 138*59599516SKenneth E. Jansen endif 139*59599516SKenneth E. Jansenc 140*59599516SKenneth E. Jansenc.... x3-velocity 141*59599516SKenneth E. Jansenc 142*59599516SKenneth E. Jansen if ( ibits(iBC(in),3,3) .eq. 4 ) then 143*59599516SKenneth E. Jansen do i = 1, nedof 144*59599516SKenneth E. Jansen EGmass(iel,i2,i) = EGmass(iel,i2,i) 145*59599516SKenneth E. Jansen & - BC(in,4) * EGmass(iel,i4,i) 146*59599516SKenneth E. Jansen EGmass(iel,i3,i) = EGmass(iel,i3,i) 147*59599516SKenneth E. Jansen & - BC(in,5) * EGmass(iel,i4,i) 148*59599516SKenneth E. Jansen enddo 149*59599516SKenneth E. Jansen do i = 1, nedof 150*59599516SKenneth E. Jansen EGmass(iel,i,i2) = EGmass(iel,i,i2) 151*59599516SKenneth E. Jansen & - BC(in,4) * EGmass(iel,i,i4) 152*59599516SKenneth E. Jansen EGmass(iel,i,i3) = EGmass(iel,i,i3) 153*59599516SKenneth E. Jansen & - BC(in,5) * EGmass(iel,i,i4) 154*59599516SKenneth E. Jansen enddo 155*59599516SKenneth E. Jansen 156*59599516SKenneth E. Jansen do i = 1, nedof 157*59599516SKenneth E. Jansen EGmass(iel,i,i4) = zero 158*59599516SKenneth E. Jansen EGmass(iel,i4,i) = zero 159*59599516SKenneth E. Jansen enddo 160*59599516SKenneth E. Jansen EGmass(iel,i4,i4) = one 161*59599516SKenneth E. Jansen endif 162*59599516SKenneth E. Jansenc 163*59599516SKenneth E. Jansenc.... x1-velocity and x3-velocity 164*59599516SKenneth E. Jansenc 165*59599516SKenneth E. Jansen if ( ibits(iBC(in),3,3) .eq. 5 ) then 166*59599516SKenneth E. Jansen do i = 1, nedof 167*59599516SKenneth E. Jansen EGmass(iel,i3,i) = EGmass(iel,i3,i) 168*59599516SKenneth E. Jansen & - BC(in,4) * EGmass(iel,i2,i) 169*59599516SKenneth E. Jansen & - BC(in,6) * EGmass(iel,i4,i) 170*59599516SKenneth E. Jansen enddo 171*59599516SKenneth E. Jansen do i = 1, nedof 172*59599516SKenneth E. Jansen EGmass(iel,i,i3) = EGmass(iel,i,i3) 173*59599516SKenneth E. Jansen & - BC(in,4) * EGmass(iel,i,i2) 174*59599516SKenneth E. Jansen & - BC(in,6) * EGmass(iel,i,i4) 175*59599516SKenneth E. Jansen enddo 176*59599516SKenneth E. Jansen 177*59599516SKenneth E. Jansen do i = 1, nedof 178*59599516SKenneth E. Jansen EGmass(iel,i ,i2) = zero 179*59599516SKenneth E. Jansen EGmass(iel,i2,i ) = zero 180*59599516SKenneth E. Jansen EGmass(iel,i ,i4) = zero 181*59599516SKenneth E. Jansen EGmass(iel,i4,i ) = zero 182*59599516SKenneth E. Jansen enddo 183*59599516SKenneth E. Jansen EGmass(iel,i2,i2) = one 184*59599516SKenneth E. Jansen EGmass(iel,i4,i4) = one 185*59599516SKenneth E. Jansen endif 186*59599516SKenneth E. Jansenc 187*59599516SKenneth E. Jansenc.... x2-velocity and x3-velocity 188*59599516SKenneth E. Jansenc 189*59599516SKenneth E. Jansen if ( ibits(iBC(in),3,3) .eq. 6 ) then 190*59599516SKenneth E. Jansen do i = 1, nedof 191*59599516SKenneth E. Jansen EGmass(iel,i2,i) = EGmass(iel,i2,i) 192*59599516SKenneth E. Jansen & - BC(in,4) * EGmass(iel,i3,i) 193*59599516SKenneth E. Jansen & - BC(in,6) * EGmass(iel,i4,i) 194*59599516SKenneth E. Jansen enddo 195*59599516SKenneth E. Jansen do i = 1, nedof 196*59599516SKenneth E. Jansen EGmass(iel,i,i2) = EGmass(iel,i,i2) 197*59599516SKenneth E. Jansen & - BC(in,4) * EGmass(iel,i,i3) 198*59599516SKenneth E. Jansen & - BC(in,6) * EGmass(iel,i,i4) 199*59599516SKenneth E. Jansen enddo 200*59599516SKenneth E. Jansen 201*59599516SKenneth E. Jansen do i = 1, nedof 202*59599516SKenneth E. Jansen EGmass(iel,i ,i3) = zero 203*59599516SKenneth E. Jansen EGmass(iel,i3,i ) = zero 204*59599516SKenneth E. Jansen EGmass(iel,i ,i4) = zero 205*59599516SKenneth E. Jansen EGmass(iel,i4,i ) = zero 206*59599516SKenneth E. Jansen enddo 207*59599516SKenneth E. Jansen EGmass(iel,i3,i3) = one 208*59599516SKenneth E. Jansen EGmass(iel,i4,i4) = one 209*59599516SKenneth E. Jansen endif 210*59599516SKenneth E. Jansenc 211*59599516SKenneth E. Jansenc.... x1-velocity, x2-velocity, and x3-velocity 212*59599516SKenneth E. Jansenc 213*59599516SKenneth E. Jansen if ( ibits(iBC(in),3,3) .eq. 7 ) then 214*59599516SKenneth E. Jansen do i = 1, nedof 215*59599516SKenneth E. Jansen EGmass(iel,i ,i2) = zero 216*59599516SKenneth E. Jansen EGmass(iel,i2,i ) = zero 217*59599516SKenneth E. Jansen EGmass(iel,i ,i3) = zero 218*59599516SKenneth E. Jansen EGmass(iel,i3,i ) = zero 219*59599516SKenneth E. Jansen EGmass(iel,i ,i4) = zero 220*59599516SKenneth E. Jansen EGmass(iel,i4,i ) = zero 221*59599516SKenneth E. Jansen enddo 222*59599516SKenneth E. Jansen EGmass(iel,i2,i2) = one 223*59599516SKenneth E. Jansen EGmass(iel,i3,i3) = one 224*59599516SKenneth E. Jansen EGmass(iel,i4,i4) = one 225*59599516SKenneth E. Jansen endif 226*59599516SKenneth E. Jansenc 227*59599516SKenneth E. Jansenc.... temperature 228*59599516SKenneth E. Jansenc 229*59599516SKenneth E. Jansen if ( btest(iBC(in),1) ) then 230*59599516SKenneth E. Jansen do i = 1, nedof 231*59599516SKenneth E. Jansen EGmass(iel,i,i5) = zero 232*59599516SKenneth E. Jansen EGmass(iel,i5,i) = zero 233*59599516SKenneth E. Jansen enddo 234*59599516SKenneth E. Jansen EGmass(iel,i5,i5) = one 235*59599516SKenneth E. Jansen endif 236*59599516SKenneth E. Jansenc 237*59599516SKenneth E. Jansenc Elaine 238*59599516SKenneth E. Jansenc.... scaled plane extraction boundary conditions 239*59599516SKenneth E. Jansenc 240*59599516SKenneth E. Jansen if(intpres.eq.1) then 241*59599516SKenneth E. Jansen if ( btest(iBC(in),11) ) then 242*59599516SKenneth E. Jansen do i = 1, nedof 243*59599516SKenneth E. Jansen EGmass(iel,i ,i1) = zero 244*59599516SKenneth E. Jansen EGmass(iel,i1,i ) = zero 245*59599516SKenneth E. Jansen EGmass(iel,i ,i2) = zero 246*59599516SKenneth E. Jansen EGmass(iel,i2,i ) = zero 247*59599516SKenneth E. Jansen EGmass(iel,i ,i3) = zero 248*59599516SKenneth E. Jansen EGmass(iel,i3,i ) = zero 249*59599516SKenneth E. Jansen EGmass(iel,i ,i4) = zero 250*59599516SKenneth E. Jansen EGmass(iel,i4,i ) = zero 251*59599516SKenneth E. Jansen EGmass(iel,i,i5) = zero 252*59599516SKenneth E. Jansen EGmass(iel,i5,i) = zero 253*59599516SKenneth E. Jansen enddo 254*59599516SKenneth E. Jansen EGmass(iel,i1,i1) = one 255*59599516SKenneth E. Jansen EGmass(iel,i2,i2) = one 256*59599516SKenneth E. Jansen EGmass(iel,i3,i3) = one 257*59599516SKenneth E. Jansen EGmass(iel,i4,i4) = one 258*59599516SKenneth E. Jansen EGmass(iel,i5,i5) = one 259*59599516SKenneth E. Jansen endif 260*59599516SKenneth E. Jansen else 261*59599516SKenneth E. Jansen if ( btest(iBC(in),11) ) then 262*59599516SKenneth E. Jansen do i = 1, nedof 263*59599516SKenneth E. Jansen EGmass(iel,i ,i2) = zero 264*59599516SKenneth E. Jansen EGmass(iel,i2,i ) = zero 265*59599516SKenneth E. Jansen EGmass(iel,i ,i3) = zero 266*59599516SKenneth E. Jansen EGmass(iel,i3,i ) = zero 267*59599516SKenneth E. Jansen EGmass(iel,i ,i4) = zero 268*59599516SKenneth E. Jansen EGmass(iel,i4,i ) = zero 269*59599516SKenneth E. Jansen EGmass(iel,i,i5) = zero 270*59599516SKenneth E. Jansen EGmass(iel,i5,i) = zero 271*59599516SKenneth E. Jansen enddo 272*59599516SKenneth E. Jansen EGmass(iel,i2,i2) = one 273*59599516SKenneth E. Jansen EGmass(iel,i3,i3) = one 274*59599516SKenneth E. Jansen EGmass(iel,i4,i4) = one 275*59599516SKenneth E. Jansen EGmass(iel,i5,i5) = one 276*59599516SKenneth E. Jansen endif 277*59599516SKenneth E. Jansen endif 278*59599516SKenneth E. Jansen 279*59599516SKenneth E. Jansen 5000 continue 280*59599516SKenneth E. Jansen 281*59599516SKenneth E. Jansenc 282*59599516SKenneth E. Jansenc.... end loop over shape functions (nodes) 283*59599516SKenneth E. Jansenc 284*59599516SKenneth E. Jansen enddo 285*59599516SKenneth E. Jansenc 286*59599516SKenneth E. Jansenc.... end loop over elements 287*59599516SKenneth E. Jansenc 288*59599516SKenneth E. Jansen enddo 289*59599516SKenneth E. Jansenc 290*59599516SKenneth E. Jansenc.... return 291*59599516SKenneth E. Jansenc 292*59599516SKenneth E. Jansen return 293*59599516SKenneth E. Jansen end 294*59599516SKenneth E. Jansenc 295*59599516SKenneth E. Jansenc 296*59599516SKenneth E. Jansenc 297*59599516SKenneth E. Jansen subroutine bc3LHSSclr (iBC, iens, EGmasst ) 298*59599516SKenneth E. Jansenc 299*59599516SKenneth E. Jansenc---------------------------------------------------------------------- 300*59599516SKenneth E. Jansenc 301*59599516SKenneth E. Jansenc This routine satisfies the BC of LHS mass matrix for a single 302*59599516SKenneth E. Jansenc element. 303*59599516SKenneth E. Jansenc 304*59599516SKenneth E. Jansenc input: 305*59599516SKenneth E. Jansenc iBC (nshg) : boundary condition code 306*59599516SKenneth E. Jansenc BC (nshg,11) : Dirichlet BC constraint parameters 307*59599516SKenneth E. Jansenc ien (npro,nshl) : ien array for this element 308*59599516SKenneth E. Jansenc EGmasst(npro,nshape,nshape) : element consistent mass matrix before BC 309*59599516SKenneth E. Jansenc 310*59599516SKenneth E. Jansenc output: 311*59599516SKenneth E. Jansenc EGmasst(npro,nshape,nshape): LHS mass matrix after BC is satisfied 312*59599516SKenneth E. Jansenc 313*59599516SKenneth E. Jansenc 314*59599516SKenneth E. Jansenc Farzin Shakib, Winter 1987. 315*59599516SKenneth E. Jansenc Zdenek Johan, Spring 1990. (Modified for general divariant gas) 316*59599516SKenneth E. Jansenc---------------------------------------------------------------------- 317*59599516SKenneth E. Jansenc 318*59599516SKenneth E. Jansen include "common.h" 319*59599516SKenneth E. Jansenc 320*59599516SKenneth E. Jansen dimension iBC(nshg), ien(npro,nshl), 321*59599516SKenneth E. Jansen & EGmasst(npro,nshape,nshape) 322*59599516SKenneth E. Jansenc 323*59599516SKenneth E. Jansen integer iens(npro,nshl) 324*59599516SKenneth E. Jansenc 325*59599516SKenneth E. Jansenc prefer to show explicit absolute value needed for cubic modes and 326*59599516SKenneth E. Jansenc higher rather than inline abs on pointer as in past versions 327*59599516SKenneth E. Jansenc iens is the signed ien array ien is unsigned 328*59599516SKenneth E. Jansenc 329*59599516SKenneth E. Jansen ien=abs(iens) 330*59599516SKenneth E. Jansenc 331*59599516SKenneth E. Jansen id = isclr+5 332*59599516SKenneth E. Jansenc.... loop over elements 333*59599516SKenneth E. Jansenc 334*59599516SKenneth E. Jansen do iel = 1, npro 335*59599516SKenneth E. Jansenc 336*59599516SKenneth E. Jansenc.... loop over number of shape functions for this element 337*59599516SKenneth E. Jansenc 338*59599516SKenneth E. Jansen do inod = 1, nshl 339*59599516SKenneth E. Jansenc 340*59599516SKenneth E. Jansenc.... set up parameters 341*59599516SKenneth E. Jansenc 342*59599516SKenneth E. Jansen in = ien(iel,inod) 343*59599516SKenneth E. Jansen if (iBC(in) .eq. 0) goto 5000 344*59599516SKenneth E. Jansen 345*59599516SKenneth E. Jansenc 346*59599516SKenneth E. Jansenc.... scalar 347*59599516SKenneth E. Jansenc 348*59599516SKenneth E. Jansen if ( btest(iBC(in),id) ) then 349*59599516SKenneth E. Jansen 350*59599516SKenneth E. Jansen do i = 1, nshl 351*59599516SKenneth E. Jansen EGmasst(iel,i,inod) = zero 352*59599516SKenneth E. Jansen EGmasst(iel,inod,i) = zero 353*59599516SKenneth E. Jansen enddo 354*59599516SKenneth E. Jansen EGmasst(iel,inod,inod) = one 355*59599516SKenneth E. Jansen endif 356*59599516SKenneth E. Jansen 357*59599516SKenneth E. Jansenc 358*59599516SKenneth E. Jansen 359*59599516SKenneth E. Jansen 5000 continue 360*59599516SKenneth E. Jansen 361*59599516SKenneth E. Jansenc 362*59599516SKenneth E. Jansenc.... end loop over shape functions (nodes) 363*59599516SKenneth E. Jansenc 364*59599516SKenneth E. Jansen enddo 365*59599516SKenneth E. Jansenc 366*59599516SKenneth E. Jansenc.... end loop over elements 367*59599516SKenneth E. Jansenc 368*59599516SKenneth E. Jansen enddo 369*59599516SKenneth E. Jansenc 370*59599516SKenneth E. Jansenc.... return 371*59599516SKenneth E. Jansenc 372*59599516SKenneth E. Jansen return 373*59599516SKenneth E. Jansen end 374*59599516SKenneth E. Jansen 375