From help-octave-request at bevo dot che dot wisc dot edu Sat Jan 4 07:05:17 2003 Subject: Re: solving Ax=b From: A S Hodel To: Sven Khatri Cc: help-octave at bevo dot che dot wisc dot edu Date: Sat, 4 Jan 2003 07:04:21 -0600 For your problem I suspect that "easy" is a relative term (like NASA's goal of "low-cost" access to space). There are numerous iterative methods for large, sparse A x = b problems. Most of these will require work on your part. See Golub and Van Loan, "Matrix Computations," Johns-Hopkins University press, for an introduction to some of them. As a starting point, you may wish to look at the GMRES method by Youcef Saad (I think this is published in SIAM J. Sci. Stat. Comput. 1986). The octave routine krylov may be a useful starting point, but you'll have to modify it to use your f(A,x) instead of A*X. If you can look at other splittings A = M + N besides M= I, N = (A-I), then some of Gene Wachspress's ADI (Alternating Direction Implicit) methods of the 60's may be of use. I haven't kept up with the latest and greatest very large sparse solver methods, so I'd suggest a visit to the last few years of SIAM J. Matrix Analysis and SIAM J. Sci Stat Comput. to see what you can find. On Saturday, January 4, 2003, at 03:00 AM, Sven Khatri wrote: > Hi All, > > I'm looking to solve a problem that is equivalent to solving for x in > the system of linear equations: > Ax = b > where A \in R^{n \times n}, x \in R^n, b \in R^n. But the catch is > that n is too large to explicitly construct A (even in Matlab's sparse > implementation) but I can construct a function f so that f(x) = Ax. Is > there an easy way (within octave) to solve for x? I can solve the > problem > by introducing \tilde{A} = I - A, so that the solution to > x = \tilde{A}x + b > is a solution to the above problem and \tilde{A} is a contraction and > solving the problem iteratively but this computation is VERY slow. > > thanx... > Sven > > PS I hope you all are comfortable with the above latex notation > > > > ------------------------------------------------------------- > Octave is freely available under the terms of the GNU GPL. > > Octave's home on the web: http://www.octave.org > How to fund new projects: http://www.octave.org/funding.html > Subscription information: http://www.octave.org/archive.html > ------------------------------------------------------------- > ------------------------------------------------------------- Octave is freely available under the terms of the GNU GPL. Octave's home on the web: http://www.octave.org How to fund new projects: http://www.octave.org/funding.html Subscription information: http://www.octave.org/archive.html -------------------------------------------------------------