Orthogonal Matrices: Definition & Examples

Click For Summary
Determining if a matrix is orthogonal requires approximate methods due to limitations in precision arithmetic. An orthogonal NxN matrix must have rank N, with each row or column being a unit vector and orthogonal to others. The rank function in Matlab can assist in verifying the rank condition. However, checking for unit vectors and orthogonality involves setting tolerances, as rows may not perfectly meet the criteria. Therefore, practical implementations must account for these approximations to assess orthogonality effectively.
amkat
Messages
1
Reaction score
0
aklsdk
 
Last edited:
Physics news on Phys.org
Unless you are using infinite precision arithmetic, you cannot tell whether a matrix truly is or is an orthogonal matrix. You can't use infinite precision arithmetic, so your answer will necessarily be approximate.

What you can do is roll your own function, using the fact that an orthogonal NxN matrix has rank N, that each row (or column) is a unit vector, and that each row is orthogonal to all other rows (or columns). Matlab has the rank function to help with the first item. This one is fairly cut and dry. An NxN matrix that has rank less than N cannot be an orthogonal matrix.

The other two items are going to be problematic. You'll need some tolerances such that a row whose magnitude is not quite 1 but is within some ε of 1 is still deemed to be a unit vector, and such that a pair of rows whose inner product is not quite zero but is within some other ε of 0 are still deemed to be orthogonal to one another.
 

Similar threads

  • · Replies 4 ·
Replies
4
Views
2K
  • · Replies 3 ·
Replies
3
Views
2K
  • · Replies 3 ·
Replies
3
Views
4K
  • · Replies 5 ·
Replies
5
Views
813
  • · Replies 1 ·
Replies
1
Views
2K
  • · Replies 7 ·
Replies
7
Views
1K
  • · Replies 3 ·
Replies
3
Views
2K
  • · Replies 13 ·
Replies
13
Views
2K
  • · Replies 10 ·
Replies
10
Views
3K
  • · Replies 11 ·
Replies
11
Views
2K