Effacer les filtres
Effacer les filtres

How to Solve with subs

6 vues (au cours des 30 derniers jours)
Kyle Langford
Kyle Langford le 18 Fév 2022
Commenté : Kyle Langford le 25 Fév 2022
I am trying to first solve for Tau first, and then plug the known value back in and solve for y(t) @ 1.5 seconds.
it is given that @ y(1.2)=80.
clear;clc;
syms T %Tau
syms yt
t=1.2;
y0=0;
KA=100; %steady response
U_t=(y0-KA)*exp(-t/T); %transient response
y_t=80; %given that y(t), if y(1.2)=80
eq3_5a=y_t==KA+U_t
Tau=vpasolve(eq3_5a,T)
subs(U_t,T,Tau)
eq3_5b=yt==KA+U_t
solve(eq3_5b,yt)

Réponse acceptée

VBBV
VBBV le 18 Fév 2022
clear;clc;
syms T yt
t=1.2;
y0=0;
KA=100; %steady response
U_t=(y0-KA)*exp(-t/T) %transient response
U_t = 
y_t=80; %given that y(t), if y(1.2)=80
eq3_5a=y_t==KA+U_t
eq3_5a = 
Tau=vpasolve(eq3_5a,T)
Tau = 
0.74560192147153417284863926581669
subs(U_t,T,Tau)
ans = 
eq3_5b=yt==KA+U_t
eq3_5b = 
Yt = solve(eq3_5b,yt)
Yt = 
vpa(subs(Yt,T,1.5),4)
ans = 
55.07
  5 commentaires
VBBV
VBBV le 18 Fév 2022
Modifié(e) : VBBV le 18 Fév 2022
clear;clc;
syms T yt t
% t=1.2;
y0=0;
KA=100; %steady response
U_t= (y0-KA)*exp(-t/T) %transient response
U_t = 
y_t=80; %given that y(t), if y(1.2)=80
eq3_5a=y_t==KA+U_t;
Tau=vpasolve(subs(eq3_5a,t,1.2),T)
Tau = 
0.74560192147153417284863926581669
subs(U_t,T,Tau);
eq3_5b=yt==KA+U_t
eq3_5b = 
Yt = solve(eq3_5b,yt);
vpa(subs(Yt,[T t],[Tau 1.5]),4)
ans = 
86.63
Ok, It is possible to Subs 2 variables like above
Kyle Langford
Kyle Langford le 25 Fév 2022
Sweet. Thanks! I tried to do something similar using {} but it didn't work. I see i was using the wrong characters.

Connectez-vous pour commenter.

Plus de réponses (0)

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by