Main Content

isUnit

入力内容がシンボリック単位かを判定

説明

tf = isUnit(expr) は、expr が単位、または単位の累乗の積であれば logical 1 (true) を返し、そうでない場合は logical 0 (false) を返します。

入力内容が単位かを判定

isUnit を使用して、式がシンボリック単位か判定します。

3*u.m がシンボリック単位かをテストします。ここで u = symunit です。3*u.m がシンボリック数 3 を含むため、関数 isUnit は logical 0 (false) を返します。

u = symunit;
isUnit(3*u.m)
ans =
  logical
   0

u.mu.mW、およびx*u.Hz が単位かをチェックします。ここで、u = symunit です。関数 isUnit は配列 [1 1 0] を返します。これは、最初の 2 つの式が単位であり、3 番目の式は単位ではないことを意味します。

syms x
units = [u.m u.mW x*u.Hz];
isUnit(units)
ans =
  1×3 logical array
   1   1   0

入力引数

すべて折りたたむ

入力。数値、ベクトル、行列または多次元配列、あるいはシンボリック数、変数、ベクトル、行列、多次元配列、関数または式として指定します。

ヒント

  • 1 は無次元単位であることを表します。したがって、isUnit(sym(1)) は logical 1 (true) を返します。

バージョン履歴

R2017a で導入