Linear Algebra - Orthogonal A in AX = B

bsquiggle

New member
Joined
Jun 7, 2015
Messages
3
I need a solution, not necessarily unique as I suspect there is more than one solution.

I'm doing this using MATLAB so any Matlab functions you can suggest would be helpful

I need to find T for

T * B = [0; Bm]

where T _pxp is unknown orthogonal
Bm_mxm is unknown but must be full rank

So far I've tried splitting into

T1 T2 B1 = 0
T3 T4 x B2 = Bm

and defining T1 = null(B1) - but that returns empty matrix for T1

then I tried T1 = null([B1 T3']) and equivalents for T2, 3, 4 - so that the off-diagonal matrices are zero.

I can arbitrarily define T(1,1) to reduce the number of potential solutions, but I don't seem to be able to satisfy both the 'B' equation and the orthogonality condition.

I could simply define each term individually, but in one case p is 10, m is 6, which is alot of equations, so I'm hoping to find a more general procedure. There doesn't seem to be a way to assume a symbolic variable is orthogonal, nor, as far as I can see, a way to solve a set of symbolic equations for input matrices rather than scalars or x being a vector (e.g. linsolve). I have two cases to solve with different values of B, m and p which is why I'm hoping for a general procedure rather than a one shot solution.

I also considered simply expanding out to

T 0 x B2(zero padded) = [0; Bm] (padded)
0 T T' eye(p)

but couldn't find a way to get those matrices solved where Bm and T are both unknown.
 
I then took
T = t1
t2
t3
t4

and set

t1 = null(Bcol1 Bcol2)
t2

so that I get the zeros required in [0; Bm] but can't find a straightforward way to complete that into an orthogonal matrix
 
Top