Main Content

symFunType

シンボリック オブジェクトの関数型の決定

R2019a 以降

説明

s = symFunType(symObj) は、シンボリック オブジェクトの関数型を返します。

  • symObj がシンボリック関数またはシンボリック式の場合、symFunType は最上位関数名または symObj の演算子を返します。たとえば、syms x; symFunType(2*sin(x))"times" を返します。

  • symObj がシンボリック関数またはシンボリック式ではない場合、symFunTypesymType と同じ出力を返します。たとえば、symFunType(sym('2'))"integer" を返します。

すべて折りたたむ

シンボリック関数および式の配列を作成します。

syms f(x)
expr = [f(x) sin(x) exp(x) int(f(x)) diff(f(x))]
expr = 

(f(x)sin(x)exf(x) dxx f(x))

各配列要素の関数型を決定します。

s = symFunType(expr)
s = 1x5 string
    "f"    "sin"    "exp"    "int"    "diff"

2 つのシンボリック式を作成します。式の最上位の算術演算子を決定します。

syms x
expr1 = x/(x^2+x+2);
expr2 = x + 1/(x^2+x+2);
s1 = symFunType(expr1)
s1 = 
"times"
s2 = symFunType(expr2)
s2 = 
"plus"

演算子で区切られる項を返すには、childrenを使用します。

terms1 = children(expr1)
terms1=1×2 cell array
    {[x]}    {[1/(x^2 + x + 2)]}

terms2 = children(expr2)
terms2=1×2 cell array
    {[x]}    {[1/(x^2 + x + 2)]}

シンボリック方程式および不等式の配列を作成します。

syms x y
eqns = [x+y==2, x<=5, y>3]
eqns = (x+y=2x53<y)

各配列要素の最上位の比較演算子を決定します。

s = symFunType(eqns)
s = 1x3 string
    "eq"    "le"    "lt"

入力引数

すべて折りたたむ

シンボリック オブジェクト。シンボリック式、シンボリック関数、シンボリック変数、シンボリック数、またはシンボリック単位として指定します。

出力引数

すべて折りたたむ

シンボリック関数型。string 配列として返されます。symObj がシンボリック関数またはシンボリック式の場合、symFunType は最上位関数名または symObj の演算子を返します。次の表に、さまざまなシンボリック オブジェクトの出力値を示します。

シンボリック関数型返される出力入力の例
シンボリック数学関数"sin""exp""fourier" など — シンボリック式の最上位のシンボリック数学関数の名前syms f(x); symFunType([sin(x), exp(x), fourier(f(x))])
未割り当てのシンボリック関数

"f""g" など — 未割り当てのシンボリック関数

syms f(x) g(x); symFunType([f, g(x+2)])
算術演算子
  • "plus" — 加算演算子 + および減算演算子 -

  • "times" — 乗算演算子 * および除算演算子 /

  • "power" — べき乗または指数演算子 ^ および平方根演算子 sqrt

  • syms x; symFunType(x^2-x)

  • syms x; symFunType(2*x^2)

  • syms x; symFunType([x^2 sqrt(x)])

方程式および不等式
  • "eq" — 等号演算子 ==

  • "ne" — 不等演算子 ~=

  • "lt" — 左不等演算子 < または右不等演算子 >

  • "le" — 小なりイコール演算子 <= または大なりイコール演算子 >=

  • syms x y; symFunType(x==y)

  • syms x y; symFunType(x~=y)

  • syms x y; symFunType(x<y)

  • syms x y; symFunType(x>=y)

論理演算子と論理定数
  • "or" — 論理 OR 演算子 |

  • "and" — 論理 AND 演算子 &

  • "not" — 論理 NOT 演算子 ~

  • "xor" — 排他的論理和演算子 xor

  • "logicalconstant" — シンボリック論理定数 symtrue および symfalse

  • syms x y; symFunType(x|y)

  • syms x y; symFunType(x&y)

  • syms x; symFunType(~x)

  • syms x y; symFunType(xor(x,y))

  • symFunType([symtrue symfalse])

数値
  • "integer" — 整数

  • "rational" — 有理数

  • "vpareal" — 可変精度の浮動小数点実数値

  • "complex" — 複素数

  • symFunType(sym('-1'))

  • symFunType(sym('1/2'))

  • symFunType([sym('1.5') vpa('3/2')])

  • symFunType(sym('1+2i'))

定数

"constant" — シンボリック数学定数

symFunType(sym([pi catalan]))
変数

"variable"

symFunType(sym(x))
単位

"unit"

symFunType(symunit('m'))
サポートされていないシンボリック型"unsupported" 

バージョン履歴

R2019a で導入