In 2D, one has an easy formula for the determinant of two vectors given in spherical coordinates, i.e.

$\begin{vmatrix} \cos(\phi_1) &\cos(\phi_2)\\ \sin(\phi_1) &\sin(\phi_2)\end{vmatrix} =\sin(\phi_2-\phi_1)$.

I'm curious if there are similar formulae for higher dimensions, e.g. for

$\begin{vmatrix}\sin(\theta_1)\sin(\phi_1) &\sin(\theta_2)\sin(\phi_2) &\sin(\theta_3)\sin(\phi_3)\\ \sin(\theta_1)\cos(\phi_1) &\sin(\theta_2)\cos(\phi_2) &\sin(\theta_3)\cos(\phi_3)\\ \cos(\theta_1)&\cos(\theta_2) &\cos(\theta_3)\end{vmatrix}=?$

  • $\begingroup$ yes, but since I'm not the most skillfull at calculus and manipulating trigonometric and determinant-like expressions, I wanted to know if maybe someone knows the formula before plunging into endless calculations. Especially if my guess that determinant=area is right there might be an explicit and well-known expression $\endgroup$
    – Bananach
    Nov 21, 2014 at 23:51
  • $\begingroup$ Unfortunately you did I think. For $\theta=(0,\pi/2,\pi/2), \phi=(0,\pi/4,3\pi/4)$ I get $-1/2$ with your expression instead of $-1$ (the vectors are orthogonal) $\endgroup$
    – Bananach
    Nov 22, 2014 at 0:37
  • $\begingroup$ (Note: Check your matrix, especially column 3.) The case in 2D works the way it does because the determinant has the properties of a cross product. So you end up with $\sin(\angle \vec{A},\vec{B})$ because the vector magnitudes are $1$. In 3D, the determinant is the box product. $(\vec{A}\times \vec{B})\cdot\vec{C}$. So you expect $\sin(\angle\vec{A},\vec{B})\cos(\angle(\vec{A}\times\vec{B}),\vec{C})$, and the expression will be cyclically invariant. At least seems right to me at the moment. $\endgroup$ Nov 22, 2014 at 1:28
  • $\begingroup$ damn I checked the matrix a minute before I saw it :D thanks! how about more dimensions? $\endgroup$
    – Bananach
    Nov 22, 2014 at 1:33
  • $\begingroup$ Too long for a comment. So I made it an answer. $\endgroup$ Nov 22, 2014 at 3:33

1 Answer 1


A rigid body rotation does not affect determinant in any dimension. A rigid body rotation is implemented as an orthogonal matrix with determinant +1 instead of -1. So you can reduce the $\mathbb{R}^{n}$ case to $\mathbb{R}^{n-1}$ by rotating until the first column of your matrix is along the first standard basis direction. Then the determinant is not changed by projecting all of the remaining vectors into the subspace which is orthogonal to the first element, because that's the same as subtracting a constant multiple of the new first column from all of the other columns. It is possible to hit a $0$ projection vector in this process, depending on the independence of the original unit vectors. Otherwise, projecting gives you a product of $n-1$ cosines that you can factor out, and the resulting matrix has a single $1$ in the corner and only $0$ terms in the same row and column as this $1$, and the $(n-1)\times (n-1)$ submatrix now contains unit vectors because of factoring out the cosine terms. This is a full reduction to the $\mathbb{R}^{n-1}$ case. Eventually you get down to the $\mathbb{R}^{2}$ case, or the algorithm stops because of linear dependence.


You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .