Code covered by the BSD License
-
ell_center_ode(t, x, mydata, ...
% ELL_CENTER_ODE - ODE for the center of the reach set.
-
ell_demo1
-
ell_demo2
-
ell_demo3
-
ell_eesm_ode(t, X, l0, mydata...
% ELL_EESM_ODE - ODE for the shape matrix of the external ellipsoid.
-
ell_eesm_ode(t, X, l0, mydata...
% ELL_EEDIST_ODE - ODE for the shape matrix of the external ellipsoid
-
ell_enclose(V)
% ELL_ENCLOSE - computes minimum volume ellipsoid that contains given vectors.
-
ell_fusionlambda(a, q1, Q1, q...
% ELL_FUSIONLAMBDA - function whose root in the interval (0, 1) determines
-
ell_iesm_ode(t, X, l0, mydata...
% ELL_IEDIST_ODE - ODE for the shape matrix of the internal ellipsoid
-
ell_iesm_ode(t, X, xl0, l0, m...
% ELL_IESM_ODE - ODE for the shape matrix of the internal ellipsoid.
-
ell_iesm_ode(t, X, xl0, l0, m...
% ELL_IESM_ODE - ODE for the shape matrix of the internal ellipsoid.
-
ell_inv(A)
% ELL_INV - computes matrix inverse treating ill-conditioned matrices properly.
-
ell_nlfnlc(objf, x0, nlcf, Op...
% ELL_NLFNLC - computes minimum of nonlinear function with nonlinear constraints.
-
ell_ode_solver(fn, t, x0, var...
% ELL_ODE_SOLVER - caller for particular ODE solver.
-
ell_plot(x, varargin)
-
ell_regularize(Q, delta)
% ELL_REGULARIZE - regularization of singular matrix.
-
ell_simdiag(A, B)
% ELL_SIMDIAG - computes the transformation matrix that simultaneously
-
ell_square_facets(epoints_num...
% ELL_SQUARE_FACETS - generates square facets to be used in PATCH function call.
-
ell_stm_ode(t, x, mydata, n, ...
% ELL_STM_ODE - ODE for state transition matrix.
-
ell_triag_facets(epoints_num,...
% ELL_TRIAG_FACETS - generates triangular facets to be used in PATCH function call.
-
ell_unitball(n)
% ELL_UNITBALL - creates unit ball object
-
ell_valign(v, x)
% ELL_VALIGN - given two vectors in R^n, computes orthogonal matrix that rotates
-
ell_value_extract(X, t, dims)
% ELL_VALUE_EXTRACT - extracts matrix value from ppform or vector array.
-
ellipsoids_init(varargin)
% ELLIPSOIDS_INIT - initializes Ellipsoidal Toolbox.
-
hyperplane2polytope(HA)
% HYPERPLANE2POLYTOPE - converts array of hyperplanes into polytope
-
install(root)
% Install Ellipsoidal Toolbox.
-
polytope2hyperplane(P)
% POLYTOPE2HYPERPLANE - converts given polytope object into the array
-
ellipsoid(varargin)
% ELLIPSOID - constructor of the ellipsoid object.
-
hyperplane(v, c)
% HYPERPLANE - creates hyperplane structure (or array of hyperplane structures).
-
linsys(A, B, U, G, V, C, W, D...
% LINSYS - constructor for linear system object.
-
reach(lsys, X0, L0, T, Option...
% REACH - computes reach set approximation of the linear system for the given
-
View all files
from
Ellipsoidal Toolbox (ET)
by Alex Kurzhanskiy
Implementation of the ellipsoidal calculus and ellipsoidal methods for reachability analysis.
|
| ell_valign(v, x)
|
function T = ell_valign(v, x)
%
% ELL_VALIGN - given two vectors in R^n, computes orthogonal matrix that rotates
% the second vector making it parallel to the first one.
%
%
% Description:
% ------------
%
% T = ELL_VALIGN(v, x) Given vectors v and x in R^n, compute orthogonal
% matrix T (TT' = T'T = I), such that
% T x = a v,
% where a is some scalar. Actually,
% a = |x|/|v|
% Here |.| denotes euclidean norm.
%
% Let SVD of v be
% v = U1 * S1 * V1',
% and SVD of x
% x = U2 * S2 * V2'.
% Then we can find T from the matrix equation
% T U2 V2' = U1 V1',
% or,
% T = U1 V1' (U2 V2')^(-1) = U1 V1' V2 U2'.
%
%
% Output:
% -------
%
% T - resulting orthogonal matrix.
%
%
% See also:
% ---------
%
% SVD, GSVD.
%
%
% Author:
% -------
%
% Alex Kurzhanskiy <akurzhan@eecs.berkeley.edu>
%
if ~(isa(v, 'double')) | ~(isa(x, 'double'))
error('ELL_VALIGN: both arguments must be vectors in R^n.');
end
[k, l] = size(v);
[m, n] = size(x);
if (l ~= 1) | (n ~= 1)
error('ELL_VALIGN: both arguments must be vectors in R^n.');
end
if k ~= m
error('ELL_VALIGN: both vectors must be of the same dimension.');
end
[U1 S V1] = svd(v);
[U2 S V2] = svd(x);
T = U1 * V1 * V2' * U2';
return;
|
|
Contact us at files@mathworks.com