ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Discussion (Misc queries) (https://www.excelbanter.com/excel-discussion-misc-queries/)
-   -   I am trying to determine eigenvalues for an nxn matrix where n2 (https://www.excelbanter.com/excel-discussion-misc-queries/96715-i-am-trying-determine-eigenvalues-nxn-matrix-where-n-2-a.html)

Mark

I am trying to determine eigenvalues for an nxn matrix where n2
 
basically I am trying to determine the math steps for determining the
eigenvalues for a nxn matrix where n= either 3 or 4.

Dana DeLouis

I am trying to determine eigenvalues for an nxn matrix where n2
 
Eigenvalues for a n x n matrix where n= either 3 or 4.

If you don't get a better response to a 3 by 3 matrix, here's a brute force
method to calculate the Characteristic Polynomial.
You then call a routine that Solves the cubic Equation with the following
coefficients.
Here, 'a is assumed to be 1.

Sub Demo()
Dim m
Dim b, c, d
Dim Det

m = [A1:C3]

'A future item to check...
'If Det = 0 then...
Det = WorksheetFunction.MDeterm(m)

'//=======================================
'// Characteristic Polynomial =
'// x^3 + b*x^2 + c*x + d = 0
'//=======================================

b = -(m(1, 1) + m(2, 2) + m(3, 3))

c = m(1, 1) * m(2, 2) - m(1, 3) * m(3, 1) - _
m(2, 3) * m(3, 2) + m(1, 1) * m(3, 3) + _
m(2, 2) * m(3, 3) - m(1, 2) * m(2, 1)

d = m(1, 3) * m(2, 2) * m(3, 1) - _
m(1, 2) * m(2, 3) * m(3, 1) - _
m(1, 3) * m(2, 1) * m(3, 2) + _
m(1, 1) * m(2, 3) * m(3, 2) + _
m(1, 2) * m(2, 1) * m(3, 3) - _
m(1, 1) * m(2, 2) * m(3, 3)

Debug.Print b
Debug.Print c
Debug.Print d
End Sub

--
HTH. :)
Dana DeLouis
Windows XP, Office 2003


"Mark" wrote in message
...
basically I am trying to determine the math steps for determining the
eigenvalues for a nxn matrix where n= either 3 or 4.




Dana DeLouis

I am trying to determine eigenvalues for an nxn matrix where n2
 
It looks like the longer equation for d can be reduced...

Change:
d = m(1, 3) * m(2, 2) * m(3, 1) ...etc


to:

Det = WorksheetFunction.MDeterm(m)
d = -Det

--
HTH. :)
Dana DeLouis
Windows XP, Office 2003

<snip



Dana DeLouis

I am trying to determine eigenvalues for an nxn matrix where n2
 
For a 3x3 matrix, this might be slightly better to calculate the 3 variables
in the cubic equation.
You then solve the cubic equation to get your 3 Eigenvalues.
I'm not exactly sure how it's done for larger systems.

Sub Demo()
Dim m
Dim b, c, d
Dim j, p, n

'// Load array from A1:C3
m = [A1:C3]

'//=======================================
'// Characteristic Polynomial =
'// x^3 + b*x^2 + c*x + d = 0
'//=======================================

For j = 1 To 3
b = b - m(j, j) 'Trace

p = 163 Mod (j + 4)
n = 11 Mod (j + 2)

'Minors
c = c + m(p, p) * m(n, n) - m(p, n) * m(n, p)
Next j

d = -WorksheetFunction.MDeterm(m)

Debug.Print b; c; d
End Sub

--
HTH. :)
Dana DeLouis
Windows XP, Office 2003

<snip



Mark

I am trying to determine eigenvalues for an nxn matrix where n2
 
OK... I am assuming that this is a macro code. Let me give it a whirl.
Thanks for the help. I'll let you know how it worked.

thanks,
"Mark" wrote:

basically I am trying to determine the math steps for determining the
eigenvalues for a nxn matrix where n= either 3 or 4.



All times are GMT +1. The time now is 12:37 PM.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
ExcelBanter.com