ComplexInteractionCombined linear and nonlinear interaction 
This information is part of the Business Simulation Library (BSL). Please support this work and ► donate.
The ComplexInteraction component combines linear and nonlinear interaction between two stocks A (portA
) and B (portB
):
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_0 
base unit of flow to A ( 
Rate of growth for stock A 

base unit of flow to B ( 
Rate of growth for stock B 

1/s 
fractional rate of growth for stock A 

1/s 
fractional rate of growth for stock B 

base unit of flow to A ( 
Rate of growth for stock A per stock B 

base unit of flow to B ( 
Rate of growth for stock B per stock A 
a_AB 
1 per second per base unit of B ( TypeB ) 
Factor used to determine the net flow to A 
b_AB 
1 per second per base unit of A TypeA ) 
Factor used to determine the net flow to B 
The coefficients can be given as parameters or as variables via the expandable connector dataIn
.
The classical LotkaVolterraModel of predatorpreydynamics can be derived from this model using the following parameterization:
a_0 = 0, a_A = α, a_B = 0, a_AB = β, b_0 = 0, b_B = γ, b_A = 0, b_AB = δ
LinearInteraction
and NonlinearInteraction
the rates passed for a_B, a_AB, b_A, b_AB
call for divison by a reference level of the connected stocks. In many cases, modelers can leave the type selectors TypeA, TypeB
at their default value of Unspecified
so that no conversion will take place.displayUnit
settings to enter convenient reference levels refA, refB
.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 Description: Expandable connector for continuous input 

a_0 
Type: RealOutput Description: Growth rate for A (independent) 

a_A 
Type: RealOutput Description: Fractional rate of growth for A (selfcoupling A) 

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

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

b_0 
Type: RealOutput Description: Growth rate for B (independent) 

b_B 
Type: RealOutput Description: Fractional growth rate for B (selfcoupling) 

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

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

dataBus 
Type: DataBus Description: Expandable connector for multiple data signals (input/output) 
linearInteraction 
Type: LinearInteraction Description: Linear interaction between A and B 


nonlinearInteraction 
Type: NonlinearInteraction Description: Nonlinear interaction between A and B 

netRate_B 
Type: Add_2 Description: Sum of two inputs 

netRate_A 
Type: Add_2 Description: Sum of two inputs 
BusinessSimulation.CausalLoop Interaction with linear and nonlinear terms 

BusinessSimulation.Flows.Interaction The LotkaVolterra equations to model predatorpreydynamics 
InputConnector
defined as encapsulated expandable connector
in v2.1.0.TypeA, TypeB
and corresponding reference levels refA, refB
introduced to support unit checking and unit conversions in v2.2.