Main Content

displayFormula

string からのシンボリック式の表示

R2019b 以降

説明

displayFormula(symstr) は演算を評価せずに string symstr からシンボリック式を表示します。symstr で指定されるすべてのワークスペース変数はそれぞれの値で置き換えられます。

displayFormula(symstr,old,new) は式または変数 old のみを new で置き換えます。old 以外の式または変数はそれぞれの値で置き換えられません。

すべて折りたたむ

3 行 3 列の行列を作成します。この行列をスカラー係数 K^2 で乗算します。

syms K A
A = [-1, 0, 1; 1, 2, 0; 1, 1, 0];
B = K^2*A
B = 

(-K20K2K22K20K2K20)

結果に、要素単位で実行される乗算が自動的に表示されます。

displayFormula を使用し、演算を評価せずに乗算式を表示します。式を string として入力します。string の変数 A はその値で置き換えられます。

displayFormula("F = K^2*A")

F=K2(-101120110)

3 行 3 列の行列と 3 行 1 列のベクトルを作成します。行列とベクトルを乗算するシンボリック方程式を作成します。

syms A [3 3]
syms v B [3 1]
eqn = B == A*v
eqn = 

(B1=A1,1v1+A1,2v2+A1,3v3B2=A2,1v1+A2,2v2+A2,3v3B3=A3,1v1+A3,2v2+A3,3v3)

結果は、行列とベクトルの要素の結合箇所で乗算が実行されることを示します。

displayFormula を使用し、要素を結合せずに乗算式を表示します。式を string として入力します。

displayFormula("B == A*v")

(B1B2B3)=(A1,1A1,2A1,3A2,1A2,2A2,3A3,1A3,2A3,3)(v1v2v3)

微分方程式を記述する string を定義します。

S = "m*diff(y,t,t) == m*g-k*y";

微分方程式と追加のテキストを結合する string 配列を作成します。テキストとともに式を表示します。

symstr = ["'The equation of motion is'"; S;"'where k is the elastic coefficient.'"];
displayFormula(symstr)
The equation of motion is

m2t2 y=mg-ky

where k is the elastic coefficient.

シンボリック式を表す string S を作成します。

S = "exp(2*pi*i)";

S が含まれる別の string symstr を作成します。

symstr = "1 + S + S^2 + cos(S)"
symstr = 
"1 + S + S^2 + cos(S)"

displayFormula を使用し、演算を評価せずに symstr を式として表示します。symstr 内の S はその値で置き換えられます。

displayFormula(symstr)
1+e2πi+e2πi2+cos(e2πi)

string S および symstr をシンボリック式として評価するには、str2sym を使用します。

S = str2sym(S)
S = 1
expr = str2sym(symstr)
expr = S+cos(S)+S2+1

subs を使用して、変数 S にその値を代入します。double を使用して倍精度で結果を評価します。

double(subs(expr))
ans = 3.5403

係数 ab および c をもつ 2 次式を表す string を定義します。

syms a b c k
symstr = "a*x^2 + b*x + c";

ak で置き換えて、2 次式を表示します。

displayFormula(symstr,a,k)
kx2+bx+c

ab、および c23、および -1 でそれぞれ置き換えて、2 次式を再度表示します。

displayFormula(symstr,[a b c],[2 3 -1])
2x2+3x-1

2 次式を解くには、str2sym を使用して string をシンボリック式に変換します。solve を使用して 2 次方程式の零点を求めます。

f = str2sym(symstr);
sol = solve(f)
sol = 

(-b+b2-4ac2a-b-b2-4ac2a)

subs を使用して、解の ab、および c23、および -1 とそれぞれ置き換えます。

solValues = subs(sol,[a b c],[2 3 -1])
solValues = 

(-174-34174-34)

入力引数

すべて折りたたむ

シンボリック式を表す string。文字ベクトル、string スカラー、文字ベクトルの cell 配列、または string 配列として指定します。

シンボリック式を表す string を string 配列として通常の (一重引用符に囲まれた) テキストと結合することもできます。例については、微分方程式の表示を参照してください。

置き換える式または変数。文字ベクトル、string スカラー、文字ベクトルの cell 配列、string 配列、シンボリック変数、シンボリック関数、シンボリック式、またはシンボリック配列として指定します。

新しい値。数値、文字ベクトル、string スカラー、文字ベクトルの cell 配列、string 配列、シンボリック数、シンボリック変数、シンボリック式、またはシンボリック配列として指定します。

バージョン履歴

R2019b で導入

参考

| | | |