Substituting a value to a syms function in a matrix?
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
S Priya
am 20 Feb. 2022
Beantwortet: Walter Roberson
am 20 Feb. 2022
I have a 4x4 matrix
A=
[E11e, 0, 0, 0]
[ 0, E11e, 0, 0]
[ 0, 0, E11e, 0]
[ 0, 0, 0, 0.5*E11e]
where Elle is a symbolic function....(syms E11e)
And I need to substitute the value of Elle as 4.3287e+08.
How should I do it?
0 Kommentare
Akzeptierte Antwort
Weitere Antworten (1)
Walter Roberson
am 20 Feb. 2022
compare:
syms E11e(t)
A1 = [
E11e, 0, 0, 0
0, E11e, 0, 0
0, 0, E11e, 0
0, 0, 0, str2sym('0.5')*E11e ]
syms E11e
A2 = [
E11e, 0, 0, 0
0, E11e, 0, 0
0, 0, E11e, 0
0, 0, 0, str2sym('0.5')*E11e ]
Notice that the output for the symbolic function case always includes the names of the symbolic function parameters. As you do not show that in your symbol is a symbolic variable rather than a symbolic function.
The replacement method is the same either way:
B1 = subs(A1, E11e, str2sym('4.3287e+08'))
B2 = subs(A2, E11e, str2sym('4.3287e+08'))
It would be more common to,
subs(A2, E11e, 4.3287e+08)
This has a slightly different meaning than using str2sym() would have: when you use the numeric constant then by default the constant is converted to a rational value (or rational combined with a square root or π); when you use str2sym() like I used there, then a software floating-point number is used.
0 Kommentare
Siehe auch
Kategorien
Mehr zu Calculus finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!