I have a function dA/dt= k(2-2.374A)/2.12
can I use ode45 here?

 채택된 답변

adrooney
adrooney 2014년 10월 5일
편집: Jan 2014년 10월 5일

0 개 추천

Thanks for the answer, also If I have a quadratic expression on the rhs will this work. I tried to write like this. will this work too?
X=zeros (1,1000);
time =0:0.05:50;
k=0.095;
for i=2:1000
X(i) = (k*(0.305*X(i-1)^2)-(0.554X(i-1))+0.249)*0.05)+X(i-1);
end
plot (time,X)
hold on
plot(time25, alpha25)
end

댓글 수: 2

Jan
Jan 2014년 10월 5일
I've formatted the code.
I guess there is a missing * in "0.554X".
I do not see a connection to the original question - where is teh ODE45 call?
adrooney
adrooney 2014년 10월 5일
I'll explain you the actual problem. There is function dX/dt = k*f1(t)*f2(t) I substituted the equations of f1 and f2 and ended up with an quadratic equation. dX/dt = k*((0.305*X^2)-(0.554*X)+0.249)
now I need to extrapolate X with different values of time t. I used a for loop to extrapolate with increments of 0.05hr. So how should I approach the problem and I wrote the above code for the values of extrapolated values of X. Now when I run the code it says error in using plot. vector length must be equal. I don't know how to resolve this. Please help me with this and it would be of great help .:) Thank you

댓글을 달려면 로그인하십시오.

추가 답변 (1개)

Titus Edelhofer
Titus Edelhofer 2014년 10월 5일
편집: Titus Edelhofer 2014년 10월 5일

2 개 추천

Hi Dinesh,
yes you can. Implement the right hand side of your equation as a function of the form
function dA = f(t,A)
and pass that to ode45.
Titus

카테고리

태그

질문:

2014년 10월 5일

댓글:

2014년 10월 5일

Community Treasure Hunt

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

Start Hunting!

Translated by