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 = 1×5 logical array
1 1 0 1 0
配列の各要素がタイプ 'integer | real' であるかどうかをチェックします。
TF = isSymType(N,'integer | real')TF = 1×5 logical array
1 1 0 1 0
配列の各要素がタイプ 'number' であるかどうかをチェックします。
TF = isSymType(N,'number')TF = 1×5 logical array
1 1 0 1 1
配列の各要素がタイプ 'constant' であるかどうかをチェックします。
TF = isSymType(N,'constant')TF = 1×5 logical array
1 1 1 1 1
シンボリック式の最上位の演算子が、'plus' または 'power' などの特定のタイプであるかどうかを判別します。
シンボリック式を作成します。
syms x
expr = x^2 + 2*x - 1expr =
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 = 1×3 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
入力引数
シンボリック オブジェクト。シンボリック式、シンボリック関数、シンボリック変数、シンボリック数、またはシンボリック単位として指定します。
シンボリック型。大文字と小文字を区別するスカラー 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') |
| 論理式 |
|
|
| 方程式および不等式 |
|
|
| サポートされていないシンボリック型 |
|
関数タイプ。'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を返します。
入力変数。シンボリック変数またはシンボリック配列として指定します。
バージョン履歴
R2019a で導入
参考
symFunType | hasSymType | symType | sym | syms
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Web サイトの選択
Web サイトを選択すると、翻訳されたコンテンツにアクセスし、地域のイベントやサービスを確認できます。現在の位置情報に基づき、次のサイトの選択を推奨します:
また、以下のリストから Web サイトを選択することもできます。
最適なサイトパフォーマンスの取得方法
中国のサイト (中国語または英語) を選択することで、最適なサイトパフォーマンスが得られます。その他の国の MathWorks のサイトは、お客様の地域からのアクセスが最適化されていません。
南北アメリカ
- América Latina (Español)
- Canada (English)
- United States (English)
ヨーロッパ
- 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)