Piecewise function with function input?
5 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Jose Sarmento
le 27 Avr 2020
Commenté : Star Strider
le 28 Avr 2020
Hello, I'm trying something really simple but I can't seem to make it work on matlab. There's these functions:
I want to plot
and
between 0 and 2 ms. I've tried piecewise, using functions, syms, but I just can't never seem to make it work. Suggestions?
0 commentaires
Réponse acceptée
Star Strider
le 28 Avr 2020
I hope this is not homework. If it is, you cannot ethically use this solution.
Break it up into its component functions, then use logical indexing for the threshold condition:
f = 1E+3;
vr = 0.72;
tau = 1;
vi = @(t) sin(2*pi*f*t);
vd = @(t,vr) (1-vi(t)).*(vi(t)>vr);
vo = @(t) vd(t,vr).*exp(-t/tau);
t = linspace(0, 2, 150)*1E-3;
figure
plot(t, vi(t), t, vo(t))
grid
That ran without error. Check it to be certain it matches the functions.
4 commentaires
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Assumptions 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!