- Write a function that defines the rate equations. The system should now look like z' = f(c,z), where z = [A;v]. Write your function file so that it takes c and a vector z as inputs, and returns a vector dz that represents the derivatives ([A';v'])
- Use ode45 to solve the system, giving a function handle to you function from step 2 as input, as well as the vector of start and end values for c and the initial conditions z0 = [A0;v0].
- Extract the components of the solution returned by ode45 to plot as a function of c (also returned by ode45). (If A and v are on the same scale, you could just do plot(c,z))
Basic ODE question
6 views (last 30 days)
Show older comments
So...it's been quite a while since I solved any systems of ODEs and I am admittedly very rusty. I am hoping there is a simple answer to this question:
I have a coupled system of ODEs:
dA/dc=-0.5*(2-v)*(1-v^2)/(1-v)
and
dv/dc=-1.5*(5-v)*(1-v^2)/(3-v)
Solve from c=[0 1]
Initial conditions: Ao=100, vo=0.5
How can I set this up in a Matlab function? Thanks for any advice!
0 Comments
Accepted Answer
Matt Tearle
on 5 Mar 2011
Your question is mainly about step 1. So write a function file
function dz = functionname(c,z)
dz = zeros(size(z));
% extract components of z (ie A & c)
% define dz(1) according to the equation for dA/dc
% define dz(2) according to the equation for dv/dc
0 Comments
More Answers (3)
SHOBHIT KUMAR
on 9 Jun 2019
can we not just do this and find the solution from gtaph and get the answer?
sol=dsolve('Da=-0.5*(2-v)*(1-v^2)/(1-v)','a(0)=100','c');
ezplot(sol,[-2 2])
hold on;
s=dsolve('Dv=-1.5*(5-v)*(1-v^2)/(3-v)','v(0)=0.5','c');
ezplot(s,[-2 2])
Please answer
0 Comments
jagathi medempudi
on 27 Aug 2020
What is the mat lab command for solving differential equation
Select one:
a. differentiation
b. dsolve
c. int
d. diff
0 Comments
See Also
Categories
Find more on Ordinary Differential Equations in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!