Mercurial > octave-nkf
comparison src/DLD-FUNCTIONS/qz.cc @ 5481:65e02518f4f5
[project @ 2005-10-04 17:12:08 by jwe]
author | jwe |
---|---|
date | Tue, 04 Oct 2005 17:12:08 +0000 |
parents | ac8d64b9e76a |
children | ace8d8d26933 |
comparison
equal
deleted
inserted
replaced
5480:cbd2443dc475 | 5481:65e02518f4f5 |
---|---|
223 @end ifinfo\n\ | 223 @end ifinfo\n\ |
224 of @math{(A - s B)}.\n\ | 224 of @math{(A - s B)}.\n\ |
225 @item @code{[AA, BB, Q, Z, V, W, lambda] = qz (A, B)}\n\ | 225 @item @code{[AA, BB, Q, Z, V, W, lambda] = qz (A, B)}\n\ |
226 \n\ | 226 \n\ |
227 Computes qz decomposition, generalized eigenvectors, and \n\ | 227 Computes qz decomposition, generalized eigenvectors, and \n\ |
228 generalized eigenvalues of @math{(A - sB)}\n\ | 228 generalized eigenvalues of @math{(A - sB)}\n\ |
229 @iftex\n\ | 229 @iftex\n\ |
230 @tex\n\ | 230 @tex\n\ |
231 $$ AV = BV{ \\rm diag }(\\lambda) $$\n\ | 231 $$ AV = BV{ \\rm diag }(\\lambda) $$\n\ |
232 $$ W^T A = { \\rm diag }(\\lambda)W^T B $$\n\ | 232 $$ W^T A = { \\rm diag }(\\lambda)W^T B $$\n\ |
233 $$ AA = Q^T AZ, BB = Q^T BZ $$\n\ | 233 $$ AA = Q^T AZ, BB = Q^T BZ $$\n\ |
234 @end tex\n\ | 234 @end tex\n\ |
235 @end iftex\n\ | 235 @end iftex\n\ |
236 @ifinfo\n\ | 236 @ifinfo\n\ |
237 @example\n\ | 237 @example\n\ |
238 @group\n\ | 238 @group\n\ |
239 A*V = B*V*diag(lambda)\n\ | 239 \n\ |
240 W'*A = diag(lambda)*W'*B\n\ | 240 A*V = B*V*diag(lambda)\n\ |
241 AA = Q'*A*Z, BB = Q'*B*Z\n\ | 241 W'*A = diag(lambda)*W'*B\n\ |
242 AA = Q'*A*Z, BB = Q'*B*Z\n\ | |
243 \n\ | |
242 @end group\n\ | 244 @end group\n\ |
243 @end example\n\ | 245 @end example\n\ |
244 @end ifinfo\n\ | 246 @end ifinfo\n\ |
245 with @var{Q} and @var{Z} orthogonal (unitary)= @var{I}\n\ | 247 with @var{Q} and @var{Z} orthogonal (unitary)= @var{I}\n\ |
246 \n\ | 248 \n\ |
247 @item @code{[AA,BB,Z@{, lambda@}] = qz(A,B,opt)}\n\ | 249 @item @code{[AA,BB,Z@{, lambda@}] = qz(A,B,opt)}\n\ |
248 \n\ | 250 \n\ |
249 As in form [2], but allows ordering of generalized eigenpairs\n\ | 251 As in form [2], but allows ordering of generalized eigenpairs\n\ |
250 for (e.g.) solution of discrete time algebraic Riccati equations.\n\ | 252 for (e.g.) solution of discrete time algebraic Riccati equations.\n\ |
251 Form 3 is not available for complex matrices, and does not compute\n\ | 253 Form 3 is not available for complex matrices, and does not compute\n\ |
252 the generalized eigenvectors @var{V}, @var{W}, nor the orthogonal matrix @var{Q}.\n\ | 254 the generalized eigenvectors @var{V}, @var{W}, nor the orthogonal matrix @var{Q}.\n\ |
253 @table @var\n\ | 255 @table @var\n\ |
254 @item opt\n\ | 256 @item opt\n\ |
255 for ordering eigenvalues of the GEP pencil. The leading block\n\ | 257 for ordering eigenvalues of the GEP pencil. The leading block\n\ |
256 of the revised pencil contains all eigenvalues that satisfy:\n\ | 258 of the revised pencil contains all eigenvalues that satisfy:\n\ |
257 @table @code\n\ | 259 @table @code\n\ |
258 @item \"N\"\n\ | 260 @item \"N\"\n\ |
259 = unordered (default) \n\ | 261 = unordered (default) \n\ |
260 \n\ | 262 \n\ |
261 @item \"S\"\n\ | 263 @item \"S\"\n\ |
262 = small: leading block has all |lambda| <=1 \n\ | 264 = small: leading block has all |lambda| <=1 \n\ |
263 \n\ | 265 \n\ |
264 @item \"B\"\n\ | 266 @item \"B\"\n\ |
265 = big: leading block has all |lambda >= 1 \n\ | 267 = big: leading block has all |lambda| >= 1 \n\ |
266 \n\ | 268 \n\ |
267 @item \"-\"\n\ | 269 @item \"-\"\n\ |
268 = negative real part: leading block has all eigenvalues\n\ | 270 = negative real part: leading block has all eigenvalues\n\ |
269 in the open left half-plant\n\ | 271 in the open left half-plane\n\ |
270 \n\ | 272 \n\ |
271 @item \"+\"\n\ | 273 @item \"+\"\n\ |
272 = nonnegative real part: leading block has all eigenvalues\n\ | 274 = nonnegative real part: leading block has all eigenvalues\n\ |
273 in the closed right half-plane\n\ | 275 in the closed right half-plane\n\ |
274 @end table\n\ | 276 @end table\n\ |
275 @end table\n\ | 277 @end table\n\ |
276 @end enumerate\n\ | 278 @end enumerate\n\ |
277 \n\ | 279 \n\ |
278 Note: qz performs permutation balancing, but not scaling (see balance).\n\ | 280 Note: qz performs permutation balancing, but not scaling (see balance).\n\ |
279 Order of output arguments was selected for compatibility with MATLAB\n\ | 281 Order of output arguments was selected for compatibility with MATLAB\n\ |
280 \n\ | 282 \n\ |
281 @seealso{balance, dare, eig, schur}\n\ | 283 @seealso{balance, dare, eig, schur}\n\ |
282 @end deftypefn") | 284 @end deftypefn") |
283 { | 285 { |
284 octave_value_list retval; | 286 octave_value_list retval; |