Date: Tue, 20 Feb 1996 10:27:01 -0600 From: dgp@titan.wustl.edu (Don Porter) To: rusin@math.niu.edu Subject: Re: Volume of cone in Euclidean N-space > You know, this must be well known, I'm glad I'm not the only one who thinks (hopes?) so. It can be difficult for us engineers to know where to start looking, though. Thanks for answering my call. > but for the life of me I can't > recall how one would address this. Did you get any responses? Only one, from Frans Gremmen of the University of Nijmegen. Here it is: =================================================================== [headers edited by Rusin] Date: Thu, 15 Feb 96 14:35:39 +0100 From: "Frans Gremmen" To: dgp@ee.wustl.edu Subject: Re: Volume of cone in Euclidean N-space Hello, I did some work on this topic several years ago. To my knowledge there are no simple formulas for cases beyond the area of a spherical triangle. My attempts to find out what others have done is not very exhaustive. Nevertheless here are some fragments of my work. My work is not well documented in the past. It eventually resulted in a formula for the volume V of an N-dimensional spherical simplex, i.e. the volume on the sphere in R^(N + 1) ^^^^ Note I'm working in R^(N + 1) instead of your original question using R^N. sqrt(det(A)) |\ |\ dx1 dx2 ... dxN V = ----------- | ... | ------------------------- N! \| \| (1 + x'*A*x)^((N + 1)/2) Integration over a region x1 >= 0, x2 >= 0, ... , xN >= 0 and x1 + x2 + ... + xN <= 1, where x' = (x1, x2, ... ,xN), det(A) is the determinant of A and A is a N by N matrix constructed from the (N + 1) by (N + 1) matrix C of the cosine of distances between the (N + 1) points on the sphere in R^(N + 1). I have to dig in a computer program to find out what A really is, but in your notation with a_k, being unit vectors, inner products between pairs of a_k 's build up the matrix C. The coordinates (x1, x2, x3,...,xN) are from a new chosen coordinate system for the points on the sphere. The term sqrt(det(A)) stems from a Jacobian. The earlier mentioned computer program, written in FORTRAN, approximates the multiple integral by expanding the integrand so that it comes to evaluating |\ |\ | ... | (x'*A*x)^k dx1 dx2 ... dxN \| \| over the above mentioned region. This integral for k = 1, 2 and 3 is evaluated in the program. I have formulas for only these 3 cases, For k = 0 the integral is simply equal to 1/N! This will work only for small N-dimensional simplices, i.e. the matrix C is close to all ones and in turn A close to all zero. I'm willingly to be more specific if you are interested in it. If you got some interesting answers I want to hear about it. Greetings, Frans Gremmen, University of Nijmegen E-mail U212994@vm.uci.kun.nl =================================================================== Since I sent out my request, I've been able to apply what I've learned about spherical trigonometry and solid geometry to compute an answer to my problem for N=3, so my original problem is solved for slightly longer vectors. I really need to know answers for large N, though, so either a general formula, or a rigorous statement about what happens as N grows large is what I need. Thanks, Don