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;