Function & Plot?
1 vue (au cours des 30 derniers jours)
Afficher commentaires plus anciens
I am trying to solve an example that wants me to solve the equation(c=c-(k*c*t)) and plot the graph between c and t, knowing that t is the step size which in my case is 0.15, and k is constant=0.3, and c=15 initially, I am looking to create a function that calculate the decaying rate with time I have tried the following code: function Decayrate ()
k=0.3;
c=15;
t=(0:0.15:2.1);
c=c-(k*c*t)
plot (t,c)
but the problem is that it when applying the equation the t that going to be used is the the t value and not the step size (0.15), so how can I apply the step size instead of t to the equation, and plot c with t at the same time knowing that at t=0 c=15?
1 commentaire
Eng. Fredius Magige
le 17 Oct 2015
Hi t=0, c=0.15 Noted that equation c is implicit? I think you have to use while function as long you known the boundary, (how far it has to go!!!!!!)
Réponses (1)
Martin Schätz
le 17 Oct 2015
From what i did understand, if c=15 initialy, you have to change it every time. so the newc=c-(k*c*t) and also t will change every time. So i thing the code should look like this:
clear all
k=0.3;
c=15;
t=(0:0.15:2.1);
c=zeros(1,15)
Setup initial c to 15
c(1)=15;
for every next c, i will use the previous c and right t
for i=2:15
c(i)=c(i-1)-(k*c(i-1)*t(i))
end
figure
plot(t,c), axis tight
xlabel('t')
ylabel('c')
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/178751/image.jpeg)
2 commentaires
Steven Lord
le 17 Oct 2015
That statement of your question is much clearer. If you want to solve a differential equation numerically first take a look at ODE45.
Voir également
Catégories
En savoir plus sur Graphics Performance dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!