conjorth

Constructs conjugate-orthogonal basis from matrix
1.8K Downloads
Updated 26 Nov 2007

No License

Compute a set of normalized, A-conjugate vectors from basis W. Vectors can be A-normalized outside of function easily. See below.

[U]=conjorth(W,A)

INPUT
W: A linear independet set of column vectors

A: A full rank matrix. An output is produced if A is not symmetric, but A must be symmetric in order for U'*A*U=0;

OUTPUT
U: A set of mutually A-conjuate vectors that span the same space as W. If A if the identity matrix, so that A=eye(size(W)), U is a set of orthogonal vectors and the method is identical to the Gram-Schmidt
orthogonalization. The columns of U are normalized.

To A-normalize U(:,k), compute:
U(:,k)/(U(:,k)'*A*U(:,k))

DESCRIPTION OF A-CONJUGACY
Two vectors u and v are A-conjugate if u'*(A*v) = 0. In a more general sense, two elements of a vector space are A-conjugate if <u,Av>=0. A-conjugacy arises out of generalized eigenvalue problems of the form:

Lu = lambda*A*u

If A is self-adjoint and positive definite, and L is self-adjoint, then the eigenvectors of operator L are A-conjugate to each other. Such problems arise all the time in vibrational mechanics. The Ritz method is a common aplication of A-conjugacy of eigenvectors. In seismology, non-spherical bodies will in general, have their wave-equation
eigenvectors A-conjugate to each other, rather than orthogonal, though the elements of A are likely to be quite small for the Earth.

USE WITH:
Rayleigh-Ritz algorithms, polarization algorithms, Gram-Schmidt orthogonalization, eigenvalue problems.

Cite As

Joshua Carmichael (2024). conjorth (https://www.mathworks.com/matlabcentral/fileexchange/17623-conjorth), MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R2006b
Compatible with any release
Platform Compatibility
Windows macOS Linux
Categories
Find more on Linear Algebra in Help Center and MATLAB Answers

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
Version Published Release Notes
1.0.0.0

Code worked, but needed some error checking and syntax explaination.