# I'd like to force my exponential fit to start at [0 0]

33 views (last 30 days)

Show older comments

So, I've got some noisy data. When averaged, the data fit nicely along a double exponential fit, starting off with with a positive slope that decays to near 0 (horizontal line).

However, when I want to fit the same curve to the individual traces, things aren't so neat. Sometimes, the slope is initially negative and shallows out, other times, it's flat and then increases exponentially at the end.

How can I force the exponential fit that I want? It seems like 'Startpoint' is a good starting point (heh).

Here's my code:

[u,gof] = fit(time,y,'exp2');

And this doesn't seem to work:

[u,gof] = fit(time,y,'exp2','Startpoint',[0 0]);

??? Index exceeds matrix dimensions.

Any thoughts would be appreciated.

Thanks, Stefan

##### 0 Comments

### Answers (1)

Joe S
on 24 Apr 2013

##### 3 Comments

Walter Roberson
on 24 Apr 2013

For any exponential function, f(x+1)/f(x) is always a constant (dependent on the exponential being used.) If any f(x+1) was exactly 0 for finite x, then f(x) would have to have been 0 as well, and by induction f(x) would have to be identical to 0. Therefore no exponential function can ever be exactly 0 at any finite location.

You can force an exponential to fit exactly through any finite non-zero location, but not through 0.

### See Also

### Categories

### Community Treasure Hunt

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

Start Hunting!