How to call differential equations inside function, and solve it ?

2 views (last 30 days)
I am having a code, which has symbolic variables. First,I am creating a system of coupleld differential equations through loop and then applying ODE15S to solve it. The equations are(one of the case)
function dCdT =solveode(t,C,A,T,L.......)
dCdt=zeros(6,1);
dCdT(1)=-C(1)*((3*A)/500 + (3*L)/1000 + (3*T)/500);
dCdT(2)=(3*C(1)^2)/500 - C(2)*((9*A)/1000 + (3*L)/1000 + (3*T)/500);
dCdT(3)=(3*C(1)*C(2))/1000 - C(3)*((3*A)/250 + (3*L)/1000 + (3*T)/500);
dCdT(4)=(3*C(2)^2)/1000 - C(4)*((3*A)/250 + (3*L)/1000 + (3*T)/500) + (9*C(1)*C(3))/500 + (3*C(1)*C(4))/500;
dCdT(5)=(3*C(1)*C(2))/250;
dCdT(6)=(3*C(2)^2)/500;
end
But these i have written manually. But i want to call them through a loop inside the function. I am trying to do this because, these set of differential equations would vary according to some other variable. Can some one suggest how to acheive this ?
  3 Comments
madhan ravi
madhan ravi on 11 Jan 2019
ok it's good that you have asked a new question but there is no need to close this question, leave it open.

Sign in to comment.

Answers (1)

madhan ravi
madhan ravi on 9 Jan 2019
Edited: madhan ravi on 9 Jan 2019
for A=A
ode45(...) so A changes in every iteration likewise vary the other parameters too
end
  3 Comments
P K
P K on 11 Jan 2019
Hello, since I couldn't apply this to my question i would start a new thread and put my question there.

Sign in to comment.

Categories

Find more on Symbolic Math Toolbox 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!