How do i write this differential equation in matlab?

1 Ansicht (letzte 30 Tage)
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!

Akzeptierte Antwort

Star Strider
Star Strider am 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 Kommentare
Augustine Nashwan Aziz Al-Zebary
I got it working, big thanks for the help!
Star Strider
Star Strider am 13 Mai 2021
As always, my pleasure!

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Community Treasure Hunt

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

Start Hunting!

Translated by