any faster method than eigenfunction[] for tridiagonal matrices?
- To: mathgroup at smc.vnet.net
- Subject: [mg27872] any faster method than eigenfunction[] for tridiagonal matrices?
- From: Art Croucher <art.croucher at jhuapl.edu>
- Date: Thu, 22 Mar 2001 04:30:11 -0500 (EST)
- Organization: Johns Hopkins University Applied Physics Lab, Laurel, MD, USA GMT)
- Sender: owner-wri-mathgroup at wolfram.com
Hi - I am developing a fluid dynamics model and have run into a bottleneck using eigenfunction[] to solve tridiagonal matrices with n on the order of 100. (I'm spending a lot of development time waiting for this to run!) Are there any faster solution methods available in or callable from Mathematica? The development is being done with 4.1 on a G3 with enough memory. Thanks, Art art.croucher at jhuapl.edu PS: My nice image of the matrix didn't work in the post, so here is a description: We need to find eigenvalues and eigenvectors of a tridiagonal matrix, which is in general not symmetric. Although it is not symmetric, it does have some specific properties beyond being tridiagonal: Let n be the dimension of the matrix. Let p be a constant greater than or equal to 2, and let {a(1), a(2), .., a(n)} be a vector of nonzero positive values. Then the kth row of the matrix consists of all zeros except for m(k, k-1) = -a(k) m(k, k) = pa(k) m(k, k+1) = -a(k) The nonzero elements for the first and last rows are: m(1, 1) = p a(1) m(1, 2) = -a(1) m(n, n-1) = -a(n) m(n, n) = p a(n)