Effacer les filtres
Effacer les filtres

How do i write this differential equation in matlab?

1 vue (au cours des 30 derniers jours)
Augustine Nashwan Aziz Al-Zebary
Commenté : Star Strider le 13 Mai 2021
global R C u
R = 10e3;
C = 3.3e-6;
tau = R*C;
u = @(t) 10*(t>tau);
The initial value is uC(0)=0
I want to write the diff equation in a function and use ode45 to solve it. Can someone please help me? i've tried everything but i dont understand how to write it into a function and how to solve it. Would be really appreciated!

Réponse acceptée

Star Strider
Star Strider le 12 Mai 2021
There are several options, including using the numerical solvers.
This approach uses the Symbolic Math Toolbox —
syms C R uc(t) u
eqn = R*C*diff(uc)+uc == u;
uc(t) = dsolve(eqn, uc(0)==0)
uc(t) = 
uc = subs(uc,{C,R,u},{1E-9,1E+3,sin(2*pi*t)})
uc(t) = 
figure
fplot(uc, [0 10])
grid
.
  5 commentaires
Augustine Nashwan Aziz Al-Zebary
I got it working, big thanks for the help!
Star Strider
Star Strider le 13 Mai 2021
As always, my pleasure!

Connectez-vous pour commenter.

Plus de réponses (0)

Community Treasure Hunt

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

Start Hunting!

Translated by