Formula editor

# About the formula editor

The formula editor is linked to all formula fields in simcision and can be opened by clicking on the expand button in the bottom right-hand corner.

In the formula editor, the formulas in simcision can be edited in three different ways: As a formula template, as a free formula and as a formula tree.

 

# Formula template

In template mode, the formula can be “assembled” using predefined methods.

  1. Select the formula to be used.
  2. In the second area, select the values to be calculated in the formula.

Available formula templates

Sum

All values entered are totaled.

Result:

@A + @B + @C

Average

The average is calculated from all the values entered. Each value can be weighted with a factor.

Result:

(@A*2 + @B*4 + @C) / 7

# Free formula

In “Free formula” mode, the formula can be entered in a formula field. The individual parts of the formula can be entered directly into the formula field or selected using the selection buttons below the formula field.

For a list of all available functions, see below.

# Formula tree

The formula can also be created and displayed graphically in the form of a tree. In the formula tree view, all calculation steps are displayed as branches of the tree.

The tree is read from top to bottom. Two (or rarely three) nodes together produce a result, which is displayed in the node below. This result can be offset against another field, resulting in a new result, and so on. At the bottom, at the end of the tree, is the overall result.

This view is helpful for tracing individual calculation steps of the formula, as all intermediate results are visible.

However, the tree can not only be viewed here, but also edited. Values can be entered in empty fields or number fields in the tree if the field is selected, or an element reference can be inserted from the buttons below the tree. Selected fields can be processed further by linking operators or functions to them.

# All available functions

The functions can be entered directly into a formula field by pressing the “#” key. The functions are available for selection as a list in the formula editor.

random between (A and B) Results in a random (whole) number within the specified range, between number A and B (A and B included).

Example: random between (1 or 99) = 68
smaller value (A or B) Selects the smaller of two values.

Example: smaller value (3 or 7) = 3
greater value (A or B) Selects the greater of two values.

Example: greater value (3 or 7) = 7
maximum value (A) Results in the highest value that could theoretically arise from the expression in the brackets.

Examples:
maximum value (@target) = 100;
maximum value (@resource) = 1000;
minimum value (A) Results in the lowest value that could theoretically arise from the expression in brackets.

Examples:
minimum value (@target) = 0;
minimum value (@resource) = -1000;
rounded (A) Rounds the number A.

Example: rounded(4.3) = 4
rounded down (A) Rounds the number A down.

Example: rounded down(4.7) = 4
rounded up (A) Rounds the number A up.

Example: rounded up(4.1) = 5
absolute (A) Removes the sign of the number A, is always positive.

Example: absolute(-4) = 4
sign (A) Results in -1 for a negative number, +1 for a positive number and 0 for 0.

Example: sign(-56) = -1
square root(A) Returns the square root of A.

Example: square root(16) = 4
exponent(A ^ B) Returns A to the power of B.

Example: exponent(4 ^ 2) = 16
modulo (A mod B) Remainder of a division.

Example: modulo(4 mod 3) = 1;
e to the power of (A) Returns e to the power of A.

Example: e to the power of(1) = 2.718281828459
if(A then B else C) If A is not equal to 0, B returns, else C returns.

 

Input fields

# Text field

There are two variants of text fields:

Simple text fields

…are single-line and only accept unformatted text without line breaks.

Paragraph text fields

…extend over several lines. Formatted text can be entered here. These text fields can be opened in an extended text editor using the button with the small arrows in the corner.

You can also format the text in these text fields directly by entering formatting characters. The following formatting characters exist:

# Text Headline 1
## Text Headline 2
### Text Headline 3
– Text
  • List
1. Text
  1. List
_text_ italic
__text__ bold
> Text

Quote

[ ] Text Checkbox
−−−

Separation line

# Formula field

Formulas can be entered freely in formula fields.

The formulas can be entered directly in the field or via the formula editor. The formula editor can be opened using the small expand button in the bottom corner.

The following can be entered in the formula field:

  • Normal numerical values
    With the numbers from 0-9, decimal places (, or .) and signs.

    99
    15,5
    -1000
  • Simple calculations
    The following calculation symbols are available: +-/*^()

    1+5
    10*(5-4)
    7,5/2,5
  • References to elements
    The value of an element can be used in the calculation with an “@” sign. The result of the calculation is therefore always dependent on the current status of this element and is variable over the course of a simulation.

    @Overall performance / 10
    (@Satisfaction - @Promises) / @Expectations
  • Simulation variables
    Variables can be inserted with a “$” sign. Variables are free values that result from the model and simulation status or mathematical constants.

    $Number of targets * @Overall performance
    ($Current year - 10) * 5
    40 * $π
  • Functions
    Some mathematical functions can be used in the calculations. A function can be inserted using the “#” sign. To the list of all functions.

    #random between(40 and 120)
    #smaller value(@Warehouse or @parking lot)
    @Debts / #maximum value(@Debts)
  • Comparisons
    Comparisons are necessary for the #if( … then … else … ) function. The mathematical comparison operators can be used for comparisons:
    <, >, <=, >=, ==

    @Trust > @Concern
    #if(@Desired value == @target value then 3 else 0)

Network

# Control in the network

In most areas, the network plays a major role: this is the workspace on which all elements and relationships are located.

The network can be controlled with the mouse:

  • Select network elements (elements, relationships, …): Simply click on the element. If we are in the “Network” area, the corresponding menu opens in the sidebar.
  • Select several elements: Click and drag into the network. A selection frame is opened and all elements in the frame are selected as soon as the mouse button is released.
  • Deselect network elements: Click on a free position in the network.
  • Open context menu: Right-click on a network element (element, relationship, …). The context menu has different options for each area.
  • Move network:
    • Scroll (mouse wheel or touchpad)
    • Space + click and drag
    • Click and drag with the middle mouse button
  • Enlarge/reduce network:
    • Strg + Scroll
    • Strg + [+ or-]
  • Move elements:
    • Click in the middle and move with the mouse button pressed.
  • Enlarge/reduce elements:
    • Click on the edge and move it by pressing the mouse button.