`(at, bt, Q, Z)=qz(a, b)`

Inputs | |

`a` |
A real square matrix. |

`b` |
A real square matrix of the same size as `a` . |

Outputs | |

`at` |
A matrix of the same size as the inputs with zeros below the main sub-diagonal to the left of the main diagonal. |

`bt` |
A matrix of the same size as the inputs with zeros below the main sub-diagonal to the left of the main diagonal. |

`Q` |
A unitary matrix of the same size as the inputs. |

`Z` |
A unitary matrix of the same size as the inputs. |

The matrices

`at`

and `bt`

are related to the inputs via the
transformations `at=Q'*a*Z`

and `bt=Q'*b*Z`

.
>>a=[1 2 3;5 7 9; 13 12 15]>>b=[12 19 23; 76 89 19; 12 16 31]>>a1 2 3 5 7 9 13 12 15>>b12 19 23 76 89 19 12 16 31>>[at,bt,Q,Z]=qz(a,b)>>at-4.0413 22.6403 -8.0551 0 10.464 -1.9034 0 0 0.2838>>bt-3.1528 44.5148 -12.0142 0 78.1416 -85.2491 0 0 30.7185>>at-Q'*a*ZScaled by 10^-13 0.0888 -0.9948 0.2842 -0.0422 0.7638 -0.1665 -0.1024 1.5123 -0.3331>>bt-Q'*b*ZScaled by 10^-12 0.02 -0.6466 0.5365 0.0173 0.3411 -0.2984 -0.0058 0.8082 -0.6608