ComplexInteraction

Interaction with linear and nonlinear terms

Diagram

Information

This information is part of the Business Simulation Library (BSL). Please support this work and ► donate.

Using →ComplexInteraction this component allows to logically connect two flows influencing two stocks A (connected to portA) and B (connected to portB). The formula for the resulting flows (using Newton's dot notation) has linear and nonlinear terms:

Formula.svg

The coefficients are given by parameters, which are multiplied either with 1 (hasFactor = false) or an exogenous factor u (hasFactor = true). Upon setting hasRateOutput = true the component will report the current rate of flows via output connectors (y_A, y_B).

Notes

  • Using a_0 = -1, b_0 = 1 (other coefficients set to zero), and hasFactor = true a bidirectional flow can be modeled, whose rate is given by the input u (positive inputs indicate a flow from A to B).

  • Using a_0 = -1, b_0 = f (other coefficients set to zero), and hasFactor = true a broken transition can be modeled, with the proportionality factor f indicating units of B per unit of A.

  • The parameters polA and polB allow to give visual cues with regard to polarity in the diagram.

See also

UnidirectionalFlow

Parameters (12)

polA

Value: "±"

Type: String

Description: Polarity portA

polB

Value: "±"

Type: String

Description: Polarity portB

hasFactor

Value: false

Type: Boolean

Description: = true, if coefficients are to be multiplied with input u

hasRateOutput

Value: false

Type: Boolean

Description: = true, if the rate is reported via real output connectors

a_0

Value:

Type: Rate (1/s)

Description: Growth rate for A (independent)

a_A

Value:

Type: Rate (1/s)

Description: Fractional rate of growth for A (self-coupling A)

a_B

Value:

Type: Rate (1/s)

Description: Rate of growth for A per unit of B (coupling of B to A)

a_AB

Value:

Type: Rate (1/s)

Description: Fractional rate of growth for A per unit of B (nonlinear coupling)

b_0

Value:

Type: Rate (1/s)

Description: Growth rate for B (independent)

b_B

Value:

Type: Rate (1/s)

Description: Fractional growth rate for B (self-coupling)

b_A

Value:

Type: Rate (1/s)

Description: Rate of growth for B per unit of A (coupling of A to B)

b_AB

Value:

Type: Rate (1/s)

Description: Fractional growth rate for B per unit of A (nonlinear coupling)

Connectors (15)

portA

Type: FlowPort

Description: Used to represent stock and flow connections

portB

Type: FlowPort

Description: Used to represent stock and flow connections

u

Type: RealInput

Description: Factor input

y_A

Type: RealOutput

Description: Output of current rate of flow for port A

y_B

Type: RealOutput

Description: Output of current rate of flow for port B

one

Type: RealOutput

Description: Default factor

y_a0

Type: RealOutput

Description: Output signal

dataIn

Type: InputConnector

Description: Data bus for inputs

y_aA

Type: RealOutput

Description: Output signal

y_aB

Type: RealOutput

Description: Output signal

y_aAB

Type: RealOutput

Description: Output signal

y_b0

Type: RealOutput

Description: Output signal

y_bA

Type: RealOutput

Description: Output signal

y_bB

Type: RealOutput

Description: Output signal

y_bAB

Type: RealOutput

Description: Output signal

Components (3)

complexInteraction

Type: ComplexInteraction

Description: Combined linear and nonlinear interaction

actualCoefficients

Type: ScalarMultiplication

Description: Multiplication of a vector with a scalar

constantCoefficients

Type: ConstantConverter

Description: A list of constant values is turned into a constant vector of signals

Revisions

  • Introduced in v2.0.0.