[SciPy-User] Large banded matrix least squares solution
David Baddeley
david_baddeley@yahoo.com...
Wed Mar 16 16:46:08 CDT 2011
definitely sounds like a deconvolution problem, you could start by trying
something like Weiner filtering
(http://en.wikipedia.org/wiki/Wiener_deconvolution) and go from there.
If you need to go further, the inverse problems notes at
http://home.comcast.net/~szemengtan/ are excellent (you probably want to look at
Chapter 3, Regularization Methods for Linear Inverse Problems, in particular 3.7
which talks about solving large systems). I've got a python implementation of
the Matlab code for Tikhonov regularised deconvolution given there.
cheers,
David
________________________________
From: J. David Lee <johnl@cs.wisc.edu>
To: SciPy Users List <scipy-user@scipy.org>
Sent: Thu, 17 March, 2011 10:06:11 AM
Subject: Re: [SciPy-User] Large banded matrix least squares solution
On 03/16/2011 03:02 PM, Charles R Harris wrote:
>
>
>On Wed, Mar 16, 2011 at 1:53 PM, J. David Lee <johnl@cs.wisc.edu>
wrote:
>
>Hello.
>>
>>I'm trying to find a least squares solution to a system Ax=b, where A
>>is
>>a lower diagonal, banded matrix. The entries of A on a given
diagonal
>>are all identical, with about 300 unique values, and A can be quite
>>large, on the order of 1e6 rows and columns.
>>
>>
So this is sort of a convolution? Do you need exact, or will somewhat
approximate do? I think you can probably do something useful with an
fft.
What I have is data from a detector that is passed through a shaping
amplifier that turns voltage steps into pulses. I've measured the
characteristic pulse shape, but now I'm interested to see if I can move
backwards from the shaped data to the detector data. The idea is that we
assume that there is a pulse at every time point and find the amplitude at
each point in time to match our raw data.
Here is an image of the detector's data (green), and the shaped data (blue):
http://mywebspace.wisc.edu/jdlee1/web/detector_and_shaped_data.png
David
scipy.sparse.linalg.lsqr works on smaller examples, up to a few
thousand
>>rows and columns, but not much larger. It is also very time consuming
>>to
>>construct A, though I'm sure there must be a fast way to do that.
>>
>>Given the amount of symmetry in the problem, I suspect there is a
>fast
>>way to calculate the result, or perhaps another way to solve the
>>problem
>>entirely.
>>
>>
Chuck
> _______________________________________________ SciPy-User mailing list
>SciPy-User@scipy.org http://mail.scipy.org/mailman/listinfo/scipy-user
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.scipy.org/pipermail/scipy-user/attachments/20110316/0c61913d/attachment.html
More information about the SciPy-User
mailing list