Documentation

This is machine translation

Translated by Microsoft
Mouseover text to see original. Click the button below to return to the English verison of the page.

Note: This page has been translated by MathWorks. Please click here
To view all translated materals including this page, select Japan from the country navigator on the bottom of this page.

subspace

Angle between two subspaces

Syntax

theta = subspace(A,B)

Description

theta = subspace(A,B) finds the angle between two subspaces specified by the columns of A and B. If A and B are column vectors of unit length, this is the same as acos(abs(A'*B)).

Examples

Consider two subspaces of a Hadamard matrix, whose columns are orthogonal.

H = hadamard(8);
A = H(:,2:4);
B = H(:,5:8);

Note that matrices A and B are different sizes — A has three columns and B four. It is not necessary that two subspaces be the same size in order to find the angle between them. Geometrically, this is the angle between two hyperplanes embedded in a higher dimensional space.

theta = subspace(A,B)
theta =
    1.5708

That A and B are orthogonal is shown by the fact that theta is equal to π/2.

theta - pi/2
ans =
     0

More About

collapse all

Tips

If the angle between the two subspaces is small, the two spaces are nearly linearly dependent. In a physical experiment described by some observations A, and a second realization of the experiment described by B, subspace(A,B) gives a measure of the amount of new information afforded by the second experiment not associated with statistical errors of fluctuations.

Introduced before R2006a

Was this topic helpful?