カスタム単位データベースの取り扱い
Simulink® モデルでは、単位データベースから単位を指定します。単位データベースは、次の単位系の単位で構成されます。
- SI— 国際単位系
- SI (extended)— 国際単位系 (拡張)
- English— 英語単位系
- CGS— センチメートル・グラム・秒単位系
既定の設定では、Simulink は showunitslist 関数を使用してリストされている単位と単位系のみをサポートします。システム全体のレベルで他の単位系から追加の単位を導入し、それらの新しい単位を showunitslist を使用してリストされている単位と同様に使用するには、次の関数を使用して新しい単位データベースを作成し、読み込みます。
- createCustomDBFromExcel— カスタム単位データベースの定義が含まれる Excel® スプレッドシートからカスタム単位データベース ファイルを作成します。サポートされているすべてのプラットフォームで、関数- createCustomDBFromExcelは- .xlsファイルおよび- .xlsxファイルをサポートします。
- rehashUnitDBs— MATLAB® パスで単位データベース ファイルを再ハッシュすることにより、カスタム単位データベースを読み込みます。
カスタム単位スプレッドシート形式
スプレッドシートには任意の順序で以下の列が含まれていなければなりません。
- name — - @、- *、- /、- ^、- (,)、- +、- \、- "、- '、- {、- }、- [、- ]、- <、- >、- &、- -、- ::および空白を除く任意のグラフィカル Unicode® 文字を使用した単位名。
- symbol — - @、- *、- /、- ^、- (,)、- +、- \、- "、- '、- {、- }、- [、- ]、- <、- >、- &、- -、- ::および空白を除く任意のグラフィカル Unicode 文字を使用した単位の記号。
- asciiSymbol — ASCII での単位の記号。 
- displayName — LaTeX 形式でモデルに表示される単位の名前。 
- definitionExpression — 7 つの基本 SI 単位など、事前定義された単位に関する単位の定義。 
- conversionFactor — 単位とその定義間の変換係数。 
- conversionOffset — 単位とその定義間の変換オフセット。 
- physicalQuantity — 有効な物理量。 - showunitslistでテーブル「Physical Quantities」を参照してください。
- provenance — オプションの列。コンマで区切った来歴のリスト。 
スプレッドシートを開発する際は以下のガイドラインに従います。
- 入力スプレッドシートに複数のワークシートが含まれる場合、接頭辞 - unit、- physicalQuantity、または- provenanceを使用してワークシートに名前を付けなければなりません。
- 1 つのワークシートに接頭辞の複数のインスタンスがある場合、関数はすべてのワークシートを使用してデータベースを作成します。 - unit— 単位の作成
- physicalQuantity— 物理量の作成
- provenance— 来歴の作成
 
オプションで、入力スプレッドシートの別のワークシートで物理量を定義できます。物理量を定義するワークシートには以下の列が任意の順序で含まれます。
- name — - @、- *、- /、- ^、- (,)、- +、- \、- "、- '、- {、- }、- [、- ]、- <、- >、- &、- -、- ::および空白を除く任意のグラフィカル Unicode 文字を使用した物理量名。
- definitionExpression — 事前定義された物理量に関する物理量の定義。 
- provenance — オプション。コンマで区切った物理量来歴のリスト。 
オプションで、入力スプレッドシートの別のワークシートに来歴を定義することもできます。来歴を定義するワークシートには以下の列が任意の順序で含まれます。
- identifier — 来歴の識別子 
- title — 来歴のタイトル 
- subTitle — 来歴のサブタイトル 
- organization — 来歴の組織 
- fullName — 来歴の完全名 
- urlList — 来歴の URL リンクのリスト 
- edition — 来歴のエディション 
- year — 来歴の年 
Excel スプレッドシートでのカスタム単位の定義
最初に、カスタム単位スプレッドシート形式のガイドラインに従って Excel スプレッドシートを作成します。次のように、1 行あたり 1 つの単位定義を使用します。

このスプレッドシートを unitsDB.xlsx などのファイルに保存します。その後、データベースを作成してそれを読み込むことができます。
カスタム単位データベースの作成と読み込み
この例では、カスタム単位データベースを作成してから、それを読み込む方法を説明します。
この例に含まれるスプレッドシートを使用してデータベースを作成します。
createCustomDBFromExcel('unitsDB.xlsx')関数は unitsDB.slunitdb.mldatx を現在のフォルダーに作成します。
新しい単位データベースをメモリに読み込みます。
rehashUnitDBs
新しいデータベースが読み込まれたことを確認するには、slex_customunits モデルを開き、任意の出力端子にカスタム単位を適用します。
slex_customunits