等式を入力して制約ブロックの作成

<< 目次を表示 >>

ページ位置:  SysMLのモデリング > パラメトリック図の作成支援 >

等式を入力して制約ブロックの作成

SysMLの制約ブロックを作成する際に、パラメータを等式として指定することで、関係するパラメータを効率よく作成できます。制約ブロックの編集ダイアログを利用します。

入力された等式の内容が解釈され、パラメータが抽出されます。

 

 

利用手順:  

コンテキストメニュー

制約ブロック要素を右クリックし、「制約ブロックの編集」を選択

その他

ツールボックス内の制約ブロック要素をドラッグし、ダイアグラム内にドロップ

 

 

等式の解釈とパラメータの生成

次の例は、制約としていくつかの等式を入力した状態です。3つの等式には、合計で5つのパラメータが含まれています。等式を入力すると、その等式に含まれるパラメータを自動的に抽出し、追加対象にします。 パラメータの一覧の書くパラメータの先頭にある '+' マークは、現在モデル内には存在せず、追加対象であることを示します。

 

 

 

閉じるボタンを押すと、次のようなメッセージボックスが表示され、パラメータを追加するかどうか選択します。「はい」を押すとパラメータがモデル内に追加されます。この方法以外に、制約ブロックの編集ダイアログ内の一覧に表示されているパラメータを右クリックして「生成」を選択することで、個別に指定することも可能です。

 

 

 

この例では、追加した結果は次のようになります。

 

 

 

必須ではないパラメータの削除

先の例で、制約ブロックの編集ダイアログを開き直し、以下の制約を削除したとします。

 

    lossPower = f * v_rel

 

'lossPower'パラメータは、必須ではないパラメータとして表示されます。

 

 

 

 

既存のパラメータと等式のパラメータを結びつける

先ほどの例で、入力済みの等式を変更する場合を考えます。例として

 

    f = d * v_rel

 

を、以下のように変更します。

 

    f = distance * v_rel

 

この変更の結果、以下の内容が発生します。

 

 

ここで、パラメータ 'd' を削除して、新たにパラメータ 'distance' を作成するという選択肢もあります。しかし、パラメータを既に他の図で利用している場合には、その図で利用されている内容にも削除が影響します。そのため、パラメータ'd' の名前を変更し、'distance'に変えるということができます。パラメータ'd'を右クリックし、「名前の変更: 'd' → 'distance'」を選択してください。

 

 

関数と追加対象外のパラメータ

等式に関数表現を利用する場合には、関数の名前に続いて括弧を記述する必要があります。

また、関数の引数を追加対象のパラメータとして認識させたくない場合には、「追加対象外のパラメータ」ボタンを押して指定できます。

 

例:

例えば、等式I 'r = cos(time)' を入力し、関数の引数 'time' を追加対象外にしたい状況で、指定が必要です。

 

 

 

制約ブロックの合成

次の例では、制約ブロックKには制約は定義されていません。しかし、3つの制約ブロックK1, K2, K1TimesK2を持っています。制約ブロックKには5つのパラメータが定義されています。

 

 

この制約ブロックKのパラメトリック図は次のようになるとします。

 

 

このような場合に、制約ブロックを対象に制約ブロックの編集ダイアログを開くと、以下のように表示されます。

 

 

制約プロパティ要素欄の項目を選択すると表示される ボタンを押すと、SysML制約プロパティとパラメータの結びつけダイアログが表示され、関係を定義することができます。