[Date Index]
[Thread Index]
[Author Index]
global fit
*To*: mathgroup at smc.vnet.net
*Subject*: [mg57435] global fit
*From*: "Pascal" <Pascal.Plaza at ens.fr>
*Date*: Sat, 28 May 2005 05:38:58 -0400 (EDT)
*Sender*: owner-wri-mathgroup at wolfram.com
Hi,
Here is a fascinating problem:
B is a large data matrix, typically 500x60. Each line represents the
variations of a given physical quantity as a function of time. There
are here 60 different times.
The problem is to fit all the lines of B with a linear combination of a
reduced number (say 5) of base functions: f1[t], f2[t]...
If A is the 5x60 matrix A[[i,j]] = fi[tj], I have to find an X matrix
(500x5) such that X.A is as least-squares close to B as possible.
At this point the solution is just X = B.PseudoInverse[A]
It gets more interesting when the base functions depend non-linearly on
a few parameters: a, b, c...
Now the problem is to find X and a, b, c... such that X.A[a,b,c...]is
the best fit to the data matrix B.
I built a function of a, b, c... returning the 2-norm of X.A-B , after
calculating A with parameters a, b, c... and estimating X with
B.PseudoInverse[A]
Then I tried to use FindMinimum on this function. I entered a very good
starting point but the Kernel rapidly uses all the memory available and
shuts down.
Does anyone has a suggestion, maybe with a completely diffrent method?
Thanks.
Pascal.
Prev by Date:
**Re: Integration under Mathematica 5.0**
Next by Date:
**FindRoot: Failed to converge to the requested accuracy - CORRECTION**
Previous by thread:
**Re: Complex Oddity**
Next by thread:
**Re: global fit**
| |