Diagonalizing a 3x3 second derivative matrix

Click For Summary

Discussion Overview

The discussion revolves around diagonalizing a 3x3 second derivative matrix related to 2D and 3D density fields. Participants explore methods for determining eigenvectors and angles associated with the diagonalization process, with a focus on both analytical and numerical approaches.

Discussion Character

  • Technical explanation
  • Debate/contested
  • Mathematical reasoning

Main Points Raised

  • One participant has successfully diagonalized the second derivative matrix in 3D but seeks a method to determine the associated rotation angle.
  • Another participant suggests determining the eigenvectors to find direction cosines, indicating a potential path to the solution.
  • A later reply clarifies that the initial inquiry was about a general solution rather than a specific case, and mentions a Fortran library that could assist with the problem.
  • Some participants discuss the characteristic polynomial and its role in finding eigenvalues, but express confusion about how it relates to finding eigenvectors.
  • One participant notes the challenges of solving for eigenvectors, particularly when dealing with singular systems, and mentions using Gauss-Jordan elimination as a possible method.
  • Another participant offers a formula involving determinants for solving linear systems, while also providing a characterization of eigenvectors for symmetric matrices.

Areas of Agreement / Disagreement

Participants express differing views on the methods for obtaining eigenvectors and the relevance of the characteristic polynomial. There is no consensus on a straightforward analytical solution for determining the rotation angle in 3D.

Contextual Notes

Participants acknowledge the complexity of finding eigenvectors, especially in the context of singular matrices, and the limitations of existing resources for general solutions.

SpaceTiger
Staff Emeritus
Science Advisor
Gold Member
Messages
2,957
Reaction score
4
I've been working on this problem lately where I've been looking at the second derivatives of 2D and 3D density fields. Now, the second derivatives of the field can be represented in a matrix, which can be thought of as an N-dimensional ellipse with the principal axes aligned along some angle in which the second derivative matrix is diagonal.

Anyway, I've solved the full problem in 2D (angle and all), but in 3D, I've only been able to diagonalize the matrix. I haven't yet figured out how to determine the angle that represents. Does an easy analytic solution exist for this or will I have to resort to numerical guesstimations?
 
Physics news on Phys.org
Did you determine the eigenvectors of this matrix?
Knowing those, you can use the dot-product to determine the various direction cosines.
 
robphy said:
Did you determine the eigenvectors of this matrix?
Knowing those, you can use the dot-product to determine the various direction cosines.

Well, I probably wasn't very clear. I don't need a solution for an individual matrix, but rather a more general one (for simulation purposes). I've since been pointed to a fortran library that can do the job, however, so everything is taken care of. Thanks, though. :cool:
 
the answer he gave you was for a general situation. the eigenvalues are roots of the characteristic polynomial, which has a general formula, the same for all matrices.
 
mathwonk said:
the answer he gave you was for a general situation. the eigenvalues are roots of the characteristic polynomial, which has a general formula, the same for all matrices.

I understand that, but it wasn't the method I was looking for, it was the result. Also, as I said, I already have a general result for the eigenvalues, it's the eigenvectors I need now. The book I have at hand only gives a general outline for determining eigenvectors on a case-by-case basis (parameterizations and such), but I was hoping I could avoid generalizing that numerically and just jump to a single formula. A friend of mine pointed me to LAPACK, a library for solving these things numerically, so it's taken care of now. My apologies if my question wasn't very clear.
 
i still do not understand how a general method does not give you a general result. do you mean you wanted someone to write down the characteristic polynomial for you?

if so, it is just the determinant of the matrix [A - XId], where A is the matrix of second partials, or do you also want me to write down the determinant?
 
mathwonk said:
i still do not understand how a general method does not give you a general result. do you mean you wanted someone to write down the characteristic polynomial for you?

Alright, now you're just not paying attention. How would the characteristic polynomial get me the eigenvectors? That's what I use to get the eigenvalues. I told you that I already have those. For a 3X3, it gave me a cubic equation that I could easily write a routine to solve.

However, to find the eigenvectors, I then need to solve a linear system of equations which is usually singular. Since I can't do this with a simple inverse, writing a routine to do it is tricky. I can do it with gauss-jordan elimination, but that's not so simple to program, so I needed the fortran library to do that. I was hoping there was a simple general solution for the rotation angle in this problem (assuming the eigenvectors make up the rotation matrix), but I have yet to find one in 3-D.
 
gosh how could I have been so careless. Please forgive me, i just lost my head.

now that i know you want eigenvectors, perhaps (in case your matrix is invertible) the formula involving determinants could help you.

I guess you knolw there is a formula for the, solution of an invertible linear system called cramers rule.

but i wouldn't want to waste your time, so just feel free to ignore this if it is not helpful.

In case it m,ay be useful, here is a other short characterizatioon of an eigenvector for a symmetric matrix A, which however requires you to solve for thew points on the unit sphere where a derivative is zero:

let v be a unit vector such that the function Ax.x is minimized over the unit sphere at x = v. Then v is an elgenvector for A.
 
Last edited:

Similar threads

  • · Replies 2 ·
Replies
2
Views
3K
  • · Replies 2 ·
Replies
2
Views
2K
  • · Replies 6 ·
Replies
6
Views
3K
  • · Replies 2 ·
Replies
2
Views
2K
  • · Replies 6 ·
Replies
6
Views
1K
  • · Replies 1 ·
Replies
1
Views
3K
  • · Replies 2 ·
Replies
2
Views
5K
  • · Replies 12 ·
Replies
12
Views
3K
Replies
2
Views
2K
  • · Replies 9 ·
Replies
9
Views
2K