Professional Documents
Culture Documents
Option Base 1
Public T() As Double 'transformation matrix
Public TT() As Double 'transpose [T], used in Module 3
n = 1
For i = 1 To NS
n = Cells(22, 1 + i)
IFx(2 * i - 1) = 2 * n - 1
IFx(2 * i) = 2 * n
Next i
End Sub
M(1, 1, i) = sms * .Cx * .Cx: M(1, 2, i) = sms * .Cx * .Cy: M(1, 3, i) = -M(1,
1, i): M(1, 4, i) = -M(1, 2, i)
M(2, 1, i) = M(1, 2, i): M(2, 2, i) = sms * .Cy * .Cy: M(2, 3, i) = M(1, 4, i):
M(2, 4, i) = -M(2, 2, i)
M(3, 1, i) = M(1, 3, i): M(3, 2, i) = M(2, 3, i): M(3, 3, i) = M(1, 1, i): M(3,
4, i) = M(1, 2, i)
M(4, 1, i) = M(1, 4, i): M(4, 2, i) = M(2, 4, i): M(4, 3, i) = M(3, 4, i): M(4,
4, i) = M(2, 2, i)
'Storing members and superposition
For j = 1 To 4
For n = 1 To 4
S(Idm(j, i), Idm(n, i)) = S(Idm(j, i), Idm(n, i)) + M(j, n, i)
Next n
Next j
End With
Next i
End Sub
'Global matrix
Sub MInvers(SR() As Double, SD() As Double)
Dim n As Integer
For n = 1 To DOF
If n = i Then GoTo 10
For j = 1 To DOF
10 Next n
For n = 1 To DOF
If n <> i Then SD(n, i) = -SD(n, i) / SD(i, i)
Next n
SD(i, i) = 1 / SD(i, i)
Next i
End Sub