Re: Expand ellipsoid to contain a ray



Hi,

Given an ellipsoid A arbitrarily oriented in 3D with
center at the
origin, I would like to stretch/expand it to an
ellipsoid B with the
same center, such that B fully contains a given
vector v (ray from the
origin). There are two conditions: that A be
completely within B, and
that B be as small as possible. Note that B's
orientation can be
different from A's.
The second condition exists because otherwise the
easiest thing would
be to scale A equally in all directions to contain v,
but that
penalizes directions v is not in.

I have the symmetric matrix that defines the
ellipsoid and also the
vector that defines the ray. How do I go about this?
Any help would be
immensely appreciated. Thank you.

Khan


Let p be the point v is pointing at and C the convex hull of A \cup {p}. Then by Loewner's theorem there is a a unique ellipsoid B of minimal volume containing C and hence A and v. I guess that this is the ellipsoid you are looking for.

Loewner's theorem reads as follows:

"Any convex set C in IR^d is contained in a unique ellipsoid B of minimal volume."

B is called the Loewner ellipsoid. Loewner's theorem was proved in an article by Danzer, Laugwitz and Lenz in 1957 (german).

A more recent (english) textbook which gives a proof of Loewner's theorem is

A. C. Thompson, Minkowski Geometry, Cambridge University Press, Cambridge (1996)

Unfortunately the proof of Loewner's theorem doesn't actually tell us how to construct the Loewner ellipsoid.

But there is a lot of literature on how to compute Loewner's ellipsoid for certain convex sets. Maybe you should do some research on that.

Hope this helps
Michael
.