式の作成

Vissimで、以下の使用事例では、統合式エディターで式を作成します:

式エディターには、以下の機能があります:
[Button]-[ボタン] [Description]-[説明]

[Add operand (e.g. Attribute)]‐[オペランドを追加します(例:属性)] ボタン:[Object type]‐[オブジェクトタイプ] ボックスで選択したネットワークオブジェクトタイプの属性を示すウィンドウを開き、属性を項として選択します。項は青色で追加されます。

 

[Symbol]-[記号] [Description]-[説明]

[Add operator (e.g. +, -, *, /)]-[演算子(e.g. +、-、*、/)を追加します]:それぞれの項同士を結び付ける演算子を選択します。演算子は黒色で追加されます。

 

[Symbol]-[記号] [Description]-[説明]

[Insert function (e.g. min, max, exp)]-[関数(min、max、expなど)の挿入][Insert function]‐[関数の挿入] 開き、その式の関数を選択します。関数は水色で追加されます。

[Possible functions:]-[使用できる関数:]

Floor (x)

Floor (x):x以下の最も大きい整数を指定します。カーソル位置にFLOOR()が挿入されます。

Abs (x)

xの絶対値

Truncate (x)

Truncate (x):xの小数点以下を切り捨てます。カーソル位置にTRUNCATE()が挿入されます。

ArcSin (x)

xのアークサイン

ArcCos (x)

xのアークコサイン

ArcTan (x)

xのアークタンジェント

Ceil (x)

Ceil (x):x以上の最も小さい整数を指定します。カーソル位置にCeil()が挿入されます。

Cosine (x)

xのコサイン

Exp (x)

xの指数関数を形成します。カーソル位置にEXP()が挿入されます。

Div (x; y)

xyの整数部を形成します。

GEH Statistic (x; y)

GEH Statistic (x、y):xyのGEH統計量を計算します。カーソル位置にGEH(;)が挿入されます。GEH統計は、交通モデリングの値の分析に広く利用されている実験的公式です。公式は次のとおりです。

ここで:

M:モデリングされた値

C:カウントされた値

Reciprocal (x)

1/xに対応します。カーソル位置にRECIPROCAL()が挿入されます。

Log (x)

xの自然対数を形成します。カーソル位置にLN()が挿入されます。

Max (x; y)

Max (x; y):xyの最大値を形成します。

Min (x; y)

Min (x; y):xyの最小値を形成します。

Mod (x; y)

xモジュールy

Power (x; y)

x^yに対応します。カーソル位置にPOW(;)が挿入されます。

Percent (x; y)

100*x/yに対応します。カーソル位置にPERCENT()が挿入されます。

Round (x; p)

xp小数点まで端数を丸めます。pはオプションです。カーソル位置にROUND(;)が挿入されます。

Sin (x)

xのサイン

[Text to number ("x")]-[テキストから数字("x")へ]

ストリングをフローティングポイント番号に変換します。小数点としてピリオドを入力します。以下の文字はストリングでは有効ではありません:ストリングの先頭と最後のスペース。+、-、e/E以外の非数字。カーソル位置にSTRTONUM()が挿入されます。

Tan (x)

xのタンジェント

If (b; w; f)

条件付き分岐。bがtrueであれば、wを出力し、bがfalseであれば、fを出力します。カーソル位置にIF(;;)が挿入されます。

Root (x)

xの平方根を形成します。カーソル位置にSQRT()が挿入されます。

数字からテキスト (x)

NumberInString (x):フローティングポイント番号をストリングに変換します。カーソル位置にNUMTOSTR()が挿入されます。

サブストリング("x"、"s"、n)を抽出します

ストリング"x"から"n"番目のサブストリングをセパレーター"s"を使って抽出します。たとえば、車両経路リンク順序の2番目のリンクの番号を抽出することができます。

 

[Symbol]-[記号] [Description]-[説明]

[Insert TableLookup]‐[TableLookupの挿入][Insert TableLookup]‐[TableLookupの挿入] ウィンドウを開き、TableLookupタイプの関数を式に挿入します。ネットワークオブジェクトタイプの属性値を選択し、式内でその編集を続けます。TableLookup関数は水色で追加されます。

  • ネットワークオブジェクトタイプ:リスト内で、関数のベースとして使用するオブジェクトタイプをクリックします。関数の後のすべての条件は、選択されたオブジェクトタイプを参照します。

ネットワークオブジェクトタイプに加えて、[Network settings]-[ネットワーク設定]NETPARA)など、ユーザー定義値を備えたその他のオブジェクトタイプも選択できます。TableLookupコマンドの条件として別のオブジェクトタイプを選択するには、たとえばTRUEに値1を使用します。

  • [Variable name]-[変数名]:文字で始まる変数名を入力します。この名前は、いわゆるループ変数です。各ループで、これは反復されるタイプの別のネットワークオブジェクトを示します。
  • [Insert explaining comments]-[説明コメントを挿入]:入力フィールドに条件や結果の例を挿入します。これは上書き可能です。
 

TableLookup関数のエントリボックスは、次のスキームに対応している必要があります。

TableLookup(<オブジェクトタイプ> <変数名>;(<条件>);(<結果>)

エレメントは次のようになります。

TableLookup([<object type: English Name in capital letters> <entered variable name>; (<condition, for example <entered variable name>[<English attribute short name>]=<property>>);(<result, for example <identifier>[<attribute short name>]>]‐[<オブジェクトタイプ:大文字の英語名> <入力した変数名>; (<状態、例、<入力した変数名>[<英語属性短縮名>]=<プロパティ>>);(<結果、例、<識別子>[<属性短縮名>]>)])

(ユーザー定義属性の例)を参照してください。

 

[Symbol]-[記号] [Description]-[説明]

[Insert brackets]‐[角かっこの挿入]:開く角かっこと閉じる角かっこを挿入します:

  • [Insert around selected part of formula]-[選択した式の前後に挿入する]
  • どの式も選択されていません:カーソル位置に挿入してください
シミュレーションを実行すると式ベースのデータに影響があることがあります

式に対して選択された属性が、シミュレーション実行中に変化する可能性のある動的データに基づいている場合、結果または属性リストに表示されるユーザー定義属性の値も、シミュレーション実行中に変化する場合があります。

無関係のマークが付けられたフィールドの式の編集

無関係属性が、シミュレーション実行の間にたとえばCOM機能を介して、関係付けられることがあります。無関係フィールドも編集するのは、そのためです。

[Insert line break]-[改行を挿入]
  • ►  ストリング内で、目的の位置に\\nを挿入します。
  • ►  文字ストリングの外側の希望する位置で、Enterキーを押します。
構文エラーは赤色でハイライト表示

Vissimでは、式の構文エラーは赤色でハイライト表示されます。式のエントリボックスの下に、構文エラーの考えられる原因についての情報を示すメッセージが表示されます。

[Behavior regarding successive comparisons in formulas]-[式内の連続比較に関する挙動]

連続した比較を備えた式を作成するとき、ブール代数では、連続した比較は結合されず、2つのグループにまとめられ、評価されることに注意してください:

例:

1 < 4 < 2は、(1 < 4) < 2としてまとめられ、評価されます:

ここで、(1 < 4) = true

true = 1

式では、以下の関係を適用します:

1 < 2

[Different data type in formula and attribute]-[式と属性で、異なるデータタイプ]

式で数字が得られて、目標属性がストリングであった場合、その数字はVissimによってストリングに変換されます。