isSymType
説明
は、シンボリック オブジェクト TF
= isSymType(symObj
,type
)symObj
がタイプ type
である場合は logical 1
(true
) を返し、そうでない場合は logical 0
(false
) を返します。入力の type
は、大文字と小文字を区別する string スカラーまたは文字ベクトルでなければならず、論理式を含めることができます。たとえば、isSymType(sym('3'),'real & integer')
は logical 1
を返します。
symObj
がタイプ type
の最上位の演算子を使用したシンボリック式である場合、isSymType(symObj,type)
もまた logical 1
を返します。
例
シンボリック数と定数
シンボリック数を作成します。このシンボリック数がタイプ 'rational'
であるかどうかをチェックします。
a = sym('1/2'); TF = isSymType(a,'rational')
TF = logical
1
ここで、シンボリック数またはシンボリック定数を配列の要素に含めて、シンボリック配列を作成します。
N = [sym('1/2'), vpa(0.5), pi, vpa(pi), 1i]
N =
配列の各要素がタイプ 'real'
であるかどうかをチェックします。
TF = isSymType(N,'real')
TF = 1x5 logical array
1 1 0 1 0
配列の各要素がタイプ 'integer | real'
であるかどうかをチェックします。
TF = isSymType(N,'integer | real')
TF = 1x5 logical array
1 1 0 1 0
配列の各要素がタイプ 'number'
であるかどうかをチェックします。
TF = isSymType(N,'number')
TF = 1x5 logical array
1 1 0 1 1
配列の各要素がタイプ 'constant'
であるかどうかをチェックします。
TF = isSymType(N,'constant')
TF = 1x5 logical array
1 1 1 1 1
シンボリック式の最上位の演算子
シンボリック式の最上位の演算子が、'plus'
または 'power'
などの特定のタイプであるかどうかを判別します。
シンボリック式を作成します。
syms x
expr = x^2 + 2*x - 1
expr =
expr
の最上位の演算子がタイプ 'plus'
であるかどうかをチェックします。
TF = isSymType(expr,'plus')
TF = logical
1
expr
の最上位の演算子がタイプ 'power'
であるかどうかをチェックします。
TF = isSymType(expr,'power')
TF = logical
0
ここで、式でシンボリック平方根演算を実行します。
expr = sqrt(x^2 + 2*x - 1)
expr =
expr
の最上位の演算子がタイプ 'power'
であるかどうかをチェックします。
TF = isSymType(expr,'power')
TF = logical
1
特定の方程式の選択
右辺が定数である特定の方程式を選択します。
3 つのシンボリック方程式から成る配列を作成します。
syms r(t) x(t) y(t) eq1 = [x(t) == r(t)*cos(t), y(t) == r(t)*sin(t), r(t) == 5]
eq1 =
関数rhs
を使用して各方程式の右辺を選択します。各方程式の右辺がタイプ 'constant'
であるかどうかをチェックします。
TF = isSymType(rhs(eq1),'constant')
TF = 1x3 logical array
0 0 1
右辺が定数である簡約化された方程式を返します。
eq2 = eq1(TF)
eq2 =
複数の変数のシンボリック関数
syms
を使用して、複数の変数 f(x,y)
のシンボリック関数を作成します。未割り当てのシンボリック関数 f
がタイプ 'symfun'
であるかどうかをチェックします。
syms f(x,y) TF = isSymType(f,'symfun')
TF = logical
1
f
が厳密な変数 x
に依存するかどうかをチェックします。
TF = isSymType(f,'symfunOf',x)
TF = logical
0
f
が変数 [x y]
の厳密な順序に依存するかどうかをチェックします。
TF = isSymType(f,'symfunOf',[x y])
TF = logical
1
f
が変数 x
に依存するかどうかをチェックします。
TF = isSymType(f,'symfunDependingOn',x)
TF = logical
1
入力引数
symObj
— シンボリック オブジェクト
シンボリック式 | シンボリック関数 | シンボリック変数 | シンボリック数 | シンボリック単位
シンボリック オブジェクト。シンボリック式、シンボリック関数、シンボリック変数、シンボリック数、またはシンボリック単位として指定します。
type
— シンボリック型
スカラー string | 文字ベクトル
シンボリック型。大文字と小文字を区別するスカラー string または文字ベクトルとして指定します。入力 type
には論理式を含めることができます。値のオプションは以下のとおりです。
シンボリック型カテゴリ | string 値 | logical 1 を返す例 |
---|---|---|
数値 |
|
|
定数 | 'constant' — シンボリック数学定数 ('number' を含む) | isSymType([sym(pi) vpa(1i)],'constant') |
シンボリック数学関数 | 'vpa' 、'sin' 、'exp' 、その他 — シンボリック式の最上位のシンボリック数学関数 | isSymType(vpa(sym(pi)),'vpa') |
未割り当てのシンボリック関数 |
|
|
算術演算子 |
|
|
変数 | 'variable' — シンボリック変数 | isSymType(sym('x'),'variable') |
単位 | 'unit' — シンボリック単位 | isSymType(symunit('m'),'unit') |
式 | 'expression' — シンボリック式 (前述のすべてのシンボリック型を含む) | isSymType(sym('x')+1,'expression') |
論理式 |
|
|
方程式および不等式 |
|
|
サポートされていないシンボリック型 |
|
funType
— 関数タイプ
'symfunOf'
| 'symfunDependingOn'
関数タイプ。'symfunOf'
または 'symfunDependingOn'
として指定します。
'symfunOf'
は、symObj
が、配列vars
で指定される変数の厳密な順序に依存する未割り当てのシンボリック関数であるかどうかをチェックします。たとえば、syms f(x,y); isSymType(f,'symfunOf',[x y])
は logical1
を返します。'symfunDependingOn'
は、symObj
が、配列vars
で指定される変数に依存する未割り当てのシンボリック関数であるかどうかをチェックします。たとえば、syms f(x,y); isSymType(f,'symfunDependingOn',x)
は logical1
を返します。
vars
— 入力変数
シンボリック変数 | シンボリック配列
入力変数。シンボリック変数またはシンボリック配列として指定します。
バージョン履歴
R2019a で導入
参考
symFunType
| hasSymType
| symType
| sym
| syms
MATLAB コマンド
次の MATLAB コマンドに対応するリンクがクリックされました。
コマンドを MATLAB コマンド ウィンドウに入力して実行してください。Web ブラウザーは MATLAB コマンドをサポートしていません。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)