Take the 2-minute tour ×
Mathematics Stack Exchange is a question and answer site for people studying math at any level and professionals in related fields. It's 100% free, no registration required.

I have two 6x1 element basis vectors $s_1$ and $s_2$ defined in local coordinates which can be combined into a single 6x2 subspace of $$ s = \begin{vmatrix} X_{2}s_{1} & s_{2}\end{vmatrix}$$ where $X_2$ is a 6x6 affine transformation matrix.

If I know the individual 6x5 nullspaces $R_1 = {\rm null}(s_1^\top)$ and $R_2 = {\rm null}(s_2^\top)$ such that $s_1^\top R_1 = 0$ and $s_2^\top R_2 = 0$ how do I calculate the combined 6x4 nullspace $R={\rm null}(s^\top)$ from $R_1$ and $R_2$ ?

Example

A joint is described by the rotation $s_1^\top = \begin{vmatrix} 0&0&0&0&0&1 \end{vmatrix}$ followed by the translation $s_2^\top = \begin{vmatrix} 1&0&0&0&0&0 \end{vmatrix}$ with the affine transformation $$ X_{2}=\begin{vmatrix}1 & & & 0 & -z & y\\ & 1 & & z & 0 & -x\\ & & 1 & -y & x & 0\\ & & & 1\\ & & & & 1\\ & & & & & 1 \end{vmatrix} $$

Combined this gives $$ s = \begin{vmatrix}-y & 1\\ x & 0\\ 0 & 0\\ 0 & 0\\ 0 & 0\\ 1 & 0 \end{vmatrix} $$

The computed nullspace with Matlab(r) is $$ R = {\rm null}(s^\top)=\begin{vmatrix}0 & 0 & 0 & 0\\ 0 & 0 & 0 & -\frac{1}{x}\\ 1 & 0 & 0 & 0\\ 0 & 1 & 0 & 0\\ 0 & 0 & 1 & 0\\ 0 & 0 & 0 & 1 \end{vmatrix} $$

The question is how do I arrive at this algorithmically or analytically?

share|improve this question
    
$R$ is the nullspace basis of which matrix? –  user2468 Mar 14 '12 at 20:16
    
$R$ is ${\rm null}(s^\top)$ –  ja72 Mar 14 '12 at 20:22
add comment

1 Answer

The answer to this problem I came up with, goes as follows:

Partition the subspace $s$ into a m×m part $s_m$ (where m is the number of columns in $s$) and into a k×m remaining part $s_k$

$$ s = \begin{vmatrix} s_m \\ \hline s_k \end{vmatrix} $$

The nullspace transpose is $$R = \begin{vmatrix} -\left(s_k s_m^{-1}\right)^\top \\ \hline \left(1_{k\times k}\right) \end{vmatrix} $$

Example

For the example above with

$$ s = \begin{vmatrix} -y & 1 \\ x & 0 \\ \hline 0 & 0 \\0 & 0 \\0 & 0 \\1 &0 \end{vmatrix} $$

the nullspace transpose is

$$ R = \begin{vmatrix} -\left(\begin{pmatrix} 0 & 0 \\0 & 0 \\0 & 0 \\1 &0 \end{pmatrix} \begin{pmatrix} -y & 1 \\ x & 0 \end{pmatrix}^{-1} \right)^\top \\ \hline \begin{pmatrix} 1 & 0 & 0 \\ 0 & 1 & 0 & 0 \\ 0 & 0 & 1 & 0 \\ 0 & 0 & 0 &1 \end{pmatrix} \end{vmatrix} = \begin{vmatrix} \begin{pmatrix} 0 & 0 & 0 & 0 \\ 0 & 0 & 0 & -\frac{1}{x} \end{pmatrix} \\ \hline \begin{pmatrix} 1 & 0 & 0 \\ 0 & 1 & 0 & 0 \\ 0 & 0 & 1 & 0 \\ 0 & 0 & 0 &1 \end{pmatrix} \end{vmatrix} $$

Why?

Expanding $R^\top s =0$ we have

$$\begin{vmatrix} -\left(s_k s_m^{-1}\right)^\top \\ \hline \left(1_{k\times k}\right) \end{vmatrix}^\top \begin{vmatrix} s_m \\ \hline s_k \end{vmatrix} =0 $$

$$ -\left( s_k s_m^{-1} \right) s_m + s_k = \\ -(s_k ) + s_k = 0 $$

So $R$ is the nullspace transpose of $s$.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.