Valisと計算
Vali は、計算やドキュメント作成に使用できる、Block、Requirement、Analysis の設計パラメーターです。Vali には数値があり、さらにタイプ、単位、式、説明、最小/最大要件などの追加情報も含まれます。
Vali の作成
Block のプロパティを表示しているときに、ページ右上の
ボタンをクリックすると、この Block に Vali を作成できます。開いた Create Property ウィンドウで、作成したいプロパティのタイプを選択します。 Vali の場合は、Vali の Name(任意の名前、または Valitype 名)を入力し、Formula and unit(必須)と Display Unit(任意)を定義します。さらに、Add to Block フィールドを使用して、この Vali を追加したい Block を指定できます。
プロパティ作成時には、異なるタイプの Vali を作成できます。通常の Vali、Matrix、Textvali、Datevali、または Dataset です。
| タイプ | 説明 |
|---|---|
| Vali | 単一の値のみを持つ Block のプロパティです。例: 質量、コスト、密度など。 |
| Matrix | Matrix は、行と列に並べられた個々の Vali のグループです。Matrix Vali は、Block のプロパティに異なるモードがある場合によく使用されます。たとえば、異なるモードでの消費電力や、異なる軸での慣性値などです。 |
| Textvali | 文字列/テキストを保存する Vali です。 |
| Datevali | 日付情報を保存する Vali です。 |
| Dataset | ここでは、データセット値をインポートまたは追加し、グラフを作成し、それらの値を他の値の計算に使用できます。 |
式の追加
Vali は、一般的な数式表現、定数、または関数を追加することで式によって計算できます。式には他の Vali を含めることもできます。
Formula and unit フィールド内では、現在のプロジェクトまたは他のプロジェクトで利用可能な Vali を参照できます。そのためには、このフィールド内で $ を入力します。表示されるポップアップで、必要な Vali を見つけて選択します。

Vali の呼び出し – Requirements Portal のどこでも、ドル記号 $ を使うとドロップダウンが開き、参照可能なオブジェクト(例: Vali、Requirement など)が表示されます。
別のプロジェクトの Vali を使用したい場合は、ポップアップの一番下までスクロールして show other projects オプションを選択できます。
一般的な式のタイプ
以下のことができます:
-
42.7kgのような固定値を使う、または -
5/(3+17.3*9)のような式を使う、または -
$記号を使って他の Vali を使う:$car.speed+5。
式で使用できる数学演算は次のとおりです:
-
+,-,*,/ -
%(剰余演算) -
^ -
sqrt() -
exp() -
log10(),ln(),log() -
sin(),cos(),tan() -
asin(),acos(),atan() -
sinh(),cosh(),tanh() -
fabs(): 絶対値を返します -
soc()= 「子の合計」: サブ Block 内の同じタイプのすべての Vali の合計 -
poc()= 「子の積」: サブ Block 内の同じタイプのすべての Vali の積
式では、次の論理関数も使用できます:
-
if(condition, formula_if_true, formula_if_false) -
max(formula1, formula2) -
min(formula1, formula2)
Requirements Portal 組み込み関数
-
soc(): 「子の合計」を表し、1 レベル下の Block にある同じタイプのすべての Vali を合計します -
rssoc(): 「root sum squared of children」を表し、sqrt(x1^2+x2^2+⋯+xn^2) を計算します。たとえば、2kg、5kg、6kg の 3 つの質量がある場合、rssoc 関数の結果は 8.062257 になります -
aoc(): 「子の平均」を表し、1 レベル下の Block にある同じタイプの Vali の平均値を計算します -
poc(): 「子の積」を表し、1 レベル下の Block にある同じタイプのすべての Vali を掛け合わせます -
average_of_datasets()またはaod(): Vali の結果は、その Vali に属するデータセットの各点における平均値になります。データセットが 1 つしかない場合は、そのデータセット自体が結果となり、以降の計算に使用されます -
sum_of_datasets()またはsod(): Vali の結果は、その Vali に属するデータセットの各点における合計値になります。データセットが 1 つしかない場合は、そのデータセット自体が結果となり、以降の計算に使用されます -
property($vali, property_name): Vali のプロパティを取得します。property_nameに指定できるものは次のとおりです:-
minおよびmax(それぞれ最小要件と最大要件を取得) -
wc_minusおよびwc_plus(それぞれマイナス側とプラス側のワーストケースを取得)
-
-
minoc(): 子の最小値。サブ Block 内の同じタイプのすべての Vali の最小値を返します -
maxoc(): 子の最大値。サブ Block 内の同じタイプのすべての Vali の最大値を返します -
round(): この関数は、 Python's round function の仕様に従います。値は 10 のマイナス ndigits
乗の最も近い倍数に丸められます式の例:
-
$SolarPanel.width * $SolarPanel.length -
max(soc(), $SolarPanel.lowest_mass) -
if($SolarPanel.width*2 > $SolarPanel.length, 10, 5)
Vali 情報
Vali 名をクリックすると、その Vali に関する詳細情報を確認できます。これにより、Info タブに情報が表示された Vali の詳細ビューが開きます。

Vali 情報 – Vali をクリックすると、追加情報を含むビューが開きます。ここでは、さらにプロパティを定義したり、説明を追加したり、影響を定義したりできます。
このビューに表示される Vali の基本情報は次のとおりです:
-
ID – ID はランダムな数値で、バックエンドで使用される Valiengine によって自動的に追加されます。
-
Name – ここでは Vali の名前を入力および編集できます。
-
Description – 説明フィールドには Vali の説明を入力できます。以下に示すように、書式設定やタスクの編集も行えます。
マージン/単位の追加または変更、および要件(最小/最大)の追加もできます。要件(最小/最大)は、その特定のプロパティに対する制限値です。
ここで追加/表示できるその他の情報には、References、Using、Used by、およびこの Vali の Impacts があります。
Vali の履歴
Vali が直接または間接的に変更されると、その変更は自動的に Requirements Portal のデータベースに保存されます。Vali の History タブには、変更前の値、変更後の値、および誰が値を変更したかが表示されます。Requirements Portal は、変更された Vali がその Vali から直接参照されていない場合でも変更を記録します。
Vali の変更履歴を確認するには、Vali の名前をクリックして History タブを選択します。このタブでは、時間に対する変更を示すグラフを確認できます。グラフの下には、Time、Value Before、Value After、Reason のデータが入った Recent Changes テーブルがあります。

Vali 履歴 – History タブでは、時間経過に伴う Vali の変化がグラフと表で表示されます。
変更通知
特定の Vali が変更されたときに通知を受け取るには、Actions 列の三点ボタンをクリックし、開いたメニューから Add » Subscribe コマンドを選択して購読できます。
通知の詳細については、 Notifications ページを参照してください。
