Word / Матрица v1
.1.doc
|
|
R=Pr((d*Ct+B)*A)+||A|| |
|
|
|
d*Ct |
|
|
матрица А |
|
|
|
вектор С |
|
-2 |
-6 |
-10 |
3 |
4 |
|
|
1 |
|
-3 |
-9 |
-15 |
6 |
2 |
|
|
3 |
|
d*Ct+B |
|
|
-3 |
1 |
|
|
5 |
|
-4 |
-5 |
-9 |
матрица В |
|
|
|
вектор d |
|
-2 |
-14 |
-12 |
-2 |
1 |
1 |
|
-2 |
|
(d*Ct+B)*A |
|
|
1 |
-5 |
3 |
|
-3 |
|
-15 |
-35 |
|
|
|
|
|
|
|
-54 |
-48 |
|
результат |
728,6603 |
|
|
|
|
Pr |
|
|
|
|
|
|
|
|
720 |
|
|
|
|
|
|
|
|
Norma ||A|| |
|
|
|
|
|
|
|
|
8,6602545 |
|
|
Sub matrica()
Dim A!(3, 2), B!(2, 3), C!(3, 1), d!(2, 1), dCt!(2, 3), CT!(1, 3), dCtb!(2, 3), dCtBA!(2, 2), Pr!, norm!, s!, result!
Dim i%, j%, k%
For i = 1 To 3
For j = 1 To 2
A(i, j) = Cells(i + 2, j)
B(j, i) = Cells(j + 6, i)
d(j, 1) = Cells(6 + j, 5)
Next j
C(i, 1) = Cells(i + 2, 5)
Next i
Call matrix1(dCt, CT, d, C)
Call matrix2(dCtb, dCt, B)
Call matrix3(dCtBA, dCtb, A)
Call Pr_and_norm(dCtBA, s, A, norm, result)
End Sub
____________________________________________________________________________________________________
'выч-е Ct и d*Ct
Sub matrix1(dCt!(), CT!(), d!(), C!())
For i = 1 To 3
For j = 1 To 2
CT(1, i) = C(i, 1)
dCt(j, i) = dCt(j, i) + CT(1, i) * d(j, 1)
Cells(1 + j, 6 + i) = dCt(j, i)
Next j
Next i
End Sub
_____________________________________________________________________________________________________
'выч-е d*Ct+B
Sub matrix2(dCtb!(), dCt!(), B!())
For i = 1 To 3
For j = 1 To 2
dCtb(j, i) = dCt(j, i) + dCtb(j, i) + B(j, i)
Cells(4 + j, 6 + i) = dCtb(j, i)
Next j
Next i
End Sub
______________________________________________________________________________________________________
'выч-е (d*Ct+B)*A
Sub matrix3(dCtBA!(), dCtb!(), A!())
For i = 1 To 3
For j = 1 To 2
dCtBA(j, j) = dCtBA(j, j) + dCtb(j, i) * A(i, j)
dCtBA(1, 2) = dCtBA(1, 2) + dCtb(1, i) * A(i, 2) / 2
dCtBA(2, 1) = dCtBA(2, 1) + dCtb(2, i) * A(i, 1) / 2
Cells(7 + j, 6 + j) = dCtBA(j, j)
Next j
Next i
Cells(8, 8) = dCtBA(1, 2)
Cells(9, 7) = dCtBA(2, 1)
End Sub
_______________________________________________________________________________________________________
'выч-е Pr
Sub Pr_and_norm(dCtBA!(), s!, A!(), norm!, result!)
Pr = dCtBA(1, 1) * dCtBA(2, 2)
Cells(11, 7) = Pr
'выч-е нормы
s = 0
For i = 1 To 3
For j = 1 To 2
s = s + A(i, j) * A(i, j)
Next j
Next i
norm = Sqr(s)
Cells(13, 7) = norm
result = Pr + norm
Cells(10, 2) = result
End Sub