Substituting a syms variable with another syms variable equation

1 回表示 (過去 30 日間)
Philosophaie
Philosophaie 2013 年 6 月 29 日
Error code:
??? Subscript indices must either be real positive integers or logicals.
Error in ==> EigenValuesVectors4x4ToTensorFactor at 10
f=sym(zeros(4,4,4))
Code:
syms T11 T12 T13 T14 T21 T22 T23 T24 T31 T32 T33 T34 T41 T42 T43 T44
f=sym(zeros(4,4,4))
%MatLab does not like the substitution of a syms variable with another syms variable equation. Is there any way around this?
%h(i,k) is a 4x4 matrix with syms formula in each cell
ta13=solve(h(1,3),'T14')
ta14=solve(h(1,4),'T14')
tb11=subs(h(1,1),'T14',ta14)
tb12=subs(h(1,2),'T14',ta14)
  1 件のコメント
Walter Roberson
Walter Roberson 2013 年 6 月 29 日
Is it possible that you had code before that which creates a variable with the name "sym" ?
which sym

サインインしてコメントする。

回答 (2 件)

Philosophaie
Philosophaie 2013 年 6 月 29 日
No the "sym" in "f=sym(zeros(4,4,4))" creates "f" as a symbolic zero matrix.
  1 件のコメント
Walter Roberson
Walter Roberson 2013 年 6 月 29 日
It cannot both create "f" as a symbolic matrix and complain about a subscript.
Your posted error message refers to line 10, but the "f=" line it is complaining about is at most line 3. What is before that in the code ?

サインインしてコメントする。


Walter Roberson
Walter Roberson 2013 年 6 月 30 日
Please post the result of
which sym
class(sym) %might generate error message
Also, what does
sym('abc')
return?

カテゴリ

Help Center および File ExchangeAssumptions についてさらに検索

製品

Community Treasure Hunt

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

Start Hunting!

Translated by