How do i fit an equation to a given curve?
    4 visualizaciones (últimos 30 días)
  
       Mostrar comentarios más antiguos
    
    Kyle
 el 2 de Feb. de 2014
  
    
    
    
    
    Comentada: Walter Roberson
      
      
 el 2 de Feb. de 2014
            I've been giving the following data.
t=[0:14]'; 
n=[105 118 139 164 189 214 240 265 290 316 330 348 363 369 373]';
and have been asked to fit the following two equations to this set of data.
1) N(t+1)= Nt=rNt
and
2) N(t+1)=Nt(1+r(1-Nt/k))
any advice on how to go about it. I can use polyfit and polyval to determine a fitted graph. but i have no idea how to relate it to the above equations. is there anyway i can determine an "r" value that will give me the best fitted results?
6 comentarios
Respuesta aceptada
  Walter Roberson
      
      
 el 2 de Feb. de 2014
        When
N(t+1) = (1+r)*N(t)
then
N(t) = (1+r)^t * N(0)
Take log...
log(N(t)) = t * log(1+r) + log(N(0))
This puts you in a position to do a linear fit to determine log(1+r), from which you can determine r.
4 comentarios
  Walter Roberson
      
      
 el 2 de Feb. de 2014
				p = polyfit(t, log(n), 1);
r = exp(p(1)) - 1;
N0 = exp(p(2));
plot(t, (1+r).^t * N0, 'b', t, n, 'k.')
Más respuestas (0)
Ver también
Categorías
				Más información sobre Interpolation en Help Center y File Exchange.
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!