NonlinearInteraction

Outflows depend upon the product of the stocks and a factor

Diagram

Information

This information is part of the Business Simulation Library (BSL).

The NonlinearInteraction can be used by itself or in combination with the →LinearInteraction flow to model more complex interactions. The netflows to the connected stocks A (portA) and B (portB) are given by the following equations:

Formula.svg

Note: Capital letters were chosen to represent the stocks (state variables) connected at portA and portB in the formula above. Also dot notation is used for a stock's rate of flow—its first derivative with respect to time.

Coefficient Unit Description
a_AB 1 per second per amount of B

Factor used to determine the net flow to A (positive rate = inflow)

b_AB 1 per second per amount of A

Factor used to determine the net flow to B (positive rate = inflow)

The coefficients can be given as parameters or as variables via the expandable connector dataIn.

Examples

A nonlinear component is typically found in predator-prey models or models of infectious diseases, where the exponential growth rate for a population depends upon the size of another population (e.g., prey or susceptible population).

See also

LinearInteractionComplexInteraction

Parameters (4)

a_AB

Value: unspecified

Type: Rate (1/s)

Description: Constant fractional rate for the netflow to A per unit of B (nonlinear coupling factor)

b_AB

Value: unspecified

Type: Rate (1/s)

Description: Constant fractional rate for the netflow to B per unit of A (nonlinear coupling factor)

hasConstantFactorA

Value: false

Type: Boolean

Description: = true, if the coupling factor for A is given by the constant parameter

hasConstantFactorB

Value: false

Type: Boolean

Description: = true, if the coupling factor for B is given by the constant parameter

Connectors (9)

portA

Type: FlowPort

Description: Flow from/to Stock A

portB

Type: FlowPort

Description: Flow to/from Stock B

y_B

Type: RealOutput_B

Description: Rate for flow to and from B (positive value indicates inflow)

y1_B

Type: RealOutput_B

Description: Rate for flow to and from B (positive value indicates inflow)

y1_A

Type: RealOutput_A

Description: Rate for flow to and from A (positive value indicates inflow)

y_A

Type: RealOutput_A

Description: Rate for flow to and from A (positive value indicates inflow)

dataIn

Type: InputConnector

u_a_AB

Type: RealOutput

Description: Nonlinear coupling factor for A

u_b_AB

Type: RealOutput

Description: Nonlinear coupling factor for B

Components (9)

netFlowA

Type: ExogenousChange

Description: Net flow to A

netFlowB

Type: ExogenousChange

Description: Net flow to B

levelA

Type: FlowPortSensor

Description: Amount in stock A

levelB

Type: FlowPortSensor

Description: Amount in stock B

product_A_B

Type: Product_2

Description: Product of A and B

netRateA

Type: Product_2

Description: Rate of netflow A (positive = inflow)

netRateB

Type: Product_2

Description: Rate of netflow B (positive = inflow)

parFactorA

Type: ConstantConverterRate

Description: Constant fractional rate A

parFactorB

Type: ConstantConverterRate

Description: Constant fractional rate B

Used in Examples (2)

LotkaVolterraSystems

BusinessSimulation.Examples

Predator-prey dynamics

LotkaVolterraEquationsRevisited

BusinessSimulation.Examples

Predator-prey dynamics with an additional predator

Used in Components (1)

ComplexInteraction

BusinessSimulation.Flows.Interaction

Combined linear and nonlinear interaction

Revisions

  • InputConnector defined as encapsulated expandable connector in v2.1.0.

  • Values for optional parameters changed to unspecified in v2.1.0.