Using solution from vpasolve and syms for another function

조회 수: 1 (최근 30일)
Justin
Justin 2022년 11월 2일
댓글: Torsten 2022년 11월 2일
A =[ 0 0 0 1.0000 0 0
0 0 0 0 1.0000 0
0 0 0 0 0 1.0000
0 6.5000 -10.0000 -17.5000 0 0
-21.1185 18.1040 5.1540 -3.6920 -2.8128 0.3159
5.0000 -3.6000 0 0 0 -10.9545]
B = [ 0 0
0 0
0 0
26.5000 11.2000
5.5907 -1.6525
40.0000 57.3000]
C = [ 1 0 0 0 0 0
0 1 0 0 0 0
0 0 1 0 0 0]
syms T1 T2 T3 T4 T5 T6
T = [T1 T2 T3 T4 T5 T6];
d = -5;
G = [10 1 5];
vpasolve([T*A - d*T == G*C])
After solving for the values of T1 to T6, i want to use those values to solve for another equation, but when I input T1,T2... into the other equation, it returns the answer in terms of T1 - T6 instead of actual values
e = T*B
how do i get it to return the actual numbers instead of in terms of T1 etc.?

채택된 답변

KSSV
KSSV 2022년 11월 2일
A =[ 0 0 0 1.0000 0 0
0 0 0 0 1.0000 0
0 0 0 0 0 1.0000
0 6.5000 -10.0000 -17.5000 0 0
-21.1185 18.1040 5.1540 -3.6920 -2.8128 0.3159
5.0000 -3.6000 0 0 0 -10.9545] ;
B = [ 0 0
0 0
0 0
26.5000 11.2000
5.5907 -1.6525
40.0000 57.3000] ;
C = [1 0 0 0 0 0
0 1 0 0 0 0
0 0 1 0 0 0] ;
syms T1 T2 T3 T4 T5 T6
T = [T1 T2 T3 T4 T5 T6];
d = -5;
G = [10 1 5];
s = vpasolve([T*A - d*T == G*C]) ;
T = [double(s.T1) double(s.T2) double(s.T3) double(s.T4) double(s.T5) double(s.T6)];
e = T*B
e = 1×2
12.7215 13.2144
  댓글 수: 2
Torsten
Torsten 2022년 11월 2일
You don't need symbolic computations.
A =[ 0 0 0 1.0000 0 0
0 0 0 0 1.0000 0
0 0 0 0 0 1.0000
0 6.5000 -10.0000 -17.5000 0 0
-21.1185 18.1040 5.1540 -3.6920 -2.8128 0.3159
5.0000 -3.6000 0 0 0 -10.9545] ;
B = [ 0 0
0 0
0 0
26.5000 11.2000
5.5907 -1.6525
40.0000 57.3000] ;
C = [1 0 0 0 0 0
0 1 0 0 0 0
0 0 1 0 0 0] ;
d = -5;
G = [10 1 5];
T = ((A.'-d*eye(6))\(G*C).').';
e = T*B
e = 1×2
12.7215 13.2144

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Conversion Between Symbolic and Numeric에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!

Translated by