Euclidian projection on ellipsoid and conic

Projecting a point on ellipsoid or conic in n-dimensional space
1,1K téléchargements
Mise à jour 25 mai 2010

Afficher la licence

Find the projection of point P in R^n on the ellipsoid

E = { x = x0 + U*(z.*radii) : |z| = 1 }, where U is orthogonal matrix of the orientation of E, radii are the axis lengths, and x0 is the center.

Or on generalized conic E = { x : x'*A*x + b'*x + c = 0 }.

The projection is the minimization problem:
min | x - P | (or max | x - P|) for x in E.

Method: solve the Euler Lagrange equation with respect to the Lagrange multiplier, which can be written as polynomial equation (from an idea by Roger Stafford)

Citation pour cette source

Bruno Luong (2024). Euclidian projection on ellipsoid and conic (https://www.mathworks.com/matlabcentral/fileexchange/27711-euclidian-projection-on-ellipsoid-and-conic), MATLAB Central File Exchange. Récupéré le .

Compatibilité avec les versions de MATLAB
Créé avec R2010a
Compatible avec toutes les versions
Plateformes compatibles
Windows macOS Linux

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
Version Publié le Notes de version
1.4.0.0

Fix a bug, Introducing an adjustable tolerance value for parabola detection

1.3.0.0

Cosmetic changes + Script for test example for 2D conic projection

1.2.0.0

Extend to generalized conic (ellipsoid, paraboloid, hyperboloid, etc...)

1.0.0.0