diff --git a/dev/.documenter-siteinfo.json b/dev/.documenter-siteinfo.json index 9ed0dcc..6e46cd4 100644 --- a/dev/.documenter-siteinfo.json +++ b/dev/.documenter-siteinfo.json @@ -1 +1 @@ -{"documenter":{"julia_version":"1.10.7","generation_timestamp":"2024-11-28T22:24:10","documenter_version":"1.8.0"}} \ No newline at end of file +{"documenter":{"julia_version":"1.10.7","generation_timestamp":"2024-11-28T23:04:31","documenter_version":"1.8.0"}} \ No newline at end of file diff --git a/dev/api.html b/dev/api.html index d8f3b58..bdd1891 100644 --- a/dev/api.html +++ b/dev/api.html @@ -1,9 +1,9 @@ -API · BeforeIT.jl

Code reference

In this page we document the functions which constitute the bulk of BeforeIT.jl functionality.

Agent types

BeforeIT.AggregatesType

This is a Aggregates type. It is used to store the aggregate variables of the economy. Note that t is an integer, while the rest are floats or vectors of floats.

Fields

  • Y [vector]: GDP data + predictions
  • pi_ [vector]: inflation data + predictions
  • P_bar: Global price index
  • P_bar_g [vector]: Producer price index for principal good g
  • P_bar_HH: Consumer price index
  • P_bar_CF: Capital price index
  • P_bar_h: CPI_h
  • P_bar_CF_h: Capital price index _h
  • Y_e: Expected GDP
  • gamma_e: Expected growth
  • pi_e: Expected inflation
  • t: Time index
source
BeforeIT.BankType

This is a Bank type. It represents the bank of the model.

Fields

  • E_k: equity capital (common equity) of the bank
  • Pi_k: Profits of the bank
  • Pi_e_k: Expected profits of the bank
  • D_k: Residual and balancing item on the bank’s balance sheet
  • r: Rate for loans and morgages

Household fields (bank' owner)

  • Y_h: Net disposable income of bank owner (investor)
  • C_d_h: Consumption budget
  • I_d_h: Investment budget
  • C_h: Realised consumption
  • I_h: Realised investment
  • K_h: Capital stock
  • D_h: Deposits
source
BeforeIT.CentralBankType

This is a CentralBank type. It represents the central bank of the model.

Fields

  • r_bar: Nominal interest rate
  • r_G: Interest rate on government bonds
  • rho: Parameter for gradual adjustment of the policy rate
  • r_star: Real equilibrium interest rate
  • pi_star: Inflation target by CB
  • xi_pi: Weight the CB puts on inflation targeting
  • xi_gamma: Weight placed on economic
  • E_CB: Central bank equity
source
BeforeIT.FirmsType

This is a Firms type. Each field is an array which stores the values for all the firms in the economy. Note that the G_i, N_i and V_i fields are integers, while the rest are floats.

For all fields the entry at index i corresponds to the ith firm.

Fields

  • G_i: Principal product
  • alpha_bar_i: Average productivity of labor
  • beta_i: Productivity of intermediate consumption
  • kappa_i: Productivity of capital
  • w_i: Wages
  • w_bar_i: Average wage rate
  • delta_i: Depreciation rate for capital
  • tau_Y_i: Net tax rate on products
  • tau_K_i: Net tax rate on production
  • N_i: Number of persons employed
  • Y_i: Production of goods
  • Q_i: Sales of goods
  • Q_d_i: Demand for goods
  • P_i: Price
  • S_i: Inventories
  • K_i: Capital, in real terms
  • M_i: Intermediate goods/services and raw materials, in real terms
  • L_i: Outstanding loans
  • pi_bar_i: Operating margin
  • D_i: Deposits of the firm
  • Pi_i: Profits
  • V_i: Vacancies
  • I_i: Investments
  • E_i: Equity
  • P_bar_i: Price index
  • P_CF_i: Price index
  • DS_i: Differnece in stock of final goods
  • DM_i: Difference in stock of intermediate goods
  • DL_i: Obtained loans
  • DL_d_i: Target loans
  • K_e_i: Expected capital
  • L_e_i: Expected loans
  • Q_s_i: Expected sales
  • I_d_i: Desired investments
  • DM_d_i: Desired materials
  • N_d_i: Desired employment
  • Pi_e_i: Expected profits

Household fields (firms' owners)

  • Y_h: Net disposable income of firm owner (investor)
  • C_d_h: Consumption budget
  • I_d_h: Investment budget
  • C_h: Realised consumption
  • I_h: Realised investment
  • K_h: Capital stock
  • D_h: Deposits of the owner of the firms
source
BeforeIT.GovernmentType

This is a Government type. It represents the government of the model.

Fields

  • alpha_G: Autoregressive coefficient for government consumption
  • beta_G: Scalar constant for government consumption
  • sigma_G: Variance coefficient for government consumption
  • Y_G: Government revenues
  • C_G: Consumption demand of the general government
  • L_G: Loans taken out by the government
  • sb_inact: Social benefits for inactive persons
  • sb_other: Social benefits for all
  • C_d_j [vector]: Local governments consumption demand
  • C_j: Realised government consumption
  • P_j: Price inflation of government goods <- ??
source
BeforeIT.ModelType

This is a Model type. It is used to store all the agents of the economy.

Fields

  • w_act: Workers that are active
  • w_inact: Workers that are inactive
  • firms: Firms
  • bank: Bank
  • cb: CentralBank
  • gov: Government
  • rotw: RestOfTheWorld
  • agg: Aggregates
source
BeforeIT.RestOfTheWorldType

This is a RestOfTheWorld type. It represents the rest of the world of the model.

Fields

  • alpha_E: Autoregressive coefficient for exports
  • beta_E: Scalar constant for exports
  • sigma_E: Variance coefficient for exports
  • alpha_I: Autoregressive coefficient for imports
  • beta_I: Scalar constant for imports
  • sigma_I: Variance coefficient for imports
  • Y_EA: GDP euro area
  • gamma_EA: Growth euro area
  • pi_EA: Inflation euro area
  • alpha_pi_EA: Autoregressive coefficient for euro area inflation
  • beta_pi_EA: Autoregressive coefficient for euro area inflation Scalar constant for euro area inflation
  • sigma_pi_EA: Variance coefficient for euro area inflation
  • alpha_Y_EA: Autoregressive coefficient for euro area GDP
  • beta_Y_EA: Autoregressive coefficient for euro area GDP Scalar constant for euro area GDP
  • sigma_Y_EA: Variance coefficient for euro area GDP
  • D_RoW: Net creditor/debtor position of the national economy to the rest of the world
  • Y_I: Supply of imports (in real terms)
  • C_E: Total demand for exports
  • C_d_l [vector]: Demand for exports of specific product
  • C_l: Realised consumption by foreign consumers
  • Y_m [vector]: Supply of imports per sector
  • Q_m [vector]: Sales for imports per sector
  • Q_d_m [vector]: Demand for goods
  • P_m [vector]: Price of imports per sector
  • P_l: Price inflation of exports <- ??
source
BeforeIT.WorkersType

This is a Workers. Each field is an array which stores the values for all the workers in the economy. Note that the O_h field is an integer, while the rest are floats.

For all fields the entry at index i corresponds to the ith worker.

Fields

  • Y_h: Net disposable income of worker owner (investor)
  • D_h: Deposits
  • K_h: Capital stock
  • w_h: Wages (0 if inactive or unemployed)
  • O_h: Occupation (0 if unemployed, -1 if inactive)
  • C_d_h: Consumption budget
  • I_d_h: Investment budget
  • C_h: Realised consumption
  • I_h: Realised investment
source

Initialisation function

BeforeIT.init_modelFunction
init_model(parameters, initial_conditions, T, typeInt = Int64, typeFloat = Float64)

Initializes the model with given parameters and initial conditions.

Parameters:

  • parameters: A dictionary containing the model parameters.
  • initial_conditions: A dictionary containing the initial conditions.
  • T (integer): The time horizon of the model.
  • typeInt: (optional, default: Int64): The data type to be used for integer values.
  • typeFloat: (optional, default: Float64): The data type to be used for floating-point values.

Returns:

  • model::Model: The initialized model.
source
BeforeIT.update_variables_with_totals!Method
update_variables_with_totals!(model::Model)

Update the variables in the given model with some global quantities obtained from all agents. This is the last step in the initialization process and it must be performed after all agents have been initialized.

Arguments

  • model::Model: The model object to update.

Returns

  • Nothing
source

Functions to run an entire simulation

BeforeIT.run_one_epoch!Method
run_one_epoch!(model; multi_threading = false)

This function simulates a single epoch the economic model, updating various components of the model based the interactions between different economic agents. It accepts a model object, which encapsulates the state for the simulation, and an optional boolean parameter multi_threading to enable or disable multi-threading.

Key operations performed include:

  • Financial adjustments for firms and banks, including insolvency checks and profit calculations.
  • Economic expectations and adjustments, such as growth, inflation, and central bank rates.
  • Labor and credit market operations, including wage updates and loan processing.
  • Household economic activities, including consumption and investment budgeting.
  • Government and international trade financial activities, including budgeting and trade balances.
  • General market matching and accounting updates to reflect changes in economic indicators and positions.

The function updates the model in-place and does not return any value.

source
BeforeIT.run_n_simsMethod
run_n_sims(model, n_sims; shock = NoShock(), multi_threading = true)

A function that runs n_sims simulations in parallel with multiple threading and returns a vector of data objects of dimension n_sims.

Arguments

  • model: The model configuration used to simulate.
  • n_sims: The number of simulations to run in parallel.

Returns

  • data_vector: A vector containing the data objects collected during each simulation.
source
BeforeIT.run_one_sim!Method
run_one_sim!(model; shock = NoShock())

Run a single simulation based on the provided model. The simulation runs for a number of epochs specified by model.prop.T.

Arguments

  • model::Model: The model configuration used for the simulation.

Returns

  • data::Data: The data collected during the simulation.

Details

The function initializes the data using BeforeIT.init_data(model), then iteratively updates the model and data for each epoch using BeforeIT.run_one_epoch!(model) and BeforeIT.update_data!(data, model) respectively.

Example

```julia model = BeforeIT.initializemodel(parameters, initialconditions, T) data = runonesim!(model)

source

Firms actions

BeforeIT.firms_depositsMethod
firms_deposits(firms, model)

Calculate the new deposits of firms.

Arguments

  • firms: Firms object
  • model: Model object

Returns

  • DD_i: Vector of new deposits

The new deposits DD_i are calculated as follows:

DD_i = sales + labour_cost + material_cost + taxes_products + taxes_production + corporate_tax + dividend_payments + interest_payments + interest_received + investment_cost + new_credit + debt_installment

where:

  • sales = P_i * Q_i
  • labour_cost = (1 + tau_SIF) * w_i * N_i * P_bar_HH
  • material_cost = -DM_i * P_bar_i
  • taxes_products = -tau_Y_i * P_i * Y_i
  • taxes_production = -tau_K_i * P_i * Y_i
  • corporate_tax = -tau_FIRM * pos(Pi_i)
  • dividend_payments = -theta_DIV * (1 - tau_FIRM) * pos(Pi_i)
  • interest_payments = -r * (L_i + pos(-D_i))
  • interest_received = r_bar * pos(D_i)
  • investment_cost = -P_CF_i * I_i
  • new_credit = DL_i
  • debt_installment = -theta * L_i
source
BeforeIT.firms_equityMethod
firms_equity(firms, model)

Calculate the equity of firms.

Arguments

  • firms: Firms object
  • model: Model object

Returns

  • E_i: Vector of equity

The equity E_i is calculated as follows:

\[E_i = D_i + M_i * \sum(a_{sg}[:, G_i] * \bar{P}_g) + P_i * S_i + \bar{P}_{CF} * K_i - L_i\]

where:

  • D_i: Deposits
  • M_i: Intermediate goods
  • a_sg: Technology coefficient of the gth product in the sth industry
  • G_i: Vector of goods
  • P_bar_g: Producer price index for principal good g
  • P_i: Price
  • S_i: Stock
  • P_bar_CF: Capital price index
  • K_i: Capital stock
  • L_i: Loans
source
BeforeIT.firms_expectations_and_decisionsMethod
firms_expectations_and_decisions(firms, model)

Calculate the expectations and decisions of firms. That is: compute firm quantity, price, investment and intermediate-goods, employment decisions, expected profits, and desired/expected loans and capital.

Arguments

  • firms: Firms object
  • model: Model object

Returns

  • Q_s_i: Vector of desired quantities
  • I_d_i: Vector of desired investments
  • DM_d_i: Vector of desired intermediate goods
  • N_d_i: Vector of desired employment
  • Pi_e_i: Vector of expected profits
  • DL_d_i: Vector of desired new loans
  • K_e_i: Vector of expected capital
  • L_e_i: Vector of expected loans
  • P_i: Vector of prices
source
BeforeIT.firms_loansMethod
firms_loans(firms, model)

Calculate the new loans of firms.

Arguments

  • firms: Firms object
  • model: Model object

Returns

  • L_i: Vector of new loans

The new loans L_i are calculated as follows:

\[L_i = (1 - theta) * L_i + DL_i\]

where:

  • theta: Rate of repayment
  • L_i: Loans
  • DL_i: Acquired new loans
source
BeforeIT.firms_productionMethod
firms_production(firms)

Calculate the production of firms.

Arguments

  • firms: Firms object

Returns

  • Y_i: Vector of production

The production Y_i is computed using a Leontief technology.

source
BeforeIT.firms_profitsMethod
firms_profits(firms, model)

Calculate the profits of firms.

Arguments

  • firms: Firms object
  • model: Model object

Returns

  • Pi_i: Vector of profits

The profits Pi_i are calculated as follows:

Pi_i = in_sales + in_deposits - out_wages - out_expenses - out_depreciation - out_taxes_prods - out_taxes_capital - out_loans

where:

  • in_sales = P_i * Q_i + P_i * DS_i
  • in_deposits = r_bar * pos(D_i)
  • out_wages = (1 + tau_SIF) * w_i * N_i * P_bar_HH
  • out_expenses = 1 / beta_i * P_bar_i * Y_i
  • out_depreciation = delta_i / kappa_i * P_CF_i * Y_i
  • out_taxes_prods = tau_Y_i * P_i * Y_i
  • out_taxes_capital = tau_K_i * P_i * Y_i
  • out_loans = r * (L_i + pos(-D_i))
source
BeforeIT.firms_stocksMethod
firms_stocks(firms)

Calculate the stocks of firms.

Arguments

  • firms: Firms object

Returns

  • K_i: Vector of capital stock
  • M_i: Vector of intermediate goods
  • DS_i: Vector of differneces in stock of final goods
  • S_i: Vector of stock of final goods

The stocks are calculated as follows:

K_i = K_i - delta_i / kappa_i * Y_i + I_i
+API · BeforeIT.jl

Code reference

In this page we document the functions which constitute the bulk of BeforeIT.jl functionality.

Agent types

BeforeIT.AggregatesType

This is a Aggregates type. It is used to store the aggregate variables of the economy. Note that t is an integer, while the rest are floats or vectors of floats.

Fields

  • Y [vector]: GDP data + predictions
  • pi_ [vector]: inflation data + predictions
  • P_bar: Global price index
  • P_bar_g [vector]: Producer price index for principal good g
  • P_bar_HH: Consumer price index
  • P_bar_CF: Capital price index
  • P_bar_h: CPI_h
  • P_bar_CF_h: Capital price index _h
  • Y_e: Expected GDP
  • gamma_e: Expected growth
  • pi_e: Expected inflation
  • t: Time index
source
BeforeIT.BankType

This is a Bank type. It represents the bank of the model.

Fields

  • E_k: equity capital (common equity) of the bank
  • Pi_k: Profits of the bank
  • Pi_e_k: Expected profits of the bank
  • D_k: Residual and balancing item on the bank’s balance sheet
  • r: Rate for loans and morgages

Household fields (bank' owner)

  • Y_h: Net disposable income of bank owner (investor)
  • C_d_h: Consumption budget
  • I_d_h: Investment budget
  • C_h: Realised consumption
  • I_h: Realised investment
  • K_h: Capital stock
  • D_h: Deposits
source
BeforeIT.CentralBankType

This is a CentralBank type. It represents the central bank of the model.

Fields

  • r_bar: Nominal interest rate
  • r_G: Interest rate on government bonds
  • rho: Parameter for gradual adjustment of the policy rate
  • r_star: Real equilibrium interest rate
  • pi_star: Inflation target by CB
  • xi_pi: Weight the CB puts on inflation targeting
  • xi_gamma: Weight placed on economic
  • E_CB: Central bank equity
source
BeforeIT.FirmsType

This is a Firms type. Each field is an array which stores the values for all the firms in the economy. Note that the G_i, N_i and V_i fields are integers, while the rest are floats.

For all fields the entry at index i corresponds to the ith firm.

Fields

  • G_i: Principal product
  • alpha_bar_i: Average productivity of labor
  • beta_i: Productivity of intermediate consumption
  • kappa_i: Productivity of capital
  • w_i: Wages
  • w_bar_i: Average wage rate
  • delta_i: Depreciation rate for capital
  • tau_Y_i: Net tax rate on products
  • tau_K_i: Net tax rate on production
  • N_i: Number of persons employed
  • Y_i: Production of goods
  • Q_i: Sales of goods
  • Q_d_i: Demand for goods
  • P_i: Price
  • S_i: Inventories
  • K_i: Capital, in real terms
  • M_i: Intermediate goods/services and raw materials, in real terms
  • L_i: Outstanding loans
  • pi_bar_i: Operating margin
  • D_i: Deposits of the firm
  • Pi_i: Profits
  • V_i: Vacancies
  • I_i: Investments
  • E_i: Equity
  • P_bar_i: Price index
  • P_CF_i: Price index
  • DS_i: Differnece in stock of final goods
  • DM_i: Difference in stock of intermediate goods
  • DL_i: Obtained loans
  • DL_d_i: Target loans
  • K_e_i: Expected capital
  • L_e_i: Expected loans
  • Q_s_i: Expected sales
  • I_d_i: Desired investments
  • DM_d_i: Desired materials
  • N_d_i: Desired employment
  • Pi_e_i: Expected profits

Household fields (firms' owners)

  • Y_h: Net disposable income of firm owner (investor)
  • C_d_h: Consumption budget
  • I_d_h: Investment budget
  • C_h: Realised consumption
  • I_h: Realised investment
  • K_h: Capital stock
  • D_h: Deposits of the owner of the firms
source
BeforeIT.GovernmentType

This is a Government type. It represents the government of the model.

Fields

  • alpha_G: Autoregressive coefficient for government consumption
  • beta_G: Scalar constant for government consumption
  • sigma_G: Variance coefficient for government consumption
  • Y_G: Government revenues
  • C_G: Consumption demand of the general government
  • L_G: Loans taken out by the government
  • sb_inact: Social benefits for inactive persons
  • sb_other: Social benefits for all
  • C_d_j [vector]: Local governments consumption demand
  • C_j: Realised government consumption
  • P_j: Price inflation of government goods <- ??
source
BeforeIT.ModelType

This is a Model type. It is used to store all the agents of the economy.

Fields

  • w_act: Workers that are active
  • w_inact: Workers that are inactive
  • firms: Firms
  • bank: Bank
  • cb: CentralBank
  • gov: Government
  • rotw: RestOfTheWorld
  • agg: Aggregates
source
BeforeIT.RestOfTheWorldType

This is a RestOfTheWorld type. It represents the rest of the world of the model.

Fields

  • alpha_E: Autoregressive coefficient for exports
  • beta_E: Scalar constant for exports
  • sigma_E: Variance coefficient for exports
  • alpha_I: Autoregressive coefficient for imports
  • beta_I: Scalar constant for imports
  • sigma_I: Variance coefficient for imports
  • Y_EA: GDP euro area
  • gamma_EA: Growth euro area
  • pi_EA: Inflation euro area
  • alpha_pi_EA: Autoregressive coefficient for euro area inflation
  • beta_pi_EA: Autoregressive coefficient for euro area inflation Scalar constant for euro area inflation
  • sigma_pi_EA: Variance coefficient for euro area inflation
  • alpha_Y_EA: Autoregressive coefficient for euro area GDP
  • beta_Y_EA: Autoregressive coefficient for euro area GDP Scalar constant for euro area GDP
  • sigma_Y_EA: Variance coefficient for euro area GDP
  • D_RoW: Net creditor/debtor position of the national economy to the rest of the world
  • Y_I: Supply of imports (in real terms)
  • C_E: Total demand for exports
  • C_d_l [vector]: Demand for exports of specific product
  • C_l: Realised consumption by foreign consumers
  • Y_m [vector]: Supply of imports per sector
  • Q_m [vector]: Sales for imports per sector
  • Q_d_m [vector]: Demand for goods
  • P_m [vector]: Price of imports per sector
  • P_l: Price inflation of exports <- ??
source
BeforeIT.WorkersType

This is a Workers. Each field is an array which stores the values for all the workers in the economy. Note that the O_h field is an integer, while the rest are floats.

For all fields the entry at index i corresponds to the ith worker.

Fields

  • Y_h: Net disposable income of worker owner (investor)
  • D_h: Deposits
  • K_h: Capital stock
  • w_h: Wages (0 if inactive or unemployed)
  • O_h: Occupation (0 if unemployed, -1 if inactive)
  • C_d_h: Consumption budget
  • I_d_h: Investment budget
  • C_h: Realised consumption
  • I_h: Realised investment
source

Initialisation function

BeforeIT.init_modelFunction
init_model(parameters, initial_conditions, T, typeInt = Int64, typeFloat = Float64)

Initializes the model with given parameters and initial conditions.

Parameters:

  • parameters: A dictionary containing the model parameters.
  • initial_conditions: A dictionary containing the initial conditions.
  • T (integer): The time horizon of the model.
  • typeInt: (optional, default: Int64): The data type to be used for integer values.
  • typeFloat: (optional, default: Float64): The data type to be used for floating-point values.

Returns:

  • model::Model: The initialized model.
source
BeforeIT.update_variables_with_totals!Method
update_variables_with_totals!(model::Model)

Update the variables in the given model with some global quantities obtained from all agents. This is the last step in the initialization process and it must be performed after all agents have been initialized.

Arguments

  • model::Model: The model object to update.

Returns

  • Nothing
source

Functions to run an entire simulation

BeforeIT.run_one_epoch!Method
run_one_epoch!(model; multi_threading = false)

This function simulates a single epoch the economic model, updating various components of the model based the interactions between different economic agents. It accepts a model object, which encapsulates the state for the simulation, and an optional boolean parameter multi_threading to enable or disable multi-threading.

Key operations performed include:

  • Financial adjustments for firms and banks, including insolvency checks and profit calculations.
  • Economic expectations and adjustments, such as growth, inflation, and central bank rates.
  • Labor and credit market operations, including wage updates and loan processing.
  • Household economic activities, including consumption and investment budgeting.
  • Government and international trade financial activities, including budgeting and trade balances.
  • General market matching and accounting updates to reflect changes in economic indicators and positions.

The function updates the model in-place and does not return any value.

source
BeforeIT.run_n_simsMethod
run_n_sims(model, n_sims; shock = NoShock(), multi_threading = true)

A function that runs n_sims simulations in parallel with multiple threading and returns a vector of data objects of dimension n_sims.

Arguments

  • model: The model configuration used to simulate.
  • n_sims: The number of simulations to run in parallel.

Returns

  • data_vector: A vector containing the data objects collected during each simulation.
source
BeforeIT.run_one_sim!Method
run_one_sim!(model; shock = NoShock())

Run a single simulation based on the provided model. The simulation runs for a number of epochs specified by model.prop.T.

Arguments

  • model::Model: The model configuration used for the simulation.

Returns

  • data::Data: The data collected during the simulation.

Details

The function initializes the data using BeforeIT.init_data(model), then iteratively updates the model and data for each epoch using BeforeIT.run_one_epoch!(model) and BeforeIT.update_data!(data, model) respectively.

Example

```julia model = BeforeIT.initializemodel(parameters, initialconditions, T) data = runonesim!(model)

source

Firms actions

BeforeIT.firms_depositsMethod
firms_deposits(firms, model)

Calculate the new deposits of firms.

Arguments

  • firms: Firms object
  • model: Model object

Returns

  • DD_i: Vector of new deposits

The new deposits DD_i are calculated as follows:

DD_i = sales + labour_cost + material_cost + taxes_products + taxes_production + corporate_tax + dividend_payments + interest_payments + interest_received + investment_cost + new_credit + debt_installment

where:

  • sales = P_i * Q_i
  • labour_cost = (1 + tau_SIF) * w_i * N_i * P_bar_HH
  • material_cost = -DM_i * P_bar_i
  • taxes_products = -tau_Y_i * P_i * Y_i
  • taxes_production = -tau_K_i * P_i * Y_i
  • corporate_tax = -tau_FIRM * pos(Pi_i)
  • dividend_payments = -theta_DIV * (1 - tau_FIRM) * pos(Pi_i)
  • interest_payments = -r * (L_i + pos(-D_i))
  • interest_received = r_bar * pos(D_i)
  • investment_cost = -P_CF_i * I_i
  • new_credit = DL_i
  • debt_installment = -theta * L_i
source
BeforeIT.firms_equityMethod
firms_equity(firms, model)

Calculate the equity of firms.

Arguments

  • firms: Firms object
  • model: Model object

Returns

  • E_i: Vector of equity

The equity E_i is calculated as follows:

\[E_i = D_i + M_i * \sum(a_{sg}[:, G_i] * \bar{P}_g) + P_i * S_i + \bar{P}_{CF} * K_i - L_i\]

where:

  • D_i: Deposits
  • M_i: Intermediate goods
  • a_sg: Technology coefficient of the gth product in the sth industry
  • G_i: Vector of goods
  • P_bar_g: Producer price index for principal good g
  • P_i: Price
  • S_i: Stock
  • P_bar_CF: Capital price index
  • K_i: Capital stock
  • L_i: Loans
source
BeforeIT.firms_expectations_and_decisionsMethod
firms_expectations_and_decisions(firms, model)

Calculate the expectations and decisions of firms. That is: compute firm quantity, price, investment and intermediate-goods, employment decisions, expected profits, and desired/expected loans and capital.

Arguments

  • firms: Firms object
  • model: Model object

Returns

  • Q_s_i: Vector of desired quantities
  • I_d_i: Vector of desired investments
  • DM_d_i: Vector of desired intermediate goods
  • N_d_i: Vector of desired employment
  • Pi_e_i: Vector of expected profits
  • DL_d_i: Vector of desired new loans
  • K_e_i: Vector of expected capital
  • L_e_i: Vector of expected loans
  • P_i: Vector of prices
source
BeforeIT.firms_loansMethod
firms_loans(firms, model)

Calculate the new loans of firms.

Arguments

  • firms: Firms object
  • model: Model object

Returns

  • L_i: Vector of new loans

The new loans L_i are calculated as follows:

\[L_i = (1 - theta) * L_i + DL_i\]

where:

  • theta: Rate of repayment
  • L_i: Loans
  • DL_i: Acquired new loans
source
BeforeIT.firms_productionMethod
firms_production(firms)

Calculate the production of firms.

Arguments

  • firms: Firms object

Returns

  • Y_i: Vector of production

The production Y_i is computed using a Leontief technology.

source
BeforeIT.firms_profitsMethod
firms_profits(firms, model)

Calculate the profits of firms.

Arguments

  • firms: Firms object
  • model: Model object

Returns

  • Pi_i: Vector of profits

The profits Pi_i are calculated as follows:

Pi_i = in_sales + in_deposits - out_wages - out_expenses - out_depreciation - out_taxes_prods - out_taxes_capital - out_loans

where:

  • in_sales = P_i * Q_i + P_i * DS_i
  • in_deposits = r_bar * pos(D_i)
  • out_wages = (1 + tau_SIF) * w_i * N_i * P_bar_HH
  • out_expenses = 1 / beta_i * P_bar_i * Y_i
  • out_depreciation = delta_i / kappa_i * P_CF_i * Y_i
  • out_taxes_prods = tau_Y_i * P_i * Y_i
  • out_taxes_capital = tau_K_i * P_i * Y_i
  • out_loans = r * (L_i + pos(-D_i))
source
BeforeIT.firms_stocksMethod
firms_stocks(firms)

Calculate the stocks of firms.

Arguments

  • firms: Firms object

Returns

  • K_i: Vector of capital stock
  • M_i: Vector of intermediate goods
  • DS_i: Vector of differneces in stock of final goods
  • S_i: Vector of stock of final goods

The stocks are calculated as follows:

K_i = K_i - delta_i / kappa_i * Y_i + I_i
 M_i = M_i - Y_i / beta_i + DM_i
 DS_i = Y_i - Q_i
-S_i = S_i + DS_i
source
BeforeIT.firms_wagesMethod
firms_wages(firms)

Calculate the wages set by firms.

Arguments

  • firms: Firms object

Returns

  • w_i: Vector of wages
source
BeforeIT.init_firmsMethod
init_firms(parameters, initial_conditions; typeInt = Int64, typeFloat = Float64)

Initialize firms with given parameters and initial conditions.

Arguments

  • parameters: The parameters for initializing the firms.
  • initial_conditions: The initial conditions for the firms.
  • typeInt: (optional) The integer type to be used. Default is Int64.
  • typeFloat: (optional) The floating-point type to be used. Default is Float64.

Returns

  • firms::Firms: The initialized firms.
  • firms_args::Tuple: The arguments used to initialize the firms.
source
BeforeIT.leontief_productionMethod
leontief_production(Q_s_i, N_i, alpha_i, K_i, kappa_i, M_i, beta_i)

Calculate the production function of firms.

Arguments

  • Q_s_i: Vector of desired quantities
  • N_i: Vector of employment
  • alpha_i: Vector of labour productivity
  • K_i: Vector of capital stock
  • kappa_i: Vector of capital productivity
  • M_i: Vector of intermediate goods
  • beta_i: Vector of intermediate goods productivity

Returns

  • Y_i: Vector of production

The Leontief production function Y_i is calculated as follows:

\[Y_i = \min(Q_s_i, \min(N_i \cdot \alpha_i, \min(K_i \cdot \kappa_i, M_i \cdot \beta_i)))\]

source

Households actions

Government actions

BeforeIT.gov_expenditureMethod
gov_expenditure(gov::AbstractGovernment, model)

Computes government expenditure on consumption and transfers to households.

Arguments

  • gov: government object
  • model: model object

Returns

  • C_G: government consumption
  • C_d_j: local government consumptions
source
BeforeIT.gov_loansMethod
gov_loans(gov::AbstractGovernment, model, Y_G)

Computes government new government debt.

Arguments

  • gov::AbstractGovernment: government object
  • model: model object

Returns

  • L_G: new government debt
source
BeforeIT.gov_revenuesMethod
gov_revenues(model)

Computes government revenues from taxes and social security contributions. The government collects taxes on labour income, capital income, value added, and corporate income. It also collects social security contributions from workers and firms. The government also collects taxes on consumption and capital formation. Finally, the government collects taxes on exports and imports.

Arguments

  • model: model object

Returns

  • Y_G: government revenues
source
BeforeIT.gov_social_benefitsMethod
gov_social_benefits(gov::AbstractGovernment, model)

Computes social benefits paid by the government households.

Arguments

  • gov: government object
  • model: model object

Returns

  • sb_other: social benefits for other households
  • sb_inact: social benefits for inactive households
source
BeforeIT.init_governmentMethod
init_government(parameters, initial_conditions; typeInt = Int64, typeFloat = Float64)

Initialize the government agent.

Arguments

  • parameters: The parameters.
  • initial_conditions: The initial conditions.
  • typeInt: The integer type to be used (default: Int64).
  • typeFloat: The floating-point type to be used (default: Float64).

Returns

  • The initialized government model.
  • The arguments used to initialize the government model.
source

Bank and Central Bank actions

BeforeIT._bank_depositsMethod
_deposit_bank(waD_h, wiD_h, fD_h, bD_h, fD_i, bE_k, fL_i)

Helper function to calculate the new deposits of a bank.

Arguments

  • waD_h: Array of deposits from active workers
  • wiD_h: Array of deposits from inactive workers
  • fD_h: Array of deposits from firms
  • bD_h: Deposits from the bank owner
  • fD_i: Array of deposits from firms
  • bE_k: Bank equity
  • fL_i: Array of loans to firms

Returns

  • D_k: New deposits of the bank

The new deposits D_k are calculated as the sum of the deposits of the active workers, the inactive workers, the firms, and the bank owner itself, plus the bank's equity, minus the loans of the firms.

source
BeforeIT._bank_profitsMethod
_bank_profits(L_i, D_i, D_h, D_k, r_bar, r)

Helper function to calculate the total profits of a bank.

Arguments

  • L_i: Array of loans provided by the bank
  • D_i: Array of deposits from firms
  • D_h: Array of deposits from households
  • D_k: Residual and balancing item on the bank’s balance sheet
  • r_bar: Base interest rate
  • r: Interest rate set by the bank

Returns

  • Pi_k: Total profits of the bank

The total profits Pi_k are calculated as follows:

\[\Pi_k = r \cdot \sum_i(L_i + \max(0, -D_i)) + r \cdot \sum_h(\max(0, -D_h)) + r_{bar} +S_i = S_i + DS_i

source
BeforeIT.firms_wagesMethod
firms_wages(firms)

Calculate the wages set by firms.

Arguments

  • firms: Firms object

Returns

  • w_i: Vector of wages
source
BeforeIT.init_firmsMethod
init_firms(parameters, initial_conditions; typeInt = Int64, typeFloat = Float64)

Initialize firms with given parameters and initial conditions.

Arguments

  • parameters: The parameters for initializing the firms.
  • initial_conditions: The initial conditions for the firms.
  • typeInt: (optional) The integer type to be used. Default is Int64.
  • typeFloat: (optional) The floating-point type to be used. Default is Float64.

Returns

  • firms::Firms: The initialized firms.
  • firms_args::Tuple: The arguments used to initialize the firms.
source
BeforeIT.leontief_productionMethod
leontief_production(Q_s_i, N_i, alpha_i, K_i, kappa_i, M_i, beta_i)

Calculate the production function of firms.

Arguments

  • Q_s_i: Vector of desired quantities
  • N_i: Vector of employment
  • alpha_i: Vector of labour productivity
  • K_i: Vector of capital stock
  • kappa_i: Vector of capital productivity
  • M_i: Vector of intermediate goods
  • beta_i: Vector of intermediate goods productivity

Returns

  • Y_i: Vector of production

The Leontief production function Y_i is calculated as follows:

\[Y_i = \min(Q_s_i, \min(N_i \cdot \alpha_i, \min(K_i \cdot \kappa_i, M_i \cdot \beta_i)))\]

source

Households actions

Government actions

BeforeIT.gov_expenditureMethod
gov_expenditure(gov::AbstractGovernment, model)

Computes government expenditure on consumption and transfers to households.

Arguments

  • gov: government object
  • model: model object

Returns

  • C_G: government consumption
  • C_d_j: local government consumptions
source
BeforeIT.gov_loansMethod
gov_loans(gov::AbstractGovernment, model, Y_G)

Computes government new government debt.

Arguments

  • gov::AbstractGovernment: government object
  • model: model object

Returns

  • L_G: new government debt
source
BeforeIT.gov_revenuesMethod
gov_revenues(model)

Computes government revenues from taxes and social security contributions. The government collects taxes on labour income, capital income, value added, and corporate income. It also collects social security contributions from workers and firms. The government also collects taxes on consumption and capital formation. Finally, the government collects taxes on exports and imports.

Arguments

  • model: model object

Returns

  • Y_G: government revenues
source
BeforeIT.gov_social_benefitsMethod
gov_social_benefits(gov::AbstractGovernment, model)

Computes social benefits paid by the government households.

Arguments

  • gov: government object
  • model: model object

Returns

  • sb_other: social benefits for other households
  • sb_inact: social benefits for inactive households
source
BeforeIT.init_governmentMethod
init_government(parameters, initial_conditions; typeInt = Int64, typeFloat = Float64)

Initialize the government agent.

Arguments

  • parameters: The parameters.
  • initial_conditions: The initial conditions.
  • typeInt: The integer type to be used (default: Int64).
  • typeFloat: The floating-point type to be used (default: Float64).

Returns

  • The initialized government model.
  • The arguments used to initialize the government model.
source

Bank and Central Bank actions

BeforeIT._bank_depositsMethod
_deposit_bank(waD_h, wiD_h, fD_h, bD_h, fD_i, bE_k, fL_i)

Helper function to calculate the new deposits of a bank.

Arguments

  • waD_h: Array of deposits from active workers
  • wiD_h: Array of deposits from inactive workers
  • fD_h: Array of deposits from firms
  • bD_h: Deposits from the bank owner
  • fD_i: Array of deposits from firms
  • bE_k: Bank equity
  • fL_i: Array of loans to firms

Returns

  • D_k: New deposits of the bank

The new deposits D_k are calculated as the sum of the deposits of the active workers, the inactive workers, the firms, and the bank owner itself, plus the bank's equity, minus the loans of the firms.

source
BeforeIT._bank_profitsMethod
_bank_profits(L_i, D_i, D_h, D_k, r_bar, r)

Helper function to calculate the total profits of a bank.

Arguments

  • L_i: Array of loans provided by the bank
  • D_i: Array of deposits from firms
  • D_h: Array of deposits from households
  • D_k: Residual and balancing item on the bank’s balance sheet
  • r_bar: Base interest rate
  • r: Interest rate set by the bank

Returns

  • Pi_k: Total profits of the bank

The total profits Pi_k are calculated as follows:

\[\Pi_k = r \cdot \sum_i(L_i + \max(0, -D_i)) + r \cdot \sum_h(\max(0, -D_h)) + r_{bar} \cdot \max(0, D_k) - r_{bar} \cdot \sum_i(\max(0, D_i)) - r_{bar} \cdot -\sum_h(\max(0, D_h)) - r_{bar} \cdot \max(0, -D_k)\]

source
BeforeIT._central_bank_profitsMethod
_central_bank_profits(r_bar, D_k, L_G, r_G)

Helper function to calculate the profits of a central bank.

Arguments

  • r_bar: The base interest rate
  • D_k: Deposits from commercial banks
  • L_G: Loans provided to the government
  • r_G: Interest rate on government loans

Returns

  • Pi_CB: Profits of the central bank

The profits Pi_CB are calculated as follows:

\[\{Pi}_{CB} = r_{G} \cdot L_{G} - r_{bar} \cdot D_{k}\]

source
BeforeIT.bank_depositsMethod
deposits_bank(bank, w_act, w_inact, firms)

Calculate the new deposits of a bank.

Arguments

  • bank: The Bank object containing the bank of the model
  • w_act: The Workers object containing the active workers of the model
  • w_inact: The Workers object containing the inactive workers of the model
  • firms: The Firms object containing the firms of the model

Returns

  • D_k: New deposits of the bank

The new deposits D_k are calculated as the sum of the deposits of the active workers, the inactive workers, the firms, and the bank owner itself, plus the bank's equity, minus the loans of the firms.

source
BeforeIT.bank_equityMethod
bank_equity(bank, model)

Calculate the net profits of a bank.

Arguments

  • bank: The bank object.
  • model: The model object.

Returns

  • E_k: The updated equity of the bank.

The net profits DE_k are calculated as:

\[DE_k = \Pi_k - \theta_{DIV} \cdot (1 - \tau_{FIRM}) \cdot \max(0, \Pi_k) - \tau_{FIRM} \cdot \max(0, \Pi_k)\]

and the equity E_k is updated as:

\[E_k = E_k + DE_k\]

source
BeforeIT.bank_expected_profitsMethod
bank_expected_profits(Pi_k, pi_e, gamma_e)

Calculate the expected profits of a bank.

Arguments

  • Pi_k: Past profits of the bank
  • pi_e: Expected inflation rate
  • gamma_e: Expected growth rate

Returns

  • E_Pi_k: Expected profits of the bank

The expected profits E_Pi_k are calculated as follows:

\[E_{\Pi_k} = \Pi_k \cdot (1 + \pi_e) \cdot (1 + \gamma_e)\]

source
BeforeIT.bank_profitsMethod
bank_profits(bank, model)

Calculate the total profits of a bank.

Arguments

  • bank: The bank object.
  • model: The model object.

Returns

  • Pi_k: The total profits of the bank.

The total profits Pi_k are calculated as:

\[\Pi_k = r \cdot \sum_i(L_i + \max(0, -D_i)) + r \cdot \sum_h(\max(0, -D_h)) + r_{bar} +\sum_h(\max(0, D_h)) - r_{bar} \cdot \max(0, -D_k)\]

source
BeforeIT._central_bank_profitsMethod
_central_bank_profits(r_bar, D_k, L_G, r_G)

Helper function to calculate the profits of a central bank.

Arguments

  • r_bar: The base interest rate
  • D_k: Deposits from commercial banks
  • L_G: Loans provided to the government
  • r_G: Interest rate on government loans

Returns

  • Pi_CB: Profits of the central bank

The profits Pi_CB are calculated as follows:

\[\{Pi}_{CB} = r_{G} \cdot L_{G} - r_{bar} \cdot D_{k}\]

source
BeforeIT.bank_depositsMethod
deposits_bank(bank, w_act, w_inact, firms)

Calculate the new deposits of a bank.

Arguments

  • bank: The Bank object containing the bank of the model
  • w_act: The Workers object containing the active workers of the model
  • w_inact: The Workers object containing the inactive workers of the model
  • firms: The Firms object containing the firms of the model

Returns

  • D_k: New deposits of the bank

The new deposits D_k are calculated as the sum of the deposits of the active workers, the inactive workers, the firms, and the bank owner itself, plus the bank's equity, minus the loans of the firms.

source
BeforeIT.bank_equityMethod
bank_equity(bank, model)

Calculate the net profits of a bank.

Arguments

  • bank: The bank object.
  • model: The model object.

Returns

  • E_k: The updated equity of the bank.

The net profits DE_k are calculated as:

\[DE_k = \Pi_k - \theta_{DIV} \cdot (1 - \tau_{FIRM}) \cdot \max(0, \Pi_k) - \tau_{FIRM} \cdot \max(0, \Pi_k)\]

and the equity E_k is updated as:

\[E_k = E_k + DE_k\]

source
BeforeIT.bank_expected_profitsMethod
bank_expected_profits(Pi_k, pi_e, gamma_e)

Calculate the expected profits of a bank.

Arguments

  • Pi_k: Past profits of the bank
  • pi_e: Expected inflation rate
  • gamma_e: Expected growth rate

Returns

  • E_Pi_k: Expected profits of the bank

The expected profits E_Pi_k are calculated as follows:

\[E_{\Pi_k} = \Pi_k \cdot (1 + \pi_e) \cdot (1 + \gamma_e)\]

source
BeforeIT.bank_profitsMethod
bank_profits(bank, model)

Calculate the total profits of a bank.

Arguments

  • bank: The bank object.
  • model: The model object.

Returns

  • Pi_k: The total profits of the bank.

The total profits Pi_k are calculated as:

\[\Pi_k = r \cdot \sum_i(L_i + \max(0, -D_i)) + r \cdot \sum_h(\max(0, -D_h)) + r_{bar} \cdot \max(0, D_k) - r_{bar} \cdot \sum_i(\max(0, D_i)) - r_{bar} \cdot -\sum_h(\max(0, D_h)) - r_{bar} \cdot \max(0, -D_k)\]

source
BeforeIT.bank_rateMethod
bank_rate(bank, model)

Update the interest rate set by the bank.

Arguments

  • bank: The bank whose interest rate is to be updated
  • model: Model object

Returns

  • r: The updated interest rate

\[r = \bar{r} + \mu\]

source
BeforeIT.central_bank_equityMethod
central_bank_equity(cb, model)

Calculate the equity of the central bank.

Arguments

  • cb: The central bank
  • model: The model object

Returns

  • E_CB: The equity of the central bank

The equity E_CB is calculated as follows:

\[E_{CB} = E_{CB} + \Pi_{CB}\]

where \Pi_{CB} are the profits of the central bank.

source
BeforeIT.central_bank_rateMethod
central_bank_rate(cb, model)

Update the base interest rate set by the central bank according to the Taylor rule.

Arguments

  • cb: The central bank whose base interest rate is to be updated
  • model: The model object

Returns

  • r_bar: The updated base interest rate
source
BeforeIT.finance_insolvent_firms!Method
finance_insolvent_firms!(firms, bank, P_bar_CF, zeta_b,  insolvent)

Rifinance insolvent firms using bank equity.

Arguments

  • firms: The Firms object containing the firms of the model
  • bank: The Bank object containing the bank of the model
  • P_bar_CF: Capital price index
  • zeta_b: Parameter of loan-to-capital ratio for new firms after bankruptcy

Returns

  • This function does not return a value. It modifies the banks and firms collections in-place.
source
BeforeIT.taylor_ruleMethod
taylor_rule(rho, r_bar, r_star, pi_star, xi_pi, xi_gamma, gamma_EA, pi_EA)

Calculate the interest rate according to the Taylor rule.

Arguments

  • rho: Parameter for gradual adjustment of the policy rate.
  • r_bar: Nominal interest rate.
  • r_star: Real equilibrium interest rate.
  • pi_star: The target inflation rate.
  • xi_pi: Weight the CB puts on inflation targeting.
  • xi_gamma: Weight placed on economic growth.
  • gamma_EA: The output growth rate.
  • pi_EA: The inflation rate.

Returns

  • rate: The calculated interest rate.

The Taylor rule is given by the following equation:

\[r_t = ρ * r_{t-1} + (1 - ρ) * (r^* + π^* + ξ_π * (π_t - π^*) + ξ_γ * γ_t)```\]

source

Rest Of The World actions

BeforeIT.rotw_depositsMethod
rotw_deposits(rotw, tau_EXPORT)

Calculate the deposits of the rest of the world.

Arguments

  • rotw: The rest of the world object.
  • tau_EXPORT: The export tax.

Returns

  • D_RoW: The deposits of the rest of the world.

The deposits D_RoW are calculated as follows:

\[D_{RoW} = D_{RoW} + \left( \sum_{m} P_m \cdot Q_m \right) - (1 + \tau_{EXPORT}) \cdot C_l\]

source
BeforeIT.rotw_import_exportMethod
rotw_import_export(rotw, model, pi_e, epsilon_E, epsilon_I)

Calculate the demand for exports and supply of imports of the rest of the world.

Arguments

  • rotw: The rest of the world object.
  • model: The model object.

Returns

  • C_E: Total demand for exports.
  • Y_I: Supply of imports (in real terms).
  • C_d_l: TDemand for exports of specific product.
  • Y_m: Supply of imports per sector.
  • P_m: Price of imports per sector.
source

Markets

BeforeIT.search_and_matching_creditMethod
search_and_matching_credit(firms::Firms, model)

This function calculates the credit allocation for each firm in the given firms object.

Parameters:

  • firms::Firms: The firms object.
  • model: The model object.

Returns:

  • DL_i: An array of credit allocations for each firm.
source
BeforeIT.search_and_matching_labourMethod
search_and_matching_labour(firms::Firms, model)

This function implements a labor search and matching algorithm. It takes in a Firms object and a Model object as input. The Firms object contains information about the number of desired employees (N_d_i) and the current number of employees (N_i) for each firm. The model object contains information about the current employment status (O_h) of each worker.

The function performs the following steps:

  • Calculates the vacancies (V_i) for each firm as the difference between desired and current employees.
  • Identifies employed workers and shuffles them randomly.
  • Fires workers from firms with negative vacancies to adjust the workforce.
  • Identifies unemployed workers and firms with positive vacancies.
  • Randomly matches unemployed workers to firms with vacancies until all vacancies are filled or there are no more unemployed workers.

The function returns:

  • N_i: An updated array of the number of employed workers for each firm.
  • O_h: An updated array where each element represents the firm a worker is employed with (0 if unemployed).
source
BeforeIT.search_and_matching!Function
search_and_matching!(model, multi_threading::Bool = false)

This function performs a search and matching algorithm for firms and for retail markets. It takes in a model object and an optional boolean argument for multi-threading. The function loops over all goods and performs the firms market and retail market operations for each good. Finally, it updates the aggregate variables based on the results of markets.

Args:

  • model: The model object
  • multi_threading: A boolean indicating whether to use multi-threading for the algorithm. Default is false.

This function updates the model in-place and does not return any value.

source
+\sum_h(\max(0, D_h)) - r_{bar} \cdot \max(0, -D_k)\]

source
BeforeIT.bank_rateMethod
bank_rate(bank, model)

Update the interest rate set by the bank.

Arguments

  • bank: The bank whose interest rate is to be updated
  • model: Model object

Returns

  • r: The updated interest rate

\[r = \bar{r} + \mu\]

source
BeforeIT.central_bank_equityMethod
central_bank_equity(cb, model)

Calculate the equity of the central bank.

Arguments

  • cb: The central bank
  • model: The model object

Returns

  • E_CB: The equity of the central bank

The equity E_CB is calculated as follows:

\[E_{CB} = E_{CB} + \Pi_{CB}\]

where \Pi_{CB} are the profits of the central bank.

source
BeforeIT.central_bank_rateMethod
central_bank_rate(cb, model)

Update the base interest rate set by the central bank according to the Taylor rule.

Arguments

  • cb: The central bank whose base interest rate is to be updated
  • model: The model object

Returns

  • r_bar: The updated base interest rate
source
BeforeIT.finance_insolvent_firms!Method
finance_insolvent_firms!(firms, bank, P_bar_CF, zeta_b,  insolvent)

Rifinance insolvent firms using bank equity.

Arguments

  • firms: The Firms object containing the firms of the model
  • bank: The Bank object containing the bank of the model
  • P_bar_CF: Capital price index
  • zeta_b: Parameter of loan-to-capital ratio for new firms after bankruptcy

Returns

  • This function does not return a value. It modifies the banks and firms collections in-place.
source
BeforeIT.taylor_ruleMethod
taylor_rule(rho, r_bar, r_star, pi_star, xi_pi, xi_gamma, gamma_EA, pi_EA)

Calculate the interest rate according to the Taylor rule.

Arguments

  • rho: Parameter for gradual adjustment of the policy rate.
  • r_bar: Nominal interest rate.
  • r_star: Real equilibrium interest rate.
  • pi_star: The target inflation rate.
  • xi_pi: Weight the CB puts on inflation targeting.
  • xi_gamma: Weight placed on economic growth.
  • gamma_EA: The output growth rate.
  • pi_EA: The inflation rate.

Returns

  • rate: The calculated interest rate.

The Taylor rule is given by the following equation:

\[r_t = ρ * r_{t-1} + (1 - ρ) * (r^* + π^* + ξ_π * (π_t - π^*) + ξ_γ * γ_t)```\]

source

Rest Of The World actions

BeforeIT.rotw_depositsMethod
rotw_deposits(rotw, tau_EXPORT)

Calculate the deposits of the rest of the world.

Arguments

  • rotw: The rest of the world object.
  • tau_EXPORT: The export tax.

Returns

  • D_RoW: The deposits of the rest of the world.

The deposits D_RoW are calculated as follows:

\[D_{RoW} = D_{RoW} + \left( \sum_{m} P_m \cdot Q_m \right) - (1 + \tau_{EXPORT}) \cdot C_l\]

source
BeforeIT.rotw_import_exportMethod
rotw_import_export(rotw, model, pi_e, epsilon_E, epsilon_I)

Calculate the demand for exports and supply of imports of the rest of the world.

Arguments

  • rotw: The rest of the world object.
  • model: The model object.

Returns

  • C_E: Total demand for exports.
  • Y_I: Supply of imports (in real terms).
  • C_d_l: TDemand for exports of specific product.
  • Y_m: Supply of imports per sector.
  • P_m: Price of imports per sector.
source

Markets

BeforeIT.search_and_matching_creditMethod
search_and_matching_credit(firms::Firms, model)

This function calculates the credit allocation for each firm in the given firms object.

Parameters:

  • firms::Firms: The firms object.
  • model: The model object.

Returns:

  • DL_i: An array of credit allocations for each firm.
source
BeforeIT.search_and_matching_labourMethod
search_and_matching_labour(firms::Firms, model)

This function implements a labor search and matching algorithm. It takes in a Firms object and a Model object as input. The Firms object contains information about the number of desired employees (N_d_i) and the current number of employees (N_i) for each firm. The model object contains information about the current employment status (O_h) of each worker.

The function performs the following steps:

  • Calculates the vacancies (V_i) for each firm as the difference between desired and current employees.
  • Identifies employed workers and shuffles them randomly.
  • Fires workers from firms with negative vacancies to adjust the workforce.
  • Identifies unemployed workers and firms with positive vacancies.
  • Randomly matches unemployed workers to firms with vacancies until all vacancies are filled or there are no more unemployed workers.

The function returns:

  • N_i: An updated array of the number of employed workers for each firm.
  • O_h: An updated array where each element represents the firm a worker is employed with (0 if unemployed).
source
BeforeIT.perform_firms_market!Method

Perform the firms market exchange process

source
BeforeIT.perform_retail_market!Method

Perform the retail market exchange process

source
BeforeIT.search_and_matching!Function
search_and_matching!(model, multi_threading::Bool = false)

This function performs a search and matching algorithm for firms and for retail markets. It takes in a model object and an optional boolean argument for multi-threading. The function loops over all goods and performs the firms market and retail market operations for each good. Finally, it updates the aggregate variables based on the results of markets.

Args:

  • model: The model object
  • multi_threading: A boolean indicating whether to use multi-threading for the algorithm. Default is false.

This function updates the model in-place and does not return any value.

source
diff --git a/dev/examples/basic_example-09b2475d.svg b/dev/examples/basic_example-09b2475d.svg deleted file mode 100644 index 6be3f1a..0000000 --- a/dev/examples/basic_example-09b2475d.svg +++ /dev/null @@ -1,278 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/dev/examples/basic_example-10b83f55.svg b/dev/examples/basic_example-10b83f55.svg new file mode 100644 index 0000000..3352dee --- /dev/null +++ b/dev/examples/basic_example-10b83f55.svg @@ -0,0 +1,277 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/dev/examples/basic_example-67f88e0e.svg b/dev/examples/basic_example-67f88e0e.svg deleted file mode 100644 index 6fef194..0000000 --- a/dev/examples/basic_example-67f88e0e.svg +++ /dev/null @@ -1,281 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/dev/examples/basic_example-95f5ff37.svg b/dev/examples/basic_example-95f5ff37.svg deleted file mode 100644 index 2daa22d..0000000 --- a/dev/examples/basic_example-95f5ff37.svg +++ /dev/null @@ -1,48 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/dev/examples/basic_example-99d878a6.svg b/dev/examples/basic_example-99d878a6.svg new file mode 100644 index 0000000..67e2d1d --- /dev/null +++ b/dev/examples/basic_example-99d878a6.svg @@ -0,0 +1,288 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/dev/examples/basic_example-deeb4943.svg b/dev/examples/basic_example-deeb4943.svg new file mode 100644 index 0000000..5c7a739 --- /dev/null +++ b/dev/examples/basic_example-deeb4943.svg @@ -0,0 +1,48 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/dev/examples/basic_example.html b/dev/examples/basic_example.html index 6e766b6..2dd03db 100644 --- a/dev/examples/basic_example.html +++ b/dev/examples/basic_example.html @@ -22,26 +22,10 @@ "Y_EA" => 2.35485e6 "D_I" => 54049.0 ⋮ => ⋮

We can now initialise the model, by specifying in advance the maximum number of epochs.

T = 16
-model = Bit.init_model(parameters, initial_conditions, T)
Model(Workers{Vector{Float64}, Vector{Int64}}([0.7661282859097249, 0.7661282859097249, 0.7661282859097249, 0.7661282859097249, 0.7661282859097249, 0.7661282859097249, 0.7661282859097249, 0.7661282859097249, 0.7661282859097249, 0.7661282859097249  …  4.655745607447569, 4.655745607447569, 4.655745607447569, 4.655745607447569, 4.655745607447569, 4.655745607447569, 4.655745607447569, 4.655745607447569, 4.655745607447569, 4.655745607447569], [3.781806633594487, 3.781806633594487, 3.781806633594487, 3.781806633594487, 3.781806633594487, 3.781806633594487, 3.781806633594487, 3.781806633594487, 3.781806633594487, 3.781806633594487  …  22.981960001210958, 22.981960001210958, 22.981960001210958, 22.981960001210958, 22.981960001210958, 22.981960001210958, 22.981960001210958, 22.981960001210958, 22.981960001210958, 22.981960001210958], [6.973481059156249, 6.973481059156249, 6.973481059156249, 6.973481059156249, 6.973481059156249, 6.973481059156249, 6.973481059156249, 6.973481059156249, 6.973481059156249, 6.973481059156249  …  42.37769888790032, 42.37769888790032, 42.37769888790032, 42.37769888790032, 42.37769888790032, 42.37769888790032, 42.37769888790032, 42.37769888790032, 42.37769888790032, 42.37769888790032], [0.2697101055708983, 0.2697101055708983, 0.2697101055708983, 0.2697101055708983, 0.2697101055708983, 0.2697101055708983, 0.2697101055708983, 0.2697101055708983, 0.2697101055708983, 0.2697101055708983  …  11.337587012313522, 11.337587012313522, 11.337587012313522, 11.337587012313522, 11.337587012313522, 11.337587012313522, 11.337587012313522, 11.337587012313522, 11.337587012313522, 11.337587012313522], [1, 2, 2, 3, 3, 4, 5, 6, 7, 8  …  0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]), Workers{Vector{Float64}, Vector{Int64}}([2.8287542404944714, 2.8287542404944714, 2.8287542404944714, 2.8287542404944714, 2.8287542404944714, 2.8287542404944714, 2.8287542404944714, 2.8287542404944714, 2.8287542404944714, 2.8287542404944714  …  2.8287542404944714, 2.8287542404944714, 2.8287542404944714, 2.8287542404944714, 2.8287542404944714, 2.8287542404944714, 2.8287542404944714, 2.8287542404944714, 2.8287542404944714, 2.8287542404944714], [13.963459838592984, 13.963459838592984, 13.963459838592984, 13.963459838592984, 13.963459838592984, 13.963459838592984, 13.963459838592984, 13.963459838592984, 13.963459838592984, 13.963459838592984  …  13.963459838592984, 13.963459838592984, 13.963459838592984, 13.963459838592984, 13.963459838592984, 13.963459838592984, 13.963459838592984, 13.963459838592984, 13.963459838592984, 13.963459838592984], [25.74799087814977, 25.74799087814977, 25.74799087814977, 25.74799087814977, 25.74799087814977, 25.74799087814977, 25.74799087814977, 25.74799087814977, 25.74799087814977, 25.74799087814977  …  25.74799087814977, 25.74799087814977, 25.74799087814977, 25.74799087814977, 25.74799087814977, 25.74799087814977, 25.74799087814977, 25.74799087814977, 25.74799087814977, 25.74799087814977], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1  …  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]), Firms{Vector{Float64}, Vector{Int64}}([1, 1, 1, 1, 1, 1, 1, 1, 1, 1  …  62, 62, 62, 62, 62, 62, 62, 62, 62, 62], [10.822026659306621, 10.822026659306621, 10.822026659306621, 10.822026659306621, 10.822026659306621, 10.822026659306621, 10.822026659306621, 10.822026659306621, 10.822026659306621, 10.822026659306621  …  11.988103388298951, 11.988103388298951, 11.988103388298951, 11.988103388298951, 11.988103388298951, 11.988103388298951, 11.988103388298951, 11.988103388298951, 11.988103388298951, 11.988103388298951], [1.6631751855300485, 1.6631751855300485, 1.6631751855300485, 1.6631751855300485, 1.6631751855300485, 1.6631751855300485, 1.6631751855300485, 1.6631751855300485, 1.6631751855300485, 1.6631751855300485  …  3.4759574544453877, 3.4759574544453877, 3.4759574544453877, 3.4759574544453877, 3.4759574544453877, 3.4759574544453877, 3.4759574544453877, 3.4759574544453877, 3.4759574544453877, 3.4759574544453877], [0.042702129272078754, 0.042702129272078754, 0.042702129272078754, 0.042702129272078754, 0.042702129272078754, 0.042702129272078754, 0.042702129272078754, 0.042702129272078754, 0.042702129272078754, 0.042702129272078754  …  0.17805766706016946, 0.17805766706016946, 0.17805766706016946, 0.17805766706016946, 0.17805766706016946, 0.17805766706016946, 0.17805766706016946, 0.17805766706016946, 0.17805766706016946, 0.17805766706016946], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.2697101055708983, 0.2697101055708983, 0.2697101055708983, 0.2697101055708983, 0.2697101055708983, 0.2697101055708983, 0.2697101055708983, 0.2697101055708983, 0.2697101055708983, 0.2697101055708983  …  2.6020133813757687, 2.6020133813757687, 2.6020133813757687, 2.6020133813757687, 2.6020133813757687, 2.6020133813757687, 2.6020133813757687, 2.6020133813757687, 2.6020133813757687, 2.6020133813757687], [0.011078553057541721, 0.011078553057541721, 0.011078553057541721, 0.011078553057541721, 0.011078553057541721, 0.011078553057541721, 0.011078553057541721, 0.011078553057541721, 0.011078553057541721, 0.011078553057541721  …  0.012425621091468782, 0.012425621091468782, 0.012425621091468782, 0.012425621091468782, 0.012425621091468782, 0.012425621091468782, 0.012425621091468782, 0.012425621091468782, 0.012425621091468782, 0.012425621091468782], [0.009528627732528832, 0.009528627732528832, 0.009528627732528832, 0.009528627732528832, 0.009528627732528832, 0.009528627732528832, 0.009528627732528832, 0.009528627732528832, 0.009528627732528832, 0.009528627732528832  …  0.010357147774366318, 0.010357147774366318, 0.010357147774366318, 0.010357147774366318, 0.010357147774366318, 0.010357147774366318, 0.010357147774366318, 0.010357147774366318, 0.010357147774366318, 0.010357147774366318], [-0.26105054841223635, -0.26105054841223635, -0.26105054841223635, -0.26105054841223635, -0.26105054841223635, -0.26105054841223635, -0.26105054841223635, -0.26105054841223635, -0.26105054841223635, -0.26105054841223635  …  0.013413693877270037, 0.013413693877270037, 0.013413693877270037, 0.013413693877270037, 0.013413693877270037, 0.013413693877270037, 0.013413693877270037, 0.013413693877270037, 0.013413693877270037, 0.013413693877270037], [1, 2, 2, 1, 1, 1, 1, 4, 1, 1  …  3, 3, 1, 1, 1, 4, 4, 2, 1, 14], [10.822026659306621, 21.644053318613242, 21.644053318613242, 10.822026659306621, 10.822026659306621, 10.822026659306621, 10.822026659306621, 43.288106637226484, 10.822026659306621, 10.822026659306621  …  35.96431016489685, 35.96431016489685, 11.988103388298951, 11.988103388298951, 11.988103388298951, 47.952413553195804, 47.952413553195804, 23.976206776597902, 11.988103388298951, 167.8334474361853], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [10.822026659306621, 21.644053318613242, 21.644053318613242, 10.822026659306621, 10.822026659306621, 10.822026659306621, 10.822026659306621, 43.288106637226484, 10.822026659306621, 10.822026659306621  …  35.96431016489685, 35.96431016489685, 11.988103388298951, 11.988103388298951, 11.988103388298951, 47.952413553195804, 47.952413553195804, 23.976206776597902, 11.988103388298951, 167.8334474361853], [1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0  …  1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [298.15365853658534, 596.3073170731707, 596.3073170731707, 298.15365853658534, 298.15365853658534, 298.15365853658534, 298.15365853658534, 1192.6146341463414, 298.15365853658534, 298.15365853658534  …  237.625, 237.625, 79.20833333333334, 79.20833333333334, 79.20833333333334, 316.83333333333337, 316.83333333333337, 158.41666666666669, 79.20833333333334, 1108.9166666666667], [7.65511425407355, 15.3102285081471, 15.3102285081471, 7.65511425407355, 7.65511425407355, 7.65511425407355, 7.65511425407355, 30.6204570162942, 7.65511425407355, 7.65511425407355  …  12.172460017041193, 12.172460017041193, 4.057486672347064, 4.057486672347064, 4.057486672347064, 16.229946689388257, 16.229946689388257, 8.114973344694128, 4.057486672347064, 56.804813412858906], [94.08074124608001, 188.16148249216002, 188.16148249216002, 94.08074124608001, 94.08074124608001, 94.08074124608001, 94.08074124608001, 376.32296498432004, 94.08074124608001, 94.08074124608001  …  74.98125714213413, 74.98125714213413, 24.99375238071138, 24.99375238071138, 24.99375238071138, 99.97500952284553, 99.97500952284553, 49.98750476142276, 24.99375238071138, 349.91253332995933], [0.36061475737617726, 0.36061475737617726, 0.36061475737617726, 0.36061475737617726, 0.36061475737617726, 0.36061475737617726, 0.36061475737617726, 0.36061475737617726, 0.36061475737617726, 0.36061475737617726  …  0.35565736393550956, 0.35565736393550956, 0.35565736393550956, 0.35565736393550956, 0.35565736393550956, 0.35565736393550956, 0.35565736393550956, 0.35565736393550956, 0.35565736393550956, 0.35565736393550956], [12.38429205306701, 24.76858410613402, 24.76858410613402, 12.38429205306701, 12.38429205306701, 12.38429205306701, 12.38429205306701, 49.53716821226804, 12.38429205306701, 12.38429205306701  …  40.59033448978561, 40.59033448978561, 13.530111496595204, 13.530111496595204, 13.530111496595204, 54.120445986380815, 54.120445986380815, 27.060222993190408, 13.530111496595204, 189.42156095233284], [1.2548454674764362, 2.5096909349528724, 2.5096909349528724, 1.2548454674764362, 1.2548454674764362, 1.2548454674764362, 1.2548454674764362, 5.019381869905745, 1.2548454674764362, 1.2548454674764362  …  10.731319451394864, 10.731319451394864, 3.5771064837982873, 3.5771064837982873, 3.5771064837982873, 14.30842593519315, 14.30842593519315, 7.154212967596575, 3.5771064837982873, 50.07949077317601], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0  …  0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0  …  0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [1.3061857958470844, 2.0220856873365385, 2.0220856873365385, 1.3061857958470844, 1.3061857958470844, 1.3061857958470844, 1.3061857958470844, 3.4538854703154467, 1.3061857958470844, 1.3061857958470844  …  6.712593893597363, 6.712593893597363, 2.631055234104207, 2.631055234104207, 2.631055234104207, 8.75336322334394, 8.75336322334394, 4.671824563850785, 2.631055234104207, 29.1610565208097], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [11.889212387273577, 18.405502707537227, 18.405502707537227, 11.889212387273577, 11.889212387273577, 11.889212387273577, 11.889212387273577, 31.438083348064524, 11.889212387273577, 11.889212387273577  …  61.09961900078557, 61.09961900078557, 23.948487711601803, 23.948487711601803, 23.948487711601803, 79.67518464537744, 79.67518464537744, 42.52405335619368, 23.948487711601803, 265.43084109129614], [6.447669663541781, 9.981535999529552, 9.981535999529552, 6.447669663541781, 6.447669663541781, 6.447669663541781, 6.447669663541781, 17.049268671505093, 6.447669663541781, 6.447669663541781  …  33.13509314603694, 33.13509314603694, 12.98756660038165, 12.98756660038165, 12.98756660038165, 43.20885641886457, 43.20885641886457, 23.06132987320929, 12.98756660038165, 143.94648914714094]), Bank{Float64}(89460.0, 6476.292527744359, 0.0, 126431.00000000006, 0.028359903595743693, 3695.369633667522, 0.0, 0.0, 0.0, 0.0, 33636.12938055408, 18241.296726948152), CentralBank{Float64}(0.0016459319014481277, 0.0089810924595537, 0.9259668580654086, -0.003424572940686137, 0.0049629315732038215, 0.30996974466133875, 1.328593153520194, 106179.90000000002), Government{Float64}(0.9905949533296431, 0.09373211872949586, 0.011235005057648862, 0.0, 14732.121510837034, 232610.9, 2.238468336136841, 0.5902859043576301, [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], 0.0, 0.0), RestOfTheWorld{Float64}(0.962809216044625, 0.39260026877953946, 0.020320381298662014, 0.9662360466537488, 0.35492769963078624, 0.02122821278168188, 2.3548476e6, 0.0, 0.0019383188997990075, 0.38456173629534834, 0.0026219533879005877, 0.0025327891562467505, 0.9635784504324201, 0.5360029623199525, 0.006618207536795881, 0.0, 33097.63671130043, 34095.03119997918, [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], 0.0, [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], 0.0), Aggregates{Float64, Int64}([104531.39273728609, 105062.38754395355, 105399.12953350678, 106689.88106040593, 107938.33111423723, 108890.48532381697, 110110.17779727321, 110374.00540561741, 110808.89423399912, 111932.48072916963  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [-0.007497362866886709, -0.007895434153021436, -0.0019938777296781562, -0.0035311300388783107, 0.001212170001002849, -0.001672412335241874, 0.001839696090252002, 0.004290005139261838, 0.00600429551344886, 0.0036060572293247772  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], 1.0, [1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0  …  1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0], 1.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1), MutableNamedTuple(tau_VAT = 0.1528683933530887, tau_EXPORT = 0.0029486201783457183, tau_SIW = 0.17114894621657745, psi_H = 0.07125099957246343, tau_FIRM = 0.07701197259426128, H_inact = 4130, theta_DIV = 0.7858074440019603, I_s = [48, 2, 1, 1, 5, 2, 4, 1, 1, 1  …  14, 10, 13, 41, 20, 16, 7, 7, 2, 19], psi = 0.9096681249468772, tau_INC = 0.21340742230566648, zeta_b = 0.5, tau_CF = 0.08761417854834112, H_act = 4743, zeta = 0.03, mu = 0.026713971694295565, tau_G = 0.009147800682711324, theta_UB = 0.3585824478060919, T_prime = 54, tau_SIF = 0.21215146534992413, T = 16, zeta_LTV = 0.6, I = 624, products = MutableNamedTuple(a_sg = [0.37790282216028437 0.0 … 0.0 0.0; 0.0006712800413285777 0.8149348034258406 … 2.4029219530949635e-5 0.00019143106686926454; … ; 0.00037430822580994426 0.000357977071568566 … 0.3197327950788158 0.0011366219595362582; 0.0 5.36965607352849e-5 … 0.0 0.05594572929254256], b_CF_g = [0.0033476048872100555, 0.0, 0.0, 0.0008050086095806136, 0.0, 0.003306696048303853, 0.0030629933432974495, 0.0, 0.0, 0.0  …  0.0017883064872300512, 0.0, 0.0, 0.0, 0.0, 0.002291709084994238, 0.0, 0.0, 0.0, 0.0], b_CFH_g = [0.0006092803753845975, 0.0, 0.0, 0.004372477702289994, 0.0, 0.0, 0.06710603871527036, 0.0, 0.0, 0.0  …  0.0041711096896454745, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], c_E_g = [0.005090338238241512, 0.0005933402816643566, 1.793599921320476e-5, 0.007268146142708006, 0.05434404438533037, 0.02138421321578873, 0.023894091259534518, 0.028037089231640524, 0.005923381894006229, 0.011927802553688313  …  0.0014618202435669027, 0.0009447261124040238, 0.0001280209174610526, 0.0010477673386531637, 0.0, 0.0013030104043795392, 5.5260305268213854e-5, 0.0, 1.307076865739618e-5, 8.641230390167474e-6], b_HH_g = [0.011287997598927976, 0.0020040637862256817, 0.0003326837475323491, 0.00034402684015257527, 0.06305103828047173, 0.03068200872784047, 0.0003505790613555631, 0.0020473225369636873, 0.0, 0.0191077565617325  …  0.005591228759882936, 0.0004356874830029748, 0.014434120586233577, 0.03514505772295519, 0.024907176866291014, 0.013342154173060372, 0.009686226103767459, 0.011051272187723254, 0.0021206651420422927, 0.01721782824162338], c_G_g = [0.0, 0.0, 0.0, 0.0, 8.57086390274792e-6, 0.0, 0.0, 0.0, 2.4536198623552867e-5, 0.0  …  0.008555738848801895, 0.3324338967920097, 0.22067672180252998, 0.2370889178393625, 0.0477595425645907, 0.012942508661614227, 0.004667927760053456, 0.021757222045203074, 0.0, 0.002000708524749294], c_I_g = [0.016810689305736877, 0.004087420487057966, 0.00036885674795364003, 0.05818437780960789, 0.04895082866561155, 0.04689140072807505, 0.010101572733480902, 0.016066325760592727, 0.00037371898454196314, 0.041008926225895866  …  0.0018123421762754539, 0.000401097116716159, 0.0003479865324437806, 0.0006664256271585853, 0.0028556289501379516, 0.001307065586721844, 6.418152296577174e-5, 0.0, 3.538212163497461e-5, 0.00020458795490837936]), J = 156, G = 62, H = 8873, L = 312, theta = 0.05, C = [4.3800671000101816e-5 0.00010629745355671226 9.959785873214212e-5; 0.00010629745355671226 0.0004129178961230129 0.0003596689472264872; 9.959785873214212e-5 0.0003596689472264872 0.0004506370179043619]))

Note that the it is very simple to inspect the model by typing

fieldnames(typeof(model))
(:w_act, :w_inact, :firms, :bank, :cb, :gov, :rotw, :agg, :prop)

and to inspect the specific attributes of one agent type by typing

fieldnames(typeof(model.bank))
(:E_k, :Pi_k, :Pi_e_k, :D_k, :r, :Y_h, :C_d_h, :I_d_h, :C_h, :I_h, :K_h, :D_h)

We can now define a data tracker, which will store the time series of the model.

data = Bit.init_data(model);

We can run now the model for a number of epochs and progressively update the data tracker.

for t in 1:T
-    println(t)
+model = Bit.init_model(parameters, initial_conditions, T)
Model(Workers{Vector{Float64}, Vector{Int64}}([0.7661282859097249, 0.7661282859097249, 0.7661282859097249, 0.7661282859097249, 0.7661282859097249, 0.7661282859097249, 0.7661282859097249, 0.7661282859097249, 0.7661282859097249, 0.7661282859097249  …  4.655745607447569, 4.655745607447569, 4.655745607447569, 4.655745607447569, 4.655745607447569, 4.655745607447569, 4.655745607447569, 4.655745607447569, 4.655745607447569, 4.655745607447569], [3.781806633594487, 3.781806633594487, 3.781806633594487, 3.781806633594487, 3.781806633594487, 3.781806633594487, 3.781806633594487, 3.781806633594487, 3.781806633594487, 3.781806633594487  …  22.981960001210958, 22.981960001210958, 22.981960001210958, 22.981960001210958, 22.981960001210958, 22.981960001210958, 22.981960001210958, 22.981960001210958, 22.981960001210958, 22.981960001210958], [6.973481059156249, 6.973481059156249, 6.973481059156249, 6.973481059156249, 6.973481059156249, 6.973481059156249, 6.973481059156249, 6.973481059156249, 6.973481059156249, 6.973481059156249  …  42.37769888790032, 42.37769888790032, 42.37769888790032, 42.37769888790032, 42.37769888790032, 42.37769888790032, 42.37769888790032, 42.37769888790032, 42.37769888790032, 42.37769888790032], [0.2697101055708983, 0.2697101055708983, 0.2697101055708983, 0.2697101055708983, 0.2697101055708983, 0.2697101055708983, 0.2697101055708983, 0.2697101055708983, 0.2697101055708983, 0.2697101055708983  …  11.337587012313522, 11.337587012313522, 11.337587012313522, 11.337587012313522, 11.337587012313522, 11.337587012313522, 11.337587012313522, 11.337587012313522, 11.337587012313522, 11.337587012313522], [1, 2, 3, 4, 5, 6, 7, 8, 8, 8  …  0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]), Workers{Vector{Float64}, Vector{Int64}}([2.8287542404944714, 2.8287542404944714, 2.8287542404944714, 2.8287542404944714, 2.8287542404944714, 2.8287542404944714, 2.8287542404944714, 2.8287542404944714, 2.8287542404944714, 2.8287542404944714  …  2.8287542404944714, 2.8287542404944714, 2.8287542404944714, 2.8287542404944714, 2.8287542404944714, 2.8287542404944714, 2.8287542404944714, 2.8287542404944714, 2.8287542404944714, 2.8287542404944714], [13.963459838592984, 13.963459838592984, 13.963459838592984, 13.963459838592984, 13.963459838592984, 13.963459838592984, 13.963459838592984, 13.963459838592984, 13.963459838592984, 13.963459838592984  …  13.963459838592984, 13.963459838592984, 13.963459838592984, 13.963459838592984, 13.963459838592984, 13.963459838592984, 13.963459838592984, 13.963459838592984, 13.963459838592984, 13.963459838592984], [25.74799087814977, 25.74799087814977, 25.74799087814977, 25.74799087814977, 25.74799087814977, 25.74799087814977, 25.74799087814977, 25.74799087814977, 25.74799087814977, 25.74799087814977  …  25.74799087814977, 25.74799087814977, 25.74799087814977, 25.74799087814977, 25.74799087814977, 25.74799087814977, 25.74799087814977, 25.74799087814977, 25.74799087814977, 25.74799087814977], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1  …  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]), Firms{Vector{Float64}, Vector{Int64}}([1, 1, 1, 1, 1, 1, 1, 1, 1, 1  …  62, 62, 62, 62, 62, 62, 62, 62, 62, 62], [10.822026659306621, 10.822026659306621, 10.822026659306621, 10.822026659306621, 10.822026659306621, 10.822026659306621, 10.822026659306621, 10.822026659306621, 10.822026659306621, 10.822026659306621  …  11.988103388298951, 11.988103388298951, 11.988103388298951, 11.988103388298951, 11.988103388298951, 11.988103388298951, 11.988103388298951, 11.988103388298951, 11.988103388298951, 11.988103388298951], [1.6631751855300485, 1.6631751855300485, 1.6631751855300485, 1.6631751855300485, 1.6631751855300485, 1.6631751855300485, 1.6631751855300485, 1.6631751855300485, 1.6631751855300485, 1.6631751855300485  …  3.4759574544453877, 3.4759574544453877, 3.4759574544453877, 3.4759574544453877, 3.4759574544453877, 3.4759574544453877, 3.4759574544453877, 3.4759574544453877, 3.4759574544453877, 3.4759574544453877], [0.042702129272078754, 0.042702129272078754, 0.042702129272078754, 0.042702129272078754, 0.042702129272078754, 0.042702129272078754, 0.042702129272078754, 0.042702129272078754, 0.042702129272078754, 0.042702129272078754  …  0.17805766706016946, 0.17805766706016946, 0.17805766706016946, 0.17805766706016946, 0.17805766706016946, 0.17805766706016946, 0.17805766706016946, 0.17805766706016946, 0.17805766706016946, 0.17805766706016946], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.2697101055708983, 0.2697101055708983, 0.2697101055708983, 0.2697101055708983, 0.2697101055708983, 0.2697101055708983, 0.2697101055708983, 0.2697101055708983, 0.2697101055708983, 0.2697101055708983  …  2.6020133813757687, 2.6020133813757687, 2.6020133813757687, 2.6020133813757687, 2.6020133813757687, 2.6020133813757687, 2.6020133813757687, 2.6020133813757687, 2.6020133813757687, 2.6020133813757687], [0.011078553057541721, 0.011078553057541721, 0.011078553057541721, 0.011078553057541721, 0.011078553057541721, 0.011078553057541721, 0.011078553057541721, 0.011078553057541721, 0.011078553057541721, 0.011078553057541721  …  0.012425621091468782, 0.012425621091468782, 0.012425621091468782, 0.012425621091468782, 0.012425621091468782, 0.012425621091468782, 0.012425621091468782, 0.012425621091468782, 0.012425621091468782, 0.012425621091468782], [0.009528627732528832, 0.009528627732528832, 0.009528627732528832, 0.009528627732528832, 0.009528627732528832, 0.009528627732528832, 0.009528627732528832, 0.009528627732528832, 0.009528627732528832, 0.009528627732528832  …  0.010357147774366318, 0.010357147774366318, 0.010357147774366318, 0.010357147774366318, 0.010357147774366318, 0.010357147774366318, 0.010357147774366318, 0.010357147774366318, 0.010357147774366318, 0.010357147774366318], [-0.26105054841223635, -0.26105054841223635, -0.26105054841223635, -0.26105054841223635, -0.26105054841223635, -0.26105054841223635, -0.26105054841223635, -0.26105054841223635, -0.26105054841223635, -0.26105054841223635  …  0.013413693877270037, 0.013413693877270037, 0.013413693877270037, 0.013413693877270037, 0.013413693877270037, 0.013413693877270037, 0.013413693877270037, 0.013413693877270037, 0.013413693877270037, 0.013413693877270037], [1, 1, 1, 1, 1, 1, 1, 11, 1, 1  …  2, 11, 1, 1, 1, 1, 1, 1, 1, 1], [10.822026659306621, 10.822026659306621, 10.822026659306621, 10.822026659306621, 10.822026659306621, 10.822026659306621, 10.822026659306621, 119.04229325237283, 10.822026659306621, 10.822026659306621  …  23.976206776597902, 131.86913727128845, 11.988103388298951, 11.988103388298951, 11.988103388298951, 11.988103388298951, 11.988103388298951, 11.988103388298951, 11.988103388298951, 11.988103388298951], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [10.822026659306621, 10.822026659306621, 10.822026659306621, 10.822026659306621, 10.822026659306621, 10.822026659306621, 10.822026659306621, 119.04229325237283, 10.822026659306621, 10.822026659306621  …  23.976206776597902, 131.86913727128845, 11.988103388298951, 11.988103388298951, 11.988103388298951, 11.988103388298951, 11.988103388298951, 11.988103388298951, 11.988103388298951, 11.988103388298951], [1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0  …  1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [298.15365853658534, 298.15365853658534, 298.15365853658534, 298.15365853658534, 298.15365853658534, 298.15365853658534, 298.15365853658534, 3279.690243902439, 298.15365853658534, 298.15365853658534  …  158.41666666666669, 871.2916666666666, 79.20833333333334, 79.20833333333334, 79.20833333333334, 79.20833333333334, 79.20833333333334, 79.20833333333334, 79.20833333333334, 79.20833333333334], [7.65511425407355, 7.65511425407355, 7.65511425407355, 7.65511425407355, 7.65511425407355, 7.65511425407355, 7.65511425407355, 84.20625679480905, 7.65511425407355, 7.65511425407355  …  8.114973344694128, 44.63235339581771, 4.057486672347064, 4.057486672347064, 4.057486672347064, 4.057486672347064, 4.057486672347064, 4.057486672347064, 4.057486672347064, 4.057486672347064], [94.08074124608, 94.08074124608, 94.08074124608, 94.08074124608, 94.08074124608, 94.08074124608, 94.08074124608, 1034.8881537068798, 94.08074124608, 94.08074124608  …  49.987504761422755, 274.9312761878251, 24.993752380711378, 24.993752380711378, 24.993752380711378, 24.993752380711378, 24.993752380711378, 24.993752380711378, 24.993752380711378, 24.993752380711378], [0.36061475737617726, 0.36061475737617726, 0.36061475737617726, 0.36061475737617726, 0.36061475737617726, 0.36061475737617726, 0.36061475737617726, 0.36061475737617726, 0.36061475737617726, 0.36061475737617726  …  0.35565736393550956, 0.35565736393550956, 0.35565736393550956, 0.35565736393550956, 0.35565736393550956, 0.35565736393550956, 0.35565736393550956, 0.35565736393550956, 0.35565736393550956, 0.35565736393550956], [12.384292053067005, 12.384292053067005, 12.384292053067005, 12.384292053067005, 12.384292053067005, 12.384292053067005, 12.384292053067005, 136.22721258373707, 12.384292053067005, 12.384292053067005  …  27.060222993190397, 148.83122646254714, 13.530111496595199, 13.530111496595199, 13.530111496595199, 13.530111496595199, 13.530111496595199, 13.530111496595199, 13.530111496595199, 13.530111496595199], [1.2548454674764364, 1.2548454674764364, 1.2548454674764364, 1.2548454674764364, 1.2548454674764364, 1.2548454674764364, 1.2548454674764364, 13.803300142240804, 1.2548454674764364, 1.2548454674764364  …  7.154212967596575, 39.34817132178116, 3.5771064837982873, 3.5771064837982873, 3.5771064837982873, 3.5771064837982873, 3.5771064837982873, 3.5771064837982873, 3.5771064837982873, 3.5771064837982873], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0  …  0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0  …  0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [1.3061857958470844, 1.3061857958470844, 1.3061857958470844, 1.3061857958470844, 1.3061857958470844, 1.3061857958470844, 1.3061857958470844, 8.46518471074163, 1.3061857958470844, 1.3061857958470844  …  4.671824563850785, 23.038748531569976, 2.631055234104207, 2.631055234104207, 2.631055234104207, 2.631055234104207, 2.631055234104207, 2.631055234104207, 2.631055234104207, 2.631055234104207], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [11.889212387273577, 11.889212387273577, 11.889212387273577, 11.889212387273577, 11.889212387273577, 11.889212387273577, 11.889212387273577, 77.05211558991012, 11.889212387273577, 11.889212387273577  …  42.52405335619368, 209.70414415752055, 23.948487711601803, 23.948487711601803, 23.948487711601803, 23.948487711601803, 23.948487711601803, 23.948487711601803, 23.948487711601803, 23.948487711601803], [6.447669663541781, 6.447669663541781, 6.447669663541781, 6.447669663541781, 6.447669663541781, 6.447669663541781, 6.447669663541781, 41.78633302341951, 6.447669663541781, 6.447669663541781  …  23.06132987320929, 113.72519932865802, 12.98756660038165, 12.98756660038165, 12.98756660038165, 12.98756660038165, 12.98756660038165, 12.98756660038165, 12.98756660038165, 12.98756660038165]), Bank{Float64}(89460.0, 6476.292527744361, 0.0, 126430.99999999997, 0.028359903595743693, 3695.369633667523, 0.0, 0.0, 0.0, 0.0, 33636.129380554084, 18241.296726948156), CentralBank{Float64}(0.0016459319014481277, 0.0089810924595537, 0.9259668580654086, -0.003424572940686137, 0.0049629315732038215, 0.30996974466133875, 1.328593153520194, 106179.90000000002), Government{Float64}(0.9905949533296431, 0.09373211872949586, 0.011235005057648862, 0.0, 14732.121510837034, 232610.9, 2.238468336136841, 0.5902859043576301, [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], 0.0, 0.0), RestOfTheWorld{Float64}(0.962809216044625, 0.39260026877953946, 0.020320381298662014, 0.9662360466537488, 0.35492769963078624, 0.02122821278168188, 2.3548476e6, 0.0, 0.0019383188997990075, 0.38456173629534834, 0.0026219533879005877, 0.0025327891562467505, 0.9635784504324201, 0.5360029623199525, 0.006618207536795881, 0.0, 33097.63671130043, 34095.03119997918, [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], 0.0, [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], 0.0), Aggregates{Float64, Int64}([104531.39273728609, 105062.38754395355, 105399.12953350678, 106689.88106040593, 107938.33111423723, 108890.48532381697, 110110.17779727321, 110374.00540561741, 110808.89423399912, 111932.48072916963  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [-0.007497362866886709, -0.007895434153021436, -0.0019938777296781562, -0.0035311300388783107, 0.001212170001002849, -0.001672412335241874, 0.001839696090252002, 0.004290005139261838, 0.00600429551344886, 0.0036060572293247772  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], 1.0, [1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0  …  1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0], 1.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1), MutableNamedTuple(tau_VAT = 0.1528683933530887, tau_EXPORT = 0.0029486201783457183, tau_SIW = 0.17114894621657745, psi_H = 0.07125099957246343, tau_FIRM = 0.07701197259426128, H_inact = 4130, theta_DIV = 0.7858074440019603, I_s = [48, 2, 1, 1, 5, 2, 4, 1, 1, 1  …  14, 10, 13, 41, 20, 16, 7, 7, 2, 19], psi = 0.9096681249468772, tau_INC = 0.21340742230566648, zeta_b = 0.5, tau_CF = 0.08761417854834112, H_act = 4743, zeta = 0.03, mu = 0.026713971694295565, tau_G = 0.009147800682711324, theta_UB = 0.3585824478060919, T_prime = 54, tau_SIF = 0.21215146534992413, T = 16, zeta_LTV = 0.6, I = 624, products = MutableNamedTuple(a_sg = [0.37790282216028437 0.0 … 0.0 0.0; 0.0006712800413285777 0.8149348034258406 … 2.4029219530949635e-5 0.00019143106686926454; … ; 0.00037430822580994426 0.000357977071568566 … 0.3197327950788158 0.0011366219595362582; 0.0 5.36965607352849e-5 … 0.0 0.05594572929254256], b_CF_g = [0.0033476048872100555, 0.0, 0.0, 0.0008050086095806136, 0.0, 0.003306696048303853, 0.0030629933432974495, 0.0, 0.0, 0.0  …  0.0017883064872300512, 0.0, 0.0, 0.0, 0.0, 0.002291709084994238, 0.0, 0.0, 0.0, 0.0], b_CFH_g = [0.0006092803753845975, 0.0, 0.0, 0.004372477702289994, 0.0, 0.0, 0.06710603871527036, 0.0, 0.0, 0.0  …  0.0041711096896454745, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], c_E_g = [0.005090338238241512, 0.0005933402816643566, 1.793599921320476e-5, 0.007268146142708006, 0.05434404438533037, 0.02138421321578873, 0.023894091259534518, 0.028037089231640524, 0.005923381894006229, 0.011927802553688313  …  0.0014618202435669027, 0.0009447261124040238, 0.0001280209174610526, 0.0010477673386531637, 0.0, 0.0013030104043795392, 5.5260305268213854e-5, 0.0, 1.307076865739618e-5, 8.641230390167474e-6], b_HH_g = [0.011287997598927976, 0.0020040637862256817, 0.0003326837475323491, 0.00034402684015257527, 0.06305103828047173, 0.03068200872784047, 0.0003505790613555631, 0.0020473225369636873, 0.0, 0.0191077565617325  …  0.005591228759882936, 0.0004356874830029748, 0.014434120586233577, 0.03514505772295519, 0.024907176866291014, 0.013342154173060372, 0.009686226103767459, 0.011051272187723254, 0.0021206651420422927, 0.01721782824162338], c_G_g = [0.0, 0.0, 0.0, 0.0, 8.57086390274792e-6, 0.0, 0.0, 0.0, 2.4536198623552867e-5, 0.0  …  0.008555738848801895, 0.3324338967920097, 0.22067672180252998, 0.2370889178393625, 0.0477595425645907, 0.012942508661614227, 0.004667927760053456, 0.021757222045203074, 0.0, 0.002000708524749294], c_I_g = [0.016810689305736877, 0.004087420487057966, 0.00036885674795364003, 0.05818437780960789, 0.04895082866561155, 0.04689140072807505, 0.010101572733480902, 0.016066325760592727, 0.00037371898454196314, 0.041008926225895866  …  0.0018123421762754539, 0.000401097116716159, 0.0003479865324437806, 0.0006664256271585853, 0.0028556289501379516, 0.001307065586721844, 6.418152296577174e-5, 0.0, 3.538212163497461e-5, 0.00020458795490837936]), J = 156, G = 62, H = 8873, L = 312, theta = 0.05, C = [4.3800671000101816e-5 0.00010629745355671226 9.959785873214212e-5; 0.00010629745355671226 0.0004129178961230129 0.0003596689472264872; 9.959785873214212e-5 0.0003596689472264872 0.0004506370179043619]))

Note that the it is very simple to inspect the model by typing

fieldnames(typeof(model))
(:w_act, :w_inact, :firms, :bank, :cb, :gov, :rotw, :agg, :prop)

and to inspect the specific attributes of one agent type by typing

fieldnames(typeof(model.bank))
(:E_k, :Pi_k, :Pi_e_k, :D_k, :r, :Y_h, :C_d_h, :I_d_h, :C_h, :I_h, :K_h, :D_h)

We can now define a data tracker, which will store the time series of the model.

data = Bit.init_data(model);

We can run now the model for a number of epochs and progressively update the data tracker.

for t in 1:T
     Bit.run_one_epoch!(model; multi_threading = true)
     Bit.update_data!(data, model)
-end
1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
-16

Note that we can equivalently run the model for a number of epochs in the single command data = BeforeIT.run_one_sim!(model) , but writing the loop explicitely is more instructive.

We can then plot any time series stored in the data tracker, for example

plot(data.real_gdp, title = "gdp", titlefont = 10)
Example block output

Or we can plot multiple time series at once using the function plot_data

ps = Bit.plot_data(data, quantities = [:real_gdp, :real_household_consumption, :real_government_consumption, :real_capitalformation, :real_exports, :real_imports, :wages, :euribor, :gdp_deflator])
-plot(ps..., layout = (3, 3))
Example block output

To run multiple monte-carlo repetitions in parallel we can use

model = Bit.init_model(parameters, initial_conditions, T)
-data_vector = Bit.run_n_sims(model, 4)
BeforeIT.DataVector(BeforeIT.Data[BeforeIT.Data{Float64, Vector{Float64}, Matrix{Float64}}([72422.0, 73397.33991215822, 73640.48988386929, 74179.76606239268, 74778.0354425504, 74502.15497498847, 74937.06911748949, 74537.61704532366, 75236.99515124381, 75187.58032457076, 75646.45129663787, 76736.87660375253, 77976.46929623044, 78526.2231021317, 79717.95640026487, 80540.09963289853, 81201.34435328549], [72422.0, 73323.31405785137, 73281.39957346414, 73550.77521017332, 73494.40863980616, 72964.20558341125, 73050.74593691523, 72508.57045884123, 73011.23646653985, 72612.93811469988, 72861.72336837127, 73072.32459126266, 73704.0625113717, 73479.62574311366, 73890.41303578585, 73697.68480855644, 73961.96618333306], [64900.920495538005, 65786.12318435179, 66005.42177699781, 66493.35078741479, 67023.56668112677, 66768.67043214293, 67160.88171790751, 66802.47585581549, 67434.61831779283, 67384.2219496354, 67779.71245354334, 68760.96445762478, 69877.19549476367, 70357.78309241055, 71429.34336876532, 72165.41433041469, 72756.22564473488], [64900.920495538005, 65719.77372296689, 65683.56205781749, 65929.53518649311, 65873.05174584866, 65390.363507974, 65470.30148166067, 64983.99357831799, 65439.67969658924, 65076.78950717728, 65284.57811473462, 65477.30030766103, 66048.55581880489, 65836.14193466991, 66207.71433091458, 66034.48448217893, 66269.75875363202], [40512.94792630534, 40967.20838079116, 41066.516423963505, 41323.84789977306, 41709.13625001549, 41582.06294276732, 41766.6850657155, 41552.54810956091, 41877.078774310095, 41838.22123662749, 42192.59512095125, 42778.51450727903, 43442.23219451253, 43824.889658273976, 44463.15121099908, 44955.598647623694, 45324.70857087958], [40512.94792630534, 40925.89036296403, 40866.265337187746, 40973.45150885421, 40993.16444234532, 40723.68363246637, 40715.33001349583, 40421.41380122793, 40638.216541912516, 40405.55842294552, 40639.3841509004, 40735.63631928002, 41061.98993357941, 41008.42193995456, 41212.80519732949, 41136.32283314447, 41283.855449533374], [14866.888022051655, 15108.650912893258, 15308.46848942438, 15384.348756969819, 15711.357736028876, 15657.734202544061, 15756.118021836299, 15739.129876073923, 16051.587943015613, 16139.866291813989, 16356.70897107107, 16598.613024404094, 16696.24521118923, 17033.497439216677, 17120.224364370948, 17340.463529837172, 17402.665126432803], [14866.888022051655, 15093.412883932146, 15233.820388761747, 15253.900588296056, 15441.659290782054, 15334.511299819042, 15359.503488995992, 15310.68275078103, 15576.728983063296, 15587.190160500882, 15754.579148646812, 15805.950051200076, 15781.441656145507, 15938.815945624538, 15868.70144032556, 15867.27631926342, 15851.157882080237], [15944.236265986641, 16232.102962954803, 16303.49786985304, 16535.748033499232, 16388.038946515728, 16378.044878730347, 16449.96097291066, 16320.404398141247, 16572.71759084805, 16953.653451887763, 16408.226586940622, 17074.243162850653, 17665.564644775262, 17375.604622003615, 17107.634438887035, 17801.722273538086, 17766.460108238927], [15944.236265986641, 16215.73186162515, 16223.997745396906, 16395.53683036699, 16106.724708829945, 16039.952589119022, 16035.880957930429, 15876.1339458953, 16082.44189558902, 16373.110872909596, 15804.200277090313, 16258.866581037752, 16697.651132815994, 16258.937132689907, 15857.03186378216, 16289.348078094157, 16182.519294336482], [15944.236265986641, 16152.867995374461, 16194.052829979533, 16302.212977952988, 16451.83728533329, 16385.64160237045, 16470.931535149637, 16372.286433779014, 16493.76327419185, 16470.076831446724, 16595.455356688544, 16821.82972931028, 17092.68245248937, 17238.04734845661, 17483.713302153366, 17672.677436886566, 17818.689369463336], [15944.236265986641, 16136.57680751542, 16115.086388194475, 16163.981983459951, 16169.427896415036, 16047.392493449617, 16056.323647140383, 15926.603660191395, 16005.823308259052, 15906.093327429071, 15984.53670522597, 16018.50709335494, 16156.157714442767, 16130.22016937269, 16205.618603778992, 16171.266454889526, 16230.092137904852], [3173.2320350842083, 3207.6762922801163, 3216.91813831469, 3233.649474473003, 3266.7769557328, 3256.3880285384944, 3271.1194756811374, 3252.765194965716, 3261.4512542714065, 3258.2683309742065, 3303.8812404348087, 3347.453739240151, 3400.7470772237666, 3432.644399282748, 3482.637108022533, 3521.2087267636525, 3550.1197661447814], [3173.2320350842083, 3204.4411480887884, 3201.2316031672817, 3206.2304618945973, 3210.700028408505, 3189.1663489922803, 3188.7785385979, 3164.2191375909424, 3164.9667596508953, 3146.6957129992875, 3182.2574206228724, 3187.5968506128966, 3214.4168289135655, 3212.0407146086773, 3228.0493126726024, 3222.0587269321522, 3233.614420815419], [34195.564496956766, 34984.701312989906, 34676.25549221267, 34361.22352534677, 34531.792637563005, 34719.518315412686, 36198.25988263099, 36201.847284076626, 36188.13085108379, 36421.284270159325, 37206.36839366951, 36666.94913543903, 36404.76210193467, 37780.58763938767, 38047.187865003696, 38327.52141917111, 39113.510932487276], [34195.564496956766, 34949.417031496014, 34507.1649909405, 34069.86516152646, 33939.02586702608, 34002.802643403236, 35287.073769840696, 35216.3685745621, 35117.56647828967, 35174.11318931239, 35836.71242965169, 34915.92735565022, 34410.10968936396, 35352.56542883125, 35265.86170974548, 35071.34465835043, 35626.40736973219], [33097.63671130043, 33895.323657470224, 33714.24839158394, 33425.4021531956, 33562.290127573004, 33835.20536446619, 35233.95482560372, 35276.31262252937, 35452.520008013336, 36165.444925917305, 36517.44777599523, 36381.443226220596, 36232.33485618178, 37488.356256750034, 37020.24147899564, 37885.20623727156, 38406.000384753956], [33097.63671130043, 33861.13808216527, 33549.84888882256, 33141.97887886993, 32986.1656691774, 33136.74458139691, 34347.04229334759, 34316.028613625436, 34403.717432314326, 34927.03453096807, 35173.1526379185, 34644.05571590572, 34247.129900533626, 35079.11470398644, 34313.98717539663, 34666.60708029611, 34981.97381234999], [29576.147776884878, 29979.54553052151, 30040.282583248714, 30233.31658099912, 30508.217161461464, 30361.52047645399, 30520.06572429426, 30358.26301669153, 30606.103172436655, 30534.354016096, 30735.21980028641, 31158.543866289245, 31632.708194108738, 31908.70852300398, 32360.310962965745, 32725.701401846254, 32979.29545771462], [34346.71094688275, 34815.175810708206, 34967.53336348058, 35253.70193570482, 35502.91428622322, 35398.712868372604, 35623.5967135626, 35426.432898257866, 35798.225566429624, 35817.43886799018, 35999.82045014142, 36541.20985562833, 37162.54927795955, 37365.96112650203, 37966.04785453646, 38329.906326311386, 38658.68119035057], [28335.32931213966, 28721.80317882778, 28847.495022733106, 29083.578202438403, 29289.17326018678, 29203.20923602868, 29388.7337778194, 29226.077689912254, 29532.798985723613, 29548.649563897856, 29699.11061382827, 30145.745725827757, 30658.3379555058, 30826.148542183393, 31321.2077366721, 31621.38348382584, 31892.615976989786], [978.0617717704337, 991.4018431220662, 997.6058302685968, 1006.3322707109321, 1012.4352334419851, 1008.4370873165109, 1017.2192800507883, 1017.7799408661168, 1030.2895789265958, 1032.429065549229, 1044.6722031154197, 1061.2107357072211, 1081.938022695354, 1083.1134429045453, 1102.9845512632014, 1109.8066022570733, 1118.2489966696583], [0.0019383188997990075, 0.00041020954166293144, 0.005596377165329125, 0.006032364973548532, 0.005003348902756777, 0.005861061334551776, 0.002765148345472035, 0.0038820868051276936, 0.0023106044608316445, -5.567897895519813e-5, 0.0034130642190826066, 0.008109345789133693, 0.009259855142948137, 0.005575787333372384, 0.006976291198265816, 0.0025640501895567436, 0.004100660975186132], [2.3548476e6, 2.3704932837277604e6, 2.3747143613579874e6, 2.3747682403168306e6, 2.3613276103534005e6, 2.3653633680990017e6, 2.390149494091808e6, 2.384169362267102e6, 2.371355975801348e6, 2.3678020830011345e6, 2.3843862428823933e6, 2.374161413819924e6, 2.3527373861502935e6, 2.361039911476159e6, 2.3723181167891864e6, 2.3608205269971024e6, 2.376874358604901e6], [0.0016459319014481277, 0.0021869984248705475, 0.0023286609538080314, 0.002296925433635519, 0.0016849997929878904, 0.001862861278344537, 0.0028190946949614723, 0.002453378898022797, 0.001796149647552573, 0.00151448772465836, 0.0021696045501523515, 0.001773284130526106, 0.0009669146145421851, 0.0013703845115244455, 0.0018988680787005933, 0.0013404212200817849, 0.0020041457271941987], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086171; 525.1497310083525 261.76552202582064 … 138.86577374050157 511.7911718291725; … ; 547.976342165701 274.85598481300235 … 151.81641690866235 561.910236762864; 555.6792947862699 276.25643048621316 … 153.01864910766264 566.637406995925], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086171; 524.6200843273764 261.50151495936245 … 138.72571883459597 511.2749980990799; … ; 501.4221230361809 251.50514872494452 … 138.91860691874246 514.1722410129142; 506.1385810430554 251.62722282839724 … 139.37651206217168 516.1197399898517]), BeforeIT.Data{Float64, Vector{Float64}, Matrix{Float64}}([72422.0, 72172.59743012323, 71958.07239027777, 71785.37278906954, 71317.79409207813, 71684.88842137696, 72836.84474950431, 73136.84067843205, 74515.69267860806, 74378.73190893827, 74648.98761387188, 75534.8813679223, 76045.48856659136, 75726.1411390951, 74855.97245381518, 75612.4461814915, 75979.01074538975], [72422.0, 72683.54454899838, 72358.41882386414, 72581.0222636716, 72091.34742907206, 72406.68454640616, 73148.15098183505, 73066.65093073614, 73636.09569421792, 73029.6739751468, 73005.14981661156, 73371.9919420048, 73838.20648885139, 73302.3897835181, 72274.37973763651, 72512.52999722061, 72314.86910831027], [64900.920495538005, 64687.7036774883, 64493.783713079014, 64328.816345509986, 63891.33543013121, 64224.899553126015, 65267.962588989016, 65520.72408320443, 66775.01691676374, 66643.31269587693, 66887.549541098, 67695.62678120425, 68156.42629254398, 67843.3976630794, 67035.11181588525, 67711.56237808826, 68026.22021864391], [64900.920495538005, 65145.66136499795, 64852.601778104196, 65041.81938413003, 64584.33717473319, 64871.58094788999, 65546.91925707861, 65457.843556104905, 65986.79229720721, 65434.557351182564, 65414.62558571206, 65757.2090238143, 66178.13065562924, 65671.94769112322, 64723.24075577868, 64935.5621469321, 64745.60754060381], [40512.94792630534, 40284.016706608985, 40196.728390611795, 40178.119208243734, 40014.97612120004, 40140.98673051299, 40714.1143959119, 40993.734645624514, 41627.32530501835, 41629.23626893624, 41761.90768059086, 42169.70326279923, 42519.231751159256, 42574.3393158756, 42260.590005480146, 42648.09809217047, 42922.72930326951], [40512.94792630534, 40569.20808125619, 40420.36718912957, 40623.442512929636, 40449.00129966147, 40545.16687663553, 40888.127391654154, 40954.3927781717, 41135.94867695089, 40874.178337388745, 40842.2729403832, 40962.20278580875, 41285.07651101736, 41211.67100771359, 40803.12939461342, 40899.63555483953, 40852.75026466061], [14866.888022051655, 14818.688245845722, 14727.677597258653, 14698.063533691371, 14768.018018871955, 15000.01135834779, 15075.426743405666, 15271.167555233438, 15273.770322309572, 15433.165437600577, 15470.764634677147, 15304.64954106145, 15205.943261385491, 15217.857895460033, 15356.403816265945, 15548.124737419344, 15861.347196177629], [14866.888022051655, 14923.597398825192, 14809.616607090538, 14860.972857330491, 14928.200337530567, 15151.04667851465, 15139.859439747854, 15256.511748559533, 15093.475919441733, 15153.243560166567, 15130.084493232416, 14866.411417690379, 14764.578406367214, 14730.782981192997, 14826.800379970586, 14910.691537693205, 15096.422487214983], [15944.236265986641, 15928.136612898723, 16176.238947829652, 16241.605899642505, 15684.280940319086, 15577.991480242668, 16727.67766230482, 15834.491730634874, 16342.782557854025, 16134.076578100025, 16118.669754785236, 16827.992901220463, 17478.05261139718, 17265.74550700032, 16495.33798103499, 17259.188099713072, 16513.439306188287], [15944.236265986641, 16040.900124275573, 16266.237183697855, 16421.623425479083, 15854.401567494839, 15734.846490186772, 16799.172114413566, 15819.295299272018, 16149.869337326994, 15841.44179590539, 15763.72216029772, 16346.134887461529, 16970.73793685009, 16713.12426619562, 15926.455592805793, 16551.605694704573, 15717.066993103655], [15944.236265986641, 15882.78135365336, 15828.787475817171, 15804.162798545694, 15702.872433036599, 15759.068405658827, 16006.836223600922, 16079.748059457404, 16370.597772527377, 16346.084986994993, 16393.46015197362, 16594.74035989964, 16724.8169181213, 16681.74918176107, 16497.652307745964, 16655.943399882122, 16723.793602984373], [15944.236265986641, 15995.22377170861, 15916.852628251592, 15979.331824471592, 15873.194714111138, 15917.746681649314, 16075.249783982923, 16064.316254517002, 16177.356216074482, 16049.604863279876, 16032.461425975001, 16119.561372387318, 16239.36552142831, 16147.819793778377, 15928.690104255751, 15973.09247894164, 15917.276804865418], [3173.2320350842083, 3153.733274753395, 3146.8244800623147, 3147.006117968721, 3134.2795028224314, 3139.721431979031, 3188.0245327146163, 3210.8903122000047, 3260.521921295075, 3255.5689129785906, 3271.710096377342, 3300.507937261893, 3330.382850088343, 3334.6933339788225, 3310.11849028827, 3340.470590974123, 3361.981456055545], [3173.2320350842083, 3176.0601825800895, 3164.3321746942925, 3181.886674648264, 3168.2756800646766, 3171.335330154502, 3201.6502177545244, 3207.8088066440914, 3222.034118975651, 3196.5204328776404, 3199.664099639621, 3206.0001603463634, 3233.7157825794593, 3227.96047572029, 3195.96089532163, 3203.519872263263, 3199.847517809062], [34195.564496956766, 34748.453493412075, 33949.542893908714, 33578.756935438934, 34242.67966940327, 34172.80363165598, 34562.89590417828, 35469.35763462804, 36817.92760414653, 37804.17256562261, 37360.948216810924, 38039.18679541593, 36638.860437406576, 35381.42315805594, 35499.605727827286, 35631.6134831829, 35498.506132399016], [34195.564496956766, 34994.45575507395, 34138.4248076118, 33950.93471031761, 34614.09523915133, 34516.89006027286, 34710.618460521495, 35435.31753609199, 36383.321993865444, 37118.492430708306, 36538.22655931239, 36949.96081927978, 35575.387751298615, 34248.97706940521, 34275.31432434951, 34170.80880238898, 33786.56551751369], [33097.63671130043, 33606.697628641894, 33092.115439330664, 32911.17278794632, 33392.160657716246, 33206.904779381926, 34243.26995629614, 34431.91088768872, 35546.11311071953, 36621.91894132052, 36063.30267299186, 36806.6511325746, 35796.59949475666, 34713.22473729713, 34755.96507679363, 35474.57823099383, 34817.01119264497], [33097.63671130043, 33844.616810432264, 33276.226963665365, 33275.95124238452, 33754.35101476608, 33541.265559203166, 34389.626424501796, 34398.866431359005, 35126.52023336635, 35957.682149021566, 35269.15633661365, 35752.717968235425, 34757.57411668149, 33602.16554098962, 33557.319954103245, 34020.21159240519, 33137.93615418286], [29576.147776884878, 29478.982250248224, 29377.892880106232, 29318.10918026757, 29113.070418310974, 29209.412714591286, 29666.354379754266, 29809.054156452414, 30365.47005032807, 30335.165097771092, 30415.14748838802, 30806.169271922296, 31068.78819465262, 30959.31196500154, 30596.19025482064, 30866.05731168592, 30968.46110910025], [34346.71094688275, 34233.8728490153, 34141.0525056198, 34039.25199407706, 33810.6177974934, 34036.90169867027, 34606.10740100633, 34711.322015593185, 35389.48154616978, 35286.86415315211, 35445.03546459199, 35854.7183919608, 36045.470734229035, 35848.817207315966, 35419.785821302394, 35819.2025409545, 36017.65597276992], [28335.32931213966, 28242.240204802016, 28165.66533272635, 28081.682006836167, 27893.06350236762, 28079.743061519537, 28549.326045665613, 28636.125936268792, 29195.59358528972, 29110.936349002797, 29241.424424100092, 29579.404403566226, 29736.77115823427, 29574.536047743106, 29220.593988291224, 29550.104557778355, 29713.82455275285], [978.0617717704337, 974.8485782249397, 974.8383273530274, 971.4551711653617, 967.647214326716, 978.5851398645548, 995.5008082283739, 1000.3479111587828, 1020.0653202659215, 1021.2834449537389, 1027.3665881178886, 1034.7391173211497, 1042.167363662392, 1035.2684907618755, 1019.1357397622745, 1026.3025254478189, 1040.1031367736673], [0.0019383188997990075, 0.0021035040566177443, 0.0037631130051278827, -0.0018374264203334656, 0.0019184313837536937, -8.820714968438281e-5, 0.0017718443434264763, 0.007157651807337739, 0.0034984426780722, 0.007604823564069774, 0.0046799852516536955, 0.002490752098448734, -0.0008524729934740183, 0.00440249581070451, 0.0076129630012311544, 0.009784315426164536, 0.005104950746352088], [2.3548476e6, 2.3934439733993774e6, 2.383826911810238e6, 2.367056046983032e6, 2.381049762903342e6, 2.37698365964765e6, 2.3691469521200135e6, 2.3883072945373403e6, 2.3940112767473003e6, 2.415833234130175e6, 2.3982139603875387e6, 2.42026076336875e6, 2.4147529646309204e6, 2.3972310063765463e6, 2.377551830243579e6, 2.370832322456339e6, 2.3689460446882215e6], [0.0016459319014481277, 0.0031844864479060896, 0.0026398664042686813, 0.0017102748894435656, 0.0022091727007513113, 0.0018756279163444276, 0.0014531455490582553, 0.0023052990087547957, 0.002449825373617554, 0.003339545950656962, 0.0024823418868471806, 0.0032599478809795888, 0.0027752029750124888, 0.0019570541797272324, 0.0011794206276733274, 0.0010386474663329922, 0.0010006447504107958], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086171; 516.381396887992 257.39486843354706 … 136.5471559632418 503.24588325817297; … ; 533.4600953844521 266.501293928373 … 143.53529711370902 530.5912609301902; 528.9880106116937 267.5349367862536 … 144.40452368438537 534.2683835660954], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086171; 520.0371276829934 259.21709973908764 … 137.51384385330354 506.80862096323415; … ; 511.58960095056614 255.5754250284997 … 137.650718409974 508.83838134417323; 503.47718892314305 254.63287486632532 … 137.44051319486113 508.5029121497884]), BeforeIT.Data{Float64, Vector{Float64}, Matrix{Float64}}([72422.0, 72638.27205419248, 73562.31250935126, 74243.04394904757, 75893.37676430856, 75887.24555351681, 75735.46187162303, 76939.52916833098, 77980.46617616716, 77286.75890768692, 76991.82570536055, 77568.21025865483, 78817.89229852805, 79776.28747139704, 80315.12485302, 80552.49275785591, 80321.04941574472], [72422.0, 72281.93945272954, 72879.31472269153, 73071.18205624745, 74653.40234712261, 73919.58908518536, 73776.15026009433, 74795.90468849531, 75683.2287136124, 75171.62804757083, 74748.37717921985, 75227.751981883, 75493.40302203206, 76415.01286932368, 76650.09761004282, 77107.0028704305, 76857.50992672342], [64900.920495538005, 65105.95034837209, 65940.91749871595, 66554.46475342396, 68076.14223876542, 68042.7585182754, 67896.8489144048, 68992.93950756593, 69935.59259522788, 69290.2278556785, 69007.5159711317, 69531.22575794505, 70646.49431014265, 71531.11751239763, 72003.70633331437, 72211.57146921582, 72004.05322828077], [64900.920495538005, 64786.56812737097, 65328.68143427452, 65503.96039784054, 66963.88872738289, 66278.4992814952, 66140.3258646121, 67070.71622828554, 67875.35018897222, 67393.94055739664, 66996.72055772602, 67433.26665489723, 67666.66947713972, 68517.24288657536, 68717.95479162327, 69122.84968378086, 68899.15253861352], [40512.94792630534, 40569.7618615924, 41028.81837154607, 41383.84174786121, 41966.779262785036, 42174.72887922692, 42175.715705263705, 42741.17329797497, 43295.893927241304, 43048.75215506361, 42995.06558722288, 43268.70638155988, 44024.56050569359, 44433.670506096525, 44806.798039451984, 44962.41957430174, 44875.52525223723], [40512.94792630534, 40370.74379059414, 40647.881568703364, 40730.63379001841, 41281.11030356669, 41081.19362868453, 41084.61033053284, 41550.35465937909, 42020.43413094104, 41870.62351492453, 41742.241464151644, 41963.16379345255, 42167.632147989185, 42561.51309086722, 42762.125435310634, 43039.231890673815, 42940.43905836546], [14866.888022051655, 14909.431050359895, 15116.360446177003, 15313.726210477595, 15834.005274865605, 15698.747089889956, 15708.8100084413, 15684.267383745175, 16062.674153080277, 15914.98575923464, 16003.449515167313, 15959.774448633963, 15953.603238088535, 16185.37073925814, 16350.883266240375, 16311.912377533557, 16312.141834025077], [14866.888022051655, 14836.291695550583, 14976.010851732475, 15072.012357862002, 15575.303365693784, 15291.69922524796, 15302.415789772547, 15247.285511416225, 15589.481588035791, 15479.435375269457, 15537.128384332418, 15478.22168263404, 15280.690256787106, 15503.42028361032, 15604.741954411784, 15614.19928117652, 15608.742814669282], [15944.236265986641, 16081.942556768321, 16159.341851440724, 16301.196814615274, 16906.3333008046, 17054.975108005092, 16885.518275808365, 17592.71170742836, 17917.346001816997, 17430.935829046797, 17098.613021603698, 17607.883219508418, 17417.190533805995, 18489.052151628766, 18611.700964142066, 17692.989526199475, 17910.22789434249], [15944.236265986641, 16003.051357049873, 16009.308575678655, 16043.896597140447, 16630.11129467983, 16612.762034599607, 16448.68206715688, 17102.55836375209, 17389.51639931188, 16953.897966238263, 16600.380152972124, 17076.60222333595, 16682.54435807454, 17710.038946282984, 17762.391557021623, 16936.20330638508, 17137.917497246664], [15944.236265986641, 15988.357848675085, 16195.336145261941, 16344.825817832549, 16668.558945316265, 16699.592932014973, 16678.552802794013, 16931.379087829486, 17167.31108656636, 17020.926546496034, 16972.478969212316, 17086.74526980803, 17356.13544792719, 17581.543306628315, 17703.999437087536, 17757.44933886933, 17705.950037407503], [15944.236265986641, 15909.925735902802, 16044.968676321683, 16086.836954478302, 16396.221785675323, 16266.594451025067, 16247.0708871572, 16459.651237628546, 16661.576867559532, 16555.10953572883, 16477.92149405714, 16571.1885197365, 16624.064537435144, 16840.766857197636, 16896.11125456501, 16997.90596499184, 16942.44834524486], [3173.2320350842083, 3177.008471694416, 3211.079568936521, 3237.12420723567, 3273.2235377428506, 3297.7128657319786, 3303.0539780253, 3347.036657392027, 3388.0052932556487, 3367.3429028436844, 3365.2477800810975, 3389.080583727836, 3443.880249162126, 3476.6795085297267, 3502.9310288600864, 3516.594759268734, 3509.9213783682394], [3173.2320350842083, 3161.4234135484285, 3181.2659298112817, 3186.029016374102, 3219.744385522006, 3212.2075083609398, 3217.602435871631, 3253.7843358448554, 3288.197571339526, 3275.1877783299847, 3267.1885367373557, 3286.8221755940967, 3298.619539645666, 3330.1939436836583, 3343.0814653496436, 3366.178660816558, 3358.569380532467], [34195.564496956766, 33440.59565895628, 33978.65430111995, 34458.75826940469, 34117.32543633601, 34245.75061345966, 34025.094598673364, 34668.74901393503, 34163.43293900365, 33710.74393673842, 34230.9634216424, 34644.747076564054, 35281.99266053705, 34955.5017189543, 34627.576617841405, 35350.26648540741, 34949.01639223983], [34195.564496956766, 33276.550258251584, 33663.17556085617, 33914.856732759166, 33559.90379392777, 33357.803340951, 33144.849581569695, 33702.8374743809, 33157.00758858761, 32788.171482856174, 33233.51461804418, 33599.4143974725, 33793.820332747506, 33482.69515130373, 33047.41333110161, 33838.22158743761, 33441.97310461504], [33097.63671130043, 32363.459073484486, 32720.862460932178, 33214.47909331083, 32931.06651048204, 33286.95613706474, 33059.67671656397, 33747.37223475249, 33458.880844974854, 32818.65877239709, 33336.26584027538, 33912.90086761144, 33859.45463959675, 34287.307644541244, 34081.83403465633, 33765.09520558614, 33725.86195709952], [33097.63671130043, 32204.697648716698, 32417.0618342788, 32690.217421532234, 32393.026410744966, 32423.86914429769, 32204.407508937784, 32807.13132043299, 32473.210993263692, 31920.500291718243, 32364.887440280014, 32889.65011501215, 32431.284073565934, 32842.654602741146, 32526.574667803205, 32320.85319524242, 32271.562548172747], [29576.147776884878, 29669.582402769836, 30052.520412676728, 30336.998260982287, 30972.614081019674, 30968.990518596693, 30926.151296064196, 31417.575193243967, 31890.686273125124, 31565.79093062538, 31451.930838779408, 31667.56112414278, 32197.310952993772, 32645.416170330325, 32858.827333682275, 32935.859447831695, 32862.706107875674], [34346.71094688275, 34455.21635847018, 34897.38147884978, 35219.27046958534, 36080.82399982145, 36054.834491764246, 35953.01182260135, 36538.652470574714, 36993.12490134307, 36684.48379619781, 36523.95228259996, 36827.09712552772, 37391.35384186054, 37811.80068628391, 38066.28112330874, 38198.12350153798, 38067.37484360755], [28335.32931213966, 28424.844042508867, 28789.621162381383, 29055.172951854027, 29765.936874403422, 29744.49606539553, 29660.49445992496, 30143.63593581659, 30518.566333345058, 30263.94377670263, 30131.50858342296, 30381.596836907233, 30847.097009503177, 31193.95699890392, 31403.898119547095, 31512.665366873887, 31404.80041627327], [978.0617717704337, 981.1515871320282, 991.0156071893483, 998.196022856411, 1022.7041579243989, 1018.9335079144389, 1017.6857957392693, 1036.7118437473614, 1051.7814207595995, 1039.9531288554967, 1031.632849752226, 1036.5675082746936, 1057.829515288428, 1073.900655783413, 1078.597876323336, 1077.5885198462147, 1073.9722767976104], [0.0019383188997990075, 0.0025949131169555884, 0.0017133446510033679, 0.004807149529190147, 0.007438425107366697, 0.007721454263146743, 0.004050327837237466, 0.0033056248991094606, 0.005311920066642495, 0.006381995555099218, 0.0028764892141630583, 0.002986516857974131, 0.0017685037891967959, 0.008598954061902253, 0.008431005948748016, 0.009591280260891066, 0.003937572662638056], [2.3548476e6, 2.3440961349426205e6, 2.346165711087139e6, 2.360464890659778e6, 2.3532620974245025e6, 2.344821958861339e6, 2.3442860416804226e6, 2.3440063357524136e6, 2.3422240254426347e6, 2.3255112548421356e6, 2.3420280095642763e6, 2.343114002131373e6, 2.331269466918404e6, 2.314765401621088e6, 2.3058713299216344e6, 2.329026243694476e6, 2.3206691957216254e6], [0.0016459319014481277, 0.001134547250179521, 0.0011767119173338291, 0.001799385249360786, 0.0015367299174209675, 0.001247378439369537, 0.0012254976539711716, 0.0011988920980701679, 0.00115724261050473, 0.0005161824014592674, 0.001242570947480377, 0.0012647234598562446, 0.0007144623271530572, 0.00016256505429383455, 0.0, 0.0012078038372784973, 0.0008558092708175373], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086171; 519.7201272474972 259.059088071975 … 137.43001916835715 506.49968426428114; … ; 588.3212418962767 286.46734117882244 … 152.8059376306466 563.586511329736; 581.2959177168805 298.02620857920624 … 152.41249591489645 560.3302246962193], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086171; 517.1706003970138 257.78825389358974 … 136.75584569389963 504.01501130841297; … ; 563.1568451146071 274.21420917363037 … 146.2699348972786 539.480098740951; 556.2297441488765 285.1749628635962 … 145.8402872340912 536.1681168273057]), BeforeIT.Data{Float64, Vector{Float64}, Matrix{Float64}}([72422.0, 72876.31570638347, 74769.33177754602, 74735.94261709295, 76255.6130768493, 77328.02718089244, 77634.0165359408, 77095.96830049003, 75940.95585442887, 76589.33585170194, 77179.46794677353, 78044.95203690992, 79136.32223558168, 79425.12720383098, 79334.1706084149, 80646.1717614445, 80451.93055424889], [72422.0, 72464.6749369474, 74102.43758091737, 73710.29095540954, 74456.03297275469, 75149.88338465623, 75285.19361591944, 74674.10536975971, 73930.75794607514, 74443.3629083004, 74297.28315988898, 74850.60579521526, 75515.16742919588, 75433.11276412569, 75512.90961268402, 76435.98556843743, 76162.41930591996], [64900.920495538005, 65324.34502014349, 67049.02092097104, 66987.87315819832, 68370.63765836229, 69355.39911099544, 69622.59617018, 69136.2339145359, 68094.51322231477, 68708.02931091376, 69240.73066692874, 70026.06872709277, 71030.5312205603, 71293.68791793604, 71226.70332710164, 72405.1416015855, 72248.90533846492], [64900.920495538005, 64955.36144315615, 66450.98691586767, 66068.55347062365, 66757.13755955313, 67401.82499542004, 67516.15936666612, 66964.41500131717, 66292.01486672049, 66782.88437714445, 66655.00954355145, 67159.93192232861, 67780.28478171556, 67710.37062720193, 67795.95184648455, 68625.18378318533, 68396.76046147129], [40512.94792630534, 40653.525508388266, 41504.29580745123, 41692.33255773997, 42357.165948677175, 42818.95520535531, 43013.84523543879, 42711.76424174861, 42027.35977611726, 42154.43518736894, 42514.882315865725, 42922.78163116884, 43325.147658245354, 43480.30887005175, 43367.43886476639, 44060.04713649929, 43770.21239534219], [40512.94792630534, 40423.894683087165, 41134.10426833868, 41120.16060579987, 41357.565918837296, 41612.84863517623, 41712.45816215135, 41370.03339896307, 40914.872979433756, 40973.30107319367, 40927.20945044147, 41165.97068301473, 41342.65640457062, 41294.929671266946, 41278.574742941244, 41759.863531181385, 41436.485695210766], [14866.888022051655, 15060.800771444052, 15189.353810743052, 15679.145962226316, 15758.194505493324, 15996.439634642224, 16308.82173975798, 16296.558208377537, 16388.763495393054, 16396.606742026106, 16354.194143405231, 16655.080868572484, 16848.475115314126, 16646.575350024574, 16812.778568077705, 17090.550748707374, 17195.799113947392], [14866.888022051655, 14975.730065580457, 15053.874575258338, 15463.970485115842, 15386.311936272328, 15545.85855786709, 15815.397130158472, 15784.624431639317, 15954.944119164851, 15937.186719111749, 15743.464232771674, 15973.395588626576, 16077.515144967425, 15809.895932459429, 16002.963396640844, 16198.32735829104, 16278.958794328893], [15944.236265986641, 16138.023452821371, 17128.21683199958, 16240.175082367381, 16700.52121118706, 17078.145288203745, 16993.626151251538, 16821.601316155346, 16357.277441533015, 16882.739361420736, 16941.28513629854, 16940.788816460692, 17315.957461881724, 17514.190712729414, 17152.599738426325, 17582.441365477447, 17620.30751151564], [15944.236265986641, 16046.868070899216, 16975.444189362588, 16017.300224889499, 16306.400378804849, 16597.095175238832, 16479.482733464345, 16293.174038293884, 15924.291518069535, 16409.698284915503, 16308.630939669632, 16247.409633376412, 16523.606227721506, 16633.903772230893, 16326.416520612747, 16664.53850338922, 16680.83338393462], [15944.236265986641, 16041.447464239629, 16433.88982161741, 16469.59365681975, 16755.304483454715, 16995.21963700275, 17072.605701590488, 16935.096277127705, 16659.966117504937, 16755.003124037652, 16892.8645344741, 17104.982193051113, 17310.90906277211, 17375.75530344711, 17361.127668638124, 17638.442029169113, 17583.30115440244], [15944.236265986641, 15950.837590331477, 16287.310127917877, 16243.570333772715, 16359.890803466506, 16516.505339385738, 16556.07275165841, 16403.103712457312, 16218.967862138663, 16285.541116423246, 16262.018553497139, 16404.88264584674, 16518.788835489442, 16502.426314069053, 16524.900359607258, 16717.615615771203, 16645.80012036937], [3173.2320350842083, 3187.1230530698763, 3243.787353351928, 3265.6089487800955, 3314.899758828313, 3353.504502250828, 3369.139480109469, 3346.6271952915376, 3285.8454774552365, 3260.9011463606, 3295.6570175427255, 3337.1711809680496, 3353.8966941121257, 3374.6390093457517, 3363.5804544706757, 3404.505580399145, 3388.0718047305454], [3173.2320350842083, 3169.1206366038896, 3214.8548631233953, 3220.79279837861, 3236.6704008524753, 3259.0443783666283, 3267.2059156137198, 3241.4975429125657, 3198.867382017313, 3169.5332613492064, 3172.584226663917, 3200.582203185404, 3200.4276069608313, 3205.025083270089, 3201.568061852204, 3226.7711377648247, 3207.427636014939], [34195.564496956766, 33704.26476822333, 33635.578786243794, 35594.410550681874, 36427.941434976135, 36172.61722597538, 36913.33948246604, 35923.1263761145, 35434.634710392194, 36542.23861704817, 36018.5902930566, 37174.6184215801, 38459.533186038396, 38634.80373583412, 37709.75833988597, 38485.13594729272, 39144.512533751644], [34195.564496956766, 33513.88673733651, 33335.57112589009, 35105.92448829294, 35568.267032077485, 35153.72194729363, 35796.52366255013, 34794.65117768185, 34496.6608888005, 35518.353836073555, 34673.51451384459, 35653.077315561495, 36699.68486969402, 36692.96618620301, 35893.40571909793, 36475.99423030482, 37057.41747379334], [33097.63671130043, 32680.298794493487, 32688.113458891854, 34470.12153592348, 34988.21002348405, 34738.13017328435, 35595.61607297357, 34657.081841906656, 34267.07956900715, 35386.68405616195, 34649.483941851926, 35648.31770087177, 36812.79118589841, 36850.75146480947, 35708.40490274079, 36572.00343653184, 37278.90100030818], [33097.63671130043, 32495.704619955835, 32396.556577932522, 33997.0648486895, 34162.51229323702, 33759.640930919675, 34518.66807240503, 33568.377676819124, 33360.01155939392, 34395.1770049941, 33355.53597683776, 34189.24742536358, 35128.29521775808, 34998.58279803506, 33988.45076660802, 34662.73805472851, 35291.276041347905], [29576.147776884878, 29769.10754103714, 30508.176908733967, 30556.884082819724, 31092.294943250807, 31577.749272179695, 31697.314147493915, 31412.79446086323, 30865.108141514203, 31140.732795523796, 31412.117619202054, 31809.840593392597, 32241.614814354114, 32354.300412909266, 32372.509809228544, 32879.10649305865, 32773.73330806078], [34346.71094688275, 34570.7946677823, 35531.35706375815, 35428.07168113972, 36244.28443874005, 36728.44997144277, 36876.33560127083, 36677.346320904646, 36197.47570833896, 36524.53276679004, 36775.1841299087, 37157.165608673815, 37713.455390377996, 37857.209288852006, 37774.66247483106, 38431.83313600119, 38381.79359514977], [28335.32931213966, 28520.193767865792, 29312.63796599953, 29227.42965204628, 29900.788370764407, 30300.21496599024, 30422.217565546038, 30258.055506550594, 29862.172132002885, 30131.987470927266, 30338.769684440744, 30653.89653919799, 31112.824154769198, 31231.41816103269, 31163.318739153, 31705.471003086797, 31664.18941222804], [978.0617717704337, 984.4428113240276, 1009.486948478908, 1002.9173942389178, 1034.0582763714424, 1049.1998673730388, 1048.9464214153031, 1046.0931327681221, 1031.9293724614201, 1042.7637486000467, 1053.4289178179683, 1059.0625250263827, 1075.461015828127, 1082.17821617466, 1079.531043041982, 1094.2019725256641, 1093.3784352543742], [0.0019383188997990075, 0.005823444990119553, 0.0067105586760058955, 0.008331001951272565, 0.002421481170807205, 0.0009028845487131232, 0.002579068597875489, -0.001201690252604748, -0.0011350717912217423, 0.007974852817521638, 0.0028531626950025757, 0.004069186817358572, 0.007410754881995718, 0.005360609980717301, 0.005990010153232417, 0.010191905837898974, 0.008381010946301393], [2.3548476e6, 2.3476065525211142e6, 2.341394628713156e6, 2.3598215400655214e6, 2.366202086399231e6, 2.3542936577675254e6, 2.3549009312034934e6, 2.3515188431544285e6, 2.345506094636576e6, 2.3687943727615303e6, 2.345798270117609e6, 2.373777276863319e6, 2.394256434530638e6, 2.3766779915096783e6, 2.3499742615948715e6, 2.3628447828412997e6, 2.3989122337686843e6], [0.0016459319014481277, 0.0013552627829474778, 0.0011486556148926016, 0.002028895458810756, 0.002200206288858811, 0.001563019728973547, 0.0015318602703759633, 0.0012496117509225959, 0.0008795486333718813, 0.001974045216267981, 0.0009385031228963636, 0.002135569583272405, 0.0029961040687867214, 0.0021751576704743913, 0.0010464365726261704, 0.0017415550546303084, 0.0033063570250111557], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086171; 521.4635025610548 259.9280888961106 … 137.89102133125016 508.19871225949976; … ; 573.3117312830278 287.3686674792403 … 150.7108451685501 552.3737341064353; 570.7369053950148 286.77042471049583 … 150.09155625389735 549.9985215006284], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086171; 518.5180238366385 258.45988900875176 … 137.11214597827808 505.32815950291246; … ; 543.3816170244519 272.36639806336797 … 142.84288683145763 523.5367016978311; 540.3065309010482 271.480487551632 … 142.08902089651195 520.6738697702335])])

Note that this will use the number of threads specified when activating the Julia environment. To discover the number of threads available, you can use the command

Threads.nthreads()
2

To activate Julia with a specific number of threads, say 8, you can use the command julia -t 8 in the terminal.

We can then plot the results of the monte-carlo repetitions using the function plot_data_vector

ps = Bit.plot_data_vector(data_vector)
-plot(ps..., layout = (3, 3))
Example block output +end

Note that we can equivalently run the model for a number of epochs in the single command data = BeforeIT.run_one_sim!(model), but writing the loop explicitely is more instructive.

We can then plot any time series stored in the data tracker, for example

plot(data.real_gdp, title = "gdp", titlefont = 10)
Example block output

Or we can plot multiple time series at once using the function plot_data

ps = Bit.plot_data(data, quantities = [:real_gdp, :real_household_consumption, :real_government_consumption, :real_capitalformation, :real_exports, :real_imports, :wages, :euribor, :gdp_deflator])
+plot(ps..., layout = (3, 3))
Example block output

To run multiple monte-carlo repetitions in parallel we can use

model = Bit.init_model(parameters, initial_conditions, T)
+data_vector = Bit.run_n_sims(model, 4)
BeforeIT.DataVector(BeforeIT.Data[BeforeIT.Data{Float64, Vector{Float64}, Matrix{Float64}}([72422.0, 73068.73536404673, 73729.46783944374, 74069.05867929726, 74439.37220951513, 74266.47751570493, 73648.20248853305, 74465.93295940018, 74675.26411634992, 76074.01291748293, 77237.70648656861, 78128.71367199736, 80569.80124372996, 81179.35051587681, 80555.9895316517, 80960.21951423868, 82624.272763193], [72422.0, 72409.58890511458, 72906.17014778769, 73317.75714444707, 74042.9143741955, 73592.12505016233, 72938.27857316722, 73226.75016673116, 73274.70682439949, 73967.67742955226, 74538.8512731299, 75184.02719007772, 76961.14956388602, 77679.63961290177, 76997.96040981745, 77385.88463096309, 78470.152550985], [64900.92049553803, 65493.87433035337, 66072.83218710014, 66379.50312395273, 66717.69349455691, 66537.43529142163, 65950.90070402515, 66691.21762101108, 66879.00328429835, 68151.48516772187, 69217.40227857552, 70027.66401186897, 72256.44393102666, 72814.81031319202, 72244.83107137874, 72610.97069254049, 74120.44671333098], [64900.92049553803, 64903.06000831105, 65335.03206708198, 65706.19873114885, 66362.36067060559, 65933.26386656627, 65315.174100147815, 65581.41336537704, 65624.66723558672, 66264.50844257313, 66798.7941207491, 67388.30767430173, 69020.14033158665, 69675.70185849578, 69053.89251611513, 69405.24907997492, 70393.87538589294], [40512.94792630534, 40821.285056100874, 41271.4079812892, 41431.97241485587, 41562.19566848985, 41672.056901432414, 41530.00215963498, 41888.74509493611, 41958.292284870746, 42587.714098641336, 43063.836932819155, 43476.17478006962, 44570.55606682752, 44847.14970284007, 44582.41674047884, 44713.98934401133, 45541.641963985785], [40512.94792630534, 40453.0399323864, 40810.55215365213, 41011.717249984235, 41340.83891014047, 41293.66741460418, 41129.67817694305, 41191.677186628986, 41171.35175091023, 41408.54646812456, 41559.0918270459, 41837.54925888269, 42574.27942794664, 42913.75090394617, 42613.28275048472, 42739.899194038306, 43251.933999814704], [14866.888022051655, 14975.045393306478, 15208.613505157478, 15407.0641903119, 15399.014755287719, 15201.978193712497, 15489.979773035195, 15760.972940896116, 15936.13637963907, 16211.94027508055, 16462.76995274825, 16554.918007889282, 16926.66640901596, 16969.783140615848, 17148.33851772032, 17125.12994720491, 17540.24119994897], [14866.888022051655, 14839.956862019199, 15038.787019777832, 15250.786370934762, 15317.000897906517, 15063.941601443987, 15340.665781412394, 15498.695605638262, 15637.249294656762, 15763.064452443792, 15887.524589625722, 15930.95991391915, 16168.535667371536, 16238.20134424856, 16390.923852568056, 16369.067899471, 16658.366321551624], [15944.236265986641, 16698.667699831913, 16605.734466670954, 16651.113583834205, 17795.830385809913, 17537.50379660584, 15911.579682414413, 16307.382218206762, 15713.244388436386, 16131.599212293884, 16873.1349957854, 16558.03437693393, 17724.736921070722, 17723.931338559552, 17147.993189510646, 17470.507125367887, 18506.151243151467], [15944.236265986641, 16548.03052747097, 16420.30707576078, 16482.21705111782, 17701.051289975836, 17378.260227766834, 15758.201723874943, 16036.01212136936, 15418.537710544562, 15684.947871121916, 16283.550576181335, 15933.958826405675, 16930.861291769837, 16959.837571425927, 16390.59377695269, 16699.19692609483, 17575.713075790107], [15944.236265986641, 16083.935304081468, 16246.754633708337, 16315.501820832258, 16388.048016962923, 16366.611384234873, 16240.517226734595, 16389.34268790119, 16430.466375953732, 16724.85028964317, 16977.238154389386, 17159.988366724025, 17690.901174281793, 17820.183623965502, 17697.170471827023, 17766.75676328144, 18121.73590668507], [15944.236265986641, 15938.843577112879, 16065.3357793642, 16150.009484647504, 16300.766651617269, 16217.999721089798, 16083.968510165954, 16116.60869216817, 16122.30798153367, 16261.77302653608, 16384.016141631484, 16513.22505271979, 16898.541018801167, 17051.940338875265, 16915.514777707736, 16982.367357685755, 17210.62508062055], [3173.2320350842083, 3196.2514348112263, 3231.330987681632, 3243.817132110097, 3254.8522646781817, 3264.0208302792034, 3252.8941984125913, 3280.9932292885587, 3286.4406080241693, 3335.74093212477, 3373.03390406047, 3405.3308296891105, 3491.049740197767, 3512.7346303303784, 3493.617938111759, 3500.0061688772025, 3567.3650916622137], [3173.2320350842083, 3167.418339444017, 3195.2484358730653, 3210.9142596612955, 3237.51719528093, 3234.3829563943727, 3221.538275150692, 3226.394432348554, 3224.802414807222, 3243.381015322451, 3255.1726863835515, 3276.9832454354173, 3334.6886431749067, 3361.297650274461, 3339.310425577501, 3345.483438872778, 3388.0078285239124], [34195.564496956766, 32464.884984229226, 32569.92062505608, 32259.5958989858, 32226.00689763074, 32425.313920325785, 33730.772681542425, 33842.843998267985, 34582.852721043804, 35585.76529811101, 36118.31559538902, 37517.29429279353, 38551.482535935866, 38767.45676956653, 38324.81712871071, 39727.226240677286, 39766.40277121126], [34195.564496956766, 32172.022190444965, 32206.22967144143, 31932.378510987175, 32054.373895411547, 32130.886459651643, 33405.62853136283, 33279.667411727365, 33934.2407994383, 34600.46746199073, 34856.2622696317, 36103.26014132914, 36824.79499213849, 37096.15870823838, 36632.07129782057, 37973.29805940723, 37767.05788145779], [33097.63671130043, 31891.1477694218, 31926.208738730034, 31680.68740869033, 32543.675497703192, 32570.375296371454, 33014.131808094215, 33334.01129290663, 33515.26165764002, 34443.00596664369, 35280.35099017368, 35977.707785688224, 37203.64068911988, 37128.970435704934, 36647.576044769135, 38076.63314302289, 38730.16441510418], [33097.63671130043, 31603.4606072071, 31569.705772844496, 31359.342038576797, 32370.350619238994, 32274.63065330408, 32695.895640426068, 32779.302158632716, 32886.672731150284, 33489.34882412852, 34047.57798935528, 34621.70095045809, 35537.32181534024, 35528.30891495701, 35028.911268009164, 36395.577448048425, 36782.918727628785], [29576.147776884885, 29846.364132977644, 30118.292351832646, 30237.064503462763, 30351.33147017627, 30311.973183845028, 30067.05490851069, 30325.958712840642, 30404.088842801884, 30954.769433964928, 31431.123771425464, 31795.080550349227, 32824.45102571842, 33090.8417653596, 32853.32064683887, 32962.45406247934, 33665.34614148241], [34346.71094688275, 34660.5125665478, 34963.159579194806, 35146.34372497677, 35363.596533486474, 35225.91798282642, 34894.417154239505, 35354.57687520407, 35461.61827049875, 36160.046064928756, 36739.48087862813, 37168.473575535325, 38331.48509748104, 38617.379885351016, 38300.423392075056, 38551.63762518201, 39330.185322692705], [28335.329312139664, 28594.209187002874, 28843.886740756137, 28995.009889156638, 29174.238982813673, 29060.657013401702, 28787.1756556151, 29166.797950450775, 29255.104897523415, 29831.293446887903, 30309.315237285275, 30663.225379021034, 31622.68593753298, 31858.54325078339, 31597.060670151877, 31804.30723981587, 32446.593059505856], [978.0617717704336, 986.9976308280501, 991.3802560727081, 996.0948955132391, 1002.7654908941344, 999.5441247501573, 989.4286412747532, 1010.6820329664756, 1013.29617099776, 1036.6696688282086, 1046.7976285220213, 1064.1098859843455, 1100.5078078271326, 1106.588662481387, 1091.0870324649663, 1096.8790048792125, 1124.9152491557356], [0.0019383188997990075, 0.004899147773889556, 0.006191723021139461, 0.005165903637433633, 0.005162183757669192, 0.0064084367216130644, 0.006419594746848389, 0.011098094600936914, 0.004406472870269518, 0.0036148824196076124, 0.0027464496647240377, 2.3058111473295284e-5, 0.004774864731810435, 0.011123697824505951, 0.01233363266673293, 0.011700650352356678, 0.008547371262866976], [2.3548476e6, 2.324681846549692e6, 2.3197802044269945e6, 2.3199208848911244e6, 2.334304019567148e6, 2.3396369528171103e6, 2.362521813813588e6, 2.3683702945625125e6, 2.370496990144711e6, 2.3750139418255244e6, 2.3792079480839795e6, 2.3940818173893304e6, 2.4042227115499307e6, 2.3987994911861136e6, 2.3888314422613345e6, 2.4135779867344433e6, 2.4162582948570075e6], [0.0016459319014481277, 0.0003765070525880527, 0.00028332688606505507, 0.0003868635665053254, 0.0010865004570430718, 0.0013778367783641207, 0.002385243360983917, 0.002706828164346452, 0.0026958760812664166, 0.002766669929142641, 0.00279856279650309, 0.0032068129815955165, 0.003495611014061496, 0.003270215839176694, 0.0029024160958008695, 0.003974984838603333, 0.0039860794994976256], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.90462950861706; 522.8168012104572 260.6026525614817 … 138.24887520216515 509.51758621242493; … ; 575.3144357614462 286.1682627651031 … 151.67891970360293 557.938937000864; 581.3166477417477 295.96171117291294 … 154.69052876774342 569.2443203032602], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.90462950861706; 518.1005180905817 258.25177958183554 … 137.00174459169455 504.92127410927515; … ; 549.9147213222766 273.53414183231814 … 144.9824055759603 533.3063382106745; 552.089652388964 281.0815738318348 … 146.91311626291022 540.6242882282579]), BeforeIT.Data{Float64, Vector{Float64}, Matrix{Float64}}([72422.0, 73550.24564958585, 74009.29685315571, 73272.83956072244, 73470.64821257775, 73104.4764309572, 74410.1853514039, 75414.81113628975, 76042.0232925344, 76124.36860412295, 77108.0288285698, 76434.4291464518, 76152.31788968945, 75605.39390426937, 75737.1015124595, 75434.53992826004, 76363.52275542486], [72422.0, 73366.09715311594, 73617.61940460233, 73676.77916487743, 73607.34918128936, 73035.26012914046, 74402.91309220315, 74766.45205100244, 75147.31123763068, 75342.39800272012, 75869.18690903808, 75052.71967297167, 75044.59839323309, 74733.01099704827, 74211.66392585628, 73988.70250299489, 74189.03667478506], [64900.92049553803, 65936.44736791262, 66337.89429310142, 65672.1335560095, 65835.38287936988, 65498.394282436115, 66696.73972867182, 67602.78798785627, 68158.2927117002, 68237.81096971314, 69135.51213421824, 68494.15175863025, 68230.1583687855, 67725.69216557797, 67837.86529958453, 67557.9321194974, 68387.69313958393], [64900.92049553803, 65771.36161547048, 65986.8160058603, 66034.17187459608, 65957.87751952972, 65436.37952152821, 66690.2213202461, 67021.59072537864, 67356.34079760902, 67536.8532729749, 68024.75918330855, 67255.97912596034, 67237.67542452518, 66944.23024634273, 66471.5279635051, 66263.06392351205, 66440.32243884545], [40512.94792630534, 40994.04144825595, 41308.59143950215, 40944.574311155244, 41103.07805367871, 40968.550185129716, 41514.243176145865, 42086.54580844732, 42466.192453173695, 42447.728854619854, 42895.632395680004, 42784.87793709508, 42704.31187214385, 42506.83867025401, 42615.972016159154, 42506.96337718992, 43060.03877617386], [40512.94792630534, 40891.404250647014, 41089.975071203655, 41170.29417186618, 41179.55526905203, 40929.760610632286, 41510.18590447708, 41724.717754619145, 41966.53433429969, 42011.6940254412, 42206.45763160018, 42011.45329289306, 42083.130532502226, 42016.367850898314, 41757.63436915547, 41692.24165232008, 41833.8845657339], [14866.888022051655, 15099.78461986436, 15021.677219530842, 15099.951558339391, 15206.419204958718, 14942.751599131427, 15114.458123704864, 15244.848881883014, 15574.784355527487, 15649.473021831438, 15680.708032169507, 15625.354844932335, 15371.565979835135, 15371.511983989209, 15406.009141759376, 15247.594102888843, 15477.616260144841], [14866.888022051655, 15061.979135868898, 14942.178393619632, 15183.194796786296, 15234.712574985058, 14928.603600880771, 15112.980956881085, 15113.785286715523, 15391.53111327997, 15488.717299913278, 15428.776829500872, 15342.894426808884, 15147.96959040421, 15194.145745676149, 15095.713329864222, 14955.346781964312, 15036.884089800127], [15944.236265986641, 16475.986842793573, 16658.97233156286, 16707.074653132735, 16453.020453920988, 15924.474087268381, 16577.311492047505, 17083.261396663762, 16706.159587914826, 16623.3919249689, 18285.358243320912, 17155.08669712849, 17263.43709816663, 16252.67308933222, 16956.108816820175, 16571.1173973145, 17956.543921121964], [15944.236265986641, 16434.735747325936, 16570.808491940166, 16799.17766377668, 16483.63327535378, 15909.396580958077, 16575.691357580014, 16936.392531437174, 16509.5945607462, 16452.63183829385, 17991.57990856615, 16844.97323029824, 17012.321355672888, 16065.139456245937, 16614.592107107466, 16253.502393175999, 17445.223156914555], [15944.236265986641, 16187.337869006338, 16301.911449432828, 16141.46341683897, 16170.500784720707, 16085.553064561662, 16369.416343529276, 16592.029938283766, 16744.78214693241, 16749.84916525169, 16953.897072205807, 16816.686323094735, 16763.043656466274, 16654.023220849253, 16667.124696297135, 16605.524801283846, 16800.49779000339], [15944.236265986641, 16146.809466903776, 16215.63727369342, 16230.448317412885, 16200.587944363393, 16070.323046508533, 16367.816527078723, 16449.38430685198, 16547.762685917238, 16577.790074774715, 16681.5104127158, 16512.690138853668, 16519.20668875748, 16461.858555815834, 16331.428479190747, 16287.250317914579, 16322.095965755647], [3173.2320350842083, 3212.565833774874, 3235.551901048435, 3207.039761791353, 3219.454784128687, 3208.917704899895, 3251.6598544853364, 3296.4862406047955, 3326.2225831007627, 3324.7763965008503, 3359.859053722068, 3351.184059331403, 3344.8736121452603, 3329.406253624538, 3337.9542721481994, 3329.4160214657923, 3372.7364082484387], [3173.2320350842083, 3204.5225000935843, 3218.428475112102, 3224.7195784826877, 3225.4449665814172, 3205.8794584448, 3251.342063134832, 3268.145563602264, 3287.0861778141098, 3290.6233723644887, 3305.8784980950686, 3290.6045166585272, 3296.218734447077, 3290.989456133407, 3270.7238024389712, 3265.6018284888, 3276.69620333422], [34195.564496956766, 33239.52460111576, 34446.108713747686, 34312.39496100584, 34960.2322555434, 34772.426610120136, 36267.728841982986, 35431.49431957169, 36218.22591456546, 36325.54836560644, 36233.67113607162, 36517.047844647095, 36577.24936569642, 37219.8995874931, 38285.02633294153, 38218.95369533579, 38128.1468610681], [34195.564496956766, 33156.30246603502, 34263.8104816706, 34501.55284435323, 35025.27996822847, 34739.50360878486, 36264.184322862224, 35126.881327756586, 35792.08150217482, 35952.40227030729, 35651.52954350559, 35856.92711745747, 36045.19291131741, 36790.43281889549, 37513.91921362885, 37486.419319707034, 37042.43051852173], [33097.63671130043, 32259.091862443554, 33426.052851187684, 33791.155922910955, 34252.101755524134, 33503.72605069223, 35063.55628247732, 34431.33927027589, 34923.33901864725, 34921.77356290391, 35987.34097867232, 35647.93817735143, 35764.246426152284, 35745.52942679902, 37526.0147952205, 37110.08864446855, 38258.82306308364], [33097.63671130043, 32178.32444676071, 33249.15303383169, 33977.440311905164, 34315.83190632998, 33472.00427211546, 35060.12944959713, 34135.32484952575, 34512.4302728703, 34563.047431235755, 35409.157004134766, 35003.52839448631, 35244.01599666348, 35333.07487466753, 36770.19509389957, 36398.80764417206, 37169.38565618483], [29576.147776884885, 30048.050110017262, 30238.51414674573, 29955.7607927951, 29990.476233121324, 29812.510569169284, 30392.341272142723, 30812.927501524104, 31088.979554653077, 31095.74714416837, 31501.252973780352, 31222.32739245342, 31092.79723675218, 30893.55727986512, 30924.97843168275, 30811.180581158864, 31191.090025128367], [34346.71094688275, 34894.73001797783, 35104.98965285875, 34729.5207518646, 34850.86785820855, 34693.03380339431, 35290.77347001043, 35761.56888903414, 36038.681382546914, 36110.88412612777, 36589.171600981485, 36235.03289301779, 36102.43938311002, 35800.21258700478, 35877.890730250605, 35717.26772187509, 36151.584062723006], [28335.329312139664, 28787.433761757173, 28960.893631164017, 28651.13951896999, 28751.248383095255, 28621.038537769804, 29114.161454915768, 29502.557981654943, 29731.170082893277, 29790.735859650405, 30185.313178183485, 29893.15603603833, 29783.769120542995, 29534.43823678419, 29598.521105523203, 29466.01043093589, 29824.312469305776], [978.0617717704336, 993.6672399175336, 994.3904934970236, 986.852011349722, 994.0387880399045, 992.8499098726531, 1013.6249865185573, 1028.291597297977, 1030.631774500342, 1031.1796994170743, 1045.0875594563315, 1036.79147315912, 1034.921748923458, 1031.922298708179, 1034.9961376513595, 1029.4838164634941, 1045.0190517324656], [0.0019383188997990075, 0.003351420014635398, 0.0028402560212688055, 0.006199626282602733, 0.002831917867145428, 0.003999271449042885, 0.008978381364203925, 0.00790363048261189, 0.0031541407904556173, 0.0036831742234089138, 0.005613025743500755, 0.003994991539253423, 0.007177983115113973, 0.005482009049995185, 0.005214468882626111, 0.008260436074025934, 0.0068663971904514565], [2.3548476e6, 2.339999147363607e6, 2.349369120609161e6, 2.3483761641596444e6, 2.3618773893151763e6, 2.352424930273961e6, 2.386153357152721e6, 2.37154625547232e6, 2.3791191553237126e6, 2.380669014274356e6, 2.3890780368768666e6, 2.391215201957484e6, 2.3968795649446063e6, 2.419640344413512e6, 2.427827662263497e6, 2.4326051174680004e6, 2.445031405117805e6], [0.0016459319014481277, 0.0009807800069141755, 0.001367207135995207, 0.0013666860934810933, 0.0018959813846289744, 0.0014537455209406613, 0.002962414152268655, 0.00232234894426823, 0.002536885649311189, 0.0024976694617208682, 0.0027889949503646845, 0.0027621825956392143, 0.002955407288441452, 0.0037964368407665643, 0.003967856203153687, 0.00405721579669483, 0.004416862043189643], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.90462950861706; 526.349721230299 262.36366775136577 … 139.18308813830535 512.9606371561273; … ; 520.7648349827348 257.8154964211341 … 143.01670764059918 527.6339453720802; 524.3113620104389 273.31500315114806 … 145.10467837354597 534.9801393232392], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.90462950861706; 525.0318940915059 261.70678517377473 … 138.83461402801044 511.67633240301205; … ; 510.78344861919265 252.87400285739682 … 140.27553750101026 517.5209002632382; 509.38135724541013 265.532233989416 … 140.97275658715165 519.7463362664731]), BeforeIT.Data{Float64, Vector{Float64}, Matrix{Float64}}([72422.0, 72798.66014384372, 73527.19254438534, 73709.0112478558, 73958.0577264905, 73873.01166574052, 73787.08057041884, 74306.07542067174, 74834.75544688174, 75905.47441362662, 76885.8428298313, 77150.86478236748, 78256.83221201845, 79896.36282983623, 80525.53681294067, 80610.53609548368, 81623.07393533432], [72422.0, 72181.4091722339, 72862.31081741222, 72482.54286240952, 73204.28917844708, 73264.29347636002, 73366.37845185926, 73955.69731463914, 73768.97254629321, 74264.18130346763, 74775.7660973052, 74959.88142728285, 75505.89907896597, 76573.91889336081, 76588.25360190053, 76388.28834004057, 76828.3030057234], [64900.92049553803, 65238.91946038416, 65892.6732378587, 66050.5352914585, 66274.48010026065, 66185.51988987252, 66117.43041549622, 66597.24085284838, 67071.73167888586, 68040.52449376447, 68928.74524891248, 69170.34106467493, 70207.90515593042, 71712.04961982052, 72284.37403666269, 72394.7716205058, 73321.7253208976], [64900.92049553803, 64685.7666091623, 65296.82790688382, 64951.4987963904, 65599.02133115333, 65640.14710863457, 65740.4573351889, 66283.21249130573, 66116.50834302611, 66569.29405978182, 67037.04534423878, 67205.99411450482, 67739.91294315601, 68729.94560415907, 68750.04115818431, 68602.8521421583, 69014.59916002696], [40512.94792630534, 40728.003665369724, 41133.97754678139, 41272.206293676296, 41434.04580747115, 41462.14463686281, 41360.11521165551, 41572.55376542069, 41883.33974899716, 42408.9166984105, 42912.00057385078, 42994.78111392801, 43247.24550711827, 43919.41695735169, 44221.4422954695, 44035.593958944686, 44455.84362894344], [40512.94792630534, 40382.67588345029, 40762.016792097726, 40585.46453225721, 41011.75672217138, 41120.49399825901, 41124.29766800297, 41376.525209628926, 41286.84488431211, 41491.91481779364, 41734.31154002648, 41773.78572985998, 41726.99127223612, 42093.053461002484, 42059.24196487876, 41729.08172420996, 41844.38125186781], [14866.888022051655, 14939.727887871124, 14920.613034030455, 14855.878722362275, 14864.192568159126, 14923.95744935865, 14690.440923523935, 14818.24453294242, 14951.73502642788, 15066.339040328648, 15196.54085921989, 15586.707511774564, 15993.688087273744, 16272.183200904734, 16336.955291188477, 16388.974970836345, 16540.400571414048], [14866.888022051655, 14813.055754947856, 14785.690937615913, 14608.686889470448, 14712.699124518726, 14800.983116078834, 14606.682363470836, 14748.371532319159, 14738.795150695803, 14740.561767302692, 14779.482710388866, 15144.065464725494, 15431.467956004106, 15595.513894640992, 15538.16248168591, 15530.54732432297, 15568.770516329774], [15944.236265986641, 16272.966396351021, 16533.075785321336, 16554.875075431737, 16684.931820045473, 16171.418428495412, 16104.715217381126, 16284.670055649833, 16367.623201941065, 16659.925903965104, 17015.574105672353, 16622.625425827388, 16846.807931015017, 17386.34074949749, 17613.51366417775, 17649.065387932293, 17983.806655602024], [15944.236265986641, 16134.989896518802, 16383.572729377951, 16279.413085624892, 16514.88169678897, 16038.164939520972, 16012.893075098578, 16207.882366094676, 16134.518505764323, 16299.690732349734, 16548.5938959292, 16150.564668912582, 16254.598397181087, 16663.339847395222, 16752.303737710678, 16724.636270731065, 16927.386832154334], [15944.236265986641, 16027.479433004573, 16189.57861308204, 16227.273529658254, 16278.438504191174, 16268.51711095257, 16237.761130411, 16362.378445863684, 16482.68899061627, 16722.833398592968, 16938.71352253098, 16994.210198730103, 17211.326337104074, 17526.79551719529, 17654.720076122438, 17665.648626467904, 17837.915182080913], [15944.236265986641, 15891.584387231313, 16043.181686791992, 15957.262609294781, 16112.531294984874, 16134.463522823598, 16145.180417697902, 16285.22433514536, 16247.94554852153, 16361.237987307039, 16473.84269628634, 16511.59692170124, 16606.303024171582, 16797.953884992698, 16791.495368750344, 16740.35090641305, 16790.065437685516], [3173.2320350842083, 3189.9648016774236, 3221.875029171322, 3222.353471776508, 3245.378285939128, 3247.0833735194374, 3233.053510122577, 3256.288909440071, 3282.544120919494, 3322.0471603558312, 3360.8497251837757, 3366.0732919874386, 3400.561988981333, 3413.6104671208336, 3423.2017811663422, 3403.0912265393904, 3402.287860700157], [3173.2320350842083, 3162.9174786999656, 3192.740694520994, 3168.7356767069564, 3212.3019159850787, 3220.327205504516, 3214.6200330069346, 3240.9344134002017, 3235.794727891983, 3250.215014413315, 3268.613618436231, 3270.4812260327167, 3281.0233061332565, 3271.6574545396525, 3255.824878950853, 3224.842885952694, 3202.4278193890764], [34195.564496956766, 34025.875106021944, 34446.262512871974, 36182.911489428785, 35966.05930162615, 36616.690276426234, 36709.43144671404, 37054.819526307634, 36192.286600318665, 37130.653599770616, 37603.93987285747, 38777.4444663117, 38031.7238717923, 38398.94208436973, 38947.56533057573, 38927.74924850411, 39139.94007087222], [34195.564496956766, 33737.37385575758, 34134.776520890104, 35580.85217152584, 35599.49904934245, 36314.96648171985, 36500.13009664899, 36880.093605021844, 35676.842673743646, 36327.782839791995, 36571.92675241026, 37676.21591083053, 36694.80891690934, 36802.14433567871, 37043.230368572404, 36888.777547655234, 36840.748950145615], [33097.63671130043, 33167.91291177009, 33506.736334619876, 35156.86033304363, 34991.17177081155, 35301.199125402505, 35077.622228855544, 35424.21245964888, 34560.2291308028, 35360.360828848214, 35842.21258176843, 36830.693735474466, 35862.63318518111, 36080.52016228679, 36593.939768470955, 36390.84747073399, 36496.91699149677], [33097.63671130043, 32886.6862184407, 33203.74616256959, 34571.87381646922, 34634.54741437474, 35010.31505921864, 34877.624751361844, 35257.17539842553, 34068.02866822253, 34595.76885377048, 34858.5488014489, 35784.7503470461, 34601.96746336483, 34580.132645355945, 34804.68495094747, 34484.754526878874, 34352.98454477356], [29576.147776884885, 29730.178062686602, 30029.41349472294, 30129.96351287107, 30229.586688594798, 30207.040156214447, 30165.140331334587, 30419.94907046212, 30632.928379269368, 31080.74793846187, 31502.29330216349, 31619.69314078813, 32031.509810284413, 32688.620944138507, 32945.20439157022, 33016.62191526848, 33390.29841825853], [34346.71094688275, 34525.58595600865, 34870.348559500344, 34926.32366230022, 35039.74389599679, 34973.13955653697, 34950.4754994403, 35169.899477913204, 35425.14558032395, 35936.402099214574, 36390.511410896564, 36511.72071230749, 37116.24344206055, 37945.037427376395, 38252.13007936157, 38292.10007660306, 38831.150244979435], [28335.329312139664, 28482.89751152657, 28767.31956054185, 28813.497867791364, 28907.067225201525, 28852.12001656981, 28833.422636131356, 29014.442900302358, 29225.01567912341, 29646.791780134874, 30021.422611893922, 30121.417789786927, 30620.1365943536, 31303.87456688213, 31557.219681551043, 31590.194106269457, 32034.899395819033], [978.0617717704336, 983.1554416889792, 992.9111836355073, 994.2481162872074, 1005.1495156691772, 1005.3401771212598, 1001.8145847212862, 1007.392304473041, 1013.6577192926876, 1023.3744560880244, 1035.940535852507, 1038.9272115794663, 1060.1519035853785, 1078.3912483055374, 1087.0395657310928, 1086.049628634166, 1100.2766576596257], [0.0019383188997990075, 0.003465043055935979, 0.004094474309397578, 0.007484243281595138, 0.003891965055527802, 0.0025842786734759926, 0.007145410060449331, 0.0074661250889545006, 0.003485263262936522, 0.003122583095219733, 0.0073555118706361, 0.003455206037908942, 0.00501282981274076, 0.002705441805968656, 0.005052856337773193, 0.0056479556997748315, 0.005135361210128142], [2.3548476e6, 2.359193641578222e6, 2.38488669389023e6, 2.425669284848001e6, 2.4368239230133225e6, 2.4394680982538275e6, 2.4669102386595607e6, 2.460372841546856e6, 2.429935220989619e6, 2.4302643311813744e6, 2.4436853629776547e6, 2.4681040989212184e6, 2.4553073329742826e6, 2.4745483436116246e6, 2.4744597279879823e6, 2.4603879906875887e6, 2.4611720355264493e6], [0.0016459319014481277, 0.0017851246747470305, 0.0028181257792350423, 0.004463236887794135, 0.004674438529214874, 0.004494408724326487, 0.005432120172381217, 0.004940638950900338, 0.003438023310357017, 0.003268474644817718, 0.0037384822557842857, 0.00452387086073205, 0.0037940069629620915, 0.004346006622621266, 0.004136688866715419, 0.00340069385449327, 0.003298120325397832], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.90462950861706; 520.7815774443698 259.58817729830963 … 137.71069931379458 507.53413369464295; … ; 580.5066865076249 292.65143756256583 … 151.24466457751262 553.4559907936504; 586.9128413136973 295.122411410863 … 152.48963054478054 558.0914431034411], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.90462950861706; 516.3659338866596 257.38716076394996 … 136.54306706912746 503.2308135987897; … ; 550.1006977517229 277.32283493533475 … 143.32271694552156 524.4668731416226; 552.4359159289006 277.7860836951174 … 143.53195702978297 525.3075684165236]), BeforeIT.Data{Float64, Vector{Float64}, Matrix{Float64}}([72422.0, 72218.7265908847, 72043.11915245654, 72639.01081236692, 72470.18781844988, 72776.76131566623, 74096.76376400726, 74447.09022775108, 75667.70425855005, 76566.60108876428, 76921.68932741116, 77797.9594830744, 77212.02537867318, 78022.21617246105, 78915.46163465979, 78910.1827914442, 78676.47642584903], [72422.0, 72089.99092264868, 72257.15572012479, 72252.5580527085, 72777.16158039392, 73584.8614362266, 74878.99360555554, 75009.5525894598, 75874.17795062473, 76668.11309899279, 76965.35942943199, 77989.73863121438, 77467.89994034513, 77801.82178261141, 78682.42879923499, 78774.37575403851, 78379.82531106773], [64900.92049553803, 64724.62795186415, 64588.548820246724, 65141.47126015749, 65006.476262334545, 65306.46326751704, 66516.61519277132, 66856.31446992127, 67970.31495654897, 68789.46163837424, 69092.17541760251, 69922.62330562333, 69379.24739825928, 70114.5233154184, 70914.36957775342, 70895.95092437595, 70675.67300813032], [64900.92049553803, 64609.251115078965, 64780.43822568605, 64794.90677565858, 65281.83476725476, 66031.61453676554, 67218.82239750544, 67361.42703264003, 68155.7848610224, 68880.66271605241, 69131.40053571564, 70094.98902346949, 69609.16475154841, 69916.46629597226, 70704.96350861617, 70773.93664537542, 70409.18907114898], [40512.94792630534, 40346.834249258536, 40085.838103497474, 40305.657980075805, 40120.78687043778, 40118.47735211308, 40694.90636773455, 40737.167826642544, 41262.23169814519, 41724.17134731873, 42043.06500046333, 42225.84617425405, 42049.57223138137, 42416.21394397194, 42906.78059887777, 42990.903742484115, 42872.96399601288], [40512.94792630534, 40274.912783546366, 40204.93115916626, 40091.224542972974, 40290.733013100325, 40563.94573788425, 41124.51717045791, 41044.94511592278, 41374.82352850983, 41779.489259415626, 42066.933755217535, 42329.93678103339, 42188.92119691403, 42296.398126753265, 42780.07933483143, 42916.91497365701, 42711.31068944438], [14866.888022051655, 14825.774823075759, 14817.381742216614, 14810.707222177201, 14654.011295849494, 14686.941330046246, 14716.263724419441, 14865.359547987951, 14979.525307673219, 14934.478630842548, 15039.290261353026, 15083.365065724869, 15114.136665157437, 15508.025236364818, 15626.419594278917, 15723.16553194367, 15702.189898368406], [14866.888022051655, 14799.34669121773, 14861.403455424539, 14731.911563832036, 14716.08367499562, 14850.022495584717, 14871.621395342829, 14977.670253664046, 15020.39978544559, 14954.278764660346, 15047.828390790593, 15120.546952275743, 15164.223721872768, 15464.21871653735, 15580.275672794281, 15696.105443448161, 15642.984499887587], [15944.236265986641, 15901.5721746998, 15854.892267748783, 15965.394728111454, 15954.88396340272, 15962.25471056483, 16338.397524749565, 16208.711272255521, 16609.86907648176, 17082.84732373354, 16885.21829730142, 17264.710707830673, 16841.55134210534, 16848.238455649385, 17613.834901181028, 17658.841034659767, 17353.60985885653], [15944.236265986641, 15873.226347840953, 15901.996373757245, 15880.4559220524, 16022.466660495995, 16139.496727423404, 16510.879849991783, 16331.171263566903, 16655.192256650953, 17105.49576505913, 16894.80439989659, 17307.26981265079, 16897.362914802758, 16800.646149039352, 17561.822256197316, 17628.44958453129, 17288.177750760504], [15944.236265986641, 15898.611811672425, 15831.199345369752, 15937.974726679267, 15891.702986452277, 15963.169834465338, 16242.73657090054, 16319.329522367789, 16588.749502685572, 16783.958990071966, 16908.902822101372, 17105.320548068536, 16987.32530991028, 17147.08691216082, 17330.541773274348, 17351.63048421671, 17284.38000759882], [15944.236265986641, 15870.271261897937, 15878.233060869814, 15853.181800018967, 15959.018057604988, 16140.422012695768, 16414.209015967557, 16442.62525624501, 16634.01505408937, 16806.211165203786, 16918.502370912087, 17147.486741438734, 17043.61996603845, 17098.65042902695, 17279.365676661324, 17321.767753617693, 17219.208931942027], [3173.2320350842083, 3162.297887223992, 3127.2759754678505, 3129.1140025053514, 3102.2702141219074, 3112.56970439334, 3157.2115470532513, 3153.8576837688242, 3201.0230927710286, 3233.8235932653693, 3281.3911892490187, 3307.4034466933313, 3290.3155452634733, 3304.9861821338163, 3331.318080280357, 3359.810077595281, 3346.303053465504], [3173.2320350842083, 3156.66083779249, 3136.566958754179, 3112.4665464341565, 3115.41100465748, 3147.1311208111856, 3190.5418163218496, 3177.6856968701954, 3209.7576918031687, 3238.1109970290036, 3283.2541057977537, 3315.5565013463915, 3301.219391442582, 3295.6503743497506, 3321.480888912915, 3354.027733203937, 3333.685755687275], [34195.564496956766, 34468.79079580448, 34836.16944961767, 35291.42328700361, 35705.800714629164, 36539.52279614612, 36940.88988929823, 36892.84908146218, 38240.29205051955, 37952.28102879755, 38277.766922424824, 37579.09608289581, 37149.348846794106, 37439.49680342264, 37383.87489941271, 36963.14111783744, 37522.307066936046], [34195.564496956766, 34407.347413653486, 34939.66599762146, 35103.66649118544, 35857.04558232641, 36945.25111165484, 37330.870031167775, 37171.58178896012, 38344.63794502045, 38002.598168192635, 38299.498036253026, 37671.732021968426, 37272.45885855659, 37333.73904032567, 37273.48245936959, 36899.526328074644, 37380.828511639214], [33097.63671130043, 33324.24545195384, 33551.16241062442, 33734.172405000805, 33965.29502586937, 34530.434873204234, 34593.69374219461, 34256.99750059754, 35424.21387426981, 35127.17724192784, 35323.651154130945, 34355.0585476312, 33942.583706765414, 34189.758266947596, 34615.44835909042, 34425.86863548087, 34774.5943943251], [33097.63671130043, 33264.84231360972, 33650.84126584519, 33554.700467333896, 34109.16735052447, 34913.854636320786, 34958.89484140477, 34515.81583265445, 35520.87556500213, 35173.74885833469, 35343.705152725335, 34439.74693671419, 34055.06675180132, 34093.18025004415, 34513.230923957526, 34366.62057567268, 34643.47614066424], [29576.147776884885, 29495.80909626439, 29423.182604309786, 29673.995553974855, 29636.289919277246, 29792.239550487262, 30339.674247389525, 30530.718604808244, 31024.442303105392, 31417.867168877157, 31596.00411342938, 31969.975416066813, 31748.130322872716, 32066.12743147588, 32386.95111609662, 32387.512346418385, 32229.049026995694], [34346.71094688275, 34253.41382577215, 34190.72923671176, 34483.404941167406, 34390.081428380094, 34529.92221023586, 35173.74512598619, 35317.78352540155, 35921.178116882045, 36338.95738558044, 36462.82177250893, 36905.90933352038, 36599.42234675563, 37008.362808071695, 37474.125648225105, 37455.43960535247, 37394.4584994764], [28335.329312139664, 28258.36110826618, 28206.647613004017, 28448.099042814534, 28371.109066351175, 28486.474831977994, 29017.61548077841, 29136.444194460477, 29634.232308181312, 29978.891602535914, 30081.07717131112, 30446.615285711323, 30193.769832378246, 30531.137292638683, 30915.382045433624, 30899.966444820348, 30849.65828810953], [978.0617717704336, 975.4050298274973, 974.6369792251758, 984.0707650151533, 980.1049146772228, 984.3015067938378, 1003.195819395512, 1007.8123397114147, 1024.6945365614733, 1032.6370839166593, 1033.3495316642338, 1046.7385560361538, 1031.6947286309287, 1040.0330758708637, 1053.2928134318104, 1052.9989726050947, 1052.16548165829], [0.0019383188997990075, 0.004504463307548612, 0.0035728191349351235, 0.010664247487313538, 0.006284575368856293, 0.00774899004313756, 0.005591218283188537, 0.010411393503141353, 0.0028586511551871308, 0.00579711706053776, 0.002496964155242143, -0.0006091982513958261, 0.005812961856490606, 0.0015961521066565343, -0.00031464091040367403, 0.0018158845047120398, 0.004788239505619352], [2.3548476e6, 2.3455614927972322e6, 2.361135402189778e6, 2.3715525580311734e6, 2.369613964487269e6, 2.3815794398284056e6, 2.374490139955797e6, 2.383802666207298e6, 2.386094311890075e6, 2.379373116722252e6, 2.3822356444452717e6, 2.388145287500492e6, 2.3789576998028895e6, 2.3740263035096577e6, 2.3657068035035376e6, 2.348139819121236e6, 2.367501719610363e6], [0.0016459319014481277, 0.0012395743895590725, 0.0018828779294802161, 0.0024221628369776823, 0.002306658171776353, 0.002810386102076811, 0.0024378417042270357, 0.0028820399822322607, 0.002828831296299139, 0.002475374386212922, 0.0024677479163500407, 0.0025150756333164547, 0.0020838659182778273, 0.0017623267714207806, 0.0012799448350790754, 0.0004964680336663229, 0.0013806335311611969], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.90462950861706; 516.6761516450342 257.54179154574 … 136.6250982052038 503.53314015578155; … ; 580.6589637541017 295.9871389915686 … 148.32847184709158 536.9301438576427; 578.0254345311062 293.08232835890874 … 147.65903971522334 535.2245838637022], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.90462950861706; 515.7551349948743 257.08270266120286 … 136.38155301761165 502.6355519769691; … ; 579.6596304510866 295.4777353248345 … 148.07319363568888 536.0060693015892; 575.8459789007155 291.97725599954435 … 147.10228856508317 533.2065096352358])])

Note that this will use the number of threads specified when activating the Julia environment. To discover the number of threads available, you can use the command

Threads.nthreads()
2

To activate Julia with a specific number of threads, say 8, you can use the command julia -t 8 in the terminal.

We can then plot the results of the monte-carlo repetitions using the function plot_data_vector

ps = Bit.plot_data_vector(data_vector)
+plot(ps..., layout = (3, 3))
Example block output diff --git a/dev/examples/change_expectations-6a696e71.svg b/dev/examples/change_expectations-63986407.svg similarity index 86% rename from dev/examples/change_expectations-6a696e71.svg rename to dev/examples/change_expectations-63986407.svg index e7cf434..64132c8 100644 --- a/dev/examples/change_expectations-6a696e71.svg +++ b/dev/examples/change_expectations-63986407.svg @@ -1,82 +1,82 @@ - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/dev/examples/change_expectations-255c1f2c.svg b/dev/examples/change_expectations-a116ddd6.svg similarity index 85% rename from dev/examples/change_expectations-255c1f2c.svg rename to dev/examples/change_expectations-a116ddd6.svg index 17a28aa..b85ad61 100644 --- a/dev/examples/change_expectations-255c1f2c.svg +++ b/dev/examples/change_expectations-a116ddd6.svg @@ -1,284 +1,284 @@ - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + - + - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + - + - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/dev/examples/change_expectations.html b/dev/examples/change_expectations.html index a52b13c..9d7774c 100644 --- a/dev/examples/change_expectations.html +++ b/dev/examples/change_expectations.html @@ -24,18 +24,18 @@ ⋮ => ⋮

Set the seed, initialise the model and run one simulation

Random.seed!(1234)
 T = 40
 model = Bit.init_model(par, init, T)
-data = Bit.run_one_sim!(model)
BeforeIT.Data{Float64, Vector{Float64}, Matrix{Float64}}([72421.99999999997, 72321.49357146623, 72939.5153644963, 73962.58571988865, 74097.28050895817, 74966.11499467235, 75621.88311225767, 76486.6655262319, 77132.65913232809, 78537.17167545545  …  92843.8319003715, 93190.98378950437, 92590.1362598781, 93459.04026122102, 94541.01187464365, 95059.57078482675, 94472.16641289036, 94487.9640513894, 95214.67957815698, 96256.66273518592], [72421.99999999997, 72379.06113178324, 72774.3361064739, 73550.08881669497, 73507.38388050068, 73972.47922368234, 74094.78253498324, 74722.3604646488, 75718.0401148647, 76721.84043323644  …  83294.04949220557, 82954.86801704326, 82296.86773712788, 82465.62646156736, 83070.27213900148, 83465.09387035854, 83169.18384366858, 82771.46612740691, 82473.409687215, 83046.31460350617], [64900.920495538034, 64822.27522027363, 65405.19251975263, 66320.5629328053, 66450.63661991055, 67283.43925593204, 67909.99928834863, 68711.26373282148, 69288.79246661696, 70568.91874397847  …  83452.42931491986, 83755.95007565369, 83205.52547704343, 84006.35030670131, 84973.52463048926, 85412.72920344184, 84863.28634131656, 84839.27193105238, 85466.13434073918, 86408.83023323487], [64900.920495538034, 64873.873438926865, 65257.07553381933, 65950.68637208782, 65921.61576743542, 66391.63324404682, 66538.63170468244, 67126.31255790053, 68018.03057894247, 68937.76803925307  …  74868.63300796083, 74556.18024015783, 73955.5464737954, 74124.83891797988, 74663.61609313477, 74994.88375374301, 74709.94401093575, 74319.21084780435, 74029.37806538986, 74550.00720118533], [40512.94792630534, 40372.19526798674, 40514.367639670425, 41111.26104080402, 41127.04764245329, 41240.659458047376, 41359.95644805904, 41662.98851165175, 42092.74367258232, 42775.01498032095  …  50330.263359729426, 50588.501646610806, 50330.55739106858, 50637.952171325975, 51270.23905395274, 51789.82266862961, 51613.1461085754, 51835.48961405289, 52371.60906296847, 52886.81667897088], [40512.94792630534, 40404.331340839315, 40422.61856302073, 40881.97933437552, 40799.63067686357, 40694.03656769685, 40524.73771548507, 40701.955356315964, 41320.759452586906, 41786.300726629146  …  45153.36518789533, 45031.85079313667, 44735.296782834055, 44681.50364980781, 45049.57823479581, 45472.984728186515, 45437.96760935213, 45407.894178497176, 45363.43754308799, 45628.5839493819], [14866.888022051655, 14851.49808083446, 15006.065974005784, 15080.01872589489, 15193.966973445758, 15256.52812118052, 15406.534290196816, 15507.117431740662, 15449.67263628867, 15381.282146156325  …  18670.016422830548, 18676.0969644062, 18665.144169750347, 19100.901607845335, 19126.76122414227, 19109.50847593551, 19140.435123112842, 19277.284297884304, 19744.838234875737, 19655.942539439413], [14866.888022051655, 14863.319801727455, 14972.083148221494, 14995.91591953691, 15073.006125369204, 15054.310998372443, 15095.41631164248, 15149.417359614992, 15166.32442852908, 15025.754675155875  …  16749.64550808587, 16624.710843864978, 16590.1354407877, 16854.09793069863, 16806.09534975097, 16778.709451262912, 16850.406083042628, 16886.90300727527, 17102.658331334318, 16958.343885758146], [15944.236265986641, 15917.076175530057, 16031.046912897496, 16377.672002117872, 16187.684808526985, 16486.783569469553, 16546.2636514225, 16836.647070014806, 17018.267258532094, 17732.083006388144  …  21483.279995801764, 21453.230638828092, 20721.37232985262, 21170.12610017868, 21815.93192221495, 22197.081670773394, 21650.606057412002, 20853.347607933356, 20685.02785054476, 21930.358445139125], [15944.236265986641, 15929.746091450681, 15994.74290921496, 16286.332050754054, 16058.812863085917, 16268.260068493653, 16212.130094654098, 16448.278961124925, 16706.150902386627, 17322.218434181028  …  19273.540854554725, 19096.80361571209, 18417.772203890978, 18679.923378648287, 19168.986726599465, 19489.689360083215, 19060.25132996262, 18267.534627313395, 17917.0353129119, 18920.616973945253], [15944.236265986641, 15917.076175530063, 16024.796769328006, 16256.06086278949, 16296.974425138349, 16455.60560059657, 16596.797241714634, 16765.371504732124, 16907.1587519136, 17257.955624511455  …  21105.005010237084, 20518.551042893225, 20421.894835241095, 21519.618335041538, 21690.399656854315, 21745.867300740836, 20835.69982101401, 20853.314978112765, 21011.128071253766, 22205.718528911268], [15944.236265986641, 15929.746091450685, 15988.506919757576, 16165.39914918438, 16167.232412996835, 16237.495346927686, 16261.643214789565, 16378.647497330132, 16597.080134492982, 16859.05017179834  …  18934.17468747215, 18264.78940826327, 18151.58769698934, 18988.305489259124, 19058.68539557965, 19093.50989662162, 18342.843344481204, 18267.506043587233, 18199.498030013718, 19158.186400272658], [3173.2320350842083, 3161.547520867122, 3157.0983266336884, 3200.8209998273524, 3210.630625942368, 3204.867391222516, 3210.0161651050526, 3214.6566140345203, 3227.8431506869993, 3313.6248194748996  …  3936.9664100277046, 4001.2892228696282, 3985.8467169821547, 4027.1273685011324, 4076.937133251284, 4071.832503319797, 4085.8854248793364, 4102.6574627786, 4137.627771652147, 4167.2351518418955], [3173.2320350842083, 3164.064097456108, 3149.948743085029, 3182.969693829119, 3185.0704411628903, 3162.3885875466804, 3145.193426804347, 3140.5046700796934, 3168.644254166176, 3237.032722618613  …  3532.0157332356516, 3561.786836920921, 3542.7391441272443, 3553.423835251681, 3582.27895425793, 3575.188477162898, 3597.0357087057173, 3593.928355023528, 3583.9460034579624, 3595.3201743420414], [34195.564496956766, 34159.01740189823, 34014.75456460803, 34823.21353948705, 34895.43718950549, 34670.27270208732, 34480.88414425994, 34624.591718149386, 35014.68560000502, 34606.83704556837  …  37176.99355266154, 37105.63053158947, 36036.51838477611, 35860.83459395811, 36195.090118384025, 36028.92409265714, 36645.055446997234, 37556.17664157078, 37863.7562753993, 38256.76226244631], [34195.564496956766, 34186.20781511489, 33937.72455018143, 34629.00091692283, 34617.6307625321, 34210.73677509919, 33784.58069458958, 33825.91207898237, 34372.513520143395, 33806.924454587774  …  33353.02170929037, 33029.94086198122, 32030.329655142887, 31642.591042660973, 31803.509679128645, 31634.453076256133, 32260.71200815496, 32899.214561042056, 32796.97098633359, 33006.37092830872], [33097.63671130043, 32978.29335478363, 32626.719726685307, 33429.57958841529, 33306.85610497304, 32688.12885611254, 32171.755421680577, 32144.67920532442, 32442.710035079806, 31958.045502978097  …  34816.7214306521, 34632.475991930216, 33163.45601557015, 33310.77421208765, 33867.01044405048, 34065.76612316909, 34577.07632320748, 35034.3341100518, 35450.55184563082, 36473.21719080997], [33097.63671130043, 33004.543917349474, 32552.83306416462, 33243.13940489449, 33041.69654734978, 32254.865185980023, 31522.082281387968, 31403.20329138921, 31847.708188781005, 31219.357857317147  …  31235.523767621067, 30828.43809765163, 29476.666345528352, 29392.489540248822, 29757.8978512735, 29910.742745430434, 30440.15318684404, 30690.080246720816, 30706.692486452415, 31467.601133888034], [29576.147776884864, 29540.30815757877, 29793.023211372885, 30221.719047433853, 30302.093637263206, 30672.29442645085, 30985.37634985721, 31330.906666834246, 31624.54356011735, 32234.051578586317  …  38028.15723381824, 38190.13341222716, 37964.13733557745, 38319.16126082298, 38715.36585999489, 38933.93296060209, 38712.926357006916, 38699.5794735714, 38972.050103075635, 39352.345180038385], [34346.71094688274, 34305.090481160245, 34626.68140468615, 35102.85572859825, 35151.9158814585, 35602.584835051115, 35913.541443475355, 36361.123950002984, 36639.56640947833, 37292.12291982345  …  44180.18635915802, 44318.331501139044, 44007.15208787922, 44439.30308260304, 44992.85488751371, 45203.29642692993, 44885.445102000696, 44879.53549032289, 45224.04039158543, 45771.873857511506], [28335.329312139656, 28300.993284908534, 28566.299175070595, 28959.133187587868, 28999.606803520088, 29371.399410694394, 29627.932209864408, 29997.178561761877, 30226.887857534544, 30765.2335420458  …  36447.74405020752, 36561.7109478519, 36304.99433928022, 36661.51001168347, 37118.1788527766, 37291.78878967954, 37029.567991359196, 37024.6926834074, 37308.90213338987, 37760.85346256466], [978.0617717704339, 976.8765815346229, 985.4879036936139, 995.9881567731888, 996.6271011888025, 1008.5599944301928, 1011.0814950160697, 1019.233115984231, 1024.682497021224, 1042.744245568732  …  1244.0857219436398, 1247.4851622874362, 1234.2360535867895, 1247.8859632752399, 1265.303882980632, 1275.4998159098313, 1264.9148823088965, 1260.1569671580805, 1270.0438460780917, 1284.6111956850255], [0.0019383188997990075, -0.003952295097048086, 0.00043121555853309346, 0.006256067040482538, 0.00632983693062017, 0.0061267503866178075, 0.006226730126539071, 0.007781104748443957, 0.007250422190755446, 0.005772533711265515  …  0.002921076419133861, 0.001301248358178686, 0.007114594551428599, 0.002698235363678414, 0.006125895665054948, 0.004582409406319821, 0.003548467284302692, 0.009408303467589363, 0.005313439829667699, 0.002561799916292351], [2.3548476e6, 2.3588626485893e6, 2.3553371402178714e6, 2.3432018390445355e6, 2.346870717237858e6, 2.334370945877865e6, 2.323148381711212e6, 2.3263953554424085e6, 2.3149211088462686e6, 2.2990184059278253e6  …  2.364992053356945e6, 2.3491910698544066e6, 2.322100359571532e6, 2.335686258811865e6, 2.3338108755838843e6, 2.320080094864146e6, 2.331080316149987e6, 2.3447280090234405e6, 2.354336312917205e6, 2.3621266494370117e6], [0.0016459319014481277, 0.0016010860580926674, 0.0013454414221782392, 0.000882623037192628, 0.001116544463863402, 0.0006506009200479771, 0.00027245756745887436, 0.0005683215599217866, 0.0002074990646606677, 0.0  …  0.0030529516170180555, 0.0021996308324380657, 0.00106577129490818, 0.001624261945893235, 0.0015656142516685156, 0.0009761718174434832, 0.001451688096223678, 0.0021359814855953325, 0.0025028436155913082, 0.0027018047220479183], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086171; 517.4556387808753 257.93033379374606 … 136.83121862733822 504.29279899424546; … ; 701.9729437980611 350.10250290902496 … 179.78639375822763 662.0366336947989; 707.7471299158308 352.9823247453998 … 181.15402702355033 668.8514250556568], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086171; 517.8675309753778 258.13564509630606 … 136.94013561788393 504.69421363171887; … ; 608.0375677331926 303.2531042782543 … 155.72805552990417 573.4453842680539; 610.615298105838 304.5387234224978 … 156.29229076098562 577.0576736177572])

Now we can experiment with changing expectations of the agents in the model. We will change the function 'estimatenextvalue' to make the agents expect the last value of the time series (in way representing backward looking expectations)

import BeforeIT: estimate_next_value
+data = Bit.run_one_sim!(model)
BeforeIT.Data{Float64, Vector{Float64}, Matrix{Float64}}([72421.99999999997, 72321.49357146623, 72939.5153644963, 73962.58571988865, 74097.28050895817, 74966.11499467235, 75621.88311225767, 76486.6655262319, 77132.65913232809, 78537.17167545545  …  92843.8319003715, 93190.98378950437, 92590.1362598781, 93459.04026122102, 94541.01187464365, 95059.57078482675, 94472.16641289036, 94487.9640513894, 95214.67957815698, 96256.66273518592], [72421.99999999997, 72379.06113178324, 72774.3361064739, 73550.08881669497, 73507.38388050068, 73972.47922368234, 74094.78253498324, 74722.3604646488, 75718.0401148647, 76721.84043323644  …  83294.04949220557, 82954.86801704326, 82296.86773712788, 82465.62646156736, 83070.27213900148, 83465.09387035854, 83169.18384366858, 82771.46612740691, 82473.409687215, 83046.31460350617], [64900.920495538034, 64822.27522027363, 65405.19251975263, 66320.5629328053, 66450.63661991055, 67283.43925593204, 67909.99928834863, 68711.26373282148, 69288.79246661696, 70568.91874397847  …  83452.42931491986, 83755.95007565369, 83205.52547704343, 84006.35030670131, 84973.52463048926, 85412.72920344184, 84863.28634131656, 84839.27193105238, 85466.13434073918, 86408.83023323487], [64900.920495538034, 64873.873438926865, 65257.07553381933, 65950.68637208782, 65921.61576743542, 66391.63324404682, 66538.63170468244, 67126.31255790053, 68018.03057894247, 68937.76803925307  …  74868.63300796083, 74556.18024015783, 73955.5464737954, 74124.83891797988, 74663.61609313477, 74994.88375374301, 74709.94401093575, 74319.21084780435, 74029.37806538986, 74550.00720118533], [40512.94792630534, 40372.19526798674, 40514.367639670425, 41111.26104080402, 41127.04764245329, 41240.659458047376, 41359.95644805904, 41662.98851165175, 42092.74367258232, 42775.01498032095  …  50330.263359729426, 50588.501646610806, 50330.55739106858, 50637.952171325975, 51270.23905395274, 51789.82266862961, 51613.1461085754, 51835.48961405289, 52371.60906296847, 52886.81667897088], [40512.94792630534, 40404.331340839315, 40422.61856302073, 40881.97933437552, 40799.63067686357, 40694.03656769685, 40524.73771548507, 40701.955356315964, 41320.759452586906, 41786.300726629146  …  45153.36518789533, 45031.85079313667, 44735.296782834055, 44681.50364980781, 45049.57823479581, 45472.984728186515, 45437.96760935213, 45407.894178497176, 45363.43754308799, 45628.5839493819], [14866.888022051655, 14851.49808083446, 15006.065974005784, 15080.01872589489, 15193.966973445758, 15256.52812118052, 15406.534290196816, 15507.117431740662, 15449.67263628867, 15381.282146156325  …  18670.016422830548, 18676.0969644062, 18665.144169750347, 19100.901607845335, 19126.76122414227, 19109.50847593551, 19140.435123112842, 19277.284297884304, 19744.838234875737, 19655.942539439413], [14866.888022051655, 14863.319801727455, 14972.083148221494, 14995.91591953691, 15073.006125369204, 15054.310998372443, 15095.41631164248, 15149.417359614992, 15166.32442852908, 15025.754675155875  …  16749.64550808587, 16624.710843864978, 16590.1354407877, 16854.09793069863, 16806.09534975097, 16778.709451262912, 16850.406083042628, 16886.90300727527, 17102.658331334318, 16958.343885758146], [15944.236265986641, 15917.076175530057, 16031.046912897496, 16377.672002117872, 16187.684808526985, 16486.783569469553, 16546.2636514225, 16836.647070014806, 17018.267258532094, 17732.083006388144  …  21483.279995801764, 21453.230638828092, 20721.37232985262, 21170.12610017868, 21815.93192221495, 22197.081670773394, 21650.606057412002, 20853.347607933356, 20685.02785054476, 21930.358445139125], [15944.236265986641, 15929.746091450681, 15994.74290921496, 16286.332050754054, 16058.812863085917, 16268.260068493653, 16212.130094654098, 16448.278961124925, 16706.150902386627, 17322.218434181028  …  19273.540854554725, 19096.80361571209, 18417.772203890978, 18679.923378648287, 19168.986726599465, 19489.689360083215, 19060.25132996262, 18267.534627313395, 17917.0353129119, 18920.616973945253], [15944.236265986641, 15917.076175530063, 16024.796769328006, 16256.06086278949, 16296.974425138349, 16455.60560059657, 16596.797241714634, 16765.371504732124, 16907.1587519136, 17257.955624511455  …  21105.005010237084, 20518.551042893225, 20421.894835241095, 21519.618335041538, 21690.399656854315, 21745.867300740836, 20835.69982101401, 20853.314978112765, 21011.128071253766, 22205.718528911268], [15944.236265986641, 15929.746091450685, 15988.506919757576, 16165.39914918438, 16167.232412996835, 16237.495346927686, 16261.643214789565, 16378.647497330132, 16597.080134492982, 16859.05017179834  …  18934.17468747215, 18264.78940826327, 18151.58769698934, 18988.305489259124, 19058.68539557965, 19093.50989662162, 18342.843344481204, 18267.506043587233, 18199.498030013718, 19158.186400272658], [3173.2320350842083, 3161.547520867122, 3157.0983266336884, 3200.8209998273524, 3210.630625942368, 3204.867391222516, 3210.0161651050526, 3214.6566140345203, 3227.8431506869993, 3313.6248194748996  …  3936.9664100277046, 4001.2892228696282, 3985.8467169821547, 4027.1273685011324, 4076.937133251284, 4071.832503319797, 4085.8854248793364, 4102.6574627786, 4137.627771652147, 4167.2351518418955], [3173.2320350842083, 3164.064097456108, 3149.948743085029, 3182.969693829119, 3185.0704411628903, 3162.3885875466804, 3145.193426804347, 3140.5046700796934, 3168.644254166176, 3237.032722618613  …  3532.0157332356516, 3561.786836920921, 3542.7391441272443, 3553.423835251681, 3582.27895425793, 3575.188477162898, 3597.0357087057173, 3593.928355023528, 3583.9460034579624, 3595.3201743420414], [34195.564496956766, 34159.01740189823, 34014.75456460803, 34823.21353948705, 34895.43718950549, 34670.27270208732, 34480.88414425994, 34624.591718149386, 35014.68560000502, 34606.83704556837  …  37176.99355266154, 37105.63053158947, 36036.51838477611, 35860.83459395811, 36195.090118384025, 36028.92409265714, 36645.055446997234, 37556.17664157078, 37863.7562753993, 38256.76226244631], [34195.564496956766, 34186.20781511489, 33937.72455018143, 34629.00091692283, 34617.6307625321, 34210.73677509919, 33784.58069458958, 33825.91207898237, 34372.513520143395, 33806.924454587774  …  33353.02170929037, 33029.94086198122, 32030.329655142887, 31642.591042660973, 31803.509679128645, 31634.453076256133, 32260.71200815496, 32899.214561042056, 32796.97098633359, 33006.37092830872], [33097.63671130043, 32978.29335478363, 32626.719726685307, 33429.57958841529, 33306.85610497304, 32688.12885611254, 32171.755421680577, 32144.67920532442, 32442.710035079806, 31958.045502978097  …  34816.7214306521, 34632.475991930216, 33163.45601557015, 33310.77421208765, 33867.01044405048, 34065.76612316909, 34577.07632320748, 35034.3341100518, 35450.55184563082, 36473.21719080997], [33097.63671130043, 33004.543917349474, 32552.83306416462, 33243.13940489449, 33041.69654734978, 32254.865185980023, 31522.082281387968, 31403.20329138921, 31847.708188781005, 31219.357857317147  …  31235.523767621067, 30828.43809765163, 29476.666345528352, 29392.489540248822, 29757.8978512735, 29910.742745430434, 30440.15318684404, 30690.080246720816, 30706.692486452415, 31467.601133888034], [29576.147776884864, 29540.30815757877, 29793.023211372885, 30221.719047433853, 30302.093637263206, 30672.29442645085, 30985.37634985721, 31330.906666834246, 31624.54356011735, 32234.051578586317  …  38028.15723381824, 38190.13341222716, 37964.13733557745, 38319.16126082298, 38715.36585999489, 38933.93296060209, 38712.926357006916, 38699.5794735714, 38972.050103075635, 39352.345180038385], [34346.71094688274, 34305.090481160245, 34626.68140468615, 35102.85572859825, 35151.9158814585, 35602.584835051115, 35913.541443475355, 36361.123950002984, 36639.56640947833, 37292.12291982345  …  44180.18635915802, 44318.331501139044, 44007.15208787922, 44439.30308260304, 44992.85488751371, 45203.29642692993, 44885.445102000696, 44879.53549032289, 45224.04039158543, 45771.873857511506], [28335.329312139656, 28300.993284908534, 28566.299175070595, 28959.133187587868, 28999.606803520088, 29371.399410694394, 29627.932209864408, 29997.178561761877, 30226.887857534544, 30765.2335420458  …  36447.74405020752, 36561.7109478519, 36304.99433928022, 36661.51001168347, 37118.1788527766, 37291.78878967954, 37029.567991359196, 37024.6926834074, 37308.90213338987, 37760.85346256466], [978.0617717704339, 976.8765815346229, 985.4879036936139, 995.9881567731888, 996.6271011888025, 1008.5599944301928, 1011.0814950160697, 1019.233115984231, 1024.682497021224, 1042.744245568732  …  1244.0857219436398, 1247.4851622874362, 1234.2360535867895, 1247.8859632752399, 1265.303882980632, 1275.4998159098313, 1264.9148823088965, 1260.1569671580805, 1270.0438460780917, 1284.6111956850255], [0.0019383188997990075, -0.003952295097048086, 0.00043121555853309346, 0.006256067040482538, 0.00632983693062017, 0.0061267503866178075, 0.006226730126539071, 0.007781104748443957, 0.007250422190755446, 0.005772533711265515  …  0.002921076419133861, 0.001301248358178686, 0.007114594551428599, 0.002698235363678414, 0.006125895665054948, 0.004582409406319821, 0.003548467284302692, 0.009408303467589363, 0.005313439829667699, 0.002561799916292351], [2.3548476e6, 2.3588626485893e6, 2.3553371402178714e6, 2.3432018390445355e6, 2.346870717237858e6, 2.334370945877865e6, 2.323148381711212e6, 2.3263953554424085e6, 2.3149211088462686e6, 2.2990184059278253e6  …  2.364992053356945e6, 2.3491910698544066e6, 2.322100359571532e6, 2.335686258811865e6, 2.3338108755838843e6, 2.320080094864146e6, 2.331080316149987e6, 2.3447280090234405e6, 2.354336312917205e6, 2.3621266494370117e6], [0.0016459319014481277, 0.0016010860580926674, 0.0013454414221782392, 0.000882623037192628, 0.001116544463863402, 0.0006506009200479771, 0.00027245756745887436, 0.0005683215599217866, 0.0002074990646606677, 0.0  …  0.0030529516170180555, 0.0021996308324380657, 0.00106577129490818, 0.001624261945893235, 0.0015656142516685156, 0.0009761718174434832, 0.001451688096223678, 0.0021359814855953325, 0.0025028436155913082, 0.0027018047220479183], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086171; 517.4556387808753 257.93033379374606 … 136.83121862733822 504.29279899424546; … ; 701.9729437980611 350.10250290902496 … 179.78639375822763 662.0366336947989; 707.7471299158308 352.9823247453998 … 181.15402702355033 668.8514250556568], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086171; 517.8675309753778 258.13564509630606 … 136.94013561788393 504.69421363171887; … ; 608.0375677331926 303.2531042782543 … 155.72805552990417 573.4453842680539; 610.615298105838 304.5387234224978 … 156.29229076098562 577.0576736177572])

Now we can experiment with changing expectations of the agents in the model. We will change the function estimate_next_value to make the agents expect the last value of the time series (so to represent backward looking expectations)

import BeforeIT: estimate_next_value
 function estimate_next_value(data)
     return data[end]
-end
estimate_next_value (generic function with 2 methods)

run the model again, with the same seed

Random.seed!(1234)
+end
estimate_next_value (generic function with 2 methods)

Run the model again, with the same seed

Random.seed!(1234)
 model = Bit.init_model(par, init, T)
-data_back = Bit.run_one_sim!(model)
BeforeIT.Data{Float64, Vector{Float64}, Matrix{Float64}}([72421.99999999997, 72490.2322963416, 72587.23001804914, 72505.10129687462, 72703.30549091243, 73132.93795654722, 73375.41563241303, 73267.51204626384, 73207.36995089537, 73499.53729921684  …  79393.9862506089, 79768.39970424859, 80188.54451956502, 80511.38690713247, 80812.25199892446, 80945.95383720999, 81339.56533991925, 81958.64122943203, 82264.15259624796, 82783.02055420596], [72421.99999999997, 72417.20192814225, 72441.04751369418, 72286.18594762367, 72410.7678222182, 72765.29016381004, 72932.99834423827, 72752.37698185901, 72619.42343638456, 72835.79181404722  …  76951.54186110893, 77236.54649232139, 77565.13400053924, 77798.95673809857, 78011.01413520466, 78061.35908070715, 78361.91840143652, 78878.78474123425, 79093.05280282177, 79511.73458584001], [64900.920495538034, 64966.370940930356, 65050.9422449612, 64967.955712702955, 65154.18031071537, 65554.97607960913, 65761.88039050321, 65648.59133158572, 65594.95039151702, 65844.43001993821  …  71170.93131307513, 71523.89783263279, 71902.03314705698, 72184.16135826243, 72453.34331306168, 72583.20925248862, 72963.47714261753, 73535.29142082007, 73820.45902188777, 74302.8395838177], [64900.920495538034, 64900.92049553802, 64919.9369752236, 64771.79733955991, 64892.018200133425, 65225.4235834011, 65365.36893585753, 65187.02398230369, 65068.141103352864, 65249.814805268434  …  68981.45765026637, 69253.72554475299, 69549.7202172306, 69752.2755776783, 69941.85472536166, 69996.6297522835, 70292.45875904441, 70771.96907925108, 70974.84480272894, 71366.65973784155], [40512.94792630534, 40529.30927216214, 40594.18064386479, 40611.48879899371, 40621.51503252601, 40694.63647153857, 40916.3264592606, 40999.072249545665, 40923.53272694446, 41124.71459732294  …  43708.68385338441, 43793.80949678354, 44034.421577399444, 44277.895489776354, 44462.62521992848, 44455.83358571363, 44531.34634514879, 44752.995567425176, 44825.80423338178, 44983.57271961373], [40512.94792630534, 40488.47797275464, 40512.42853695454, 40488.870140512976, 40458.06547234161, 40490.05979660878, 40669.62134640827, 40710.81270402602, 40594.86570278529, 40753.333434313136  …  42364.04763228379, 42403.79167458754, 42593.81225523892, 42786.17234151741, 42921.39370854697, 42871.60289377306, 42901.16026587707, 43071.25949058154, 43097.86935459811, 43205.98440187071], [14866.888022051655, 14892.350544956298, 14829.704995510676, 15017.366693106787, 15110.071033252632, 15394.38203437527, 15222.967754499565, 15301.655337827731, 15631.046584821495, 15704.474027443799  …  18371.20786350145, 18342.30696263774, 18399.164316922634, 18439.156549421354, 18432.401482046185, 18383.918013383365, 18424.475822221917, 18481.188995042758, 18536.44030796568, 18537.81498428104], [14866.888022051655, 14877.347229210163, 14799.839640205772, 14972.024613506199, 15049.272353962542, 15316.992683781267, 15131.180824860108, 15194.071239667335, 15505.509779389648, 15562.653083860916  …  17806.04347645437, 17760.121172654584, 17797.225954036843, 17817.94101162568, 17793.469393487634, 17728.78763327773, 17749.99983017646, 17786.699567422154, 17821.901834325246, 17805.267492823747], [15944.236265986641, 16068.56077295712, 16259.692493987639, 15810.498066824244, 15819.347462786392, 16169.331346655112, 16646.934600045013, 16406.221061254877, 16050.413839677123, 15792.766392949809  …  16882.082594714044, 17306.781632316623, 17479.387031594124, 16939.059824444354, 18002.876352622174, 17161.32966410289, 17630.37664749285, 17745.515905480923, 17801.032943911792, 17888.768377634595], [15944.236265986641, 16052.372482859135, 16226.947304947904, 15762.761278043565, 15755.694854479521, 16088.046235654037, 16546.56185804828, 16290.870894352878, 15921.508991984525, 15650.148115653905  …  16362.729053422101, 16757.463470909774, 16907.53966761533, 16368.382574083593, 17378.833120965897, 16549.767514088027, 16984.970726901574, 17078.671732882747, 17114.842785626668, 17181.86886378097], [15944.236265986641, 15957.287851570194, 15978.16005644515, 15972.32185453842, 16003.147435960009, 16044.55589080617, 16100.195819946466, 16105.072021346155, 16092.77074642463, 16133.558637222019  …  17196.41907065144, 17290.333600989597, 17387.387696252754, 17449.089575860224, 17532.73895190181, 17589.864066073817, 17630.186106408484, 17786.39819324528, 17847.061709871054, 17941.10023043511], [15944.236265986641, 15941.211663505299, 15945.981842020192, 15924.096469640075, 15938.755268216391, 15963.898040547141, 16003.119641060775, 15991.839197120826, 15963.525719926205, 15987.862798871605  …  16667.395409513825, 16741.537500964194, 16818.550139042793, 16861.22941339237, 16924.992341803194, 16963.03063898694, 16984.78716107057, 17118.01773872082, 17159.09724521288, 17232.132750776193], [3173.2320350842083, 3173.404482611808, 3177.962049131049, 3181.534168001348, 3186.6057676680452, 3162.971379750547, 3185.3728024464895, 3211.389913903726, 3211.1469263922454, 3216.2162889554656  …  3377.2735212016582, 3368.596300360713, 3397.0018828670604, 3406.891342146883, 3429.343494617805, 3465.715140501009, 3424.0393139228077, 3462.8091404888087, 3468.4878441672513, 3469.8114573038447], [3173.2320350842083, 3170.2074326028737, 3171.561991559338, 3171.928131307597, 3173.7837616254483, 3147.070754413346, 3166.166587600034, 3188.8110176927657, 3185.357410333671, 3187.1719014726855  …  3273.3764484733933, 3261.6768761980616, 3285.8671749601226, 3292.1131074889836, 3310.4703459651428, 3342.210712572133, 3298.6934242842362, 3332.6830788710963, 3334.7853657606142, 3332.697041120869], [34195.564496956766, 33751.81903625656, 33718.553397428805, 34096.19557014068, 34589.666211061405, 35554.50807082578, 35880.833795629995, 35410.372610104765, 34654.83786299708, 34891.579113936896  …  42257.88459506106, 43556.76698593244, 44048.559139250974, 44026.93601613963, 43883.53321037021, 44136.83844396937, 43568.332419321545, 44273.53450783099, 45575.25299277101, 47367.27374439971], [34195.564496956766, 33717.815727210174, 33650.648029258184, 33993.24859912957, 34450.48711533846, 35375.77141974447, 35664.49020086474, 35161.40653952781, 34376.516279444004, 34576.48695202252  …  40957.88017387531, 42174.2729055275, 42607.48729929946, 42543.66769736069, 42362.37507182052, 42563.97548160149, 41973.399976530134, 42609.815704493594, 43818.4285341269, 45495.49017184529], [33097.63671130043, 32751.80732999047, 32814.9015127426, 33030.447832190555, 33437.2942487138, 34679.919966847476, 35291.64697702214, 34849.80921246918, 34052.46106354455, 34013.99683243648  …  41825.87265605161, 43231.26537342162, 43772.987545602155, 43171.660972649384, 43969.18426604281, 43191.965869959386, 42814.96589426572, 43294.5937463478, 44474.37788178248, 45994.40927172321], [33097.63671130043, 32718.81148389185, 32748.815997672005, 32930.718683568426, 33302.751973903694, 34505.57997197834, 35078.855885943136, 34604.78439571511, 33778.97731721877, 33706.829771803226  …  40539.15847492638, 41859.10273135791, 42340.93117565141, 41717.20688648901, 42445.05715961654, 41652.77444203328, 41247.612398048615, 41667.661754145745, 42759.989705855325, 44176.8763444807], [29576.147776884864, 29605.9743499166, 29630.51605850301, 29621.52028834414, 29670.19872436757, 29797.47587722702, 29885.84169878953, 29870.63568451899, 29828.57668197106, 29866.62482710162  …  31932.347505563954, 32140.175933659102, 32317.655280550214, 32447.012715307334, 32581.823888881678, 32648.00365238824, 32832.43569396297, 33114.18488840261, 33243.15116119836, 33477.211522247584], [34346.71094688274, 34381.34847608993, 34440.15896747447, 34369.108037778635, 34502.34968088469, 34766.618072024066, 34874.68502974604, 34777.333827706345, 34764.21981125122, 34969.448029893974  …  38084.0275202315, 38235.60682025879, 38430.48130592309, 38578.90876531549, 38709.18542987379, 38769.408887287325, 38960.890410799075, 39253.60262673311, 39407.10950365351, 39646.45755229588], [28335.329312139656, 28363.90456052843, 28412.422004977958, 28353.806450959455, 28463.72806299792, 28681.74404424585, 28770.897059204075, 28690.584322039995, 28679.765528489857, 28849.074583100046  …  31418.538531599595, 31543.58833301491, 31704.355771107344, 31826.80536889713, 31934.280934684357, 31983.96404701401, 32141.93236119369, 32383.41391222208, 32510.05392488426, 32707.51113669671], [978.0617717704339, 979.0481149238877, 980.2672189836588, 977.3273865802095, 981.6319054630933, 990.882130357941, 1001.3536619676468, 1000.6218193604554, 1002.1538982948351, 1008.3571629426834  …  1154.5562872797707, 1148.115078714858, 1153.896560583714, 1158.2398776396194, 1162.3339943062258, 1165.7967128130404, 1170.1510378554588, 1167.503905684306, 1170.1983570358918, 1179.1705092741427], [0.0019383188997990075, 0.004220038374121549, 0.0019199908213991534, -0.0007474170360397547, -0.0010481511336649652, 0.0016830070483127013, 0.0054441848547275296, 0.006613535556129424, 0.005828394414379989, 0.0014432461329660917  …  -0.004019207078191589, 0.00383838573503259, 0.008278433273877672, 0.0033136855806901178, 0.008655460345740273, 0.002139581764054821, 0.005604299983171135, 0.006587137028002177, 0.005457577503050537, 0.006207256876176848], [2.3548476e6, 2.352396197078055e6, 2.347912556596515e6, 2.371263955485633e6, 2.3706833348181024e6, 2.375510682728357e6, 2.3940300436198367e6, 2.403269573782989e6, 2.3955011040550005e6, 2.402484091914563e6  …  2.4409002553381943e6, 2.45056745380684e6, 2.459540835761115e6, 2.471228035481667e6, 2.474584140514336e6, 2.475373467875146e6, 2.4713209824194047e6, 2.4703032902082065e6, 2.492990881581279e6, 2.5109120656649987e6], [0.0016459319014481277, 0.0015185270190031042, 0.0012626928046478307, 0.0021303084027282575, 0.0019244578504459316, 0.002020893115019896, 0.002763022382275168, 0.0030898455260937982, 0.0026769003470356926, 0.002798564041978256  …  0.003209511197432074, 0.0034495394152826765, 0.003744303065943746, 0.0040105279528508, 0.004045821605016225, 0.0038267701485827908, 0.003511042915685888, 0.0033617665162184803, 0.004141475587654299, 0.004684386395842744], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086171; 518.6059091613043 258.50369622511613 … 137.13538556670355 505.41380923410765; … ; 523.8630084431564 276.34826803803344 … 153.70388180712726 565.5072334601856; 522.7529148261692 277.88492798213116 … 154.354211279906 567.6853642693837], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086171; 518.0834390395163 258.2432663779743 … 136.9972283642248 504.90462950861695; … ; 503.66925666392325 265.69565802465263 … 147.77893962435684 543.7081895922205; 502.09560776314225 266.9039193206622 … 148.2546903619962 545.2524890958439])

plot the results, comparing the two cases as different lines

p1 = plot(data.real_gdp, title = "gdp", titlefont = 10, label = "forward looking")
+data_back = Bit.run_one_sim!(model)
BeforeIT.Data{Float64, Vector{Float64}, Matrix{Float64}}([72421.99999999997, 72490.2322963416, 72587.23001804914, 72505.10129687462, 72703.30549091243, 73132.93795654722, 73375.41563241303, 73267.51204626384, 73207.36995089537, 73499.53729921684  …  79393.9862506089, 79768.39970424859, 80188.54451956502, 80511.38690713247, 80812.25199892446, 80945.95383720999, 81339.56533991925, 81958.64122943203, 82264.15259624796, 82783.02055420596], [72421.99999999997, 72417.20192814225, 72441.04751369418, 72286.18594762367, 72410.7678222182, 72765.29016381004, 72932.99834423827, 72752.37698185901, 72619.42343638456, 72835.79181404722  …  76951.54186110893, 77236.54649232139, 77565.13400053924, 77798.95673809857, 78011.01413520466, 78061.35908070715, 78361.91840143652, 78878.78474123425, 79093.05280282177, 79511.73458584001], [64900.920495538034, 64966.370940930356, 65050.9422449612, 64967.955712702955, 65154.18031071537, 65554.97607960913, 65761.88039050321, 65648.59133158572, 65594.95039151702, 65844.43001993821  …  71170.93131307513, 71523.89783263279, 71902.03314705698, 72184.16135826243, 72453.34331306168, 72583.20925248862, 72963.47714261753, 73535.29142082007, 73820.45902188777, 74302.8395838177], [64900.920495538034, 64900.92049553802, 64919.9369752236, 64771.79733955991, 64892.018200133425, 65225.4235834011, 65365.36893585753, 65187.02398230369, 65068.141103352864, 65249.814805268434  …  68981.45765026637, 69253.72554475299, 69549.7202172306, 69752.2755776783, 69941.85472536166, 69996.6297522835, 70292.45875904441, 70771.96907925108, 70974.84480272894, 71366.65973784155], [40512.94792630534, 40529.30927216214, 40594.18064386479, 40611.48879899371, 40621.51503252601, 40694.63647153857, 40916.3264592606, 40999.072249545665, 40923.53272694446, 41124.71459732294  …  43708.68385338441, 43793.80949678354, 44034.421577399444, 44277.895489776354, 44462.62521992848, 44455.83358571363, 44531.34634514879, 44752.995567425176, 44825.80423338178, 44983.57271961373], [40512.94792630534, 40488.47797275464, 40512.42853695454, 40488.870140512976, 40458.06547234161, 40490.05979660878, 40669.62134640827, 40710.81270402602, 40594.86570278529, 40753.333434313136  …  42364.04763228379, 42403.79167458754, 42593.81225523892, 42786.17234151741, 42921.39370854697, 42871.60289377306, 42901.16026587707, 43071.25949058154, 43097.86935459811, 43205.98440187071], [14866.888022051655, 14892.350544956298, 14829.704995510676, 15017.366693106787, 15110.071033252632, 15394.38203437527, 15222.967754499565, 15301.655337827731, 15631.046584821495, 15704.474027443799  …  18371.20786350145, 18342.30696263774, 18399.164316922634, 18439.156549421354, 18432.401482046185, 18383.918013383365, 18424.475822221917, 18481.188995042758, 18536.44030796568, 18537.81498428104], [14866.888022051655, 14877.347229210163, 14799.839640205772, 14972.024613506199, 15049.272353962542, 15316.992683781267, 15131.180824860108, 15194.071239667335, 15505.509779389648, 15562.653083860916  …  17806.04347645437, 17760.121172654584, 17797.225954036843, 17817.94101162568, 17793.469393487634, 17728.78763327773, 17749.99983017646, 17786.699567422154, 17821.901834325246, 17805.267492823747], [15944.236265986641, 16068.56077295712, 16259.692493987639, 15810.498066824244, 15819.347462786392, 16169.331346655112, 16646.934600045013, 16406.221061254877, 16050.413839677123, 15792.766392949809  …  16882.082594714044, 17306.781632316623, 17479.387031594124, 16939.059824444354, 18002.876352622174, 17161.32966410289, 17630.37664749285, 17745.515905480923, 17801.032943911792, 17888.768377634595], [15944.236265986641, 16052.372482859135, 16226.947304947904, 15762.761278043565, 15755.694854479521, 16088.046235654037, 16546.56185804828, 16290.870894352878, 15921.508991984525, 15650.148115653905  …  16362.729053422101, 16757.463470909774, 16907.53966761533, 16368.382574083593, 17378.833120965897, 16549.767514088027, 16984.970726901574, 17078.671732882747, 17114.842785626668, 17181.86886378097], [15944.236265986641, 15957.287851570194, 15978.16005644515, 15972.32185453842, 16003.147435960009, 16044.55589080617, 16100.195819946466, 16105.072021346155, 16092.77074642463, 16133.558637222019  …  17196.41907065144, 17290.333600989597, 17387.387696252754, 17449.089575860224, 17532.73895190181, 17589.864066073817, 17630.186106408484, 17786.39819324528, 17847.061709871054, 17941.10023043511], [15944.236265986641, 15941.211663505299, 15945.981842020192, 15924.096469640075, 15938.755268216391, 15963.898040547141, 16003.119641060775, 15991.839197120826, 15963.525719926205, 15987.862798871605  …  16667.395409513825, 16741.537500964194, 16818.550139042793, 16861.22941339237, 16924.992341803194, 16963.03063898694, 16984.78716107057, 17118.01773872082, 17159.09724521288, 17232.132750776193], [3173.2320350842083, 3173.404482611808, 3177.962049131049, 3181.534168001348, 3186.6057676680452, 3162.971379750547, 3185.3728024464895, 3211.389913903726, 3211.1469263922454, 3216.2162889554656  …  3377.2735212016582, 3368.596300360713, 3397.0018828670604, 3406.891342146883, 3429.343494617805, 3465.715140501009, 3424.0393139228077, 3462.8091404888087, 3468.4878441672513, 3469.8114573038447], [3173.2320350842083, 3170.2074326028737, 3171.561991559338, 3171.928131307597, 3173.7837616254483, 3147.070754413346, 3166.166587600034, 3188.8110176927657, 3185.357410333671, 3187.1719014726855  …  3273.3764484733933, 3261.6768761980616, 3285.8671749601226, 3292.1131074889836, 3310.4703459651428, 3342.210712572133, 3298.6934242842362, 3332.6830788710963, 3334.7853657606142, 3332.697041120869], [34195.564496956766, 33751.81903625656, 33718.553397428805, 34096.19557014068, 34589.666211061405, 35554.50807082578, 35880.833795629995, 35410.372610104765, 34654.83786299708, 34891.579113936896  …  42257.88459506106, 43556.76698593244, 44048.559139250974, 44026.93601613963, 43883.53321037021, 44136.83844396937, 43568.332419321545, 44273.53450783099, 45575.25299277101, 47367.27374439971], [34195.564496956766, 33717.815727210174, 33650.648029258184, 33993.24859912957, 34450.48711533846, 35375.77141974447, 35664.49020086474, 35161.40653952781, 34376.516279444004, 34576.48695202252  …  40957.88017387531, 42174.2729055275, 42607.48729929946, 42543.66769736069, 42362.37507182052, 42563.97548160149, 41973.399976530134, 42609.815704493594, 43818.4285341269, 45495.49017184529], [33097.63671130043, 32751.80732999047, 32814.9015127426, 33030.447832190555, 33437.2942487138, 34679.919966847476, 35291.64697702214, 34849.80921246918, 34052.46106354455, 34013.99683243648  …  41825.87265605161, 43231.26537342162, 43772.987545602155, 43171.660972649384, 43969.18426604281, 43191.965869959386, 42814.96589426572, 43294.5937463478, 44474.37788178248, 45994.40927172321], [33097.63671130043, 32718.81148389185, 32748.815997672005, 32930.718683568426, 33302.751973903694, 34505.57997197834, 35078.855885943136, 34604.78439571511, 33778.97731721877, 33706.829771803226  …  40539.15847492638, 41859.10273135791, 42340.93117565141, 41717.20688648901, 42445.05715961654, 41652.77444203328, 41247.612398048615, 41667.661754145745, 42759.989705855325, 44176.8763444807], [29576.147776884864, 29605.9743499166, 29630.51605850301, 29621.52028834414, 29670.19872436757, 29797.47587722702, 29885.84169878953, 29870.63568451899, 29828.57668197106, 29866.62482710162  …  31932.347505563954, 32140.175933659102, 32317.655280550214, 32447.012715307334, 32581.823888881678, 32648.00365238824, 32832.43569396297, 33114.18488840261, 33243.15116119836, 33477.211522247584], [34346.71094688274, 34381.34847608993, 34440.15896747447, 34369.108037778635, 34502.34968088469, 34766.618072024066, 34874.68502974604, 34777.333827706345, 34764.21981125122, 34969.448029893974  …  38084.0275202315, 38235.60682025879, 38430.48130592309, 38578.90876531549, 38709.18542987379, 38769.408887287325, 38960.890410799075, 39253.60262673311, 39407.10950365351, 39646.45755229588], [28335.329312139656, 28363.90456052843, 28412.422004977958, 28353.806450959455, 28463.72806299792, 28681.74404424585, 28770.897059204075, 28690.584322039995, 28679.765528489857, 28849.074583100046  …  31418.538531599595, 31543.58833301491, 31704.355771107344, 31826.80536889713, 31934.280934684357, 31983.96404701401, 32141.93236119369, 32383.41391222208, 32510.05392488426, 32707.51113669671], [978.0617717704339, 979.0481149238877, 980.2672189836588, 977.3273865802095, 981.6319054630933, 990.882130357941, 1001.3536619676468, 1000.6218193604554, 1002.1538982948351, 1008.3571629426834  …  1154.5562872797707, 1148.115078714858, 1153.896560583714, 1158.2398776396194, 1162.3339943062258, 1165.7967128130404, 1170.1510378554588, 1167.503905684306, 1170.1983570358918, 1179.1705092741427], [0.0019383188997990075, 0.004220038374121549, 0.0019199908213991534, -0.0007474170360397547, -0.0010481511336649652, 0.0016830070483127013, 0.0054441848547275296, 0.006613535556129424, 0.005828394414379989, 0.0014432461329660917  …  -0.004019207078191589, 0.00383838573503259, 0.008278433273877672, 0.0033136855806901178, 0.008655460345740273, 0.002139581764054821, 0.005604299983171135, 0.006587137028002177, 0.005457577503050537, 0.006207256876176848], [2.3548476e6, 2.352396197078055e6, 2.347912556596515e6, 2.371263955485633e6, 2.3706833348181024e6, 2.375510682728357e6, 2.3940300436198367e6, 2.403269573782989e6, 2.3955011040550005e6, 2.402484091914563e6  …  2.4409002553381943e6, 2.45056745380684e6, 2.459540835761115e6, 2.471228035481667e6, 2.474584140514336e6, 2.475373467875146e6, 2.4713209824194047e6, 2.4703032902082065e6, 2.492990881581279e6, 2.5109120656649987e6], [0.0016459319014481277, 0.0015185270190031042, 0.0012626928046478307, 0.0021303084027282575, 0.0019244578504459316, 0.002020893115019896, 0.002763022382275168, 0.0030898455260937982, 0.0026769003470356926, 0.002798564041978256  …  0.003209511197432074, 0.0034495394152826765, 0.003744303065943746, 0.0040105279528508, 0.004045821605016225, 0.0038267701485827908, 0.003511042915685888, 0.0033617665162184803, 0.004141475587654299, 0.004684386395842744], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086171; 518.6059091613043 258.50369622511613 … 137.13538556670355 505.41380923410765; … ; 523.8630084431564 276.34826803803344 … 153.70388180712726 565.5072334601856; 522.7529148261692 277.88492798213116 … 154.354211279906 567.6853642693837], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086171; 518.0834390395163 258.2432663779743 … 136.9972283642248 504.90462950861695; … ; 503.66925666392325 265.69565802465263 … 147.77893962435684 543.7081895922205; 502.09560776314225 266.9039193206622 … 148.2546903619962 545.2524890958439])

Plot the results, comparing the two cases as different lines

p1 = plot(data.real_gdp, title = "gdp", titlefont = 10, label = "forward looking")
 plot!(p1, data_back.real_gdp, titlefont = 10, label = "backward looking")
 
 p2 = plot(data.real_household_consumption, title = "consumption", titlefont = 10)
 plot!(p2, data_back.real_household_consumption, titlefont = 10, label = "backward looking")
 
-plot(p1, p2, layout = (2, 1), legend = true)
Example block output

plot all time series

p1 = plot(data.real_gdp, title = "gdp", titlefont = 10)
+plot(p1, p2, layout = (2, 1), legend = true)
Example block output

Plot all time series

p1 = plot(data.real_gdp, title = "gdp", titlefont = 10)
 plot!(p1, data_back.real_gdp, titlefont = 10)
 p2 = plot(data.real_household_consumption, title = "household cons.", titlefont = 10)
 plot!(p2, data_back.real_household_consumption, titlefont = 10)
@@ -54,4 +54,4 @@
 p9 = plot(data.nominal_gdp ./ data.real_gdp, title = "gdp deflator", titlefont = 10)
 plot!(p9, data_back.nominal_gdp ./ data_back.real_gdp, titlefont = 10)
 
-plot(p1, p2, p3, p4, p5, p6, p7, p8, p9, layout = (3, 3), legend = false)
Example block output

Note that, importantly, once the function estimatenextvalue has been changed, the model will use the new expectations in all the simulations, unless the function is changed again. To restore the original expectations you need to close the Julia session.

+plot(p1, p2, p3, p4, p5, p6, p7, p8, p9, layout = (3, 3), legend = false)Example block output

Note that, importantly, once the function estimate_next_value has been changed, the model will use the new expectations in all the simulations, unless the function is changed again. To restore the original expectations you could close the Julia session.

diff --git a/dev/examples/get_parameters_and_initial_conditions.html b/dev/examples/get_parameters_and_initial_conditions.html index c5135ee..9c9ede0 100644 --- a/dev/examples/get_parameters_and_initial_conditions.html +++ b/dev/examples/get_parameters_and_initial_conditions.html @@ -1,8 +1,7 @@ Calibration · BeforeIT.jl

In this tutorial we illustrate how to calibrate the model to the Italian data for a specific quarter

import BeforeIT as Bit
-using Dates, FileIO

We start from loading the calibration oject for italy, which contains 4 datasets: calibration_data, figaro, data, and ea These are saved within BeforeIT for the Italian case, and would need to be appropriately generated for other countries

cal = Bit.ITALY_CALIBRATION
-
-fieldnames(typeof(cal))
(:calibration, :figaro, :data, :ea, :max_calibration_date, :estimation_date)

These are essentually 4 dictionaries with well defined keys, such as

println(keys(cal.calibration))
+using Dates, FileIO

We start from loading the calibration object for italy, which contains 4 datasets: calibration_data, figaro, data, and ea. These are saved within BeforeIT.jl for the Italian case, and would need to be appropriately generated for other countries.

cal = Bit.ITALY_CALIBRATION
+fieldnames(typeof(cal))
(:calibration, :figaro, :data, :ea, :max_calibration_date, :estimation_date)

These are essentially 4 dictionaries with well defined keys, such as

println(keys(cal.calibration))
 println(keys(cal.figaro))
 println(keys(cal.data))
 println(keys(cal.ea))
["social_benefits", "government_debt_quarterly", "capital_taxes", "interest_government_debt", "dwellings_eu7", "pension_benefits", "nace64_capital_consumption_eu20", "fixed_assets_eu7", "firm_interest", "dwellings", "nominal_nace64_output_eu20", "social_contributions", "nominal_nace64_output", "income_tax", "wages", "employees", "fixed_assets", "firms", "mixed_income", "nominal_nace64_output_eu7", "firm_debt_quarterly", "bank_equity_quarterly", "corporate_tax", "property_income", "household_cash_quarterly", "gross_capitalformation_dwellings", "gross_fixed_capitalformation", "unemployment_benefits", "population", "years_num", "government_deficit", "capital_consumption", "firm_cash_quarterly", "quarters_num", "nace64_capital_consumption"]
@@ -11,15 +10,13 @@
 ["nominal_nace10_gva_quarterly", "operating_surplus", "nominal_household_consumption_growth_quarterly", "nominal_exports", "real_capitalformation_growth", "household_consumption_deflator", "gdp_deflator_growth", "gva_deflator_quarterly", "capitalformation_deflator_growth", "nominal_final_consumption_growth_quarterly", "real_fixed_capitalformation_growth", "real_exports_growth", "nominal_imports", "nominal_nace10_gva_growth_quarterly", "gdp_deflator_quarterly", "capitalformation_deflator_quarterly", "real_government_consumption_growth_quarterly", "real_final_consumption", "real_capitalformation_quarterly", "nominal_capitalformation_growth", "fixed_capitalformation_deflator", "real_imports_growth", "nace10_gva_deflator", "real_household_consumption_growth", "fixed_capitalformation_deflator_growth", "real_gva", "nominal_final_consumption", "nominal_exports_quarterly", "real_household_consumption", "real_imports_quarterly", "real_nace10_gva_growth", "real_gva_growth_quarterly", "nominal_household_consumption_growth", "nominal_imports_quarterly", "employed_quarterly", "nace10_gva_deflator_growth", "nominal_capitalformation_growth_quarterly", "nace10_gva_deflator_quarterly", "real_government_consumption_growth", "nominal_government_consumption_quarterly", "final_consumption_deflator", "real_capitalformation_growth_quarterly", "compensation_employees", "gva_deflator_growth", "imports_deflator_quarterly", "real_household_consumption_growth_quarterly", "gdp_deflator_growth_quarterly", "nominal_gdp_quarterly", "exports_deflator_growth_quarterly", "government_consumption_deflator_growth_quarterly", "exports_deflator_quarterly", "real_exports_growth_quarterly", "wages", "nominal_nace10_gva", "gdp_deflator", "household_consumption_deflator_growth", "nominal_nace10_gva_growth", "nominal_gdp_growth", "nominal_household_consumption", "fixed_capitalformation_deflator_quarterly", "nominal_exports_growth_quarterly", "wages_quarterly", "nominal_exports_growth", "euribor", "years_num", "real_final_consumption_quarterly", "nominal_gva_quarterly", "quarters_num", "real_capitalformation", "nominal_government_consumption_growth", "real_final_consumption_growth", "nominal_imports_growth", "nominal_government_consumption", "imports_deflator_growth", "nominal_fixed_capitalformation_quarterly", "real_nace10_gva_quarterly", "nominal_final_consumption_quarterly", "compensation_employees_quarterly", "nominal_fixed_capitalformation_growth_quarterly", "real_gdp_growth", "real_government_consumption", "exports_deflator_growth", "nominal_gdp", "imports_deflator_growth_quarterly", "real_nace10_gva", "real_exports_quarterly", "government_consumption_deflator_growth", "real_fixed_capitalformation_growth_quarterly", "nominal_capitalformation_quarterly", "nominal_gdp_growth_quarterly", "employed", "imports_deflator", "euribor_yearly", "fixed_capitalformation_deflator_growth_quarterly", "real_imports", "real_final_consumption_growth_quarterly", "nominal_household_consumption_quarterly", "real_fixed_capitalformation", "household_consumption_deflator_growth_quarterly", "nominal_fixed_capitalformation_growth", "gva_deflator_growth_quarterly", "final_consumption_deflator_growth_quarterly", "nominal_gva_growth_quarterly", "nominal_government_consumption_growth_quarterly", "final_consumption_deflator_quarterly", "real_gva_growth", "government_consumption_deflator_quarterly", "real_gdp_growth_quarterly", "exports_deflator", "real_gdp_quarterly", "final_consumption_deflator_growth", "capitalformation_deflator_growth_quarterly", "real_fixed_capitalformation_quarterly", "real_gdp", "nominal_fixed_capitalformation", "real_nace10_gva_growth_quarterly", "nace10_gva_deflator_growth_quarterly", "real_government_consumption_quarterly", "government_consumption_deflator", "nominal_gva_growth", "household_consumption_deflator_quarterly", "real_household_consumption_quarterly", "capitalformation_deflator", "nominal_capitalformation", "operating_surplus_quarterly", "nominal_imports_growth_quarterly", "gva_deflator", "nominal_final_consumption_growth", "real_gva_quarterly", "nominal_gva", "real_imports_growth_quarterly", "real_exports"]

The object also contains two time variables related to the data

println(cal.max_calibration_date)
 println(cal.estimation_date)
2016-12-31T00:00:00
 1996-12-31T00:00:00

We can calibrate the model on a specific quarter as follows

calibration_date = DateTime(2010, 03, 31)
-parameters, initial_conditions = Bit.get_params_and_initial_conditions(cal, calibration_date; scale = 0.01)
(Dict{String, Any}("c_E_g" => [0.012978039260418144; 0.0003985263617433438; … ; 0.0006434280333680591; 0.0004140786749482401;;], "T" => 12, "C" => [4.382915017591217e-5 0.00015893321363428918 0.00010502110395244288; 0.00015893321363428918 0.0007927471570727974 0.0005507616320609982; 0.00010502110395244288 0.0005507616320609982 0.0005321192085097513], "xi_pi" => 0.3251309110739497, "L" => 23301.0, "sigma_E" => 0.028155765964945748, "H_act" => 233911.0, "beta_I" => 0.7789361541128721, "theta" => 0.05, "tau_SIW" => 0.12024155738392799…), Dict{String, Any}("sb_inact" => 0.14744411918306366, "K_H" => 2.5717239e6, "E_CB" => 1.4744936e6, "L_G" => 1.8761466e6, "C_G" => [69620.85113236062; 69628.26021546751; … ; 79003.25341430637; 79057.21957369307;;], "w_UB" => 0.25418566007666155, "pi" => [0.01552341251616679, 0.007364847580140943, -0.0014413096223191424, 0.012659687617788129, -0.00543339680120708, 0.0031342727675487403, 0.008259917102933556, 0.0024505137911164376, 0.015517671905839303, -0.00045722860474695093  …  0.018003552480356795, -0.005662735440323672, 0.011943008727627318, 0.0007471090186489046, 0.0028493451107789447, 0.010472796408025353, 0.0006497589705015978, -0.0008405102979527736, 0.0020667266123554308, -0.0017542487268334779], "sb_other" => 0.02967997863525455, "D_RoW" => 0.0, "Y" => [700366.76824049, 702852.9431179382, 712326.5572179741, 717255.0622122793, 730150.7303844375, 724630.8126553466, 728866.2558510749, 729869.1801729304, 725864.7575767277, 730869.7451354716  …  829111.1076237833, 838773.0772424112, 830807.0937442156, 820293.7886396761, 797832.2947409479, 777930.7056982398, 774054.8681846666, 778964.3016911813, 781534.6270508396, 784197.360650308]…))

In sgeneral, we might want to repeat this operation for multiple quarters. In the following, we loop over all quarters from 2010Q1 to 2019Q4 and save the parameters and initial conditions in separate files. We can then load these files later to run the model for each quarter.

start_calibration_date = DateTime(2010, 03, 31)
+parameters, initial_conditions = Bit.get_params_and_initial_conditions(cal, calibration_date; scale = 0.01)
(Dict{String, Any}("c_E_g" => [0.012978039260418144; 0.0003985263617433438; … ; 0.0006434280333680591; 0.0004140786749482401;;], "T" => 12, "C" => [4.382915017591217e-5 0.00015893321363428918 0.00010502110395244288; 0.00015893321363428918 0.0007927471570727974 0.0005507616320609982; 0.00010502110395244288 0.0005507616320609982 0.0005321192085097513], "xi_pi" => 0.3251309110739497, "L" => 23301.0, "sigma_E" => 0.028155765964945748, "H_act" => 233911.0, "beta_I" => 0.7789361541128721, "theta" => 0.05, "tau_SIW" => 0.12024155738392799…), Dict{String, Any}("sb_inact" => 0.14744411918306366, "K_H" => 2.5717239e6, "E_CB" => 1.4744936e6, "L_G" => 1.8761466e6, "C_G" => [69620.85113236062; 69628.26021546751; … ; 79003.25341430637; 79057.21957369307;;], "w_UB" => 0.25418566007666155, "pi" => [0.01552341251616679, 0.007364847580140943, -0.0014413096223191424, 0.012659687617788129, -0.00543339680120708, 0.0031342727675487403, 0.008259917102933556, 0.0024505137911164376, 0.015517671905839303, -0.00045722860474695093  …  0.018003552480356795, -0.005662735440323672, 0.011943008727627318, 0.0007471090186489046, 0.0028493451107789447, 0.010472796408025353, 0.0006497589705015978, -0.0008405102979527736, 0.0020667266123554308, -0.0017542487268334779], "sb_other" => 0.02967997863525455, "D_RoW" => 0.0, "Y" => [700366.76824049, 702852.9431179382, 712326.5572179741, 717255.0622122793, 730150.7303844375, 724630.8126553466, 728866.2558510749, 729869.1801729304, 725864.7575767277, 730869.7451354716  …  829111.1076237833, 838773.0772424112, 830807.0937442156, 820293.7886396761, 797832.2947409479, 777930.7056982398, 774054.8681846666, 778964.3016911813, 781534.6270508396, 784197.360650308]…))

In general, we might want to repeat this operation for multiple quarters. In the following, we loop over all quarters from 2010Q1 to 2019Q4 and save the parameters and initial conditions in separate files. We can then load these files later to run the model for each quarter.

start_calibration_date = DateTime(2010, 03, 31)
 end_calibration_date = DateTime(2019, 12, 31)
 
 for calibration_date in collect(start_calibration_date:Dates.Month(3):end_calibration_date)
     params, init_conds = Bit.get_params_and_initial_conditions(cal, calibration_date; scale = 0.0005)
     save(
-        "data/" *
-        "italy/" *
-        "/parameters/" *
+        "data/italy/parameters/" *
         string(year(calibration_date)) *
         "Q" *
         string(Dates.quarterofyear(calibration_date)) *
@@ -27,13 +24,11 @@
         params,
     )
     save(
-        "data/" *
-        "italy/" *
-        "/initial_conditions/" *
+        "data/italy/initial_conditions/" *
         string(year(calibration_date)) *
         "Q" *
         string(Dates.quarterofyear(calibration_date)) *
         ".jld2",
         init_conds,
     )
-end
+end diff --git a/dev/examples/multithreading_speedup.html b/dev/examples/multithreading_speedup.html index 30ec847..bea9883 100644 --- a/dev/examples/multithreading_speedup.html +++ b/dev/examples/multithreading_speedup.html @@ -1,10 +1,11 @@ -Multithreading within the model · BeforeIT.jl

Multithreading speedup for large models

In this tutorial we illustrate how to make use of multi threading in BeforeIT to allow for faster executions of single simulation runs.

import BeforeIT as Bit
-using FileIO, Plots, StatsPlots

We then initialise the model, this time we will use the Italy 2010Q1 scenario, and we want to simulate the model for a large number of epochs

parameters = Bit.ITALY2010Q1.parameters
+Multithreading within the model · BeforeIT.jl

Multithreading speedup for large models

In this tutorial we illustrate how to make use of multi threading in BeforeIT.jl to allow for faster executions of single simulation runs.

import BeforeIT as Bit
+using FileIO, Plots, StatsPlots

First, we initialise the model, this time we use the Italy 2010Q1 scenario, and we want to simulate the model for a large number of epochs

parameters = Bit.ITALY2010Q1.parameters
 initial_conditions = Bit.ITALY2010Q1.initial_conditions
 T = 50
-model = Bit.init_model(parameters, initial_conditions, T);

The model is in scale 1:2000, so it has around 30,000 households

println(model.prop.H)
29915

Note that households are the sum of active and inactive households and the owners of firms and of the bank

println(length(model.w_act) + length(model.w_inact) + length(model.firms) + 1)
29915

Let's fist check how many threads we have available in this Julia session

println(Threads.nthreads())
2

Let's now compare the performance of single threading and multi threading

@time data = Bit.run_one_sim!(model; multi_threading = false);
+model = Bit.init_model(parameters, initial_conditions, T);

The model is in scale 1:2000, so it has around 30,000 households

model.prop.H
29915

Note that the households number is actually the sum of active and inactive households, the owners of firms and of the bank

length(model.w_act) + length(model.w_inact) + length(model.firms) + 1
29915

Let's fist check how many threads we have available in this Julia session

Threads.nthreads()
2

Then we need to first compile the code not to count compilation time, we can do that just by executing the function one time

Bit.run_one_sim!(model; multi_threading = false)
BeforeIT.Data{Float64, Vector{Float64}, Matrix{Float64}}([396922.2000000001, 396172.2093906882, 395743.33517925587, 395331.63939922885, 394612.56126326194, 393837.0025384103, 392802.4322489179, 392149.5691570529, 391975.54129049374, 390552.28574070474  …  391752.5204130744, 391663.70160739915, 392077.24847341236, 393131.09248909476, 392524.6228093809, 391921.153101434, 392366.47052792023, 392596.10075575474, 392534.27477934025, 393112.3554775943], [396922.2000000001, 396867.8039291508, 397134.2382261476, 397417.65374190465, 397391.29336887784, 397306.63710026845, 396958.70629294624, 396994.75224651897, 397515.3036061619, 396767.3517622322  …  420967.0281760678, 421610.5472220246, 422796.7546275544, 424677.5049092503, 424766.86319959816, 424858.4781772167, 426088.0295358738, 427085.9533320845, 427768.45033796586, 429150.5969427937], [359114.6247235547, 358485.20059499925, 358050.43529649155, 357665.3231156616, 356983.0203988716, 356291.34075613815, 355338.0754042468, 354747.20339953667, 354574.81528498634, 353242.8129122704  …  354847.0083528635, 354829.3772790228, 355344.3961531749, 356175.7173101415, 355556.7915766457, 355115.02680869424, 355608.71695669164, 355873.8191423933, 355764.0632894761, 356312.3305130148], [359114.6247235547, 359114.62472355453, 359308.86063717154, 359552.5866674251, 359496.7776314507, 359430.2046567126, 359097.9360833217, 359130.2635534506, 359585.9958125618, 358864.153470337  …  381309.3286699576, 381959.847979522, 383185.8595560369, 384756.68250719504, 384762.46908125345, 384959.13954599795, 386171.16618040635, 387137.5926092434, 387697.7166511803, 388976.96093007585], [244195.76918901538, 243377.26245895232, 243439.3136457106, 243247.68941206433, 243076.94129858178, 242553.0012598079, 242101.54516136018, 241620.84861277393, 241566.68841383213, 241102.29908669554  …  237229.3321375227, 236586.22050251154, 235612.76847358103, 237197.9325075997, 237548.3320309163, 236313.22086336935, 235700.45625963862, 235454.1600281812, 235804.8457962183, 235883.04841590923], [244195.76918901538, 243804.58141404198, 244294.91992630545, 244531.21473198914, 244788.60931735716, 244689.85044063482, 244663.24103073706, 244606.18212283653, 244980.7331595575, 244939.0880685448  …  254920.44528730828, 254675.74728495107, 254073.18136236773, 256231.64402788752, 257060.71413530043, 256173.14756976883, 255957.50532213078, 256138.9789864513, 256970.86840412708, 257507.42663223922], [83082.59811666666, 82930.30352424222, 83125.36899594638, 83712.3115103522, 83252.8092717046, 82806.02228694463, 83473.53060060795, 83934.27133317608, 83783.52115235814, 83861.84104038042  …  82929.83695351645, 82788.62657465755, 82717.14741121641, 82320.5588241843, 81676.91717887888, 81886.30107374724, 82037.98854690019, 81742.38838754482, 82132.88892057617, 81960.56943828572], [83082.59811666666, 83075.91158265003, 83417.52635838954, 84154.02946324476, 83839.04822280492, 83535.52874521296, 84356.77072367012, 84971.31674665034, 84967.62766988658, 85196.37907224555  …  89114.23715318243, 89118.6954794429, 89198.08944201682, 88926.28996308526, 88385.91489516252, 88768.0825146725, 89088.66458442181, 88923.51657322048, 89505.1996034877, 89474.23506310103], [93142.16753490093, 93256.24976950059, 93832.7577944172, 93621.68419293356, 92057.58124061306, 93086.79548142054, 93677.95058433709, 93285.0087923981, 92629.82384865677, 92720.68144489171  …  91691.41177962282, 91188.98897711361, 90959.7727006917, 93028.72287389894, 91748.89988468621, 90604.03699484233, 91208.78491207394, 91798.63963500051, 90804.42575677623, 90739.78211139077], [93142.16753490093, 93419.98800373195, 94162.5479819268, 94115.6901275679, 92705.8205053231, 93906.87373910903, 94669.16449378818, 94437.58674390054, 93938.95453006182, 94196.19491077287  …  98529.19666077962, 98161.3547170176, 98086.52975721024, 100493.719956982, 99285.21713390136, 98218.46299880186, 99047.63622451648, 99863.21679616936, 98955.1001925638, 99058.27460511305], [93142.16753490093, 92720.74855390166, 92841.59445053311, 92681.28939100704, 92529.29855602598, 92372.64204707407, 92184.78310368748, 91991.96058500907, 91797.44899870433, 91508.38586519481  …  91266.84005773412, 91245.10615842839, 91123.85120995216, 91810.58913669077, 91745.41045647366, 91451.02320326294, 91560.58131445284, 91203.61518730453, 91450.8636901566, 91563.19846619973], [93142.16753490093, 92883.54656135266, 93167.90103644435, 93170.33322079296, 93180.859499207, 93186.42873890584, 93160.19768825234, 93128.56234833982, 93094.81578583401, 92964.60742742948  …  98072.96297574136, 98221.76265225792, 98263.46392385612, 99177.83829295999, 99281.44108167411, 99136.63051463774, 99429.66743040866, 99215.91901860373, 99659.56288733677, 99957.17695522976], [22261.17425414399, 21963.989164931307, 22169.00043629242, 22143.39224517151, 22132.176587234266, 22111.417592705253, 22070.380438999542, 22046.944772284398, 22021.866315810956, 21979.169872059785  …  21209.83979084673, 21188.120077439562, 20934.322356826528, 21455.424222321748, 21479.401479268312, 21240.49690042815, 21236.52259694498, 20828.47207663674, 21080.500124963153, 21095.84034315401], [22261.17425414399, 22002.553280595737, 22246.916922843993, 22260.234483979217, 22288.02410879627, 22306.215283620153, 22303.90890478638, 22319.344622715646, 22333.099778836135, 22328.93607966027  …  22791.539963619514, 22808.176667363903, 22574.540061315285, 23177.09334007417, 23243.73417507697, 23025.56296701908, 23061.675110392633, 22658.268475354227, 22972.701876476698, 23029.783597810125], [94222.92562231854, 91785.75313272535, 93490.88316103289, 90485.69703141873, 94111.29722253713, 92636.9379063249, 92498.4826513025, 92196.99025170054, 94080.04368680644, 92117.16929341083  …  77739.62557015922, 78409.03916601274, 77295.24364853618, 77511.22182445611, 79494.60777364996, 79956.26429029646, 80218.88677238282, 76111.17699969646, 74336.64023725626, 76527.69936169963], [94222.92562231854, 91946.90948613537, 93819.47177563669, 90963.1555573829, 94773.99808095966, 93453.05299808345, 93477.21651594409, 93336.12524814458, 95409.67022155572, 93583.07874978239  …  83536.97153826394, 84404.24214514768, 83351.37601069782, 83731.03251249593, 86024.34910610323, 86675.84410356852, 87113.22185715089, 82797.59917525345, 81009.15369873733, 83543.31123434725], [117721.26046290137, 115177.3594947346, 118144.9884178577, 115735.74274754831, 117886.06777017836, 117245.75439609044, 118949.07674869538, 118887.54983300118, 120084.53581116491, 119249.70512468065  …  97837.68602775043, 97309.17361290143, 94507.68376061907, 96927.34354104711, 97944.1340587565, 96838.67012082538, 96799.64596307847, 92510.2642946698, 90544.52593149117, 91998.74384969531], [117721.26046290137, 115379.58655741096, 118560.22781611788, 116346.43613828858, 118716.18275757052, 118278.66882277431, 120207.68647119934, 120356.45861501817, 121781.68197490516, 121147.38903911998  …  105133.82246347053, 104749.49240454021, 101912.42194474486, 104705.18155120342, 105989.33207087626, 104977.0590095992, 105118.99845234957, 100637.35819901167, 98671.87156095516, 100432.6505920116], [193268.35344739148, 192929.60989151543, 192683.11304011, 192319.8514389849, 191971.29142796271, 191627.30558865768, 191205.5161586212, 190727.6861949626, 190347.17051350517, 189795.48259044535  …  190703.49869457725, 190751.6720185553, 191041.455191948, 191385.25764290945, 191293.69633490389, 191155.8271385961, 191309.2713432517, 191376.7663602279, 191407.4301564594, 191654.58669696347], [156704.01315554912, 156429.3563186198, 156250.37305505067, 156230.16967490967, 155909.27215810385, 155587.0065666723, 155085.20746263236, 154977.22985065042, 155175.7629865237, 154437.10398113614  …  155092.1810732473, 155026.14241390457, 155244.75260458826, 155711.4541704054, 155206.93542142434, 154920.42000911906, 155247.76354452147, 155436.6377442222, 155301.4436917399, 155584.4156015241], [117187.20342811482, 116981.80813558835, 116847.9599481952, 116832.85135224511, 116592.87611597487, 116351.8777990812, 115976.61980471955, 115895.87142995743, 116044.33950369919, 115491.95171614176  …  115981.83484618086, 115932.44947531077, 116095.93167574222, 116444.94284803011, 116067.65103476011, 115853.3876012271, 116098.18333237412, 116239.42821064458, 116138.32669695976, 116349.94021015936], [9142.258120614042, 9126.23438486386, 9116.949201331194, 9115.302001767031, 9102.456812804792, 9077.028600807887, 9047.351782993817, 9042.287353923297, 9051.881784957772, 9010.226340688425  …  9051.32858503912, 9051.562846563042, 9058.188356638675, 9079.005496826789, 9056.159820317567, 9038.779660979133, 9051.682068918457, 9060.415037943181, 9055.189441276949, 9073.328214527368], [0.001198754547512726, 0.0009324558800432037, 0.00257476458888517, 0.0023303188684264953, 0.0012612171608201717, 0.0013597842093902024, 0.0037128397396934965, 0.0023020133579496616, 0.003965866166762311, -0.0009157892312455784  …  0.008164928594897702, 0.00672175677598541, 0.007519904939370825, 0.004792608301805057, 0.004814109861014382, 0.004479727551071067, 0.008415866178256737, 0.0043965241558008294, 0.0059096041298032365, 0.006578791547398266], [2.3547772e6, 2.3410548719547885e6, 2.329794179560289e6, 2.318507219360058e6, 2.344676152610005e6, 2.3582239007479628e6, 2.3505385285022664e6, 2.358061340134851e6, 2.3619087722490663e6, 2.357287485939005e6  …  2.286738707546852e6, 2.306409012533662e6, 2.310835188726549e6, 2.313030962409457e6, 2.334592156482466e6, 2.367411230635588e6, 2.369377579492809e6, 2.3362355630861027e6, 2.315847288979977e6, 2.338474620495389e6], [0.0016491658906325757, 0.000978197033034914, 0.0004965709814981135, 4.150055970124632e-5, 0.0011744410336181088, 0.0016858597524088874, 0.0013310242306556167, 0.0016011259635581557, 0.001737730196683484, 0.0013945652276244175  …  0.0005425348930178238, 0.00150735213687451, 0.0017651138241991213, 0.0018427806832188695, 0.0027351249551213408, 0.004016826680654516, 0.004002850050041588, 0.0024412576470404274, 0.0015477930765496993, 0.0025487889304320653], [6440.371182186954 427.8368152381106 … 462.939057344088 4577.023086943648; 6429.0830732104905 427.0869409749767 … 462.12765899748115 4569.000888543637; … ; 6516.816485626034 433.9694843931399 … 451.84481280504235 4456.450996570989; 6526.797838468131 435.41449949765996 … 451.6221900269021 4464.702519658336], [6440.371182186954 427.8368152381106 … 462.939057344088 4577.023086943648; 6440.371182186951 427.83681523811043 … 462.93905734408787 4577.023086943646; … ; 7101.770898248892 472.92291593434595 … 492.4027474429197 4856.465433195308; 7125.136489542813 475.33075410451846 … 493.0242709039027 4874.000332946988])

Let's now compare the performance of single threading and multi threading

model = Bit.init_model(parameters, initial_conditions, T);
+@time data = Bit.run_one_sim!(model; multi_threading = false);
 
 model = Bit.init_model(parameters, initial_conditions, T);
-@time data = Bit.run_one_sim!(model; multi_threading = true);
  5.414624 seconds (3.74 M allocations: 6.344 GiB, 18.11% gc time, 0.18% compilation time: 71% of which was recompilation)
-  2.664897 seconds (3.69 M allocations: 6.245 GiB, 8.86% gc time)

Is the speedup in line to what we would expect?

+@time data = Bit.run_one_sim!(model; multi_threading = true);
  5.359836 seconds (3.78 M allocations: 6.420 GiB, 19.59% gc time)
+  2.671715 seconds (3.65 M allocations: 6.150 GiB, 8.02% gc time)

Is the speedup in line to what we would expect? Yes!

diff --git a/dev/examples/scenario_analysis_via_overload-c688d626.svg b/dev/examples/scenario_analysis_via_overload-c688d626.svg new file mode 100644 index 0000000..01f2c33 --- /dev/null +++ b/dev/examples/scenario_analysis_via_overload-c688d626.svg @@ -0,0 +1,46 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/dev/examples/scenario_analysis_via_overload-cc32912b.svg b/dev/examples/scenario_analysis_via_overload-cc32912b.svg deleted file mode 100644 index fab98bd..0000000 --- a/dev/examples/scenario_analysis_via_overload-cc32912b.svg +++ /dev/null @@ -1,48 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/dev/examples/scenario_analysis_via_overload.html b/dev/examples/scenario_analysis_via_overload.html index e0b510c..0eac576 100644 --- a/dev/examples/scenario_analysis_via_overload.html +++ b/dev/examples/scenario_analysis_via_overload.html @@ -2,7 +2,6 @@ Shocked simulations (advanced) · BeforeIT.jl

Scenario analysis via function overloading

In this tutorial we will illustrate how to perform a scenario analysis by running the model multiple times under a specific shock and comparing the results with the unshocked model.

import BeforeIT as Bit
 using Plots, StatsPlots
 
-
 parameters = Bit.AUSTRIA2010Q1.parameters
 initial_conditions = Bit.AUSTRIA2010Q1.initial_conditions
Dict{String, Any} with 21 entries:
   "sb_inact" => 2.23847
@@ -24,15 +23,14 @@
   "Y_I"      => [19804.6; 19944.1; … ; 36883.2; 36575.9;;]
   "Y_EA"     => 2.35485e6
   "D_I"      => 54049.0
-  ⋮          => ⋮

initialise the model and the data collector

T = 20
+  ⋮          => ⋮

Initialise the model and the data collector

T = 20
 model = Bit.init_model(parameters, initial_conditions, T);
-data = Bit.init_data(model);

Simulate the model for T quarters

data_vec_baseline = Bit.run_n_sims(model, 4)
BeforeIT.DataVector(BeforeIT.Data[BeforeIT.Data{Float64, Vector{Float64}, Matrix{Float64}}([72422.0, 72493.40829871672, 72502.67429984166, 72527.75062044605, 72544.19730877444, 72905.35787747554, 73141.68151342777, 73290.53741164891, 73395.89754811562, 73386.73740553287  …  72877.01394579529, 73283.5684989141, 73502.47754157812, 73623.167861862, 73777.35527636316, 74421.80934439157, 74741.11924039731, 74899.64597242579, 75236.95832656545, 75149.33024058247], [72422.0, 72420.37473085034, 72356.66208117809, 72308.76688587469, 72252.2998466893, 72538.85415628937, 72700.6735258232, 72775.24045866968, 72806.43692179146, 72724.01057194822  …  72073.44951529056, 72402.50572496658, 72545.6230239384, 72591.53602043759, 72670.27732417693, 73231.20966494734, 73471.3178336194, 73552.97554439974, 73809.78839005053, 73649.5493712214], [64900.92049553801, 64966.37094093014, 64966.79210751521, 64988.78962593537, 64993.25709088695, 65335.864839563714, 65542.12236462739, 65674.0927930191, 65757.99071662531, 65742.78947745329  …  65252.30646136757, 65620.08507576337, 65817.99557575278, 65935.12323676427, 66076.80007168923, 66695.36856807285, 66968.14628271513, 67101.21022049288, 67405.04531853003, 67303.22565243088], [64900.92049553801, 64900.920495538, 64835.95630667505, 64792.56834875781, 64731.742490115685, 65007.413841067, 65146.93594165665, 65212.34614602918, 65229.87201124086, 65149.09213864598  …  64532.81440699019, 64831.15768906849, 64961.177567502295, 65011.21878420232, 65085.27403722561, 65628.3764438946, 65830.40246480961, 65894.75304281859, 66126.4389475696, 65960.03217410368], [40512.94792630534, 40552.27548574947, 40584.29381664419, 40591.21512204594, 40632.04525002257, 40688.395227665205, 40829.38242608483, 40925.35762422654, 41026.819441078165, 41098.14794578215  …  41027.29688435954, 41161.56855031435, 41262.058951189596, 41294.03276384117, 41365.7794105256, 41417.83155804765, 41695.96344428037, 41856.78364968851, 41992.91099266017, 42099.618151784045], [40512.94792630534, 40511.42104900358, 40502.56162069023, 40468.657676072944, 40468.55331920236, 40483.849928195, 40583.201542540846, 40637.61635737106, 40697.3228957437, 40727.00669577961  …  40574.91725639412, 40666.69737373528, 40724.90988036776, 40715.407308061636, 40745.05856482915, 40755.22932611197, 40987.57703561273, 41104.212766054814, 41196.34742272766, 41259.42168284261], [14866.888022051655, 14888.54767242998, 14893.0246375873, 14965.645693616187, 15030.801169785022, 15198.28281000493, 15386.22302224937, 15450.27107684994, 15560.453896062458, 15349.963749211016  …  15693.191410276297, 15821.927236082178, 15690.36679590214, 15581.490075441763, 15860.919815523108, 15891.080474895105, 15862.234584826689, 16040.443911045415, 16240.614911009738, 16368.485886900937], [14866.888022051655, 14873.548187892175, 14863.03176365617, 14920.459775726513, 14970.321450147449, 15121.879273040367, 15293.451744484404, 15341.642079304374, 15435.484037993087, 15211.344248865364  …  15520.153442121067, 15631.70572551225, 15486.109757850725, 15363.157154358763, 15622.91623619468, 15636.855060515847, 15592.745875062134, 15752.0421277397, 15932.546670785241, 16041.814419371029], [15944.236265986641, 16208.979051836288, 16095.663916984047, 16265.285822966542, 15626.498107541882, 16243.610392869297, 15981.58662391429, 16116.164819450632, 16449.137078820368, 17418.34574445664  …  15856.082651150093, 15926.054071246708, 16084.826950461185, 15931.354755818858, 14845.532576408128, 16588.439388586816, 16363.398349567735, 16413.018386736003, 17333.307273810544, 16704.70188183989], [15944.236265986641, 16192.649297181164, 16063.249063020712, 16216.175889142436, 15563.621470841965, 16161.951872455897, 15885.225599531113, 16002.85400309614, 16317.029986068792, 17261.04749780323  …  15681.24859393852, 15734.580680069554, 15875.434834062176, 15708.1194167206, 14622.765553352901, 16323.057630302284, 16085.395204108858, 16117.91783974274, 17004.51175108109, 16371.320436781665], [15944.236265986641, 15959.845837274283, 15963.181924514935, 15955.940819907715, 15941.908860405198, 16003.52280315034, 16039.051811295294, 16095.914993728455, 16116.3054543143, 16106.924456222378  …  16008.033713867326, 16063.535735416348, 16082.803927150688, 16133.205430566508, 16177.808897819863, 16279.14591913603, 16346.874185996945, 16399.020317091545, 16448.075411871036, 16452.628847141335], [15944.236265986641, 15943.767072163733, 15931.033874360426, 15907.764894424708, 15877.763099479072, 15923.071230999789, 15942.344300392802, 15982.746551462917, 15986.871414749563, 15961.469140711197  …  15831.524197377636, 15870.409450161007, 15873.438146448905, 15907.14169397694, 15935.050188479194, 16018.712236003475, 16069.151774976635, 16104.171450679612, 16136.071853201602, 16124.278109794177], [3173.2320350842083, 3175.962468315891, 3178.8317687779318, 3177.553545789106, 3173.6682920043904, 3180.5875833352416, 3191.686531898646, 3202.291676696205, 3213.70076627657, 3219.068626687307  …  3216.544812445305, 3225.368295674262, 3231.9693713399397, 3229.3571730570466, 3233.9880729233737, 3215.721029628379, 3239.3145568771074, 3266.2178395697574, 3259.35293526186, 3298.195033185568], [3173.2320350842083, 3172.762841261307, 3172.429959688826, 3167.9595278262614, 3160.898342727903, 3164.598399291872, 3172.4422484015654, 3179.7767490966976, 3187.8907396975487, 3189.9984808615445  …  3181.078197384374, 3186.590818051413, 3189.8956263822884, 3184.106367042982, 3185.4599455629486, 3164.2759430229125, 3184.280778642015, 3207.4923420198907, 3197.526266226317, 3232.371827598008], [34195.564496956766, 33737.918162992326, 34663.96369713749, 35340.808130214995, 36516.85427355608, 36483.18191658259, 35839.7214627306, 35908.86742468478, 36073.18412558634, 35269.28159548802  …  36258.67641507933, 37060.06842434926, 37334.75750956317, 38327.24990063879, 38329.37363340194, 39058.02381027857, 39452.116489492175, 38993.64044095255, 38299.00911482262, 37821.16038003845], [34195.564496956766, 33703.92885839678, 34594.1543791231, 35234.10328853831, 36369.92071468829, 36299.776713968946, 35623.625754899665, 35656.39649702677, 35783.471452010344, 34950.77855064742  …  35858.87706701589, 36614.508152688584, 36848.734009636915, 37790.19597400094, 37754.21606219742, 38433.173769169705, 38781.85153322906, 38292.547908656205, 37572.515173244916, 37066.350555208024], [33097.63671130043, 32894.31207429059, 33734.2717685112, 34635.204148397395, 35262.00149213087, 35708.11246964638, 34895.23202155094, 35110.12353356285, 35713.69699343128, 35749.00162940456  …  35958.2334150695, 36686.049783078226, 36869.532665537554, 37510.95963387805, 36624.25015949551, 38533.56588741629, 38632.59362776936, 38404.24041599622, 38628.88396573741, 37844.63605998067], [33097.63671130043, 32861.17266162282, 33666.33474531192, 34530.62974360516, 35120.11710819058, 35528.60363137073, 34684.831115632536, 34863.26847812848, 35426.87145002406, 35426.166421146925  …  35561.7468441786, 36244.9862070389, 36389.56545797877, 36985.34383270384, 36074.679092397106, 37917.10612115213, 37976.25181439304, 37713.74509779322, 37896.132627788145, 37089.35772298176], [29576.14777688488, 29605.974349916607, 29597.46114352699, 29600.497542534107, 29580.76774912672, 29710.498123159585, 29760.88561057423, 29854.75884965147, 29858.969589065557, 29840.065484406936  …  29620.103341296912, 29713.05503002397, 29745.620193068036, 29889.638329969453, 29998.49244835228, 30248.254182729303, 30363.643405737745, 30443.39279054076, 30535.191891684193, 30477.50262008672], [34346.71094688275, 34381.34847608993, 34390.33142182183, 34403.14689887101, 34420.20989049062, 34623.05843608066, 34773.889845761754, 34823.44662556481, 34890.69924548451, 34886.11690968253  …  34616.1645688603, 34879.5078508345, 35036.45250133217, 35013.54089320517, 35053.02277602645, 35414.289404066905, 35559.528692545246, 35610.43634419351, 35833.361287396656, 35773.533724539], [28335.32931213966, 28363.904560528426, 28371.315305793094, 28381.887810480435, 28395.96442722955, 28563.310300570127, 28687.743107849332, 28728.626430783526, 28784.10845744616, 28780.328124762527  …  28557.623002062126, 28774.875787297322, 28904.35189237497, 28885.450287433716, 28918.02202780602, 29216.05955724642, 29335.87897967843, 29377.87674406967, 29561.785232056187, 29512.42872458343], [978.0617717704338, 979.0481149238881, 978.9995421663831, 985.1451845301824, 992.2794512697211, 1002.3082803234549, 1007.3469082915143, 995.8873178028048, 1008.321882075288, 1016.6070833637381  …  1016.0385512103877, 1027.5221949048912, 1035.9228813525722, 1031.9440135896514, 1025.284847310473, 1032.8249812766494, 1044.974184432096, 1047.3810857585765, 1036.4921394492144, 1052.1893078051305], [0.0019383188997990075, 0.0013361750654801163, 0.005365312341582662, 0.0060735654250767546, 0.003741142090414984, 0.001973439869510152, 0.00250364184230234, 0.0011283957423759983, 0.004192475975422161, 0.00518463157270288  …  0.0024865038140295947, 2.2421919590120964e-5, 0.0036133946224914393, 0.0025530248199392425, 0.005910023415694132, 0.004758065998837546, 0.00678270351636856, 0.006728922192969611, 0.002817195785420612, 0.003664205482923677], [2.3548476e6, 2.3527274064530176e6, 2.3814911333620874e6, 2.4081283184458115e6, 2.422182049061412e6, 2.4195074578594808e6, 2.422633081752208e6, 2.432693602321408e6, 2.439504538019095e6, 2.418473232538444e6  …  2.4359858271391448e6, 2.439743078039848e6, 2.432241812329369e6, 2.444863436264907e6, 2.4434851698517115e6, 2.477910917196351e6, 2.4731295253011184e6, 2.4515579057018114e6, 2.449994981026812e6, 2.443145059578933e6], [0.0016459319014481277, 0.0014661823514808437, 0.002683278052791449, 0.003724167240603808, 0.004108331480414515, 0.003740855606342213, 0.0036484275567771527, 0.0038126788464100123, 0.0039020066074743655, 0.0028841314008001013  …  0.003276147060477547, 0.003185827937512474, 0.0027304726859908018, 0.0030973329323613907, 0.0029482016744648, 0.004224897553355015, 0.0038779689174652148, 0.0028873518295434923, 0.0026755344869115135, 0.002286538842794397], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086171; 518.6059091613054 258.5036962251161 … 137.13538556670355 505.4138092341077; … ; 517.3144900637977 256.8457001516382 … 141.82969373704486 523.6897606071477; 493.0398321509373 263.6420799227183 … 142.14608808989112 525.4733271716648], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086171; 518.0834390395164 258.24326637797435 … 136.9972283642248 504.90462950861695; … ; 507.5015509928419 251.97359381277644 … 139.13932613701448 513.7558890229835; 483.200067701598 258.3804848218598 … 139.30923002489922 514.986276376554]), BeforeIT.Data{Float64, Vector{Float64}, Matrix{Float64}}([72422.0, 72481.27108364641, 72734.17106692251, 73356.52799726618, 73549.85855578454, 73973.37133423702, 74206.93393679144, 74596.2965699744, 74716.76255584357, 75163.82965481667  …  75770.22206809337, 76177.44182431766, 76350.90666000085, 76341.32847437673, 76697.31757120858, 76626.92869742477, 76776.78992623131, 76968.50376777686, 77332.2877675675, 77455.04116968026], [72422.0, 72408.24974343137, 72587.69263984797, 73135.04192719501, 73253.91459547341, 73601.49858507309, 73759.50300651162, 74071.81898141265, 74116.69373559079, 74485.05459833799  …  74934.7562325883, 75261.58702111007, 75356.97132058123, 75271.60887987982, 75546.42365590356, 75401.05153120698, 75472.4038420118, 75584.63597284006, 75865.37152482597, 75909.24443922527], [64900.92049553801, 64966.37094093014, 65218.61016342926, 65786.6647570201, 65961.89549512448, 66340.92820494948, 66558.38522925091, 66907.3603449509, 67013.21739037102, 67431.15804667659  …  67983.35467791941, 68357.64592487212, 68501.6861936955, 68473.07516670396, 68802.95872995077, 68721.89902527755, 68858.23265202777, 69041.66041032146, 69374.00753703076, 69474.52682525349], [64900.92049553801, 64900.920495538, 65087.2672293916, 65588.03444779028, 65696.4833656416, 66007.42463591257, 66157.071246296, 66436.94274214357, 66475.01764877049, 66822.21371372076  …  67233.74924367137, 67535.80579927903, 67609.93192781699, 67513.60810390761, 67770.52488395918, 67622.4864784578, 67688.37753641857, 67800.31459126962, 68058.05191981152, 68087.99994727896], [40512.94792630534, 40442.241500854914, 40354.81097953432, 40592.28461567835, 40693.20767702126, 40917.54640089672, 40991.10396559679, 41190.48496497531, 41248.8726471155, 41325.995874623266  …  41595.44399387161, 41731.84195634488, 41919.59134029033, 42024.980116276594, 42148.73564362221, 42226.96227449045, 42312.18565406485, 42310.117509155054, 42464.69065105583, 42629.65755150625], [40512.94792630534, 40401.4979179741, 40273.54093616321, 40469.723940572956, 40529.46964578401, 40711.84913180252, 40743.94798154621, 40900.87961967711, 40917.59273750204, 40952.79701936726  …  41136.799800664485, 41230.11458158527, 41373.88251940249, 41436.112387785164, 41516.26602243885, 41551.41557398992, 41593.33004401522, 41549.395835292606, 41659.17789231969, 41778.88290509979], [14866.888022051655, 14994.73314986637, 15200.561366602004, 15487.308116199738, 15587.971704198624, 15699.880911775555, 15802.098824366625, 16058.467720431221, 16216.548326477125, 16563.97918766613  …  16675.519024012796, 16735.83076189941, 16709.764190672555, 16917.092479047005, 16839.087275029986, 16840.32484827875, 16950.063343182806, 17031.894747870832, 17062.172932831127, 16914.128337840644], [14866.888022051655, 14979.62668864675, 15169.949148342439, 15440.547137943455, 15525.250086918291, 15620.95578276084, 15706.820022208018, 15945.562565439965, 16086.309211585492, 16414.396390192214  …  16491.649608645923, 16534.621708118062, 16492.236647529717, 16680.044661457265, 16586.405646808384, 16570.913427853557, 16662.093153588652, 16725.667012179823, 16738.5205576827, 16576.56729741913], [15944.236265986641, 15973.343222184061, 15964.815190273437, 16149.454087175754, 16029.084416535594, 16218.754389087962, 16272.037672043134, 16609.707688310384, 16299.754187150837, 16484.46372860598  …  16529.283386365772, 16759.544869912985, 17098.836343102103, 16516.418957684386, 17193.89846917602, 16710.67688428716, 16484.931381399292, 16740.207598252124, 17066.14797393217, 17220.25670543008], [15944.236265986641, 15957.250859117503, 15932.663850905677, 16100.693885224888, 15964.587885671523, 16137.220822699142, 16173.925372195887, 16492.926831409433, 16168.846825390037, 16335.59900404642  …  16347.026410237595, 16558.05070968532, 16876.24386256951, 16284.98550816189, 16935.892664603078, 16443.339571246997, 16204.863471372437, 16439.224299347512, 16742.42019622518, 16876.586156543086], [15944.236265986641, 15954.612250503622, 15974.040319869244, 16062.651884957253, 16125.8347588921, 16210.330333211368, 16260.014839741692, 16328.124971124804, 16377.405607049817, 16446.681861589816  …  16577.977806397645, 16653.28524631451, 16722.86549663418, 16730.652358793337, 16780.84553298581, 16789.319958440778, 16821.64759307754, 16842.089232423554, 16910.13029729366, 16943.1123057235], [15944.236265986641, 15938.538757976105, 15941.870402129682, 16014.15376572987, 16060.948931841187, 16128.839115532108, 16161.975031597793, 16213.323888438938, 16245.87460750901, 16298.158330248265  …  16395.18391057719, 16453.068608465244, 16505.167400821338, 16496.21700097894, 16529.037860577257, 16520.72451395094, 16535.85910081136, 16539.274136023556, 16589.362019048316, 16604.97282234833], [3173.2320350842083, 3170.7288815452284, 3152.3023083234357, 3144.977241263945, 3165.6570168755584, 3178.8126187008647, 3187.6682628007993, 3192.5082607195504, 3216.9028023817777, 3209.912497732518  …  3220.366377093513, 3234.360217188683, 3270.8463155593276, 3289.67315129936, 3288.555389527388, 3307.4913682261035, 3312.8646536386755, 3296.7611111462297, 3313.855814437624, 3326.011716264971], [3173.2320350842083, 3167.5345270736784, 3145.9539265791614, 3135.4815812504767, 3152.9193027187007, 3162.832357611339, 3168.4482074692655, 3170.062119140999, 3191.067059457957, 3180.9250373151067  …  3184.857624282241, 3195.4746328309493, 3228.266470930606, 3243.5771781251915, 3239.2084435349607, 3254.5781402696393, 3256.5813086686535, 3237.4864558524196, 3250.9952802334246, 3259.6333636256077], [34195.564496956766, 34388.318304514105, 34882.95660447285, 34821.63486135381, 34899.73415908621, 35222.63823759068, 34851.0223991038, 34154.160648423036, 33518.50812305456, 33077.75839424367  …  34593.503004186685, 34704.63598354322, 35253.74795663285, 36119.07455753353, 35450.71713498564, 36266.91627205687, 35899.958702979064, 36907.125730411906, 37004.31465907841, 36507.25409553486], [34195.564496956766, 34353.67375354524, 34812.70625941252, 34716.497564518046, 34759.30743708222, 35045.569934795116, 34640.88805523616, 33914.02685304852, 33249.31268500275, 32779.04613563002  …  34212.06437167921, 34287.3942542607, 34794.81501825757, 35612.96230403435, 34918.75570613942, 35686.71835335136, 35290.04252126306, 36243.54803042052, 36302.37977790596, 35778.66634751292], [33097.63671130043, 33317.36509377242, 33668.973073959845, 33694.15368314135, 33660.13940105664, 34085.44860511361, 33709.32892431846, 33416.52445216517, 32566.920727953886, 32288.36753032193  …  33623.52734034313, 33754.411747382466, 34631.033170696544, 35236.23763616475, 34935.12095160507, 35417.95158168822, 34870.34915539444, 36020.84181791269, 36265.03844932968, 35816.25552063111], [33097.63671130043, 33283.79947585188, 33601.16755497553, 33592.42060106408, 33524.700459982145, 33914.09708698424, 33506.07842467425, 33181.57688816189, 32305.367723888947, 31996.78395089753  …  33252.783958638596, 33348.59423253888, 34180.20672717766, 34742.4959815588, 34410.896384085914, 34851.33539523453, 34277.925348227276, 35373.19920440005, 35577.126899307266, 35101.45826734913], [29576.14777688488, 29605.97434991661, 29675.680544619445, 29867.264814110407, 29971.7043578045, 30121.861273737304, 30216.750261329933, 30338.77167108157, 30379.05992593415, 30511.996471636834  …  30782.081990245904, 30916.25380368297, 31009.86100168518, 31000.39856975292, 31107.528725214695, 31097.066008671256, 31161.67010777348, 31232.316223524944, 31357.510471622933, 31414.564758452216], [34346.71094688275, 34381.34847608993, 34557.28952250378, 34922.03876629788, 34990.59216150307, 35213.2691567963, 35331.18642674756, 35553.34414747079, 35617.64177187405, 35897.503682250324  …  36174.56984996669, 36405.28210404078, 36452.7649203415, 36429.19356261143, 36643.19778669814, 36573.969039874486, 36642.760276799614, 36751.99890919016, 36949.38068692359, 36989.95848481655], [28335.32931213966, 28363.904560528426, 28509.052301089927, 28809.962916817974, 28866.51805630741, 29050.221992373637, 29147.501312097287, 29330.776857335433, 29383.82107354211, 29614.70138708072  …  29843.275270490893, 30033.608129600616, 30072.780475349515, 30053.33459057036, 30229.883668968687, 30172.77137829991, 30229.52273231099, 30319.642354745316, 30482.47825716816, 30515.95410490906], [978.0617717704338, 979.0481149238881, 985.6400963060113, 997.3611766117344, 999.598975816951, 1005.7977744158871, 1010.4485411734609, 1015.2445263984956, 1016.515692562836, 1021.657892789409  …  1026.7028377068707, 1036.110017148376, 1039.0602716688236, 1043.4830343396352, 1052.2322180379358, 1050.8639767317134, 1053.8022674547126, 1057.345277606374, 1067.116378484257, 1070.0035819847003], [0.0019383188997990075, 0.0007831208426971603, -0.0005787200046906138, 0.0024101636048430297, 0.008265302165022748, 0.0025011009960018704, 0.005727760357860268, 0.0035819191563264408, 0.0011524216852547564, 0.005096468838998058  …  0.001941316672331439, 0.004398280171932445, 0.005150233518170788, 0.002192258188251417, 0.0010994731836042604, 0.0038016604736317294, 0.0037344159915380093, 0.007957200543569742, 0.005767780201665795, 0.004115456344996993], [2.3548476e6, 2.3637882010697904e6, 2.36836464868699e6, 2.3484853046561754e6, 2.3477486231457354e6, 2.34218992833324e6, 2.341320106985289e6, 2.325766869719162e6, 2.3073338419962544e6, 2.2969151061975015e6  …  2.336398669119999e6, 2.3400835169133036e6, 2.349567724634635e6, 2.3648485964548383e6, 2.3562354355038973e6, 2.369183394412149e6, 2.3549148767879065e6, 2.3699590656628273e6, 2.3779540926297335e6, 2.374348412624261e6], [0.0016459319014481277, 0.001915490565471745, 0.0019508315039089928, 0.0010361100584137422, 0.0011182221080457352, 0.0008599480833574326, 0.0008911962438224578, 0.0002540175977965277, 0.0, 0.0  …  0.0017304142276823513, 0.0018583663236723322, 0.0022376198009790463, 0.002761972746261743, 0.0022244832219178723, 0.0026875447489282645, 0.001981897628213297, 0.00264613829398216, 0.002914411544906758, 0.002643947466322797], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086171; 518.6059091613054 258.5036962251161 … 137.13538556670355 505.4138092341077; … ; 527.3542123055444 266.09854234930776 … 144.1645548489639 532.8129496009483; 526.8657180423153 266.6142985814692 … 144.70918101810267 534.4867845877659], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086171; 518.0834390395164 258.24326637797435 … 136.9972283642248 504.90462950861695; … ; 517.3508297335161 261.05091883769916 … 141.42989726620655 522.706020235793; 516.3508788266927 261.29338589694913 … 141.82117043148955 523.8198491422451]), BeforeIT.Data{Float64, Vector{Float64}, Matrix{Float64}}([72422.0, 72483.28773517862, 72896.2169116755, 73009.75812826156, 73173.61407895797, 73274.72470817355, 73365.36670090728, 73631.73668364585, 74033.9332139078, 74424.25743012078  …  75241.35126509427, 76168.41984612375, 76933.72146349469, 77337.7364769845, 77688.1471794478, 77823.255699224, 78078.98876415403, 78118.02000342721, 78246.59564365148, 78447.28663508406], [72422.0, 72410.26436328565, 72749.41214252402, 72789.31906378885, 72879.18402068147, 72906.3641369302, 72923.01000279507, 73114.04079962523, 73439.34836517122, 73752.16116024561  …  74411.71692216228, 75252.67351101137, 75932.1990467904, 76254.05488856044, 76522.38521134274, 76578.2397004861, 76752.47919646048, 76713.48429342835, 76762.33589390833, 76881.6873227296], [64900.92049553801, 64966.37094093014, 65345.26640878129, 65440.57825958209, 65589.0763792994, 65676.18439551703, 65774.58798373163, 66036.37720737875, 66406.91903282555, 66783.41642361009  …  67574.92730753715, 68439.58554606332, 69131.07180292222, 69484.72232254835, 69804.9276989711, 69904.93765968997, 70136.06533726456, 70155.40543357203, 70267.61370342218, 70452.28643451862], [64900.92049553801, 64900.920495538, 65213.66840333325, 65242.99289264039, 65325.16436916115, 65346.02257099478, 65377.999908614525, 65572.0833822477, 65873.58862345619, 66180.32159112256  …  66829.82531943033, 67616.76028899441, 68231.12420147577, 68511.07972983927, 68757.45864671249, 68786.59886757545, 68944.50070274698, 68894.03485381875, 68934.70726995294, 69046.24607382689], [40512.94792630534, 40448.507940631345, 40581.859383298346, 40691.93986684018, 40774.38049339666, 40879.718425036895, 40774.13449770612, 40794.57902366908, 40960.733403714854, 40969.125013169665  …  41057.4336876779, 41332.59860350482, 41695.86753681751, 41974.908965653354, 42116.73677438281, 42378.67017064902, 42531.382593205475, 42650.83466026605, 42700.894072992174, 42784.32259814994], [40512.94792630534, 40407.75804461854, 40500.132090018924, 40569.07830167701, 40610.31584555915, 40674.211321580966, 40528.28673171155, 40507.75724542362, 40631.76761170943, 40599.14891865163  …  40604.72176202493, 40835.67119227198, 41153.07115016579, 41386.74285045559, 41484.747317370005, 41700.69644809479, 41808.80297441024, 41883.98700669045, 41890.90077131255, 41930.46124854327], [14866.888022051655, 14917.987747835654, 15167.288760545922, 15197.252810070522, 15221.769658553943, 15249.803747831022, 15218.238261499113, 15332.601281765299, 15404.331131813016, 15540.579305032901  …  15580.236539606447, 15857.046236976104, 16166.632615259603, 16194.221548173964, 16010.343670645432, 16121.256170113524, 16051.704224370764, 16211.539606933617, 16241.1908982985, 16077.353829376782], [14866.888022051655, 14902.958603859883, 15136.74354956682, 15151.367598587947, 15160.521535387517, 15173.141209114297, 15126.479848351843, 15224.799606395323, 15280.615134319902, 15400.238430387039  …  15408.444046689609, 15666.402502912117, 15956.175553534225, 15967.302833843105, 15770.097887663649, 15863.348406281148, 15778.996552711096, 15920.061580596019, 15933.111732170637, 15756.49258382678], [15944.236265986641, 15974.06641143368, 16131.642302641805, 15968.747093771648, 16123.717098186002, 16206.32642731309, 15958.40943015827, 16079.022676517487, 16261.483075578019, 16318.30784237223  …  16419.208958282725, 16661.204056247465, 16813.093893668913, 16937.01961613935, 17297.61870622451, 16969.75607359028, 17308.588271497163, 17185.878715071343, 17026.75715811518, 17502.24753743773], [15944.236265986641, 15957.973319789278, 16099.154992262695, 15920.532502182845, 16058.839792006595, 16124.855337734862, 15862.188152734163, 15965.973002102359, 16130.883078590297, 16170.943606433008  …  16238.165696744598, 16460.89221330926, 16594.22120548558, 16699.692573004984, 17038.056510978407, 16698.274013164108, 17014.526984218435, 16876.882399471328, 16703.77658483201, 17152.949201132822], [15944.236265986641, 15948.40492912897, 16005.445559228818, 16035.519392010592, 16068.978711270658, 16093.15587876821, 16123.880583794387, 16164.677821275713, 16241.300269340521, 16320.96506678307  …  16487.344758589672, 16662.001314086676, 16809.316139215625, 16937.728767606983, 17028.66753598056, 17078.241661502052, 17122.306231672064, 17168.60070010002, 17190.756728950477, 17225.632930369997], [15944.236265986641, 15932.33769017454, 15973.212394874965, 15987.103194179914, 16004.321656976474, 16012.253710712048, 16026.66159755416, 16051.025915840599, 16110.862365467035, 16173.576834492702  …  16305.550210704774, 16461.67988599565, 16590.49262980199, 16700.39178761095, 16773.141130709257, 16805.0240492621, 16831.40975111059, 16859.915037394483, 16864.66524764679, 16881.855086324136], [3173.2320350842083, 3164.5215601705786, 3166.340845163019, 3181.0293202056496, 3181.778795182342, 3191.3360941652904, 3192.8368249018968, 3178.4958376480004, 3181.7479757359883, 3180.992886630081  …  3166.5294150992822, 3174.8631600050376, 3187.1532884589014, 3236.6313329625705, 3266.330592478421, 3298.190025663741, 3297.9824896688338, 3329.97051850314, 3336.4817315917653, 3342.8790071988187], [3173.2320350842083, 3161.3334592721126, 3159.964191386979, 3171.424807803698, 3168.9762115204494, 3175.292876106706, 3173.5856057097017, 3156.148215730611, 3156.1945699294242, 3152.266587874451  …  3131.614285233856, 3136.6928880060727, 3145.662958820044, 3191.2785990473267, 3217.31714424707, 3245.425600532272, 3241.951982667187, 3270.0987692412414, 3273.1920063427788, 3276.1640282690832], [34195.564496956766, 35198.35168225521, 35307.64435228564, 35485.37353672372, 35368.21145828499, 34328.62578285622, 34888.044336858016, 34472.72921083165, 34028.00186815224, 33868.6404404576  …  34252.46461780905, 34207.225850084214, 34438.83813609696, 35121.09753417238, 36289.95576454699, 36064.494948555715, 35354.49569683634, 35511.19786412135, 36538.590604278936, 37195.31505821609], [34195.564496956766, 35162.89106222497, 35236.53873394196, 35378.2322073256, 35225.89971529023, 34156.05178474529, 34677.68676910585, 34230.35559821297, 33754.71455968078, 33562.78603637236  …  33874.78637972321, 33795.96430927952, 33990.51368561634, 34628.969260230006, 35745.40100567492, 35487.53536502343, 34753.846565166714, 34872.71847738312, 35845.49004315981, 36452.99544238499], [33097.63671130043, 34055.626046976744, 34292.217887095794, 34333.55517914428, 34314.464629463204, 33389.749674863444, 33473.459825313716, 33047.195509137244, 32620.616265350003, 32272.395170911273  …  32067.99253828152, 31889.654900688594, 32180.71071834778, 32889.511187154305, 34026.50773635136, 33710.92166368415, 33167.18202175546, 33441.430842964975, 34260.83709003314, 35111.95238809629], [33097.63671130043, 34021.316667206745, 34223.15722326593, 34229.89154598423, 34176.392867561706, 33221.89551624483, 33271.63149910791, 32814.84465250857, 32358.632019128912, 31980.95583159811  …  31714.400963019776, 31506.256706761244, 31761.782548011004, 32428.65262897302, 33515.91751034372, 33171.61453207694, 32603.693880045714, 32840.16517071238, 33610.94323756661, 34411.21115315804], [29576.14777688488, 29605.97434991661, 29723.73206872407, 29765.436265424687, 29837.526013974428, 29871.69072195367, 29920.11712066679, 30061.023758469837, 30218.066994834917, 30375.473703001997  …  30786.12853872542, 31145.616622399208, 31427.155889791356, 31605.05501307002, 31747.20172872149, 31830.17499274466, 31924.070886941823, 31956.7872384075, 31982.16097047159, 32059.239445253334], [34346.71094688275, 34381.34847608993, 34631.27465527535, 34680.94331078147, 34754.99532864752, 34805.61004782594, 34859.24147831845, 34978.54767187233, 35189.57765047082, 35405.44315138085  …  35781.43837789481, 36276.31700787196, 36678.43127179368, 36849.262305198914, 37019.2965965415, 37030.529403383596, 37164.00080335774, 37153.13544927471, 37235.88128582858, 37336.04014011151], [28335.32931213966, 28363.904560528426, 28570.088512228947, 28611.06413031458, 28672.155520279346, 28713.911621414616, 28758.156447268146, 28856.581600365193, 29030.676987477207, 29208.76158092999  …  29518.9499008405, 29927.214580728745, 30258.95056869427, 30399.88265374184, 30540.157442993117, 30549.424277347734, 30659.53543407154, 30650.57174067709, 30718.835352048452, 30801.464344501972], [978.0617717704338, 979.0481149238881, 990.2596847818822, 994.1986833758906, 996.5550366775443, 998.883625737332, 995.2293847464812, 996.8057770365681, 999.2743875198456, 1002.4995692272707  …  1007.360390916969, 1017.651915792154, 1025.4846413371783, 1030.4050042795016, 1038.4293737081553, 1044.23326356165, 1047.9936469649695, 1045.4827458898044, 1049.5714471220685, 1057.0068491537434], [0.0019383188997990075, 0.0027801047732889383, -0.0014134473948236304, 0.004719932296738616, 0.005059723976357899, 0.0039941812564703305, 0.0071132654378216476, 0.003298126724769812, 0.004711394109638389, 0.000662729763091674  …  0.006462841389704099, 0.006898142312185218, 0.0052637833339967965, 0.0029214339667122946, 0.005334339130650845, 0.0015977548597421176, 0.005121148961053867, 0.002458613310092783, 0.006955185138671549, 0.00616274829482899], [2.3548476e6, 2.378343032255842e6, 2.3815179476908026e6, 2.3868925933738425e6, 2.3907622362047574e6, 2.3818319305247893e6, 2.39857664080207e6, 2.3863124328372376e6, 2.3748308152796174e6, 2.3737046055183955e6  …  2.40487985831019e6, 2.3968002037095344e6, 2.3969127915769876e6, 2.4000027047962863e6, 2.422089609382785e6, 2.422066212295173e6, 2.394336716352297e6, 2.393641798210803e6, 2.407600465721947e6, 2.4136919392704866e6], [0.0016459319014481277, 0.002569259994777245, 0.0024779171319156187, 0.0026247624743457837, 0.0027060154086439104, 0.0022299315993281263, 0.0029195663227048977, 0.002276181168385487, 0.0017425319164585064, 0.0015820901806135892  …  0.002921210556653317, 0.0025327839527916046, 0.002470687861103436, 0.002481614194710469, 0.003325498362364921, 0.0031150164583304556, 0.0018758295728877224, 0.001764828954341723, 0.0023673728265791285, 0.0025823923311473263], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086171; 518.6059091613054 258.5036962251161 … 137.13538556670355 505.4138092341077; … ; 569.3478477906198 284.7857630205174 … 146.40179307048322 534.6159232253945; 564.4517335837295 283.76482122812547 … 146.59003423551138 535.6865145935976], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086171; 518.0834390395164 258.24326637797435 … 136.9972283642248 504.90462950861695; … ; 558.5478879057567 279.3836616016098 … 143.62469731369953 524.4747932517785; 553.1867774091875 278.1016297011616 … 143.66448681836866 524.995635726282]), BeforeIT.Data{Float64, Vector{Float64}, Matrix{Float64}}([72422.0, 72476.69600814667, 72760.31446995979, 73027.72501435783, 73227.50758358568, 73904.67612662344, 74313.31292128463, 74601.9698422112, 74922.43597519828, 75144.84145884577  …  75914.94751156271, 76410.9494930786, 77003.16560627507, 77063.70148566531, 77206.48873653072, 77760.96021225983, 78073.24319434751, 78555.84083207065, 78878.27388659092, 79514.35511677065], [72422.0, 72403.6792770967, 72613.78339301661, 72807.23170229337, 72932.86067299292, 73533.14871626509, 73865.24057859936, 74077.45236555481, 74320.71534078907, 74466.23787731491  …  75077.88588868525, 75492.28730864459, 76000.73916641485, 75983.85976492075, 76047.9543715386, 76516.94081636582, 76746.8312400257, 77143.43325091644, 77382.03183163638, 77927.45995400757], [64900.92049553801, 64966.37094093014, 65248.50587160891, 65485.4209195275, 65666.10898395508, 66292.57362791139, 66660.93302397562, 66927.08254996588, 67209.8042853734, 67413.92757444651  …  68160.19449298248, 68614.45147706155, 69148.94530671068, 69177.58611627226, 69305.21299558679, 69848.67581948514, 70142.39058902636, 70590.14257659912, 70874.97047354568, 71469.18485243931], [64900.92049553801, 64900.920495538, 65117.102730982726, 65287.700158711756, 65401.88701626507, 65959.31314296226, 66259.00072878544, 66456.52628270737, 66670.02570574338, 66805.13884312508  …  67408.63916839703, 67789.52386791872, 68248.765028171, 68208.24721626309, 68265.24249255708, 68731.23710396817, 68950.71849273087, 69320.95556932007, 69530.5430889068, 70042.84990244944], [40512.94792630534, 40426.293574040516, 40374.89973687012, 40576.950598422, 40639.95573365715, 40791.938062467685, 40972.4316981868, 41084.71206694028, 41283.962236899606, 41354.77553334607  …  41380.03676784726, 41615.78969715748, 41941.65988294139, 42161.74099425331, 42180.63539199347, 42099.77531237016, 42233.428978273485, 42401.034256622, 42616.96686168736, 42798.95839573183], [40512.94792630534, 40385.566057917, 40293.589237004715, 40454.43622146229, 40476.431973274004, 40586.87224111316, 40725.388298628415, 40795.8503981655, 40952.40051410221, 40981.31678028312  …  40923.767721144075, 41115.45757821689, 41395.663773985834, 41570.956927732856, 41547.68709401316, 41426.263348160755, 41515.91139123873, 41638.677930236845, 41808.56557536178, 41944.80495451051], [14866.888022051655, 14920.393234431374, 15026.496183115352, 15122.335522724426, 15278.152862314208, 15807.777779338352, 16001.471944265066, 16029.403539091481, 16107.86506414709, 16229.220340722526  …  16288.002063082113, 16464.15682339806, 16442.696089186073, 16556.517683335616, 16692.961211509108, 16755.394097237313, 16759.545725125812, 16668.872983890888, 17054.380614699534, 17107.322338481586], [14866.888022051655, 14905.36166704537, 14996.234512527008, 15076.676509727664, 15216.67786898185, 15728.31024020977, 15904.991021283273, 15916.702730863306, 15978.498811445614, 16082.660619058866  …  16108.40552923377, 16266.2140105867, 16228.64523591772, 16324.522357390406, 16442.472301399375, 16487.341398480567, 16474.81230187768, 16369.17225734563, 16730.876052041327, 16765.90565935619], [15944.236265986641, 15958.060943069422, 16041.854962726751, 16097.294777348088, 16020.175113781106, 16205.745423889786, 16255.115796198872, 16320.862105383265, 16476.309298393586, 16421.66810315179  …  16585.768717229665, 16554.36581698785, 17171.75938402048, 16983.663705442174, 16621.81144501117, 17123.823804339863, 17020.412219055193, 17262.172203959522, 16905.35656064131, 17305.692194180498], [15944.236265986641, 15941.983976152596, 16009.54847393575, 16048.692060502723, 15955.714431447434, 16124.277255083414, 16157.105526852662, 16206.112087032829, 16343.983978818622, 16273.370461248936  …  16402.888916423628, 16355.338452922302, 16948.217592070338, 16745.68307011488, 16372.390184148258, 16849.87696924005, 16731.246849318442, 16951.804157105016, 16584.67883541114, 16960.316580042887], [15944.236265986641, 15952.049487580833, 15982.867919982747, 16055.654078369169, 16101.602568050272, 16188.728053236151, 16275.475312660476, 16331.150554003818, 16418.017589381045, 16467.577603020858  …  16601.28540153222, 16694.937576644796, 16824.934775427708, 16887.918891876026, 16923.1136516011, 16976.365458917047, 17041.610338372873, 17148.16969178336, 17228.81737682741, 17327.240347161234], [15944.236265986641, 15935.978576911779, 15950.680224450982, 16007.177087686474, 16036.814244525063, 16107.345432733098, 16177.34228554882, 16216.328198808651, 16286.160424954418, 16318.865370436424  …  16418.234508979833, 16494.22016736121, 16605.907942764115, 16651.279864105083, 16669.171152092385, 16704.77766158235, 16752.084826829254, 16839.85137173163, 16902.00392305679, 16981.434689169513], [3173.2320350842083, 3168.1661186224383, 3146.8505599997657, 3157.185581733532, 3163.292980869218, 3151.7735099205665, 3170.489054123252, 3175.0714258510575, 3208.870905403033, 3222.878181154205  …  3216.1614863416876, 3217.3589243939127, 3242.3972022858325, 3286.110222916522, 3299.723844976056, 3268.0309416410705, 3269.931470537787, 3290.099308726122, 3312.694459425805, 3306.8829434214895], [3173.2320350842083, 3164.9743460093523, 3140.513157462478, 3147.65306096034, 3150.564778928857, 3135.929177578585, 3151.372580881855, 3152.7478805611204, 3183.0996686325716, 3193.7736327366415  …  3180.6990979525835, 3178.6777406473407, 3200.1877079292103, 3240.064174656947, 3250.2093089318914, 3215.7490013629913, 3214.3775315072544, 3230.944430397861, 3249.8559549659517, 3240.8863502398845], [34195.564496956766, 33850.86772981555, 33266.551985759725, 32962.938564636024, 33626.901697803856, 33863.09155109658, 34252.26344912347, 34497.90702972472, 34891.36823807573, 35218.87775214463  …  36218.7253642175, 36324.74841190272, 35539.14806247002, 35137.51387564212, 36260.22774838813, 37378.962297790546, 38096.82863029234, 39088.05474104056, 39447.21294745044, 38475.09629676474], [34195.564496956766, 33816.76463404852, 33199.55689751461, 32863.413247394354, 33491.5964959061, 33692.85784776299, 34045.73932413688, 34255.35639488991, 34611.14702051452, 34900.829884638086  …  35819.36652876145, 35888.02863618373, 35076.4997883707, 34645.15557056879, 35716.11907803657, 36780.97387313742, 37449.589104310544, 38385.26467140289, 38698.93872624242, 37707.23564933178], [33097.63671130043, 32678.919473209575, 31949.488398512003, 31731.794448772336, 32337.677823970345, 32763.876690168647, 33167.96996648918, 33330.91489892816, 33837.06886231734, 34079.70027051883  …  34557.58540081343, 34548.11125636709, 34092.0978123427, 33775.73477300767, 34549.14706037077, 35596.99529947772, 36036.97235839899, 36864.29335344201, 37145.643097887456, 36172.71410838793], [33097.63671130043, 32645.9970580664, 31885.145727965282, 31635.986336793212, 32207.560096616275, 32599.1688679039, 32967.98359230152, 33096.569245396335, 33565.31498409156, 33771.93986791371  …  34176.54280687729, 34132.751369264566, 33648.287223929576, 33302.45816088595, 34030.71428605832, 35027.51477265267, 35424.728406719434, 36201.48576517368, 36441.027357420026, 35450.80288923372], [29576.14777688488, 29605.974349916607, 29702.205818933115, 29840.326214999717, 29911.40607730597, 30096.80898573728, 30241.173968097177, 30363.49885357189, 30491.858960040005, 30574.093466935206  …  30908.226900990107, 31125.782284102046, 31350.083733109248, 31392.65550087418, 31423.165200832438, 31592.62853106544, 31792.04746199015, 32000.079769518456, 32157.560059675245, 32372.72069838741], [34346.71094688275, 34381.34847608993, 34564.140553500205, 34664.96109254873, 34774.609304914295, 35200.58019119936, 35415.59587190719, 35552.824510024555, 35702.322314633355, 35818.597179974175  …  36215.62598446319, 36448.21279421901, 36752.39297405182, 36740.41140134038, 36833.42277632905, 37193.72475864001, 37282.894382947205, 37515.45419643982, 37635.774270745336, 38005.00204543723], [28335.32931213966, 28363.904560528426, 28514.704260595205, 28597.879129355864, 28688.33664683609, 29039.753857029456, 29217.137366313716, 29330.34816714193, 29453.680777696212, 29549.60514743432  …  29877.14573608048, 30069.025065029426, 30319.967450142165, 30310.082899362867, 30386.81536856944, 30684.057085145643, 30757.620189143916, 30949.47724673158, 31048.738830572325, 31353.34414207546], [978.0617717704338, 979.0481149238881, 982.1594991756035, 980.1336119790386, 980.0936017348972, 995.1844509747225, 1004.1631839713025, 1010.7591863694388, 1015.6230107000786, 1021.2369275371792  …  1036.3416075291514, 1040.4563987404224, 1046.4685995496186, 1044.5192140577155, 1048.6250184252458, 1062.3225297797005, 1067.4487440890364, 1074.6086106408777, 1081.6361431251185, 1091.4621086146], [0.0019383188997990075, 0.008261793973578513, 0.006329411077438785, 0.0038488884556115988, 0.0035504714283407512, 0.003361073283616456, 0.000920208303359038, -0.001101049418871236, 0.0013517687909603282, 0.0013682561537868843  …  0.007937221837361674, 0.005356374741515513, 0.004616901716121946, 0.0005413887060605749, 0.003698045626252755, 0.0017297172461934185, -0.000713480967310387, 0.005738489725457319, 0.006289701573872097, 0.004967579122616028], [2.3548476e6, 2.350147218149749e6, 2.344794447576117e6, 2.3310929532264196e6, 2.324882907422273e6, 2.3306619246932343e6, 2.345143390993427e6, 2.3517349438834665e6, 2.3606887621743465e6, 2.3646012227764097e6  …  2.4020719719430883e6, 2.393334229058407e6, 2.3748809561256845e6, 2.3701308240879164e6, 2.406178214952738e6, 2.419738359435971e6, 2.4450558819522955e6, 2.4549321062748525e6, 2.44895317735764e6, 2.437592024573913e6], [0.0016459319014481277, 0.001517339480683412, 0.0013262258962281998, 0.0007416125130826916, 0.0005061535083189546, 0.0007903070269043412, 0.0013640701968110154, 0.0015142795651086171, 0.0018076812909187377, 0.001868267455197183  …  0.0034084189951271073, 0.0029212086302547596, 0.002052508797475677, 0.0017162437484158346, 0.0031700067687637596, 0.0035293273760343227, 0.004280798969194184, 0.004492866659969795, 0.004065028645435284, 0.003421767848372892], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086171; 518.6059091613054 258.5036962251161 … 137.13538556670355 505.4138092341077; … ; 547.3994670236115 278.92892862366267 … 146.7747789700215 536.4765828511131; 551.9558800115597 281.3539701076053 … 147.6278405957812 538.8099537575158], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086171; 518.0834390395164 258.24326637797435 … 136.9972283642248 504.90462950861695; … ; 537.015845995113 273.6379255021924 … 143.99060804334331 526.3001580232292; 540.9403078577935 275.73889276047413 … 144.68158132238892 528.0567393472284])])

Now, apply a shock to the model and simulate it again Here, we do this by overloading the centralbankrate function with the wanted behaviour

import BeforeIT: central_bank_rate
+data = Bit.init_data(model);

Simulate the model for T quarters

data_vec_baseline = Bit.run_n_sims(model, 4)
BeforeIT.DataVector(BeforeIT.Data[BeforeIT.Data{Float64, Vector{Float64}, Matrix{Float64}}([72421.99999999999, 72490.32715969233, 72745.01350851887, 73036.19868684297, 73101.97101584724, 73135.88215937368, 73338.00877368738, 73508.2692774224, 73822.52497256578, 74078.54126491581  …  74538.2788285288, 74675.61968507324, 74801.27856331534, 74838.48637448097, 75022.55143235985, 75162.20985954536, 75357.51802312113, 75480.63869547483, 75830.51292712508, 76421.36837097253], [72421.99999999999, 72417.29669592284, 72598.51324598843, 72815.6797901376, 72807.829229122, 72768.2195657863, 72895.81703027921, 72991.44147788413, 73229.6379957611, 73409.56702209338  …  73716.39677910489, 73777.82076542922, 73827.51626696206, 73789.82509366258, 73896.78848929412, 73959.76525690223, 74077.24441510497, 74123.52221381417, 74392.08385280793, 74896.20100186537], [64900.92049553802, 64966.37094093033, 65216.06270399384, 65470.60715239121, 65512.06600920255, 65559.83609434035, 65741.53158208827, 65889.20588388809, 66184.54135292272, 66416.058623472  …  66810.49076820773, 66923.94942845879, 67036.8797458268, 67068.29571476165, 67238.29935374917, 67364.09825784479, 67553.73811903397, 67655.28002546652, 67980.5731836729, 68537.47954022205], [64900.92049553802, 64900.920495538005, 65084.72490025257, 65272.93111892486, 65248.46386715041, 65230.25916627262, 65345.14282064378, 65425.9468026305, 65652.99691376244, 65816.28125515157  …  66073.81769313029, 66119.34613559599, 66164.19431563858, 66128.51287983608, 66229.34425528847, 66286.40779992139, 66406.04548921435, 66438.86085916402, 66691.04962407211, 67169.65363519284], [40512.94792630534, 40509.74867899371, 40428.33705746146, 40676.07232946786, 40783.93227281672, 40687.696455344994, 40859.781105636655, 40981.96126643634, 41042.59315818606, 41169.41067171808  …  41473.54754927279, 41573.89862920543, 41640.39700630889, 41698.480175325676, 41777.21045382879, 41863.7788287501, 41830.5770044632, 41955.60917679909, 42064.793923470614, 42132.624716022554], [40512.94792630534, 40468.93708592837, 40346.918940852105, 40553.25867331277, 40619.82919130329, 40483.1546686845, 40613.41693316324, 40693.82202618083, 40712.96993022377, 40797.6258759961  …  41016.24742385546, 41074.07015195804, 41098.3227344687, 41114.18747049956, 41150.31581354211, 41194.04233493299, 41119.90360183771, 41201.26144344637, 41266.86680615273, 41291.769523797004], [14866.888022051655, 14924.433192075354, 15178.264350186813, 15225.342731053921, 15261.570809239949, 15052.826337437726, 15043.546478547543, 15315.324315781883, 15332.566728847976, 15461.844654385159  …  15774.694870888425, 15964.269774665834, 15818.759370401805, 15880.40737271453, 15850.785525080835, 15930.826102461382, 15897.24955673825, 15997.157781051972, 16108.41970913961, 16370.700000502726], [14866.888022051655, 14909.397554629351, 15147.697035606572, 15179.372707402927, 15200.16253742891, 14977.15402709377, 14952.841370028464, 15207.644112681632, 15209.427089044244, 15322.21480147923  …  15600.75822044136, 15772.336929420668, 15612.83091909942, 15657.885924965587, 15612.934017475054, 15675.964837760039, 15627.165966122979, 15709.534267796067, 15802.859079829399, 16043.984345150859], [15944.236265986641, 16004.099383780507, 16010.117517688348, 16343.01925845685, 16088.328803570494, 15929.87177686036, 16098.984957588713, 15928.890308951986, 16148.067186371036, 16347.23487871681  …  16937.53341549329, 16325.29855286019, 16282.887608135441, 16253.517022174228, 16400.004941670166, 16305.576545302942, 16776.844662147458, 16339.386565195719, 16292.773367451584, 16925.345592990387], [15944.236265986641, 15987.976035383452, 15977.874944536456, 16293.674623323774, 16023.593889943068, 15849.790456992881, 16001.916079601235, 15816.896197154956, 16018.378060471789, 16199.609414061362  …  16750.77494864251, 16129.025184585016, 16070.917140075342, 16025.76744032153, 16153.912033911987, 16044.720025164379, 16491.817341580132, 16045.60989357382, 15983.715733415474, 16587.560685973524], [15944.236265986641, 15956.354350666841, 15984.69839797273, 16027.69775623241, 16058.987766760065, 16057.681318565476, 16102.060149125084, 16148.740821406034, 16184.744603563275, 16250.701803988897  …  16346.44443540244, 16367.021511490286, 16389.576380426664, 16403.816930967543, 16441.167806656995, 16469.023130948117, 16512.64056816554, 16520.151763364025, 16572.767398521522, 16653.123754498876], [15944.236265986641, 15940.279103058507, 15952.5070160645, 15979.305174341811, 15994.370913218732, 15976.957485253144, 16004.972729261033, 16035.200967100085, 16054.760912245083, 16103.948091658356  …  16166.203497933662, 16170.246522641484, 16176.217038995725, 16173.961297770173, 16194.45722291809, 16205.551793268975, 16232.10189766961, 16223.124994313372, 16258.398557434588, 16320.77167175716], [3173.2320350842083, 3172.4709817084536, 3165.2138981270364, 3165.8593958914953, 3188.083114971334, 3190.3165410308684, 3184.790388548346, 3198.2629311565247, 3184.2575048025724, 3202.5815372114075  …  3233.620098844795, 3254.695678913925, 3250.1609417777845, 3255.812532885616, 3259.1639431464637, 3255.221598041245, 3263.244939288187, 3272.069896509046, 3258.841710623419, 3246.775930411218], [3173.2320350842083, 3169.274872156082, 3158.839513895378, 3156.3006861878357, 3175.255164498384, 3174.278448384578, 3165.587685368232, 3175.776329182316, 3158.683944346712, 3173.6602798222875  …  3197.965206410119, 3215.565608395296, 3207.850379138079, 3210.1910257408013, 3210.258035222522, 3203.144581568647, 3207.804599931719, 3213.2391809448386, 3197.0247390085374, 3181.9789134325647], [34195.564496956766, 34592.968646897105, 35600.01028490724, 34837.553361513405, 36040.49847682655, 36451.13468002999, 36117.790337214086, 36159.227914734154, 36136.297033447954, 36085.03995250006  …  37123.57582505276, 36913.40816983914, 37561.28486303881, 37472.338881382726, 37486.61416352726, 37326.53132431177, 38670.48837175068, 39853.92005915325, 40127.397389967766, 41281.13748436402], [34195.564496956766, 34558.11792070459, 35528.31587451013, 34732.36800179699, 35895.48163980935, 36267.890582605185, 35900.018012272085, 35904.9967325845, 35846.07748448183, 35759.17011398483  …  36714.23982936618, 36469.611143245646, 37072.31243229015, 36947.264246789215, 36924.102754883, 36729.38169007162, 38013.50275213063, 39137.35998883806, 39366.2207493999, 40457.27571385572], [33097.63671130043, 33540.922742053684, 34471.7157017243, 34045.7889936482, 35072.35934660567, 34985.64709029871, 34782.094105299046, 34877.13452848122, 34836.99913428645, 34984.98889240337  …  36771.072832178004, 36101.25544149665, 36502.05028456891, 36466.25707711542, 36492.063651746466, 36264.50294128037, 37817.64157197765, 38665.43488672471, 38762.87146290394, 40288.439422906486], [33097.63671130043, 33507.131900722336, 34402.29354951612, 33942.99421569797, 34931.23802936179, 34809.770169589385, 34572.37536478525, 34631.91759071705, 34557.214568459814, 34669.05318342726  …  36365.6236432002, 35667.222643779554, 36026.86695897086, 35955.27998891258, 35944.47613051733, 35684.343631026364, 37175.14524656572, 37970.24337983967, 38027.57851598899, 39484.38926691102], [29576.14777688487, 29605.974349916596, 29670.31414204898, 29781.85451992011, 29783.525862311693, 29794.610104377898, 29934.44833763495, 30011.929093377767, 30107.971333306337, 30220.58188379264  …  30344.920026420114, 30347.428541715144, 30393.123256536717, 30442.91714277907, 30518.085239352346, 30590.07060730932, 30666.93567451004, 30693.54270023063, 30850.008337332885, 31040.420042459962], [34346.71094688275, 34381.34847608994, 34559.3572390896, 34695.63252297786, 34733.65984572201, 34760.36828416102, 34804.2697688664, 34876.57100636348, 35070.620631532256, 35186.57699091016  …  35445.8320935754, 35544.52789314742, 35606.472034021055, 35587.59122098419, 35688.78377019399, 35737.90805539809, 35848.64348260272, 35914.62320118326, 36075.54921873168, 36430.053277590705], [28335.329312139664, 28363.904560528434, 28510.758124697724, 28623.182427917058, 28654.55418617597, 28676.588097945656, 28712.805918870126, 28772.45295108009, 28932.539896248083, 29028.201505125016  …  29242.081626608346, 29323.503629050527, 29374.606269804885, 29359.029987816546, 29442.51175730036, 29483.038281095727, 29574.392728431776, 29628.824637699403, 29761.585288615217, 30054.043837726225], [978.0617717704338, 979.0481149238876, 986.3913228552403, 993.1201094932553, 994.8803011688312, 1004.8577058014417, 1002.8134755869278, 1000.7057841468414, 1005.9493880842032, 1008.8997487692038  …  1019.7386482122581, 1031.992993596307, 1037.2844552689744, 1037.7873509984154, 1031.4303442028508, 1036.119595137417, 1038.1589619212173, 1047.114124052597, 1055.0156276082746, 1067.0062201713688], [0.0019383188997990075, 0.005027856337935788, 0.008700905652439639, 0.009101023370869044, 0.006618854791357487, 0.007357702606506145, 0.006454854806263954, 0.002179238738405198, 0.003029727393396353, 0.005964165941463095  …  0.0053422403861054235, 0.0028632934489003503, 0.004557187912619831, 0.0011487010647655005, -0.0015041092285495994, 0.001535113004704769, -0.0010449323455760107, 0.003642052562220943, 0.0032626034746396915, 0.004416774761165865], [2.3548476e6, 2.3557028887810535e6, 2.3850757315788763e6, 2.3840931005218504e6, 2.419689228714751e6, 2.425108290143056e6, 2.4104643109958894e6, 2.407157941578781e6, 2.404864986487057e6, 2.3936445821363404e6  …  2.4246868773904024e6, 2.414097129237454e6, 2.4318376520644263e6, 2.4251935613516215e6, 2.427010006150243e6, 2.427352931170218e6, 2.4408955662433673e6, 2.4652477581358138e6, 2.472059998699569e6, 2.494934879494918e6], [0.0016459319014481277, 0.0016751824747177836, 0.0029772646521290928, 0.0029251755316785782, 0.004329085751413634, 0.004397718599836926, 0.003626323003928453, 0.0032729464844052465, 0.003006472827035399, 0.0024618411219355296  …  0.0036199248373945674, 0.0029880533211629552, 0.0035942363590260856, 0.0030857723147343775, 0.0028964771081235593, 0.00273116742450875, 0.003053758948873017, 0.0038925693906228017, 0.003951059421564165, 0.004670066960023658], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086172; 518.6059091613057 258.5036962251161 … 137.13538556670352 505.41380923410753; … ; 505.0874297718342 261.6479048176786 … 142.7879908737404 525.9318466891175; 505.0188065555275 266.14750093861164 … 143.32558633449085 528.1174031884885], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086172; 518.0834390395163 258.24326637797435 … 136.99722836422478 504.904629508617; … ; 495.50642581958465 256.6847054537815 … 140.07944533438086 515.9554449718571; 494.93997361962795 260.83590429419513 … 140.46518861988332 517.5775836645735]), BeforeIT.Data{Float64, Vector{Float64}, Matrix{Float64}}([72421.99999999999, 72466.77093167457, 72862.77673319406, 73531.18749455281, 74104.916779661, 74314.327456112, 74656.56660207018, 74931.03044910762, 75358.18496451018, 75910.72904025174  …  76618.84305770365, 76758.70193757045, 76860.02904780544, 76934.07875220574, 77235.76959148311, 77355.9878097478, 77637.49116607956, 78001.8646410801, 78139.75761418692, 78290.99198946074], [72421.99999999999, 72393.76419965418, 72716.03930879502, 73309.17407338256, 73806.73942105076, 73940.74068083135, 74206.42461028893, 74404.19938690399, 74752.96472207418, 75225.20902845479  …  75774.02006545762, 75835.85884683361, 75859.46595823148, 75856.05334748009, 76076.79584791923, 76118.4471600276, 76318.4823459901, 76599.41736540472, 76657.52447512878, 76728.51190276897], [64900.92049553802, 64966.37094093033, 65362.16841165982, 65998.51853695535, 66524.34656713076, 66689.8932683188, 66994.9838880208, 67252.2564764656, 67657.00590861816, 68179.08337020276  …  68798.93775511369, 68916.46001794156, 69001.00874370895, 69076.05565320226, 69345.72137056419, 69445.52280172796, 69717.05577807716, 70068.29468672421, 70174.27399324246, 70335.09634262219], [64900.92049553802, 64900.920495538005, 65230.536367482004, 65799.24857557137, 66256.6712926056, 66354.63541128396, 66591.03743214573, 66779.41395044226, 67113.63574202257, 67563.38481708434  …  68040.33945033571, 68087.9014654881, 68102.75430186657, 68108.13943115665, 68305.14301260811, 68334.53372587802, 68532.60983448991, 68808.49032888246, 68843.13812082652, 68931.39478464871], [40512.94792630534, 40353.33062235135, 40279.220512888794, 40363.82320347833, 40659.19090132899, 40936.41875777763, 41126.67157015673, 41171.5104269613, 41207.03608922732, 41333.81636940941  …  41879.47619784278, 42015.62450005411, 42103.787507381916, 42065.280054409, 42230.73129015286, 42282.77491271986, 42357.54858188017, 42404.44106572524, 42619.307560041954, 42511.2055863429], [40512.94792630534, 40312.676612837735, 40198.10270020233, 40241.95232411057, 40495.589744036886, 40730.62661514821, 40878.69818082851, 40882.03848935734, 40876.09217936889, 40960.5468903329  …  41417.70017796066, 41510.48530678841, 41555.68082263229, 41475.84763003945, 41597.03127012758, 41606.33532195214, 41637.92228615982, 41642.02348605827, 41810.861873006186, 41662.794926290684], [14866.888022051655, 14880.208837543374, 15031.823203481268, 15298.52136509315, 15126.653315269987, 15228.562289164785, 15344.95942186043, 15393.15555495557, 15542.257190955439, 15751.161264714076  …  15658.586736817331, 15848.8314364234, 15920.527725787908, 15968.942937292273, 16073.068812377236, 16073.92787939267, 16179.229676374393, 16216.955433100868, 16336.94285155882, 16466.810510642328], [14866.888022051655, 14865.217753974397, 15001.550804873998, 15252.33039248901, 15065.787913537315, 15152.006533733496, 15252.436943097422, 15284.928129774347, 15417.433475130241, 15608.918707008193  …  15485.93033046335, 15658.286466040088, 15713.27445505266, 15745.18090033513, 15831.881797208354, 15816.777273283897, 15904.355432953269, 15925.380032031246, 16027.04736653515, 16138.176744989318], [15944.236265986641, 15936.683633786148, 15980.866350361068, 16094.277335266264, 16418.674064593608, 16214.101318188157, 16339.968735394697, 16427.103903699004, 16570.814309678073, 16470.722447460103  …  16868.491956801485, 16977.275187851446, 16948.12013390598, 16616.94283297854, 17149.66936340457, 16704.766180042323, 16832.21415255324, 17253.40138069512, 17086.585896424414, 17219.66539876139], [15944.236265986641, 15920.628203464237, 15948.68268576505, 16045.683729012724, 16352.6099344763, 16132.591143328355, 16241.44684499757, 16311.606912043555, 16437.72999695759, 16321.98181501932  …  16682.494762366023, 16773.163331981497, 16727.489675477398, 16384.100810127766, 16892.327245780605, 16437.523426414547, 16546.24614153961, 16943.19103029093, 16762.470431745176, 16876.006650783303], [15944.236265986641, 15936.683633786148, 15980.86635036107, 16081.504364426008, 16218.4465159677, 16314.269630059784, 16381.06334951969, 16434.05632715396, 16511.365645477617, 16580.293914770773  …  16781.78365481009, 16835.13896798889, 16855.9915849525, 16871.876480056355, 16939.959813083402, 16973.19251428602, 17002.363417259712, 17060.12878825366, 17128.40026798999, 17168.822446480433], [15944.236265986641, 15920.628203464239, 15948.68268576505, 16032.949323726096, 16153.188045233934, 16232.2558974353, 16282.2936790237, 16318.51045384545, 16378.758779699054, 16430.56378539704  …  16596.742532852593, 16632.735966296153, 16636.56045505294, 16635.462243792143, 16685.764525793133, 16701.65547770113, 16713.504684540516, 16753.39341401805, 16803.491626455383, 16826.17838867894], [3173.2320350842083, 3152.8002648277593, 3122.7662397130266, 3104.7824315609773, 3126.2111567620072, 3168.117012020593, 3183.364062154725, 3191.8584858632653, 3205.6358840367043, 3188.7547243863482  …  3249.1399130598816, 3281.063692728588, 3285.3124813369077, 3282.166100249614, 3290.041075344855, 3310.957616505013, 3302.9829583264336, 3290.382035280193, 3312.8363535089934, 3320.540136014591], [3173.2320350842083, 3149.6239725618148, 3116.477340283714, 3095.4081321227764, 3113.632161660333, 3152.190518990945, 3164.169959013856, 3169.4169127735527, 3179.890628523825, 3159.95833151914  …  3213.3138943674517, 3241.616608780183, 3242.5443163067093, 3236.175318323249, 3240.6718356552688, 3257.9889355283944, 3246.867496721445, 3231.22207362359, 3249.9951574600796, 3254.2709815723774], [34195.564496956766, 34310.66110306056, 34543.70037233594, 34672.79400886368, 34311.70226595957, 35482.19192708538, 36156.0151635487, 36943.51422021442, 38125.64277147231, 37790.00924302467  …  38335.92815262514, 37409.89008421957, 36559.82113160087, 36261.881795350746, 36872.608591888405, 38983.82161242173, 38235.753866194726, 36292.016156125006, 36126.02747375046, 35314.68882589274], [34195.564496956766, 34276.09478792893, 34474.133251110165, 34568.10610864433, 34173.64161903239, 35303.81881767711, 35938.012361901754, 36683.76881538662, 37819.44629431403, 37448.74249575959  …  37913.22438629394, 36960.12402880187, 36083.88574569363, 35753.76848025599, 36319.31074244977, 38360.158657648695, 37586.154093780715, 35639.49791927101, 35440.75282305973, 34609.90151057039], [33097.63671130043, 33014.113265066044, 32972.83370587231, 32898.228418147875, 32411.30376749045, 33546.94683610316, 34311.04828888956, 35004.25365672173, 36087.56539682249, 35434.980284355704  …  36123.63998638226, 35492.91927097726, 34672.227450870465, 33978.9688678241, 35090.30846633897, 36689.302774828095, 35967.255110922306, 34164.949394565454, 34029.10616758803, 33221.37833217824], [33097.63671130043, 32980.85315855035, 32906.43013315573, 32798.89848087338, 32280.88979003143, 33378.30242905508, 34104.16972053552, 34758.1429596569, 35797.737223696044, 35114.98087966446  …  35725.32959162556, 35066.200286777384, 34220.86474062378, 33502.844473277495, 34563.75520764612, 36102.34751927102, 35356.19560844266, 33550.67510224604, 33383.60801921686, 32558.367929864387], [29576.14777688487, 29605.974349916596, 29770.086939634337, 30016.595238767954, 30283.308119546044, 30413.569300801748, 30537.783488161163, 30642.447349124657, 30789.608568179498, 30998.20062771847  …  31329.32276864574, 31381.57301984496, 31393.473216767452, 31419.59706435905, 31546.763192689265, 31567.589512124767, 31697.37384674719, 31831.941322386705, 31917.258994229753, 31977.863936746806], [34346.71094688275, 34381.34847608994, 34607.762431906944, 34988.56753388957, 35243.29227246775, 35282.23426726381, 35454.40538110784, 35601.62063073943, 35845.676505534015, 36145.80773938288  …  36427.612124327956, 36489.917468461834, 36561.17587438131, 36613.56234569826, 36757.08992933486, 36828.73446903258, 36958.90981702288, 37172.61611062111, 37201.033992084886, 37298.9503024008], [28335.329312139664, 28363.904560528434, 28550.69141208056, 28864.847780214546, 29074.990444608924, 29107.11678847703, 29249.15441229357, 29370.6039619908, 29571.945033441905, 29819.54712148807  …  30052.02993654924, 30103.430562555906, 30162.217280186862, 30205.435040354998, 30323.842341537587, 30382.94761158487, 30490.33959328967, 30666.64288516956, 30690.08705223623, 30770.86599209228], [978.0617717704338, 979.0481149238876, 984.3190401185116, 993.3557642978506, 997.7461751169828, 994.0897002532903, 1002.7950187517895, 1008.1884966015014, 1021.720834904636, 1035.075003101475  …  1042.0028621400368, 1044.9695296347138, 1046.3596525602195, 1042.8962431449015, 1041.8682485400807, 1049.1988205705652, 1060.772114307043, 1063.7372537163817, 1055.981006927867, 1058.2821034745857], [0.0019383188997990075, 0.005367965612926406, 0.004111315379019098, 0.010355140682200004, 0.012238878492742522, 0.006262068487014494, 0.004640127986294873, 0.0017142485662726692, 0.0014746749121299363, 0.0008401969036297974  …  -0.0013593859076915793, 0.0002490856694332688, 0.0026089573393370813, 0.008842774022038702, 0.0075439909032064545, 0.008854671888470778, 0.004382957571556156, 0.0022328810189282677, 0.005410550839097361, 0.0032284347735240804], [2.3548476e6, 2.364365256928106e6, 2.3651615892135664e6, 2.367925639746108e6, 2.353888510886968e6, 2.3743433560244916e6, 2.387910354508263e6, 2.3944501011296026e6, 2.4120417700170917e6, 2.4116260682477113e6  …  2.4164922763284696e6, 2.390272506261576e6, 2.3764175458302437e6, 2.3739514903940465e6, 2.395149402218899e6, 2.4303614069204014e6, 2.4231021606030194e6, 2.3864314864093903e6, 2.3917597809749655e6, 2.3764859477618956e6], [0.0016459319014481277, 0.002044806858317276, 0.0020208981955773192, 0.002223863385779662, 0.0017570016270143205, 0.0026253565524912287, 0.0030995036105093236, 0.0031787536157262455, 0.0036998971368983244, 0.003428311216855204  …  0.003123459441783477, 0.0018306970223408974, 0.0011849023619787977, 0.001198034559135179, 0.0021607530788499895, 0.003650009824301261, 0.0031865771340736115, 0.0015133484183734887, 0.0017450846829634335, 0.0010618480557259065], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086172; 518.6059091613057 258.5036962251161 … 137.13538556670352 505.41380923410753; … ; 560.2068946434046 282.97033449092663 … 146.3170343190207 534.2002262730057; 561.4142645095915 284.5050437774207 … 146.53151522671283 535.1433910774508], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086172; 518.0834390395163 258.24326637797435 … 136.99722836422478 504.904629508617; … ; 549.5803295077767 277.60266993757887 … 143.54154635107494 524.0669816552811; 550.2099281435507 278.8270793760316 … 143.60713569342838 524.4633515117775]), BeforeIT.Data{Float64, Vector{Float64}, Matrix{Float64}}([72421.99999999999, 72481.73042175054, 72856.86597934815, 73020.00241933296, 73181.00786672835, 73212.75201885552, 73570.32981818596, 73600.84047700302, 73795.51597551069, 73783.02803857464  …  73875.0045281843, 73998.2141715371, 73960.2792870107, 74296.07616942326, 74370.89698122413, 74516.45302963871, 74620.43434992198, 74774.06102674095, 74748.29641744705, 74982.96657115205], [72421.99999999999, 72408.70861877463, 72710.14045854157, 72799.53242417371, 72886.54805792762, 72844.70299153568, 73126.73729434467, 73083.36182049531, 73202.84591464892, 73116.72245976036  …  73060.43594574514, 73108.55946202207, 72997.46511082708, 73255.01531731396, 73254.9125436716, 73324.33924106036, 73352.68329836048, 73429.64857377445, 73330.39590916704, 73486.50587840445], [64900.92049553802, 64966.37094093033, 65324.81135616086, 65463.30834408286, 65625.66911885704, 65629.73838929083, 65959.7189050867, 65976.96481837856, 66162.88593472059, 66131.70343433955  …  66202.22484848704, 66313.89962303675, 66268.18869162328, 66578.83057028375, 66643.28411392774, 66774.32204795149, 66860.06965257665, 66991.96511939315, 66947.79483263606, 67161.9301919109], [64900.92049553802, 64900.920495538005, 65193.25454488462, 65265.65434797853, 65361.60986981869, 65299.81005424869, 65562.0145825252, 65513.088714608544, 65631.5154155859, 65534.49396617087  …  65472.258701025385, 65516.63074612599, 65405.51007389242, 65645.90628060952, 65643.25761219936, 65706.06682645467, 65724.16198401434, 65787.4721318717, 65677.86204659248, 65821.55659538372], [40512.94792630534, 40440.2908537627, 40462.88428296714, 40628.31138071824, 40622.54605183773, 40835.94326771251, 40966.00614914295, 41037.354066552936, 41094.58347343201, 41231.36884998592  …  41352.421759486875, 41423.49731465949, 41486.2999476269, 41587.90149472164, 41622.09389957785, 41735.406035343774, 41869.708338144446, 41985.04177470932, 42069.82883584838, 42164.16005164778], [40512.94792630534, 40399.54923606357, 40381.39659213734, 40505.64192965474, 40459.09234312126, 40630.65622706829, 40719.0014924518, 40748.825366182624, 40764.54269837505, 40859.02453426427  …  40896.457204382175, 40925.477059939054, 40946.23170975595, 41005.15825443529, 40997.526885655665, 41067.723248740156, 41158.37012044736, 41230.16485315162, 41271.80621127286, 41322.675497950695], [14866.888022051655, 14933.16025538028, 15129.115038340382, 15126.545197498057, 14792.965668113895, 15143.878595601638, 15106.625121573456, 15178.909630447804, 15077.038420633044, 15112.89731087909  …  15146.361375774124, 14959.763921770753, 15290.451236372564, 15276.95492475844, 15100.433024531596, 14966.845310980758, 15030.142687579822, 15104.01959069727, 15396.844134154899, 15383.189289978196], [14866.888022051655, 14918.115825844285, 15098.646704937571, 15080.873474189728, 14733.442931693515, 15067.748554956179, 15015.539680187465, 15072.188542591868, 14955.950991942449, 14976.41866452939  …  14979.352924217696, 14779.90789990267, 15091.40029507617, 15062.889249535745, 14873.841051868745, 14727.40580545784, 14774.790660172092, 14832.454401529316, 15104.781382626688, 15076.181723403672], [15944.236265986641, 15991.070450643165, 16084.42285905473, 16023.27469666164, 16381.129219358945, 15835.392775138882, 16371.901045980798, 16042.812859418695, 16492.673933367827, 16394.571156540856  …  16229.485897903834, 16492.49319247726, 15940.032278590634, 16468.33246512277, 16326.787241125601, 16443.52715272124, 16499.981138614956, 16922.471450769743, 16239.323187922584, 16852.546458290974], [15944.236265986641, 15974.960228259835, 16052.030643315771, 15974.895469357303, 16315.21615914723, 15755.786412211608, 16273.186619621505, 15930.017771872224, 16360.217185357482, 16246.518216531958  …  16050.534581338728, 16294.20970138763, 15732.52509778221, 16237.572819218136, 16081.793013330724, 16180.463699555747, 16219.65754332293, 16618.21110913539, 15931.279450394624, 16516.21442848785], [15944.236265986641, 15948.481881167041, 15994.326304590671, 16038.412081911283, 16083.34943456061, 16121.758554993234, 16158.025817317248, 16194.05523548188, 16228.78370986832, 16261.759544156457  …  16280.732909861574, 16303.873427344777, 16302.515570265632, 16348.14058591722, 16374.70754922889, 16396.072793948133, 16434.13562730566, 16469.107291110264, 16444.620943644743, 16479.241046185885], [15944.236265986641, 15932.414564687191, 15962.115533163087, 15989.987150154164, 16018.634556514631, 16040.712597953912, 16060.60095228933, 16080.196780981105, 16098.446329583167, 16114.905973712826  …  16101.216527938417, 16107.857645878095, 16090.28958559088, 16119.065107826465, 16128.99424555545, 16133.768515342375, 16154.930703017493, 16172.998284492433, 16132.682912786519, 16150.359200086483], [3173.2320350842083, 3164.598512208654, 3159.7032778872626, 3159.890668709416, 3174.561595259416, 3194.1716153405805, 3178.2162520276133, 3203.636940142584, 3202.3992497209824, 3228.3992185724996  …  3239.1456014298346, 3241.051390310278, 3245.117277127694, 3240.3262328566298, 3249.500445746565, 3250.5656193079144, 3274.5598490593184, 3284.374990656551, 3277.4349329924707, 3299.2005372042095], [3173.2320350842083, 3161.410333784767, 3153.339991424, 3150.3499804411053, 3161.7880515816796, 3178.114142786949, 3159.0531876233285, 3181.1125541575952, 3176.67998841972, 3199.244811832107  …  3203.429783099643, 3202.085360312777, 3202.872372863986, 3194.921724798933, 3200.7395449846867, 3198.5630891564288, 3218.9272769869176, 3225.32303364072, 3215.2652665241944, 3233.357264429278], [34195.564496956766, 34990.36268660429, 33994.814587968714, 34618.36265347326, 34141.428727900144, 34787.58048250429, 34142.71084219021, 34412.3778627921, 33381.8311394281, 33573.94223639772  …  34136.19344060855, 34495.800108194475, 34700.91114071713, 34398.44579203439, 36172.15097460807, 36919.14373665856, 36563.22011694183, 37071.03035227162, 37988.0438978543, 36702.42561755682], [34195.564496956766, 34955.11160532778, 33926.35286088105, 34513.83909836843, 34004.05321383629, 34612.699265689786, 33936.84726497507, 34170.42857324238, 33113.73338807358, 33270.749136174134  …  33759.79724437988, 34081.0691397741, 34249.17502648324, 33916.44355000715, 35629.363954429275, 36328.51148671145, 35942.035569363885, 36404.50570233898, 37267.44865578326, 35969.94276476052], [33097.63671130043, 33873.153824639216, 32814.3707889821, 33376.49150901733, 32757.0618004815, 33390.04310210113, 33016.91334070081, 33070.61394220771, 32250.61099134929, 32529.75151522813  …  32989.4579455883, 33373.34036556447, 33457.41531629582, 33435.55850721326, 34850.56815861836, 35548.46920606484, 35342.61793135835, 36308.502141706114, 36945.74363833257, 36119.35484632121], [33097.63671130043, 33839.02827672022, 32748.286342729396, 33275.71754739557, 32625.256589869874, 33222.187468389544, 32817.837762890515, 32838.098433393025, 31991.598349098604, 32235.988091738564  …  32625.706008572553, 32972.10433898087, 33021.867018269746, 32967.04855588162, 34327.61236161217, 34979.76499940402, 34742.170594945055, 35655.687492379926, 36244.91979090979, 35398.50853619778], [29576.14777688487, 29605.9743499166, 29702.96215298301, 29800.438608423796, 29878.622315086268, 29946.618916356343, 30043.45166738105, 30067.077042562483, 30145.97095721305, 30158.197870830838  …  30189.081995886292, 30235.132240793555, 30255.452495747653, 30338.03868578214, 30378.556999692413, 30463.535104297993, 30519.775856266657, 30581.648492605676, 30540.270599090632, 30570.955563888194], [34346.71094688275, 34381.34847608994, 34632.08499521665, 34676.06962261618, 34757.41806657488, 34696.10478605564, 34924.11662037083, 34918.54661916893, 35023.39402414687, 34982.62148527741  …  35019.85625015335, 35080.818776761604, 35020.96269518382, 35240.78631863603, 35262.72514081399, 35300.58401451792, 35326.028942490164, 35394.98727629633, 35390.42379750317, 35556.64042491024], [28335.329312139664, 28363.904560528434, 28570.757025995146, 28607.043437930333, 28674.154229183812, 28623.572035232053, 28811.677103643906, 28807.081967341954, 28893.57891757885, 28859.94241254216  …  28890.660326879042, 28940.95315607647, 28891.573121246824, 29072.92308429682, 29091.022160860353, 29122.254952129548, 29143.246493780574, 29200.135699277893, 29196.37092323826, 29333.496218350683], [978.0617717704338, 979.0481149238876, 989.7642079611879, 986.800113042852, 989.6287371959537, 987.0146868788328, 992.1506173348492, 991.3411566472009, 993.5209533606605, 990.8840782313154  …  993.2866024473848, 997.9486054814921, 991.7735006917734, 1000.0055658655567, 1002.0019734213265, 1010.2029291355196, 1014.2648538198346, 1015.3293504910814, 1017.1004360422276, 1034.3342031124994], [0.0019383188997990075, 0.00455414577324631, 0.004078635845440326, 0.004384940854801123, 0.004878027605236923, 0.004369680487988026, 0.005425071767942269, 0.0037261377228021697, 0.00297813729280616, 0.003282903738238252  …  0.007273435929532335, 0.0035341913281274895, 0.007395370745292507, 0.0013410133119242662, 0.005735918292516962, 0.0037914481658909427, 0.0010538629643990216, 0.0026004505986942927, 0.0009465152833256774, 0.002677131650667741], [2.3548476e6, 2.372627747845239e6, 2.352399240776825e6, 2.3619594223371437e6, 2.3576514816891667e6, 2.377334997332925e6, 2.3700702644904233e6, 2.3627120063679833e6, 2.3254431916108993e6, 2.323313100253401e6  …  2.3615032550957664e6, 2.371523624819831e6, 2.3789696922217826e6, 2.3638189757988853e6, 2.383294521896742e6, 2.3988426712326454e6, 2.3938301486276216e6, 2.406441391389211e6, 2.4312856996288598e6, 2.4148358337576604e6], [0.0016459319014481277, 0.0023712483149441587, 0.0014506987388311465, 0.0018436607608356007, 0.0016397127844860813, 0.002439780738795346, 0.0020830795746377127, 0.0017089962333690617, 9.931196638772954e-5, 7.719870245242105e-5  …  0.0018280437171158412, 0.0021911731052511626, 0.0025074916282370706, 0.001726212327095944, 0.0025404326088973852, 0.003081043682106014, 0.0026715995817631743, 0.0030516704029284396, 0.003862942664502453, 0.002972897158456138], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086172; 518.6059091613056 258.5036962251161 … 137.13538556670352 505.41380923410753; … ; 523.6988881620609 263.8568741079823 … 141.9246397900421 522.7811746756103; 505.81352264659824 260.700953513545 … 142.10850466278592 524.1165619988503], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086172; 518.0834390395163 258.24326637797435 … 136.99722836422478 504.904629508617; … ; 513.7648434372995 258.85177280344544 … 139.23247115823924 512.8645380588763; 495.71882929004016 255.49805547770063 … 139.27239666309507 513.6565886300316]), BeforeIT.Data{Float64, Vector{Float64}, Matrix{Float64}}([72421.99999999999, 72482.24991983798, 72711.39962528503, 72985.8275150982, 73127.85278485279, 73620.8789771924, 73800.42759810615, 74106.11186647382, 74401.77279512511, 74626.41072037033  …  74913.63800352822, 75054.6171723611, 75101.01718073002, 75388.64877097656, 75335.64285679681, 75561.07331260675, 75708.41965523703, 75702.28153061676, 76227.51862264032, 76513.69058131293], [72421.99999999999, 72409.22759349311, 72564.96705732885, 72765.46070455578, 72833.6068571629, 73250.77824814167, 73355.44769901207, 73585.08070760178, 73804.23373563333, 73952.48888344213  …  74087.6171280827, 74152.2616981673, 74123.3528900526, 74332.27843521447, 74205.18177008367, 74352.24769472695, 74422.18446421761, 74341.17998537126, 74781.55874689424, 74986.68070629843], [64900.92049553802, 64966.37094093033, 65196.230561354925, 65446.33400873958, 65575.11610565, 66029.73865257918, 66199.50329027534, 66473.84903749813, 66743.54400101959, 66939.62362859776  …  67184.66026585894, 67308.04767637503, 67334.08431727007, 67596.18474698804, 67532.75282110927, 67738.59564242378, 67878.26318560643, 67862.2370627013, 68364.874982671, 68627.5430577969], [64900.92049553802, 64900.920495538005, 65064.93269731487, 65248.731263409114, 65311.26026772945, 65697.79946964819, 65800.35318704558, 66006.47940054972, 66207.51007318111, 66335.11815012709  …  66443.86148250922, 66498.82650429716, 66457.52988094284, 66649.0049587637, 66519.37925385902, 66654.91397748768, 66725.05709291309, 66642.09687851806, 67068.06160186682, 67257.91972436389], [40512.94792630534, 40466.408026243516, 40398.183142624235, 40565.88640082688, 40643.46470575737, 40798.595772526685, 40834.02055234214, 41026.258823466465, 41146.90695505687, 41326.01779437673  …  41574.517375796226, 41647.90209731997, 41736.72057330519, 41868.41774278448, 41932.2917246239, 42042.01450057812, 42039.0925184206, 42122.29578018738, 42226.03533637963, 42339.92977462538], [40512.94792630534, 40425.6400967688, 40316.82575260254, 40443.40543010523, 40479.92682625659, 40593.49648208854, 40587.81170320191, 40737.80813241561, 40816.44595716334, 40952.81874117192  …  41116.1039259333, 41147.183902196855, 41193.392362233055, 41281.74381733535, 41303.06998742445, 41369.42659350439, 41324.87657728818, 41364.951077801954, 41425.04963054152, 41494.93732448907], [14866.888022051655, 14893.651280403348, 14972.591088804573, 14914.446321930467, 15087.449817457727, 15207.286184394454, 15175.801454489821, 15289.838467533726, 15288.825056705657, 15244.471390702034  …  15388.429470238, 15497.022678564821, 15592.221742121608, 15613.691290115887, 15731.335282067346, 15776.987979708443, 15608.205640796716, 15781.804831750149, 15855.44278881222, 15774.990636312958], [14866.888022051655, 14878.646654229799, 14942.437977003809, 14869.414990795824, 15026.7421595825, 15130.837386418669, 15084.298914197441, 15182.337452366985, 15166.036717101484, 15106.804550458077  …  15218.751901219934, 15310.707382124176, 15389.242355398903, 15394.907155109924, 15495.2762042651, 15524.587816413368, 15343.032712141185, 15498.053292048251, 15554.68087895252, 15460.163756353311], [15944.236265986641, 15961.61492961959, 16031.078209895408, 16131.530638804341, 15926.130946674342, 16204.332097217404, 16243.747929712286, 16210.7163917413, 16367.541766783137, 16460.844289251363  …  16564.643517085515, 16924.44993691182, 16285.294403281863, 16943.911928520156, 16432.19537217406, 16775.908196497465, 16718.556586195187, 16023.772805702662, 16574.165162565452, 16699.165972480547], [15944.236265986641, 15945.534382234917, 15998.793424270621, 16082.824553293363, 15862.048671638817, 16122.871033368692, 16145.806202951086, 16096.740794654856, 16236.089986185803, 16312.192862581942  …  16381.996649251088, 16720.973180602225, 16073.292603586631, 16706.488308056672, 16185.619425741628, 16507.52731329815, 16434.519540881876, 15735.67076326045, 16259.769807290942, 16365.895009457461], [15944.236265986641, 15955.09452673948, 15976.867298005945, 16037.108903406312, 16074.816867253645, 16161.926129829393, 16212.911606617421, 16278.892941781645, 16337.340228894356, 16405.965552668942  …  16476.530320398586, 16512.312077218197, 16518.174283067838, 16563.098219620297, 16556.492285225468, 16599.62827914377, 16626.038529027774, 16626.285392703438, 16674.96946046684, 16762.176565070673], [15944.236265986641, 15939.020548342216, 15944.69168705088, 15988.687906348583, 16010.136321860531, 16080.678245715351, 16115.155807558616, 16164.438003572308, 16206.131004325829, 16257.809714338942  …  16294.855015844296, 16313.790310592485, 16303.14085542626, 16331.010685054249, 16308.051181503935, 16334.067521052171, 16343.57330335454, 16327.35037671518, 16358.661948366267, 16427.648078114486], [3173.2320350842083, 3171.2111577810924, 3148.6897923950432, 3155.852968870274, 3154.657054245484, 3159.9682957684495, 3170.987421964578, 3183.7786181127826, 3188.6540749253186, 3216.2573638200897  …  3241.0306435514676, 3257.5532351170673, 3260.9810184723096, 3267.0422500037043, 3272.6636580690333, 3283.131016158452, 3290.4280472180662, 3292.952963478067, 3245.2290027896383, 3272.7978923498194], [3173.2320350842083, 3168.0163174397912, 3142.3486858508995, 3146.3244716678973, 3141.9636008468005, 3144.08276728402, 3151.867943812791, 3161.393853601369, 3163.0452045261895, 3187.2126054063256  …  3205.2940401654973, 3218.388809197272, 3218.529600182395, 3221.2633883998847, 3223.5551780049573, 3230.607504974738, 3234.5258851187605, 3233.7467773976855, 3183.6702506430374, 3207.48154618254], [34195.564496956766, 33929.75297940831, 34290.80576458739, 33839.50449363778, 33884.13281319115, 33949.76318510454, 34584.41374570209, 34390.0939982841, 34631.40510156556, 34658.61096425066  …  35035.45762899092, 34836.921037561166, 35910.51981264336, 35613.526872660506, 36793.569619423775, 36226.06136572447, 37640.830800281416, 38398.94217902295, 37313.61811683909, 37303.872663516406], [34195.564496956766, 33895.57041060552, 34221.747944613206, 33737.3325524612, 33747.79258557748, 33779.09377337697, 34375.886919508135, 34148.301383905266, 34353.271712321555, 34345.62264629539  …  34649.14586849451, 34418.08889123085, 35443.03702481378, 35114.49851821374, 36241.4578019791, 35646.517043575914, 37001.33837110375, 37708.542121337436, 36605.81605807131, 36559.386526451315], [33097.63671130043, 32769.17729583597, 32981.258580625836, 32465.540340100546, 32413.325498226917, 32539.09826205012, 33037.556084139556, 32810.795814550955, 33032.9060849854, 33063.53371820994  …  33649.409988581734, 33851.678577995976, 34423.739350621254, 34650.899063103716, 35553.74914149182, 35259.89872990082, 36298.26589045614, 36624.5340660457, 35741.742781955385, 35604.268465621564], [33097.63671130043, 32736.163950345213, 32914.83804116056, 32367.51682209902, 32282.903385891674, 32375.52042711058, 32838.35604084587, 32580.107055740173, 32767.61063713824, 32764.94991706472  …  33278.381216815455, 33444.691657986084, 33975.61145597903, 34165.35936350055, 35020.241649326184, 34695.81107206392, 35681.582737196666, 35966.037269076216, 35063.757627961466, 34893.70191045202], [29576.14777688487, 29605.974349916592, 29688.302509343186, 29821.90892685067, 29904.72661141212, 30065.215576851573, 30162.359244405514, 30299.138704643658, 30406.186557800414, 30511.770742677672  …  30630.04464931671, 30662.228210051824, 30661.6928960753, 30747.61598035315, 30734.35781747913, 30817.633862170867, 30852.424965941733, 30884.607646790053, 31096.584466326418, 31215.317590523555], [34346.71094688275, 34381.34847608994, 34526.41393109727, 34640.34155181819, 34688.89962782172, 34976.135462193626, 35046.70572014448, 35179.126026269376, 35338.47322750703, 35426.202440588335  …  35546.37512151451, 35634.326293050784, 35658.66085698628, 35826.33369817297, 35772.97266933772, 35890.6071230476, 35991.4927233348, 35944.73823934199, 36225.53174137875, 36368.90729775711], [28335.329312139664, 28363.904560528434, 28483.580573926196, 28577.568515184037, 28617.62792804752, 28854.591577049086, 28912.8105867753, 29022.05461271612, 29153.51277268432, 29225.887567080154  …  29325.027554417862, 29397.585459968785, 29417.660974152543, 29555.987615648854, 29511.965865594837, 29609.011867742698, 29692.240410685616, 29653.66892409395, 29885.31778157044, 30003.599663395304], [978.0617717704338, 979.0481149238876, 981.5141209144572, 984.0835300706825, 981.4898664162275, 988.3876135339045, 990.4383257253617, 995.5843065851361, 998.8842157122388, 1001.6504453317851  …  1008.2404950277506, 1011.4931732723699, 1013.7305642084975, 1022.235068461972, 1025.4223342924051, 1030.3546572052733, 1034.3454963299118, 1032.8911765693085, 1042.7587749658642, 1043.3181695162555], [0.0019383188997990075, -0.00019383731229871692, 0.0015865064634743575, 0.0031133137585348525, 0.004399791137177145, 0.002166087409281703, 0.0016740035053637303, 0.005956015446816565, 0.007373165185340591, 0.0059954835365734205  …  0.00504496730018178, 0.0016683759367552842, 0.005209366237136193, 0.004357491062291441, 0.0026441753971822024, 0.002048543154599569, 0.005012000691778429, -0.00014281457528020347, 0.0040835279373843125, 0.0019471274808173789], [2.3548476e6, 2.350025002505579e6, 2.379121545873197e6, 2.368350448881972e6, 2.3823400539233875e6, 2.3830945574325714e6, 2.407709015963127e6, 2.3821542978136973e6, 2.37026611056626e6, 2.3785481779057784e6  …  2.4047194428663715e6, 2.406318784335948e6, 2.4394224984722026e6, 2.433896855958284e6, 2.4520685903497613e6, 2.4298229510838436e6, 2.453051201446873e6, 2.4557512103466266e6, 2.4338445156196784e6, 2.42493033351985e6], [0.0016459319014481277, 0.001318194524972672, 0.002474842876542719, 0.0019177578871649246, 0.002457748870876194, 0.002356652713714306, 0.003236535393778621, 0.0020896399206917684, 0.0016132698411041734, 0.0019751033837272936  …  0.0029805792478714388, 0.0028636212046422456, 0.004124299991912632, 0.0036961615927324346, 0.004217567493997267, 0.0030599975410188136, 0.0038887580657931643, 0.0037058459556543045, 0.0026477731079176574, 0.0021361805101518623], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086172; 518.6059091613057 258.5036962251161 … 137.13538556670352 505.41380923410753; … ; 527.076581551166 264.9473826341032 … 143.21428694203647 527.2347647057791; 535.6500268309849 270.0350596777946 … 143.939012257057 529.281686682483], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086172; 518.0834390395163 258.24326637797435 … 136.99722836422478 504.904629508617; … ; 517.0784653571795 259.9215954722596 … 140.4976549921376 517.2336479353772; 524.9598761624129 264.6458776948668 … 141.06637219164566 518.718631154929])])

Now, apply a shock to the model and simulate it again Here, we do this by overloading the centralbankrate function with the wanted behaviour

import BeforeIT: central_bank_rate
 
 function central_bank_rate(cb::Bit.CentralBank, model::Bit.Model)
     gamma_EA = model.rotw.gamma_EA
     pi_EA = model.rotw.pi_EA
     taylor_rate = Bit.taylor_rule(cb.rho, cb.r_bar, cb.r_star, cb.pi_star, cb.xi_pi, cb.xi_gamma, gamma_EA, pi_EA)
-
     if model.agg.t < 10
         return 0.01
     else
@@ -40,7 +38,7 @@
     end
 end
 
-data_vec_shocked = Bit.run_n_sims(model, 4)
BeforeIT.DataVector(BeforeIT.Data[BeforeIT.Data{Float64, Vector{Float64}, Matrix{Float64}}([72422.0, 72466.6593507006, 72651.68986387897, 73057.97019470975, 73498.97519077049, 74062.09777642066, 74699.34349771397, 75141.74659490808, 75296.512938917, 75429.90386277247  …  75620.949700453, 75957.71726611286, 76530.68682807015, 76659.06676834851, 76722.47131950608, 77007.3708629163, 77363.11296877165, 77930.90555998344, 78343.88413928993, 79033.16728359634], [72422.0, 72393.65273109278, 72505.37754465597, 72837.38556308139, 73203.23597082, 73689.7789891028, 74248.94358251286, 74613.4340128292, 74691.78799978919, 74748.72599451084  …  74787.12978810759, 75044.504134602, 75534.41111222004, 75584.89492124086, 75571.19995559122, 75775.40738511468, 76048.76564993538, 76529.73410470679, 76857.77892397744, 77455.87535088784], [64900.92049553801, 64966.37094093014, 65163.74002896386, 65566.88671905379, 65973.06964550682, 66488.82997077306, 67068.80778998334, 67452.45733164884, 67571.84966136466, 67684.24846520108  …  67841.1166811529, 68164.56184206039, 68689.65883619717, 68792.18190554148, 68849.12056777011, 69118.56108432634, 69464.02271055208, 69967.4877282738, 70349.72700258758, 70975.45638975718], [64900.92049553801, 64900.920495538, 65032.50759719599, 65368.91998776636, 65707.6125543833, 66154.58288234148, 66664.41621267085, 66978.20721749375, 67029.16340567612, 67073.01857197075  …  67093.07960692194, 67345.04309902378, 67795.45754433797, 67828.24341503861, 67815.99403290777, 68012.80274015857, 68283.87562880201, 68709.49584562056, 69015.26296186581, 69558.97494745132], [40512.94792630534, 40366.45696103939, 40254.707193162954, 40202.96785759229, 40389.06944939698, 40628.7798787576, 40922.7464698147, 41276.95377893674, 41502.2588493348, 41630.536090376925  …  41795.872236461466, 41769.39097039258, 42029.13894077176, 42204.567119873034, 42267.515800161804, 42333.58213306904, 42317.045925942635, 42667.077486714144, 42776.77304635861, 43067.46903757245], [40512.94792630534, 40325.78972738069, 40173.638747540965, 40081.58265031656, 40226.555184912446, 40424.534272586316, 40676.00264748953, 40986.74048180829, 41168.943932391834, 41254.58705191307  …  41335.01805964073, 41267.21215693854, 41482.00403031619, 41613.18295971198, 41633.26380426487, 41656.32972868172, 41598.10774313855, 41899.937792585406, 41965.340396358646, 42207.95683769592], [14866.888022051655, 14863.000750822779, 14910.03211022687, 15019.484798196088, 15067.908768452044, 15178.396918165743, 15308.329598697426, 15276.686105519191, 15375.70474772016, 15301.938285610322  …  15614.391920754211, 15878.078870793934, 15918.511911976419, 15717.385021001093, 15778.873006518501, 15907.990879666108, 16070.838095704974, 16143.33174120213, 16304.908695479557, 16704.430313132852], [14866.888022051655, 14848.027003560632, 14880.004985161722, 14974.136323380459, 15007.279738266214, 15102.093349894414, 15216.02797956288, 15169.277563027807, 15252.218655805707, 15163.752484384522  …  15442.222820071633, 15687.182268712357, 15711.284883085382, 15497.14789561672, 15542.100593758185, 15653.494932728276, 15797.805352424995, 15853.080069335898, 15995.62086639431, 16371.054287864226], [15944.236265986641, 15967.422483256307, 15981.963730288286, 16045.097668714167, 16094.590042530555, 16244.285813175964, 16386.475933116842, 16637.017854262074, 16684.09617846972, 16931.601339274992  …  16515.60879916468, 16220.200276318319, 16935.745686706894, 16986.873999245443, 16713.73424521212, 16791.436738256038, 16848.044574039443, 17076.72854200079, 17201.0743812556, 17289.576916711714], [15944.236265986641, 15951.336085045017, 15949.777855692708, 15996.652551100588, 16029.829935437248, 16162.623897346031, 16287.673627431934, 16520.044982869265, 16550.102071012006, 16778.6986903796  …  16333.502603252053, 16025.190467951179, 16715.27631870837, 16748.848380234285, 16462.933622009266, 16522.80742953476, 16561.80761479942, 16769.694709779473, 16874.787184395223, 16944.522920674637], [15944.236265986641, 15946.711274718211, 15979.885313896306, 16031.620085250637, 16124.66035219213, 16250.965376669124, 16354.626980276436, 16479.16522905003, 16538.179972435653, 16570.282889372706  …  16626.24923276691, 16667.523174491664, 16754.848738290235, 16828.472955933572, 16856.80015771664, 16907.190305941116, 16980.390672659814, 17079.32413005832, 17171.34817299605, 17272.357249489025], [15944.236265986641, 15930.64574203787, 15947.703624997208, 15983.215660634352, 16059.77925062373, 16169.269881895925, 16256.016707948005, 16363.302200478192, 16405.35775415803, 16420.643165641784  …  16442.923081312685, 16467.135358999767, 16536.734284957292, 16592.66690400627, 16603.852735989363, 16636.7091723073, 16691.905242110857, 16772.24363003724, 16845.62485260939, 16927.646912236323], [3173.2320350842083, 3162.8279057598193, 3149.5800220542023, 3111.2736086137566, 3115.4170278112197, 3141.577984642849, 3137.4466282748144, 3181.7703032133913, 3218.9382536663616, 3232.9876475815013  …  3256.1217733183926, 3243.659771227052, 3235.665782867712, 3278.4906803660247, 3293.318863637007, 3288.185110931022, 3290.980252412809, 3292.7461903630683, 3316.399255203191, 3317.8478691679347], [3173.2320350842083, 3159.6415111354436, 3143.2371226878067, 3101.8797103022957, 3102.8814652508677, 3125.7849063933268, 3118.5293844389753, 3159.3996589224807, 3193.086163529281, 3203.791804538903  …  3220.218770481629, 3204.6623815759062, 3193.54391806177, 3232.551399621897, 3243.9004385688622, 3235.580744368119, 3235.0687087182305, 3233.5437219937444, 3253.4904744685837, 3251.632445215428], [34195.564496956766, 33458.976364565424, 32888.55532134043, 33010.58112830999, 33993.49189041906, 34661.194811925656, 34899.71822493601, 35335.49849654845, 35414.83017783088, 34775.50794808723  …  34993.90194663939, 35838.65595151218, 35390.80345463792, 35928.534749058796, 35799.32078595296, 35471.653968801744, 35653.01263322024, 36741.01933280389, 37634.38517673646, 37041.29772659617], [34195.564496956766, 33425.26808020668, 32822.321475796365, 32910.911963417835, 33856.71163261308, 34486.94895059019, 34689.29026944082, 35087.058856857955, 35130.404907820244, 34461.4639793333  …  34608.04839191218, 35407.78029583706, 34930.08632916002, 35425.09240150337, 35262.1283290412, 34904.178651866525, 35047.29189933733, 36080.428169940176, 36920.49848729442, 36302.051887294714], [33097.63671130043, 32189.197208982572, 31383.568491139074, 31220.16125810239, 32046.084960027496, 32650.559645603913, 32817.92672885053, 33384.409640358004, 33680.37701443863, 33209.679800577054  …  33298.82520256683, 33748.608802903684, 33743.51316602263, 34178.294120829756, 33836.972518338975, 33497.29285687636, 33525.82826013529, 34697.25154273728, 35573.257160540226, 35069.60671041633], [33097.63671130043, 32156.768165099747, 31320.365519535313, 31125.897925133537, 31917.140520408444, 32486.42148131375, 32620.05094141196, 33149.68787173371, 33409.881567240685, 32909.776211499666  …  32931.66208676902, 33342.8610548367, 33304.24044904965, 33699.376715825325, 33329.22639348193, 32961.40335769635, 32956.246959764634, 34073.40663693392, 34898.468010465134, 34369.71058264115], [29576.14777688488, 29605.97434991661, 29700.673423756634, 29876.376936868055, 30079.58681444984, 30320.832014647352, 30552.038904615234, 30748.697698974356, 30815.505440371617, 30846.700129096756  …  30899.228879076534, 31010.341726114366, 31223.345016313215, 31306.85795139367, 31370.93886669817, 31490.153802153367, 31640.391618566773, 31853.098973050615, 32015.044698471804, 32227.161722190664], [34346.71094688275, 34381.34847608993, 34484.24266413714, 34712.79364120519, 34911.041860412435, 35179.15085410302, 35517.44744141774, 35698.665170752545, 35747.2804685549, 35821.65406440239  …  35924.38383688591, 36129.6427283369, 36432.4744209467, 36452.09438000084, 36443.78867713736, 36591.1003417792, 36785.30218287592, 37069.43270053591, 37280.62116667629, 37678.901612104586], [28335.32931213966, 28363.904560528426, 28448.79014701535, 28637.33999709706, 28800.89069589526, 29022.07509516766, 29301.162813976025, 29450.663709297296, 29490.770328966573, 29552.127014144546  …  29636.876961176837, 29806.211320222254, 30056.041231142157, 30072.227293375287, 30065.37525953224, 30186.90434962769, 30347.11686980202, 30581.51869645655, 30755.744832527267, 31084.31799917631], [978.0617717704338, 979.0481149238881, 978.8239410701237, 977.7161409804644, 982.4409706446636, 988.847102022665, 999.3214439504417, 1005.0944619219241, 1009.063752438149, 1015.8942717019197  …  1017.5039651903874, 1024.577387609118, 1033.8393989372048, 1033.2295741469868, 1034.3930239345416, 1037.30694039379, 1038.328909109434, 1044.9560546872929, 1054.0611374395403, 1069.3930554618876], [0.0019383188997990075, 0.002966544273105276, 0.0011980652129512936, 0.0008071031861143219, 0.005466041591910775, 0.010229816072748976, 0.007261930926562021, 0.004819465739865247, 0.003484066370890826, 0.0074545018168261645  …  0.005371090920768706, 0.0060116228603417365, 0.002854113388207624, 0.007642884384243098, 0.007567683553358462, 0.012884356237015115, 0.005978726417949165, 0.0016426889923975008, 0.0023569177851903156, 0.007431890648817108], [2.3548476e6, 2.348287322347251e6, 2.352011757848172e6, 2.349231144352103e6, 2.37149034551967e6, 2.3773110472405315e6, 2.3929882501805136e6, 2.3862362175360965e6, 2.3773423715819926e6, 2.35763655300784e6  …  2.3679331666017086e6, 2.374082568076487e6, 2.3724354985665227e6, 2.385830121245142e6, 2.392740394175998e6, 2.4013587027485375e6, 2.4033865603469466e6, 2.405187530002175e6, 2.420635371346384e6, 2.425186351387798e6], [0.0016459319014481277, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01  …  0.00925589479861849, 0.00896404245378497, 0.008297663259257206, 0.008414084346296527, 0.008249714521108755, 0.008288911260766857, 0.007895518412446238, 0.007422390540352027, 0.00755871234589908, 0.007354588601310738], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086171; 518.6059091613054 258.5036962251161 … 137.13538556670355 505.4138092341077; … ; 565.4606678597455 281.3754529478913 … 146.2668524671857 537.0752292844129; 563.9236601931668 281.69628371197496 … 147.04705741137798 539.5923653526427], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086171; 518.0834390395164 258.24326637797435 … 136.9972283642248 504.90462950861695; … ; 554.7344438948165 276.03804170410694 … 143.49231639883908 526.8874487317449; 552.6692429597745 276.07437469523904 … 144.11238902650584 528.8235360867244]), BeforeIT.Data{Float64, Vector{Float64}, Matrix{Float64}}([72422.0, 72491.4127675132, 72679.89109339376, 72522.97731974274, 72312.2267081394, 72493.39669426087, 72624.37362432042, 72706.29962018908, 72854.73003290586, 73105.6089886233  …  73261.31029705403, 73333.04342299451, 73573.27064952772, 74052.68146940364, 74348.71422001076, 74614.36883456245, 74932.9039246401, 75354.57762853324, 75419.51754559703, 75490.08422880582], [72422.0, 72418.38121004702, 72533.52198007132, 72304.00799724404, 72021.26263055806, 72128.96394990034, 72186.48474618165, 72195.110372848, 72269.61565689168, 72445.4209154765  …  72453.50849646586, 72451.38582929727, 72615.4945479165, 73015.03114321767, 73233.06264944328, 73420.68858949753, 73659.84422491233, 73999.72768243158, 73988.8846430761, 73983.50281563283], [64900.92049553801, 64966.37094093014, 65139.19631388824, 64984.24914978615, 64777.90559006292, 64943.322248650176, 65051.25805044222, 65121.07350035389, 65255.25764658126, 65480.62949979615  …  65608.81639638485, 65663.06689836994, 65894.40491648726, 66335.46719127646, 66600.16107272942, 66839.15628954515, 67133.89182449161, 67512.48094519589, 67554.5488473944, 67612.15230089505], [64900.92049553801, 64900.920495538, 65008.01331039766, 64788.04158171182, 64517.25750320844, 64616.844607455045, 64659.03129532315, 64663.21506549212, 64731.17651496113, 64889.29962489373  …  64885.39335351868, 64873.62275621882, 65036.59221220307, 65405.95298864537, 65600.78166072017, 65769.86385022238, 65993.33210117438, 66298.62925829912, 66273.1065438473, 66262.79346785402], [40512.94792630534, 40512.65500592928, 40562.54568591921, 40608.26629309207, 40614.48545297938, 40694.49612092758, 40800.1977888248, 40859.18714567219, 40925.64186469807, 41029.143991759214  …  41235.55363563349, 41304.20663862572, 41310.02561044984, 41500.72937749258, 41669.331771141755, 41789.43484553789, 41898.15025331079, 42105.998040647086, 42307.37675839467, 42364.02144588424], [40512.94792630534, 40471.840484881504, 40480.85728825063, 40485.657364354425, 40451.06417784745, 40489.92015155671, 40554.19287413853, 40571.91111549229, 40596.957901531496, 40658.62588939312  …  40780.8777045035, 40807.620574080065, 40772.252110137306, 40919.207621345144, 41044.055921751744, 41120.88770633807, 41186.3288265812, 41348.94636613373, 41504.84808704228, 41518.54819003008], [14866.888022051655, 14892.874563152654, 14856.265714482484, 14604.644604549712, 14707.78807909821, 14961.613115505541, 14968.09888143582, 15081.272839467303, 15146.044911314006, 15308.509283834564  …  15252.15737871433, 15287.845755595194, 15418.83545258562, 15521.439570426619, 15608.725852110541, 15751.17111294351, 15978.490566627665, 15931.859534671092, 15936.025776620718, 16182.495338306446], [14866.888022051655, 14877.87071948378, 14826.34686888163, 14560.548660718128, 14648.60807335768, 14886.399344646668, 14877.848684429371, 14975.238224144769, 15024.403274410484, 15170.26414250187  …  15083.982387802705, 15104.045320313302, 15218.113206846256, 15303.948096606247, 15374.50660979878, 15499.183967734982, 15707.026745829899, 15645.410061909719, 15633.73528798599, 15859.535747725558], [15944.236265986641, 16052.39667720822, 16720.575661783638, 16411.297657393887, 15715.542369889437, 15814.69983213601, 16046.795137918712, 15899.841522719635, 16222.477185298738, 15746.851528281346  …  16059.259125149092, 16064.431243951454, 15602.364915525155, 16151.684748247842, 16326.639710166823, 16514.26168312291, 16294.831489746031, 16652.452042749712, 16470.908017888243, 16566.277208735726], [15944.236265986641, 16036.22467164715, 16686.902305962158, 16361.746868634655, 15652.30744410291, 15735.197495042199, 15950.040938605163, 15788.051649444567, 16092.190454273934, 15604.647890114498  …  15882.184781476984, 15871.294192309397, 15399.253485072453, 15925.362073431557, 16081.647696171303, 16250.066619345256, 16017.993249173991, 16353.046559199673, 16158.471347492681, 16235.658352191522], [15944.236265986641, 15942.637564714938, 15979.862452970123, 15942.802960491817, 15902.919733202978, 15937.525104239648, 15964.266320687508, 15990.712014527007, 16014.955140419457, 16059.90567475498  …  16103.299704485376, 16118.0957667759, 16162.333869860156, 16225.18612903848, 16296.253823738027, 16344.581312093358, 16388.212696276434, 16490.60766618177, 16535.862347526912, 16573.691403221696], [15944.236265986641, 15926.57613609844, 15947.68081011036, 15894.666702274022, 15838.930853567173, 15857.405310204505, 15868.009729124471, 15878.283241754163, 15886.335070320361, 15914.874967412316  …  15925.739755803716, 15924.313525300557, 15951.932769159397, 15997.833528900937, 16051.717770040854, 16083.100793919142, 16109.787971736478, 16194.11209005568, 16222.193558388532, 16242.924579063994], [3173.2320350842083, 3158.7541957565445, 3176.6789199419427, 3180.702465681087, 3176.3395662973858, 3187.45204563824, 3194.8765178121344, 3200.4957363565577, 3206.858244851554, 3213.3829875680176  …  3229.91929512279, 3235.4718173994133, 3228.0495326192263, 3224.407614768227, 3232.10180439395, 3242.2817642380815, 3241.176249532484, 3263.585521459654, 3290.9097023222257, 3310.318475221499], [3173.2320350842083, 3155.5719051960136, 3170.281446447877, 3171.0989401541456, 3163.5588685638822, 3171.4283531437577, 3175.613000285442, 3177.99343579756, 3181.1031722563357, 3184.3641865184904  …  3194.3052088912455, 3196.572868660175, 3186.0268160828386, 3179.2261635792725, 3183.6019817388346, 3190.4117591525105, 3186.110842389789, 3204.9073521035098, 3228.4844329412467, 3244.2533179574557], [34195.564496956766, 35304.30097877721, 36047.67209991473, 36051.43916368077, 36880.92912288701, 36166.89033977228, 36005.438264184864, 36092.820896719175, 35829.92684849732, 35797.6170481041  …  36256.1602014517, 37404.660523544546, 38339.24435878467, 37883.278675931724, 37874.377807207304, 38312.33428531185, 37312.100813436475, 37536.030860177954, 36840.704843778505, 36666.06598886622], [34195.564496956766, 35268.73362000587, 35975.07614905095, 35942.5887068943, 36732.53062914543, 35985.07517173575, 35788.34336640356, 35839.05661432566, 35542.16783434511, 35474.3428130736  …  35856.388597935555, 36954.957341310226, 37840.144459099654, 37352.44581890252, 37306.04774893839, 37699.413780950286, 36678.19328590307, 36861.145657603, 36141.87347735262, 35934.30877760692], [33097.63671130043, 34270.81445755348, 35507.16806870588, 35152.6703989734, 35606.51831671429, 35144.30271408051, 35196.156448043024, 35226.82278438894, 35269.36077690178, 34776.51286335553  …  35541.82004389438, 36728.1007387223, 37097.19968781708, 37004.450902694916, 37130.36092061537, 37752.83309235375, 36550.669198480726, 36871.76284971245, 36135.497851084714, 36288.77575298639], [33097.63671130043, 34236.28828597087, 35435.660632073545, 35046.533603356984, 35463.24769389521, 34967.62821308087, 34983.94111739439, 34979.14723055886, 34986.10380766895, 34462.45981960622  …  35149.92497525277, 36286.53159871557, 36614.26871323876, 36485.932467067694, 36573.19532721667, 37148.863484871115, 35929.69788257574, 36208.820962414415, 35450.04355679705, 35564.548251920874], [29576.14777688488, 29605.974349916607, 29658.449835241023, 29597.60803732387, 29540.07731908592, 29594.258867911492, 29605.42979408132, 29642.714800386475, 29682.28152033828, 29755.455580015987  …  29839.19383912869, 29851.00328713882, 30004.274302972346, 30139.041115668133, 30266.581821383952, 30351.124349375896, 30451.65797009941, 30606.912946795746, 30673.607798559162, 30712.301108008087], [34346.71094688275, 34381.34847608993, 34493.02367115778, 34393.68378980103, 34245.30833796717, 34352.20180875101, 34446.65154767383, 34474.48992138682, 34565.29327612871, 34716.102867112364  …  34752.14416821989, 34795.73580045821, 34893.17446921581, 35174.08478512605, 35304.391716321785, 35452.47032894908, 35638.44062255583, 35861.0972892007, 35836.88511604225, 35862.26658206125], [28335.32931213966, 28363.904560528426, 28456.034297001268, 28374.080940348693, 28251.67424772384, 28339.859160120894, 28417.77824995638, 28440.744335061063, 28515.65523302848, 28640.070040331564  …  28669.80337163362, 28705.765570652817, 28786.15046605817, 29017.89569257501, 29125.39622771491, 29247.55803410645, 29400.97969709397, 29584.666862443886, 29564.692318131092, 29585.631504977413], [978.0617717704338, 979.0481149238881, 987.7228074894545, 992.9573226611545, 992.5199330099713, 996.861571987674, 999.1767086872537, 1003.868778580525, 1007.6828501143773, 1009.0710526678429  …  1017.4783890363677, 1016.3278107728473, 996.9561442991411, 1022.3412904823685, 1029.1875350237092, 1035.5616112201794, 1043.793231836395, 1044.4707091994605, 1044.0559327929504, 1037.5846108257392], [0.0019383188997990075, 0.002621120124159937, 0.004965899354920866, 0.004480079952101201, 0.0024855562301080436, 0.006069650198762044, 0.003772963080869829, 0.00724344529876797, 0.006176193787172046, 0.007583610825118159  …  0.002175249580351535, 0.003873892020884284, 0.003507775978521588, 0.005274285801410983, 0.007919152335334578, 0.003215786986985325, -0.0008898159039064657, -6.108608683585981e-5, 0.006280399429866135, 0.003082085706932247], [2.3548476e6, 2.389801598396636e6, 2.4201756543978765e6, 2.433466699780693e6, 2.451970610754696e6, 2.4346702744327355e6, 2.4393346385840857e6, 2.4494917071942817e6, 2.4441372875102176e6, 2.439792255037358e6  …  2.456002026725526e6, 2.4729233045928883e6, 2.4765324533194765e6, 2.471323309399716e6, 2.452816126475881e6, 2.473954274137306e6, 2.4430754542537774e6, 2.4497939503135174e6, 2.42660352119085e6, 2.4270231230273223e6], [0.0016459319014481277, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01  …  0.00928507709711442, 0.009364248687479359, 0.008895033514543883, 0.008150650238245571, 0.006992365670445471, 0.007396151806761604, 0.0056004861685092075, 0.005454954123110451, 0.004264127210008183, 0.0040361764200513685], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086171; 518.6059091613054 258.5036962251161 … 137.13538556670355 505.4138092341077; … ; 507.7534905613495 261.29530327170164 … 142.36992722142466 527.3565695653313; 518.7628728610122 261.94238360172073 … 142.75847032242112 528.6195635426429], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086171; 518.0834390395164 258.24326637797435 … 136.9972283642248 504.90462950861695; … ; 498.12191409935895 256.33879240687605 … 139.6693119318966 517.3531422784281; 508.4097448961818 256.7147099212878 … 139.90939073590368 518.0697222329007]), BeforeIT.Data{Float64, Vector{Float64}, Matrix{Float64}}([72422.0, 72479.39752723613, 72709.03843929255, 72770.09075079935, 73133.02959059642, 73617.08253889506, 74326.07312139036, 75074.98449650162, 75818.13069969417, 76032.6938899484  …  76362.347683125, 76803.19183226915, 76871.45038636806, 77088.65248733555, 77304.24570748291, 77552.90970681203, 78001.26424954906, 78349.22426625137, 78875.31399777746, 79233.36584280927], [72422.0, 72406.37807453767, 72562.61062649895, 72550.37531634311, 72838.76283289518, 73247.00089498177, 73877.92384104028, 74547.14131070628, 75209.21651917497, 75346.07246144487  …  75520.35288798097, 75879.81385505231, 75870.7386139234, 76008.46114501725, 76144.2444345646, 76312.21870171162, 76676.07516914529, 76940.53158141581, 77379.12808895617, 77652.07847902717], [64900.92049553801, 64966.37094093014, 65184.76416072462, 65241.41167182349, 65600.39539223278, 66092.8180558363, 66755.2950863922, 67423.57793272883, 68081.59896936304, 68262.85176008657  …  68536.10345186299, 68941.01864578288, 68985.2082846305, 69177.34379598586, 69384.05735351457, 69622.1677194094, 70053.09952373143, 70370.83296944958, 70839.2281732816, 71164.52917170034], [64900.92049553801, 64900.920495538, 65053.48938872372, 65044.42765047461, 65336.437837567595, 65760.56176540205, 66352.79383486416, 66949.5308661538, 67534.81879076608, 67646.39672750444  …  67780.40323916939, 68112.16483351638, 68087.15953300687, 68208.0082914474, 68342.90373881055, 68508.35267917917, 68862.94442265148, 69105.58907510064, 69495.4787843711, 69744.27433926064], [40512.94792630534, 40459.13683924325, 40475.49435956939, 40468.81092391414, 40388.81842748489, 40266.88593623165, 40461.18974805716, 40908.69919982733, 41383.6877595197, 41607.57057677202  …  41910.59566829111, 42082.04072447606, 42217.77302808383, 42343.945195852, 42368.04892866815, 42437.98933177959, 42498.31024547843, 42680.33949460413, 42968.627541001064, 43151.883019161454], [40512.94792630534, 40418.376235134296, 40393.98127346579, 40346.623054113064, 40226.30517304192, 40064.45961303859, 40217.228883367214, 40621.07505634999, 41051.32511635771, 41231.82893085136  …  41448.47651553112, 41576.103032118335, 41668.18248096577, 41750.608024629924, 41732.28836676721, 41759.06662162549, 41776.292503653865, 41912.961354036575, 42153.5556029033, 42290.6861406018], [14866.888022051655, 14924.004826107726, 15134.837630803124, 15269.497653806742, 15463.246917019198, 15585.454310863859, 15726.89860139311, 15912.510610134137, 15969.33806445341, 15808.75697698747  …  16168.837286491414, 16168.306251717426, 16313.884168503626, 16335.225086121209, 16214.024061444083, 16346.410159512972, 16198.635671722002, 16427.247140727817, 16512.89032247692, 16458.23051585368], [14866.888022051655, 14908.969620219515, 15104.357772743731, 15223.394312773098, 15401.027157229686, 15507.104417692632, 15632.073219203961, 15800.631662029302, 15841.084356386322, 15665.994295000717  …  15990.554700219305, 15973.92034710113, 16101.510187530645, 16106.330584226162, 15970.721919650041, 16084.900383448343, 15923.431733476484, 16131.890765526314, 16199.657289704484, 16129.767984089438], [15944.236265986641, 16052.572221628048, 16122.895403517039, 15923.66265972137, 15930.902656443857, 16079.11838012724, 16269.726361324503, 16403.196595722457, 16713.845710158042, 16770.773102293555  …  16423.953824572924, 17032.253203558972, 16942.9351814326, 16972.675018768678, 16777.18583293002, 16815.66073763674, 17135.737053894434, 16977.255260985447, 17289.225055744235, 17646.359920744002], [15944.236265986641, 16036.400039214552, 16090.425708407432, 15875.584191997668, 15866.801181389288, 15998.286780210889, 16171.627997532123, 16287.867693473836, 16579.612676845245, 16619.322830108333  …  16242.858244675857, 16827.480366189204, 16722.372220663572, 16734.848360503143, 16525.43307673824, 16546.64389351215, 16844.612392685834, 16672.0099248802, 16961.26572865269, 17294.18548434835], [15944.236265986641, 15951.73844604641, 15983.529788328113, 16019.789775220015, 16058.410501011604, 16096.514086467832, 16270.486321530907, 16403.390858645776, 16569.765717655027, 16666.022355435198  …  16750.085681049142, 16835.45499286362, 16884.862457874446, 16913.161807655943, 16931.842634522152, 16981.103427838174, 17059.14391478042, 17152.25392004637, 17260.453270575246, 17343.25866244424], [15944.236265986641, 15935.667848736513, 15951.340759868055, 15971.42106997253, 15993.795970225408, 16015.595036310619, 16172.383375556186, 16288.060590557907, 16436.689826436803, 16515.518046147845  …  16565.394070725884, 16633.048191714177, 16665.05548723999, 16676.16906791568, 16677.769150858414, 16709.439832503755, 16769.320519552115, 16843.862166944866, 16933.039715504878, 16997.133321459307], [3173.2320350842083, 3167.8550770880197, 3156.7224519290185, 3170.854016405634, 3150.3037305945973, 3088.766648915199, 3120.5769286715154, 3125.3318827992703, 3167.999272256305, 3219.624005639038  …  3255.6661945951814, 3266.132867904107, 3299.55117512763, 3306.85789364648, 3287.4005359738967, 3288.790168967794, 3280.3402390155334, 3295.951240758392, 3315.7769692618945, 3341.8040136604754], [3173.2320350842083, 3164.663617834087, 3150.365168513447, 3161.2802263962544, 3137.6277937468267, 3073.239059398307, 3101.7614007399197, 3103.358050253737, 3142.5562856916263, 3190.5488444038406  …  3219.768215109914, 3226.865292052919, 3256.5976509240636, 3260.5211222574526, 3238.0709193218995, 3236.176122689883, 3224.609462000881, 3236.6911466615697, 3252.8799926699053, 3275.1104887442025], [34195.564496956766, 33285.85007184252, 32492.572897985065, 32936.728470205955, 32871.26047152986, 32488.91777500088, 33628.366665333764, 34572.17487812349, 34848.5687909453, 34662.05359894365  …  35482.56937013811, 35134.62261379317, 36262.72665902737, 36363.27817698387, 37410.02211190384, 37020.518567759165, 37052.061629781994, 36973.188814731264, 37735.00102850299, 36697.51406667071], [34195.564496956766, 33252.316203767194, 32427.136516434504, 32837.282289354305, 32738.99575756051, 32325.592203211447, 33425.60432787237, 34329.10207497969, 34568.69130634132, 34349.03419190508  …  35091.32761769789, 34712.21130528593, 35790.658845993516, 35853.74406271795, 36848.660017589944, 36428.264523845006, 36422.57199329166, 36308.423322716175, 37019.20575686965, 35965.12923537421], [33097.63671130043, 32242.166431584912, 31516.761852581698, 31828.608956848497, 31521.198881880868, 30803.29386332823, 31760.10825471785, 32721.596787305458, 33097.30962538191, 32816.46036504753  …  33623.60846636801, 33614.03096127595, 34865.8686506792, 34926.47099039001, 35465.0352274628, 35067.669089876, 34883.48035132746, 34708.80644479702, 35630.42994994743, 34720.6216796201], [33097.63671130043, 32209.684023797643, 31453.290644552137, 31732.50853189455, 31394.366436325763, 30648.44211917142, 31568.610586935145, 32491.535176126206, 32831.496936755284, 32520.107786419998  …  33252.86419014272, 33209.901195641825, 34411.985121229976, 34437.06988705967, 34932.85894618043, 34506.65672071891, 34290.83345396223, 34084.75378574317, 34954.556289173684, 34027.6903653861], [29576.14777688488, 29605.97434991661, 29670.24125627771, 29701.955118823433, 29819.668606387273, 30034.640636520504, 30350.881957641992, 30640.21058200763, 30920.750363796054, 31036.959558327373  …  31163.652033437236, 31313.40932896097, 31358.91619633499, 31415.393880957956, 31506.160919633756, 31648.409476243658, 31834.55556233276, 32024.288469052997, 32202.232259718116, 32331.661033893084], [34346.71094688275, 34381.34847608993, 34534.20920882058, 34559.80589862492, 34796.312251906566, 35066.91399541755, 35409.593420143196, 35777.13024491759, 36142.724547469734, 36204.65944830699  …  36344.60299191369, 36594.38508304227, 36588.927771601804, 36714.29810146783, 36829.86452445677, 36918.46227371681, 37159.83880609143, 37288.170586821296, 37572.78077271561, 37760.04507733169], [28335.32931213966, 28363.904560528426, 28490.01151753856, 28511.1282595762, 28706.241131228235, 28929.48199777527, 29212.185467202446, 29515.395779841292, 29817.00355164447, 29868.09856955906  …  29983.54911151448, 30189.614193534962, 30185.112023965838, 30288.539964656262, 30383.879884041326, 30456.97120290094, 30656.101872024814, 30761.972948699888, 30996.770491771083, 31151.25968719686], [978.0617717704338, 979.0481149238881, 980.3136956263394, 979.6506543750545, 984.4145339390217, 991.2634238982304, 994.8197086070219, 1006.237105803657, 1018.1240580972849, 1021.2327534523191  …  1027.848426512133, 1033.2242337796786, 1037.3643166937625, 1047.651813560052, 1048.0319094240099, 1055.295969448864, 1058.7051553072738, 1058.3739135752685, 1064.2151408479233, 1072.8230604755129], [0.0019383188997990075, 0.0015418493453080995, 0.0007216973770429735, -0.000420125514253078, 0.0005996271104748985, 0.0017885004147499828, 0.004020796209045274, 0.0048318645706937335, 0.0063694912781924184, 0.005604425561164472  …  0.0029384275564354745, 0.0005588278812349579, 0.004648499547185603, 0.006409842302107727, 0.0073868132921275365, 0.003954683510388746, 0.001083171313909892, 0.0004887152023607122, 0.0033590099765008485, 0.0024855876542349], [2.3548476e6, 2.3581470230750637e6, 2.3418622777324626e6, 2.3512230356436977e6, 2.352447245773784e6, 2.353867486159925e6, 2.3700931239938955e6, 2.382680741011273e6, 2.3841489144967566e6, 2.3714668156089247e6  …  2.380448265639544e6, 2.3625225694209677e6, 2.390282832453269e6, 2.3885815636875653e6, 2.412846221889047e6, 2.4016072342858557e6, 2.4031953839451447e6, 2.4127429119075118e6, 2.4257313651040895e6, 2.4133538227726184e6], [0.0016459319014481277, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01  …  0.009059199128835148, 0.007660653869634022, 0.008355940576275306, 0.007814410263258301, 0.008404597458797613, 0.007414972423535539, 0.00695591942872172, 0.0068429348624706255, 0.00694291187778239, 0.005984054069936234], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086171; 518.6059091613054 258.50369622511613 … 137.13538556670355 505.4138092341077; … ; 566.2522454358393 283.1498109502351 … 147.05024606891976 538.0743152661394; 565.2190011585809 283.8373745167274 … 147.66628303370973 540.4503067832098], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086171; 518.0834390395164 258.24326637797435 … 136.9972283642248 504.90462950861695; … ; 555.511006035087 277.77874190775754 … 144.26084980657046 527.8675830504989; 553.9387323627963 278.17273501898325 … 144.7192565514432 529.6643552869187]), BeforeIT.Data{Float64, Vector{Float64}, Matrix{Float64}}([72422.0, 72459.27110266413, 72755.550061389, 73210.12867414516, 73497.177213116, 74037.30161522015, 74500.04156270527, 74772.51883330026, 75224.04182692018, 75369.93387115243  …  75979.7463727962, 76449.18949067539, 76810.22967179363, 77017.82419746123, 77545.50017659663, 77794.21610022872, 78304.41838634248, 78493.20906680406, 79124.40235274249, 79777.56415576559], [72422.0, 72386.2719263553, 72609.02857942802, 72989.08462895725, 73201.445227722, 73665.10748109106, 74050.84333911739, 74246.80224720115, 74619.89892123645, 74689.29756835653  …  75141.97025769086, 75530.06756009278, 75810.31486999874, 75938.62532424211, 76381.87872099962, 76549.66467682866, 76974.07892080543, 77081.92758371071, 77623.49148667058, 78185.41604024678], [64900.92049553801, 64966.37094093014, 65257.80860623527, 65702.76225966071, 65966.52995507908, 66451.41405515335, 66869.75193722613, 67118.58935387379, 67522.47650975021, 67657.99617726367  …  68214.56712495741, 68633.5789955008, 68953.48162606564, 69157.84113626399, 69631.13655100315, 69863.09693019703, 70325.43789046635, 70562.60452285162, 71156.83520430564, 71735.78162752221], [64900.92049553801, 64900.920495538, 65126.38673094955, 65504.38527804744, 65701.09917783167, 66117.35506088515, 66466.56056777327, 66646.68662531153, 66980.18678206686, 67047.00335814568  …  67462.4122709633, 67808.42142287758, 68055.84589176561, 68188.77890935438, 68586.27534972347, 68745.42750583275, 69130.65594348518, 69293.91264051077, 69807.06112731095, 70304.12611456966], [40512.94792630534, 40305.43422053007, 40292.98239897633, 40311.27533139453, 40451.96178173772, 40756.78664530745, 40956.08694807625, 41095.15675698849, 41347.003421664514, 41424.8315164914  …  41682.000391419504, 41946.63849809272, 42157.7407667276, 42137.35669187145, 42432.38813936504, 42500.95598594292, 42753.347119722304, 42562.01801376118, 42632.7484548088, 42967.05081652091], [40512.94792630534, 40264.828464301754, 40211.836871401516, 40189.56311032207, 40289.194456183046, 40551.89753421894, 40709.142099237375, 40806.22165285409, 41014.93539950274, 41050.740115329674  …  41222.40180067921, 41442.32869945812, 41608.93171898739, 41546.91430614897, 41795.662125105766, 41821.02593561609, 42026.9964727313, 41796.767253599406, 41824.04780742736, 42109.5426974042], [14866.888022051655, 14786.286763104541, 14895.075363294907, 14920.291011122037, 14981.665003496337, 15055.309316646586, 15150.300361527261, 15234.228671898192, 15219.632186168725, 15036.264796943984  …  15362.037333085198, 15403.221393448022, 15507.62557475193, 15560.573488195701, 15673.159242804033, 15747.307594972328, 16003.534274362153, 16156.067677223926, 16057.176958774362, 16205.031087786281], [14866.888022051655, 14771.390301437868, 14865.07835943321, 14875.242033061135, 14921.382993982621, 14979.624524077066, 15058.951580151142, 15127.118642515621, 15097.399551640188, 14900.478188762168  …  15192.650771910485, 15218.033837129127, 15305.747460090053, 15342.533657155414, 15437.973134901154, 15495.382258302174, 15731.64497779375, 15865.587017514052, 15752.588353246292, 15881.621743550517], [15944.236265986641, 15994.525514279738, 15942.466576296933, 16194.601489267307, 16005.410578491874, 16247.919110681176, 16410.423153352003, 16375.015225299778, 16631.835084542934, 16719.87583520609  …  16581.960842082084, 16829.24563493865, 16959.38512756778, 16795.769176847014, 16971.861827408917, 17024.01163439067, 17351.545586630327, 18172.68409538389, 18467.842252299222, 17875.723593784733], [15944.236265986641, 15978.41181108856, 15910.360244520174, 16145.704973331314, 15941.009304498724, 16166.238929841675, 16311.476457830915, 16259.884462876787, 16498.260698870497, 16568.885196271265  …  16399.123028081664, 16626.913486732916, 16738.608021564367, 16560.421380939006, 16717.18782931972, 16751.6615938136, 17056.754483424997, 17845.94535114305, 18117.52573444665, 17518.971668170532], [15944.236265986641, 15942.285960788618, 15994.758811660933, 16064.075967275683, 16133.873451862775, 16250.480454603428, 16355.317590608238, 16430.868418602062, 16515.962968782245, 16565.733576336177  …  16677.77826986737, 16784.606230399975, 16864.69570111534, 16896.26563134856, 16984.724866427492, 17047.612694671087, 17145.92823216384, 18231.055296579154, 18511.54130143133, 17482.976747090186], [15944.236265986641, 15926.224886395903, 15962.547169212834, 16015.573548302827, 16068.9552793705, 16168.787397589853, 16256.703154242648, 16315.344959095119, 16383.319180761879, 16416.134935666352  …  16493.883943358793, 16582.810766179424, 16645.151261118626, 16659.50964634159, 16729.85784994068, 16774.885084466885, 16854.63042968257, 17903.26705778494, 18160.395856272782, 17134.06300453482], [3173.2320350842083, 3158.402591830225, 3150.21528452308, 3136.635640963966, 3125.1652678848495, 3141.5791399931186, 3170.1700288170377, 3194.747250094194, 3202.8252573588397, 3221.9591487353127  …  3228.1838796841275, 3253.4177048484175, 3279.340880165963, 3275.3001883423667, 3276.4054975198915, 3294.6219245401476, 3308.2454338881166, 2931.2486727862934, 3155.5058221444365, 3379.586434232676], [3173.2320350842083, 3155.2206554934755, 3143.871105809637, 3127.1651668244517, 3112.590481146083, 3125.7860559355063, 3151.055479139666, 3172.2853664506406, 3177.1025746847276, 3192.8628997389483  …  3192.5889286783977, 3214.3029989660618, 3236.650453380097, 3229.4056138130813, 3227.2408686830413, 3241.9145818699885, 3252.040566358545, 2878.5458081254196, 3095.649029099786, 3312.13887263515], [34195.564496956766, 34055.97727165257, 34707.08519638685, 33409.2282359178, 33602.8688896013, 34275.59266131269, 35200.00101486158, 34806.67710811169, 35236.68991625203, 35273.424405278936  …  36592.44539368394, 37440.44941034276, 37925.30822893142, 38078.64963282217, 38471.772221198364, 38813.00743903618, 37204.22568484482, 35755.30383111239, 36660.11763624192, 37912.7069856749], [34195.564496956766, 34021.66753804088, 34637.18903653057, 33308.355431981894, 33467.66038896945, 34103.285266877385, 34987.762503385544, 34561.95554799515, 34953.69533479014, 34954.88394834818  …  36188.96580593028, 36990.31595080995, 37431.59694564558, 37545.07917422171, 37894.47786511735, 38192.0771684303, 36572.150883278686, 35112.43550123837, 35964.711828733765, 37156.07013394551], [33097.63671130043, 32682.952666902176, 33082.059473565656, 31625.267393556238, 31544.729040210772, 32298.306118727312, 33216.76991511143, 32738.558928997503, 33211.118781707475, 33084.462682767815  …  34238.697587474235, 35170.365446146345, 35739.83002618486, 35554.524792274904, 36003.6812541793, 36291.06655411303, 35008.2342792168, 34152.86455067691, 34693.48294938168, 35182.94832800117], [33097.63671130043, 32650.02618851335, 33015.435932457134, 31529.78091973877, 31417.801915911445, 32135.93877392358, 33016.48930148734, 32508.378059040097, 32944.39206356658, 32785.68988035457  …  33861.1711489105, 34747.524414037005, 35274.56927628844, 35056.32319422287, 35463.422233444006, 35710.48227933309, 34413.46789642307, 33538.80753978383, 34035.382237183345, 34480.7902028239], [29576.14777688488, 29605.974349916607, 29751.201416543776, 29928.94603434612, 30092.22072341726, 30316.962308333765, 30486.32594167422, 30618.162439192307, 30781.627863588703, 30874.380408348494  …  31132.471118823058, 31318.57770037606, 31449.67344419129, 31537.682969932488, 31736.6502283989, 31846.928597587917, 32024.25184525956, 32110.80247239574, 32362.77289139234, 32651.56154998373], [34346.71094688275, 34381.34847608993, 34523.72761296613, 34783.07459507688, 34890.543196891755, 35148.51448777354, 35388.40968359577, 35499.28496889494, 35734.46036921295, 35774.80247666972  …  36064.615939288946, 36289.77657375165, 36469.60839155513, 36577.98810642451, 36845.3562579234, 36963.84009107673, 37239.668010573674, 37388.9810983791, 37721.7734144405, 38003.58699236192], [28335.32931213966, 28363.904560528426, 28481.364416780885, 28695.32033691491, 28783.979720570274, 28996.800723766697, 29194.70932073644, 29286.179148120736, 29480.194010982876, 29513.475418966926  …  29752.565558197635, 29938.31844543909, 30086.67599228375, 30176.087025448734, 30396.660245167357, 30494.40696786684, 30721.959321992257, 30845.13954498718, 31119.686353347737, 31352.1767524251], [978.0617717704338, 979.0481149238881, 982.8795767254063, 990.7416302376344, 983.7660347701466, 985.9372590460716, 995.0163119562807, 1001.1419457864904, 1006.3882769485995, 1008.8132922454366  …  1017.4800668453491, 1025.2247213731632, 1034.1997903192441, 1042.1700599070068, 1049.130064680843, 1052.3282415323272, 1061.518034633192, 1062.820952076828, 1072.288898472838, 1080.6330851765724], [0.0019383188997990075, 0.006196073189277396, 0.0034987700599768967, 0.008190069470197292, 0.004466541821418923, 0.0026881696447575987, 0.0020457034722969336, 0.007989636708105818, 0.007131090102101334, 0.0007972132725213577  …  0.0022767544399691086, 0.006592652977294167, 0.007332468176443507, 0.0017514053001879137, 0.0019934847829381486, 0.0005726710603095597, -0.00025183846593623826, 0.003574077360191774, 0.007168962914612109, 0.0014314632340020061], [2.3548476e6, 2.3580880970517313e6, 2.368638795300123e6, 2.3620734227686822e6, 2.3698764132858114e6, 2.386360651550669e6, 2.412959460682846e6, 2.389220971412373e6, 2.3858061103474563e6, 2.404238266984085e6  …  2.4330537671019584e6, 2.4472329699083795e6, 2.467985037038686e6, 2.4765956868612315e6, 2.4569203245948483e6, 2.4655968626314895e6, 2.4274066339771645e6, 2.40788073173677e6, 2.416964445034668e6, 2.4403535996444756e6], [0.0016459319014481277, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01  …  0.009773170068122165, 0.009774135999938175, 0.010052865071972873, 0.009691982996879166, 0.008238779272937074, 0.007989333263447656, 0.005868557846243355, 0.0047249072291400615, 0.0049106832412985245, 0.005531815917103812], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086171; 518.6059091613054 258.5036962251161 … 137.13538556670355 505.4138092341077; … ; 564.053771555709 287.2391487194285 … 147.33783686711791 536.8278345490568; 569.7105330535826 287.9987453948645 … 148.47646094681494 538.7781932549782], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086171; 518.0834390395164 258.24326637797435 … 136.9972283642248 504.90462950861695; … ; 553.3542350081519 281.7905090247833 … 144.54298529463432 526.6447468273635; 558.3406252205809 282.25105599616427 … 145.51326546702057 528.0256126998906])])

Finally, we can plot baseline and shocked simulations

Te = T + 1
+data_vec_shocked = Bit.run_n_sims(model, 4)
BeforeIT.DataVector(BeforeIT.Data[BeforeIT.Data{Float64, Vector{Float64}, Matrix{Float64}}([72421.99999999999, 72489.76522055906, 72527.84084339692, 72358.73838111435, 72422.98511871799, 72560.02232652462, 72743.89365887582, 72853.61299495425, 73167.23957771032, 73071.23307855397  …  75395.5924001972, 75784.15786519754, 76076.90675451639, 76334.75468528284, 77138.03784370111, 77652.0506924154, 77570.27931242945, 77470.02355714855, 77729.33214994115, 78101.15737574776], [72421.99999999999, 72416.7353229158, 72381.77794214968, 72140.26494682158, 72131.57538041979, 72195.2546473543, 72305.28413433074, 72341.38800499444, 72579.61536016314, 72411.35544076416  …  74564.257346943, 74873.03137780548, 75086.53834312613, 75265.12720486247, 75980.53062957332, 76409.77363039539, 76252.41237658306, 76077.13860517836, 76254.88437191861, 76542.4658833271], [64900.92049553802, 64966.37094093033, 65006.35040679171, 64844.934239615424, 64896.67529291769, 65017.48160938105, 65179.29725993228, 65282.40309387096, 65574.0623733604, 65669.87896608586  …  67767.93601260765, 68071.18169720116, 68308.13668349921, 68576.26257428124, 69341.41456153634, 69778.33466524775, 69636.76682343057, 69526.54265275001, 69765.10238177358, 70105.79980968738], [64900.92049553802, 64900.920495538005, 64875.43493999305, 64649.147306388375, 64635.549310157774, 64690.63116044613, 64786.29849201613, 64823.41037004234, 65047.42084204213, 65076.840053501764  …  67020.70585099651, 67252.78563106398, 67418.90204320871, 67615.34961587338, 68300.90083009511, 68662.02126711285, 68453.68493524742, 68276.47881415974, 68441.72808605865, 68706.6744009948], [40512.94792630534, 40522.94571004111, 40536.530338537465, 40486.32392480483, 40567.417347960414, 40663.805326557725, 40774.395917201444, 40803.710420139716, 40926.217789377726, 39887.34217644193  …  40801.53744837455, 41306.66322834109, 41604.90956026488, 41553.25121786522, 41805.42757599962, 42154.42118913715, 42573.80982593228, 42614.17015957912, 42724.62608517559, 42861.009679024195], [40512.94792630534, 40482.12082161163, 40454.89433284793, 40364.08317783174, 40404.18546165492, 40459.383643382826, 40528.54657497727, 40516.824440144104, 40597.52920081745, 39527.135238305185  …  40351.647113572806, 40810.04762907468, 41063.29726364256, 40970.993508559804, 41178.10951915503, 41480.035000504125, 41850.50939695448, 41847.98172138678, 41914.18261093335, 42005.61785913295], [14866.888022051655, 14775.769533717319, 14903.406030000264, 14851.761343115526, 14857.757986215473, 14981.117624565872, 15020.15059527929, 15056.10636478871, 14961.577612716746, 14960.534240743113  …  15588.805239799989, 15824.674831547078, 15860.354948825547, 15967.775296359376, 16007.505697120609, 16022.391840238868, 16021.706954147161, 16071.419272054995, 16105.750184148013, 16317.884973892622], [14866.888022051655, 14760.883667645532, 14873.392249114286, 14806.919277339925, 14797.974543716326, 14905.80580226932, 14929.586552308407, 14950.24869192255, 14841.417478363088, 14825.431525503016  …  15416.918265752354, 15634.420287595613, 15653.885006699218, 15744.029620767935, 15767.302499806305, 15766.065707389293, 15749.508915957205, 15782.460562182712, 15800.240193060048, 15992.22336607881], [15944.236265986641, 16047.860335078727, 16596.732751603402, 15947.101106447082, 15836.324447835817, 16029.980800646677, 15962.976851445252, 15738.287856346566, 16144.34733316871, 17863.794312030204  …  17297.032139635983, 16982.807340129493, 16619.545142420113, 17537.72507142405, 18449.088017269318, 18102.862537999168, 17484.803565913782, 16908.329715829415, 16890.66589858587, 17157.75998257947], [15944.236265986641, 16031.692899660775, 16563.30880145221, 15898.951870795849, 15772.603528912281, 15949.396221062583, 15866.728034740847, 15627.633847467698, 16014.688082331626, 17702.47339412653  …  17106.30972898606, 16778.628973123137, 16403.192069945195, 17291.98074752082, 18172.247264366877, 17813.253046848215, 17187.748499159712, 16604.323637830017, 16570.266840538534, 16815.336702151275], [15944.236265986641, 15955.529193875194, 15969.267663238146, 15938.801934784246, 15964.249841929108, 15995.154556319909, 16027.051801450823, 16041.790424148232, 16108.157451354851, 17723.21075840783  …  16514.506938291433, 16647.327724435596, 16728.41188054685, 18532.821608285765, 18536.48069329075, 17013.360371245042, 17050.083704883935, 17045.144466852726, 17091.197059813283, 17157.989255896493], [15944.236265986641, 15939.454777572022, 15937.107357091409, 15890.677756901783, 15900.014187172006, 15914.745052320275, 15930.416644643577, 15929.002525221169, 15978.788850419374, 17563.15939542157  …  16332.412891836588, 16447.182711793124, 16510.641581963624, 18273.133667141778, 18258.328555554253, 16741.18072951482, 16760.414236535402, 16738.67850567326, 16766.994125971338, 16815.561399782346], [3173.2320350842083, 3171.6458249168054, 3174.456227649022, 3174.0199221238727, 3177.947989542563, 3186.5346910995854, 3189.247906571848, 3174.9143960837037, 3184.31913430281, 2561.581170094635  …  3219.6198408455284, 3242.330305150604, 3256.558549387151, 3169.450432737128, 3101.103545873016, 3293.8979282739037, 3327.183644265731, 3334.188921725441, 3338.575728947117, 3343.4139849074645], [3173.2320350842083, 3168.450546669597, 3168.0632304068495, 3164.4365732649208, 3165.1608199659436, 3170.51561025315, 3170.01832677347, 3152.591954851177, 3158.745078885182, 2538.4485355363586  …  3184.1193195731375, 3203.3488992062175, 3214.1647027555714, 3125.0390595079457, 3054.5694386226005, 3241.20216809188, 3270.6570292640486, 3274.241326993251, 3275.246282660222, 3276.6883292447264], [34195.564496956766, 34287.6051934052, 32958.992596245254, 32632.97183515475, 33188.06694950641, 32950.91012331123, 32563.881543828647, 32998.79164909459, 32763.392204847292, 31692.691792565118  …  32276.673231504003, 31854.489738511795, 33097.83045134575, 32850.991956319966, 32057.139753066498, 33939.95890011742, 33780.14236099916, 35150.78069501319, 35062.058675812026, 34821.689729601596], [34195.564496956766, 34253.062105976365, 32892.61689796428, 32534.44278963088, 33054.52749530515, 32785.26206220483, 32367.53752259355, 32766.781114183806, 32500.261289704365, 31406.487527026107  …  31920.78067856331, 31471.514323059626, 32666.9632254958, 32390.67314216484, 31576.10119458433, 33396.987632114084, 33206.24043489625, 34518.781487681474, 34396.96645029646, 34126.741365749374], [33097.63671130043, 33144.41555168258, 32467.820872988894, 31559.41982840696, 32026.581612799455, 32065.791548556335, 31577.5112488781, 31743.283295414643, 31628.295362399407, 31333.129443225964  …  30568.455659116575, 30184.47727333129, 31105.733348339363, 31574.988856684995, 31181.123199754427, 32567.583775076735, 32290.183394562435, 33274.67628532763, 33053.768693779726, 33057.18698934967], [33097.63671130043, 33111.02417197783, 32402.43433922839, 31464.132168775843, 31897.71564916826, 31904.593081564606, 31387.114550288698, 31520.100088723022, 31374.280691052656, 31050.17224419622  …  30231.398439930843, 29821.57983504696, 30700.799222656147, 31132.549814150272, 30713.229848338702, 32046.567756459917, 31741.59487038408, 32676.408803902104, 32426.77172290908, 32397.45340978486], [29576.14777688487, 29605.974349916596, 29641.375830569803, 29545.4280705391, 29589.489520792224, 29646.8062585247, 29696.76428225843, 29761.491552504343, 29890.724933560254, 29966.01522874862  …  30745.765013897355, 30935.954450837082, 31062.235382137704, 31221.248878084287, 31506.878259099467, 31701.031185727606, 31688.352375413426, 31657.827019235563, 31761.304284734433, 31892.83050420202], [34346.71094688275, 34381.34847608994, 34385.81646401016, 34323.38529480922, 34334.31082294355, 34396.62578937659, 34506.115193960206, 34545.78365312706, 34704.724683850196, 34726.33330976583  …  36005.5409288731, 36117.65513006635, 36231.801140442316, 36338.191997354494, 36802.840229772904, 37037.49599403193, 36908.0227427732, 36831.335724186894, 36960.72767819762, 37165.452155029794], [28335.329312139664, 28363.904560528434, 28367.590558564112, 28316.086129467927, 28325.09946521569, 28376.508029421027, 28466.834533751087, 28499.560195766768, 28630.683273423776, 28648.509944869827  …  29703.82989099388, 29796.321798480767, 29890.489906707255, 29978.260173009297, 30361.5853973733, 30555.171571186398, 30448.358804828556, 30385.093593525802, 30491.83929132799, 30660.7327693168], [978.0617717704338, 979.0481149238876, 979.1581122117136, 976.1208742670821, 972.8749491819472, 974.0495614797036, 976.4177837137005, 975.1278882395455, 978.6127559499785, 977.5304275713924  …  1016.6300698372785, 1017.5721162977318, 1014.1001609192111, 1016.8216988425322, 1031.6960726639475, 1039.8074854881866, 1040.3917052439201, 1037.3799093275543, 1043.0704188414793, 1047.517150455552], [0.0019383188997990075, 0.0015581093051542094, 0.0030703690128996985, 0.002473641945619276, 1.5008345744638163e-5, 0.0005133349036647861, 0.003499790191127339, 0.0023270462239219913, -0.00026040673500060674, -0.001884656744889801  …  0.006212131513863017, 0.010239984377443667, 0.005612223104597636, 0.0006123540237183978, 0.0009104750992789956, 0.003194865680629544, 0.005546338632172132, 0.004602676118815596, 0.0016664532637209462, 0.002864115033124337], [2.3548476e6, 2.3660688069104594e6, 2.3350906070204005e6, 2.322912194148952e6, 2.3224408403192107e6, 2.307256803238991e6, 2.291629220741753e6, 2.303992717660665e6, 2.3078202764721103e6, 2.321437247868343e6  …  2.3187680318717044e6, 2.3022038626675378e6, 2.3245852675286005e6, 2.3323859298881176e6, 2.317763253940962e6, 2.320872701922695e6, 2.3152818703333735e6, 2.3548688281960837e6, 2.3430347074628915e6, 2.337604478381718e6], [0.0016459319014481277, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01  …  0.008692988394302154, 0.007581770422370501, 0.008105486283876516, 0.007849532572802489, 0.006672642252565649, 0.006383918462218903, 0.005801631816985635, 0.0071595105643684435, 0.006173414907871336, 0.005554143954698367], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086172; 518.6059091613057 258.5036962251161 … 137.13538556670352 505.4138092341075; … ; 563.5505672430864 277.3685207261015 … 145.698016004242 534.8201531954687; 567.3658965864092 279.38334539081217 … 146.13034667042115 536.7259455955689], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086172; 518.0834390395163 258.24326637797435 … 136.99722836422478 504.904629508617; … ; 552.8605759786305 272.1071169835727 … 142.93427019531958 524.6751491833473; 556.0427814647702 273.8075964747033 … 143.2139733951336 526.0143224484705]), BeforeIT.Data{Float64, Vector{Float64}, Matrix{Float64}}([72421.99999999999, 72463.3876060007, 72539.44742632456, 72840.17992159618, 72960.67526609715, 72849.21080360557, 72990.50602198442, 73211.10778489332, 73714.28245012989, 73771.80730656478  …  73962.30058261978, 74448.44268857315, 74952.79724865186, 75657.00128897387, 76009.60903251347, 76572.81275601308, 77073.54191346835, 77184.97666308336, 77443.15027608887, 77401.66743278982], [72421.99999999999, 72390.38428251568, 72393.36115072676, 72620.25286623275, 72667.10201375886, 72482.98934029565, 72550.4095474577, 72696.36929206569, 73122.26479582413, 73105.60305777879  …  73146.76944696261, 73553.37503869129, 73977.06248356793, 74596.87071020194, 74869.03463812116, 75347.80133631515, 75764.11421233494, 75797.21675833919, 75974.13108231271, 75856.93590024346], [64900.92049553802, 64966.37094093033, 65025.19973648005, 65302.37246206247, 65408.74994822088, 65295.94363797318, 65437.069200788945, 65628.02531465467, 66087.13416078122, 66122.761670489  …  66298.42177499847, 66773.22743133907, 67256.44058835803, 67902.62849416799, 68199.29642533108, 68717.38055445078, 69179.73653143471, 69261.28569563924, 69485.004308808, 69427.98512619211], [64900.92049553802, 64900.920495538005, 64894.24630925475, 65105.2043812136, 65145.56352096196, 64967.6933280039, 65042.51619618376, 65166.6025625639, 65556.3720228994, 65525.63295188131  …  65567.39493055835, 65970.43621645757, 66380.89691731724, 66951.15471620651, 67175.92093099022, 67618.04029410073, 68004.4192808914, 68015.99108786859, 68166.94319371448, 68042.38709681226], [40512.94792630534, 40359.45966056285, 40473.70578884293, 40573.962001322965, 40695.035852842964, 40768.56007146569, 40735.8206731669, 40895.544405999695, 41107.59552881419, 41266.722311404534  …  41363.51594327973, 41337.99147219282, 41389.944583641045, 41687.16628483121, 42036.29414968641, 42229.16865169359, 42412.75699239496, 42644.756830792285, 42835.55897401639, 42936.773696014134], [40512.94792630534, 40318.79947634261, 40392.19630471935, 40451.45664786309, 40531.29046553986, 40563.611773993274, 40490.203920492044, 40608.0127522954, 40777.450250718524, 40894.05873244297  …  40907.429060282964, 40840.99922438143, 40851.13069893467, 41103.032113928755, 41405.51178739631, 41553.586653582744, 41692.192742867795, 41878.01845454495, 42023.011213696394, 42079.869827739785], [14866.888022051655, 14717.471256503433, 14888.99062837369, 14826.697438533618, 14447.659696271885, 14444.31879822341, 14406.792407293638, 14783.63412875672, 14732.972440054134, 14568.005372418385  …  14855.388381179006, 14932.43387720953, 15042.605465036024, 14969.549522469291, 15260.175658021737, 15367.931114907613, 15316.307653670636, 15466.677054703838, 15374.85089743312, 15616.986116647588], [14866.888022051655, 14702.644123098313, 14859.00587848269, 14781.93104844602, 14389.526374037096, 14371.705526117268, 14319.92660935303, 14679.692175408436, 14614.648290445615, 14436.447431386649  …  14691.588287594866, 14752.906434931127, 14846.780977512424, 14759.791312008432, 15031.186641619579, 15122.07504099169, 15056.093875727038, 15188.591406380889, 15083.205335633833, 15305.312586892274], [15944.236265986641, 16134.541779080366, 15815.295080391168, 16110.6244481337, 16422.83234208192, 16068.08733352447, 16199.542996561293, 15736.223449464793, 16485.44865121638, 16228.141905052022  …  15931.030639812336, 16238.282770116888, 16403.94141270234, 16801.685814194396, 16511.22804085046, 16730.98533677915, 17145.746885101453, 16904.782192131184, 17427.34114283976, 16842.26310979837], [15944.236265986641, 16118.287016341601, 15783.444857681376, 16061.981484885157, 16356.75148022465, 15987.311187963498, 16101.867803576826, 15625.583955182357, 16353.049931235963, 16081.59192231783  …  15755.37018296429, 16043.05556223606, 16190.395067424857, 16566.255112434057, 16263.466157016655, 16463.323129232216, 16854.452163584963, 16600.839897413953, 17096.761891556096, 16506.136308295805], [15944.236265986641, 15945.945383377355, 15980.154567169273, 16017.119305497297, 16060.013591622162, 16061.473049015933, 16077.330867454675, 16114.721625270424, 16197.80123344527, 16228.895499523927  …  16296.733003380512, 16349.736243489975, 16466.662673735365, 16566.00334496423, 16686.816681257762, 16792.545403631048, 16889.935352571614, 16966.653979478193, 17037.855081611793, 17051.96374454763], [15944.236265986641, 15929.880622295132, 15947.972336024417, 15968.758663224671, 15995.392610449839, 15980.730154233172, 15980.392552868449, 16001.420955840567, 16067.712681099614, 16082.338711373719  …  16117.040199491825, 16153.169069387146, 16252.29982370894, 16333.875102834254, 16436.4199738833, 16523.89835848736, 16602.986697145356, 16661.59925084665, 16714.663991806745, 16711.65187580251], [3173.2320350842083, 3162.0620144189675, 3167.9607515023936, 3156.94375316316, 3176.605272369015, 3186.4403255473467, 3176.2661783395097, 3185.2207545464216, 3193.208813180318, 3208.1846666383613  …  3221.661428906697, 3193.697432659384, 3213.1165015266224, 3188.184239961731, 3238.4428134313016, 3259.0955119810037, 3267.834397653274, 3309.166846555178, 3332.2822297848857, 3355.048199873449], [3173.2320350842083, 3158.876391392708, 3161.5808354174687, 3147.4119625452836, 3163.8235055089444, 3170.4217190875256, 3157.114871910358, 3162.8258505472086, 3167.563362550494, 3179.212809585671  …  3186.138396454721, 3155.3007227719518, 3171.2881830396705, 3143.510362515377, 3189.847839746806, 3206.9565206553975, 3212.3160864822626, 3249.669140313665, 3269.072164889774, 3288.090356206092], [34195.564496956766, 33131.41646252907, 33732.66532531531, 34421.12408894672, 34526.404955544145, 34920.07609205433, 36057.56192641207, 36796.52612850033, 36098.52153616142, 36193.40683791794  …  35637.534319462065, 35908.70017670171, 36043.255813718715, 36780.127370170194, 37843.942824358775, 37710.00055543694, 37159.52402281961, 36481.80887923206, 36532.203475184186, 37059.28809380485], [34195.564496956766, 33098.03817877169, 33664.73153731169, 34317.1960581356, 34387.48040533432, 34744.52880438639, 35840.15274885321, 36537.81417926537, 35808.60537156734, 35866.55838057625  …  35244.58387570043, 35476.9824037468, 35574.04506995436, 36264.752229047255, 37276.069463112486, 37106.71618263458, 36528.2086724619, 35825.87823308918, 35839.22407152282, 36319.683214595636], [33097.63671130043, 31879.50155267417, 32371.209396597646, 33092.22805533997, 33131.25758064284, 33351.83149166171, 34409.21198144885, 35000.82032782731, 34710.255706115284, 34484.46912022751  …  33825.16870111276, 33968.96560764711, 33926.95002644559, 34581.52770269043, 35642.03164040306, 35465.27290280369, 34960.79364051765, 34313.04829377511, 34726.8042133839, 35053.64358347434], [33097.63671130043, 31847.384512037763, 32306.017427467392, 32992.312373096225, 32997.94671137617, 33184.16795216411, 34201.74153481683, 34754.73377008509, 34431.48904814244, 34173.05340894429  …  33452.20195957937, 33560.56858660344, 33485.289330257714, 34096.9600572158, 35107.19941102303, 34897.89967012554, 34366.83324230606, 33696.111233088945, 34068.071430095784, 34354.066037279306], [29576.14777688487, 29605.974349916592, 29670.006089902414, 29763.99967640111, 29836.192594954053, 29852.91985488135, 29920.705917353782, 30010.838891047126, 30163.652560423965, 30199.159532341007  …  30328.985695751522, 30500.397763120218, 30723.18474978344, 30986.16098272589, 31183.68085826091, 31364.3738451995, 31547.22286578585, 31647.22413478471, 31734.994722247702, 31729.690824203175], [34346.71094688275, 34381.34847608994, 34381.955202313795, 34560.69391387551, 34591.47473473946, 34465.52460010699, 34536.626297700466, 34630.75654568864, 34926.008648863724, 34925.43859312051  …  34977.107661070026, 35271.49876246237, 35527.19532935798, 35902.72326759451, 35997.83168243471, 36322.608696988755, 36593.22892229233, 36576.96253387891, 36713.12008448611, 36660.88232810106], [28335.329312139664, 28363.904560528434, 28364.405097170264, 28511.860853873175, 28537.25439729068, 28433.348129606453, 28492.005566095184, 28569.661082488088, 28813.237988192574, 28812.7677039422  …  28855.393621103965, 29098.260218066214, 29309.204620811954, 29619.007437515334, 29697.469921420136, 29965.404271076914, 30188.660384722294, 30175.240949215753, 30287.568124902413, 30244.473051490964], [978.0617717704338, 979.0481149238876, 973.2384442638036, 977.678871785841, 981.082618527373, 977.4991829848116, 979.7369857347322, 986.4298779190043, 997.4729514936321, 998.163545027462  …  992.328418176926, 1001.3309057565053, 1006.0605092166574, 1013.7442438476246, 1017.7838846354896, 1030.3980122625212, 1039.2847433565114, 1037.0990269756155, 1036.8895020741963, 1037.411973887874], [0.0019383188997990075, 0.001799197660009355, 0.0028763365011821307, 0.0035124968511286436, 0.001951560026396848, 0.0018135481093233263, 0.009960413178458749, 0.008039622201259977, 0.004129435998799336, 0.004309974481373047  …  0.005380917722250578, 0.008612608252720255, 0.0033208127825663514, 0.0038621805628207273, -0.0011115009751843097, -0.002287352335764159, 0.0023647863098357202, 0.0011888736006191447, 0.0034910076234824228, 0.007650200205054691], [2.3548476e6, 2.3368316625723946e6, 2.353654276229023e6, 2.3663040428757155e6, 2.3732418627446927e6, 2.382706917448953e6, 2.4097414738791906e6, 2.4333265092071067e6, 2.421953985359258e6, 2.415238292604962e6  …  2.395156013927821e6, 2.424909699596257e6, 2.4277739764819457e6, 2.4485019165376616e6, 2.462377980216443e6, 2.4417236862669326e6, 2.4384098667016216e6, 2.423493484828977e6, 2.41578949174936e6, 2.4287461317505958e6], [0.0016459319014481277, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01  …  0.008049161321134955, 0.008872769475346317, 0.008408278269482762, 0.008714197537189942, 0.008600973251511504, 0.0070866881781067, 0.006482815030073435, 0.005428461151354574, 0.004794012555129908, 0.005142189061587166], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086172; 518.6059091613057 258.5036962251161 … 137.13538556670352 505.41380923410753; … ; 563.6240827857154 280.3507849614023 … 145.85860990878393 533.5121547631011; 561.840351935293 281.58640799232427 … 146.19819248233495 534.5987459743359], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086172; 518.0834390395163 258.24326637797435 … 136.99722836422478 504.904629508617; … ; 552.9326970048563 275.0328106456587 … 143.09181779392765 523.3919621745272; 550.6275119968639 275.9666918028777 … 143.2804651849889 523.9295760771448]), BeforeIT.Data{Float64, Vector{Float64}, Matrix{Float64}}([72421.99999999999, 72480.78395776101, 72783.60033337321, 73357.64874126662, 73617.66292866273, 74094.4230692604, 74538.35064146243, 74969.74091608783, 75256.69303837388, 75442.25264624116  …  76234.84280314826, 76465.0235943186, 76617.43537094716, 76933.12563232824, 77084.49705612223, 77201.06808382836, 77359.90205523344, 77638.13072350976, 78062.10535033346, 78267.89652582994], [72421.99999999999, 72407.76310830131, 72637.02236132427, 73136.15928732218, 73321.4461426107, 73721.94177893212, 74088.92143316964, 74442.63768524726, 74652.28790272685, 74760.96326096088  …  75394.25391613237, 75545.71129583298, 75620.03036343321, 75855.11358302963, 75927.7932568803, 75966.00583899634, 76045.60928766096, 76242.223261263, 76581.3451971456, 76705.87736320075], [64900.92049553802, 64966.37094093033, 65268.94218841137, 65791.38639133463, 66038.3287113643, 66480.71175427322, 66897.8114939974, 67298.4256492332, 67550.50781545024, 67721.70271595815  …  68422.71972433175, 68622.22845231649, 68754.95289393897, 69039.75190546756, 69165.2105863789, 69266.5287993414, 69394.80090155212, 69654.86822206635, 70053.42206803356, 70247.38389418824], [64900.92049553802, 64900.920495538005, 65137.49789134532, 65592.74182602883, 65772.6090360999, 66146.50547706087, 66494.4509393631, 66825.25851330967, 67007.99296141055, 67110.13458808373  …  67668.26971558457, 67797.20734331377, 67859.9016046889, 68072.34438337664, 68127.3409119827, 68158.40326851656, 68215.8298518354, 68402.49713292634, 68724.57863590658, 68845.43284352882], [40512.94792630534, 40442.997292270586, 40368.437884792686, 40590.75208346007, 40627.18370485877, 40772.388499133485, 40877.37346741607, 41040.70711886122, 41285.82193745637, 41393.442957750616  …  41947.349788863416, 42102.492244761124, 42203.35999812798, 42352.990347852174, 42511.468023113346, 42542.242841118845, 42700.34211807148, 42756.620673334524, 42856.08970330271, 42938.09675364337], [40512.94792630534, 40402.25294796685, 40287.140398369476, 40468.19603554379, 40463.71133552997, 40567.42095570952, 40630.90322174454, 40752.154843583325, 40954.24527894329, 41019.635014348365  …  41484.82537383528, 41596.30867091102, 41653.957079689746, 41759.52643300994, 41873.55536295959, 41861.65228391973, 41974.89199045135, 41987.87102284494, 42043.15249555903, 42081.16648065609], [14866.888022051655, 14888.151117145451, 15090.626753302142, 15422.283403702128, 15480.075735429162, 15704.7356714531, 15855.840844884531, 15743.337829714488, 15452.263481012124, 15532.621204381778  …  15508.373183977152, 15503.219885670347, 15672.3427900323, 15709.824351501607, 15927.632546119381, 16117.493288070791, 16195.2765539933, 16379.24724033908, 16402.76967768641, 16202.806718849964], [14866.888022051655, 14873.152032117721, 15060.235930969719, 15375.718755185233, 15417.788261203927, 15625.786136996243, 15760.238005052315, 15632.648315080243, 15328.162526954344, 15392.352196220692  …  15337.37307858165, 15316.830082371012, 15468.320388309063, 15489.69316868422, 15688.627898198905, 15859.64572280377, 15920.129684901467, 16084.75388719281, 16091.625523533356, 15879.441767105423], [15944.236265986641, 15953.059850871365, 15962.830733013823, 16085.376826733627, 16073.645054171799, 16224.191785157345, 16286.533731102578, 16546.576187727875, 16749.57490149718, 16468.439964078214  …  16722.12595946586, 16836.133181150453, 16620.978460910148, 17062.11255552064, 17075.195309930805, 17080.793887332962, 16895.705067569485, 16728.469227697125, 16890.696808075274, 17178.822117875177], [15944.236265986641, 15936.987922310653, 15930.683390119444, 16036.810093871049, 16008.96922382519, 16142.63088434542, 16188.3340272238, 16430.23920081388, 16615.054918202037, 16319.719943849432  …  16537.74264165534, 16633.7182263799, 16404.606729509425, 16823.03266931867, 16818.97072467582, 16807.535444598783, 16608.658388561435, 16427.69698074455, 16570.297163705858, 16835.97849321402], [15944.236265986641, 15950.504934520899, 15962.529593204625, 16051.025457838849, 16110.901053023324, 16204.037674512281, 16295.818734771288, 16392.522618381285, 16481.22954682377, 16539.598288775363  …  16721.366210202712, 16778.19156518858, 16825.52203786155, 16873.865477509928, 16910.28143707082, 16953.077190051205, 16960.040771582168, 16999.49751266121, 17066.2926807725, 17134.764869747243], [15944.236265986641, 15934.435579913614, 15930.382856771896, 16002.562442394552, 16046.075315007796, 16122.578090760771, 16197.563046935098, 16277.26876358343, 16348.864711515385, 16390.23566563389  …  16536.99126962187, 16576.473222249733, 16606.48756022143, 16637.423370764758, 16656.531493417842, 16681.861958308302, 16671.901072181972, 16693.852268356233, 16742.562158121138, 16792.800510645575], [3173.2320350842083, 3166.621565562511, 3126.7330346700555, 3129.843250664462, 3139.5376861215977, 3155.883205175108, 3162.9406724970595, 3166.17603173595, 3190.3402394180825, 3206.8124206743655  …  3248.6605544466506, 3269.370224621747, 3292.2259869762042, 3289.736258659719, 3310.589546443077, 3330.2347962447698, 3330.2832581208463, 3327.1479633635017, 3312.9712440479357, 3333.9454964460106], [3173.2320350842083, 3163.431349011189, 3120.4361465625584, 3120.393284854265, 3126.9050688110838, 3140.018212916648, 3143.8697122452663, 3143.9150288920705, 3164.717827014412, 3177.8529558365985  …  3212.8398213101486, 3230.0637271603273, 3249.3678219987464, 3243.6394012046067, 3260.9119633706578, 3276.957719057165, 3273.7039827620088, 3267.3269626931187, 3250.127489260294, 3267.4088066438044], [34195.564496956766, 34629.71027851654, 35382.22137760085, 35388.30996734355, 35869.47898662506, 35526.37361030915, 34754.97759370137, 34885.50607847306, 35614.47472476727, 36207.33444215493  …  37276.86555631227, 37788.93786593507, 37819.88541795748, 38548.95486189355, 37621.844189121875, 37621.445557034, 38094.05293140912, 38227.848075431626, 38260.27866321547, 38410.64474757816], [34195.564496956766, 34594.82253692484, 35310.96556952928, 35281.46170291336, 35725.150283972886, 35347.778394436, 34545.42235227529, 34640.23028134778, 35328.44605996739, 35880.3602100836  …  36865.839340775456, 37334.61465129547, 37327.546527770864, 38008.79433302602, 37057.30356461265, 37019.57788658881, 37446.860562686554, 37540.52423214941, 37534.51939961252, 37644.07038174145], [33097.63671130043, 33433.134581041966, 34020.51641533546, 34129.073539971956, 34432.72055242139, 34133.266496791795, 33236.3749956412, 33246.386298688005, 33845.44200635824, 34159.58592212367  …  35219.87168546957, 35765.759583197956, 35699.131296079824, 36740.75648443888, 36051.64301216235, 36160.9074897276, 36525.47461580927, 36454.05449329163, 36347.729501945694, 36462.47381211593], [33097.63671130043, 33399.452331017856, 33952.00292766277, 34026.027300190486, 34294.17296192061, 33961.674592554155, 33035.97617312547, 33012.634955577116, 33573.62088133942, 33851.10410354059  …  34831.52651871453, 35335.76033512402, 35234.400361845095, 36225.93302100837, 35510.6642935658, 35582.40549891409, 35904.93133893911, 35798.62286166778, 35658.24938526446, 35734.7797595155], [29576.14777688487, 29605.974349916592, 29717.57151886141, 29893.539737644416, 30007.227377573963, 30181.51662920897, 30353.569786431843, 30549.375701330333, 30715.27598990887, 30852.570146126574  …  31202.476695445024, 31280.232285793165, 31342.99385525356, 31455.044539133647, 31501.342286729014, 31525.042713715335, 31527.452424334497, 31620.837954108414, 31787.025331970126, 31914.542131309074], [34346.71094688275, 34381.34847608994, 34566.10142990231, 34901.36662578947, 35029.769833670216, 35289.49934056386, 35528.87036916221, 35732.37458476351, 35818.71839295518, 35851.6026061133  …  36190.82539566727, 36308.726667496645, 36373.123666029416, 36543.35267078094, 36614.32130059896, 36689.77821981254, 36809.54275315301, 36971.20837208969, 37197.25651218995, 37261.85572994429], [28335.329312139664, 28363.904560528434, 28516.32194325134, 28792.908826550105, 28898.83882915393, 29113.110324357425, 29310.586494160387, 29478.47328175962, 29549.705145647808, 29576.83394439791  …  29856.6857609826, 29953.951882585094, 30007.078080402447, 30147.51350420684, 30206.06116252075, 30268.311567169476, 30367.114841152972, 30500.485647985286, 30686.970709103454, 30740.263733614785], [978.0617717704338, 979.0481149238876, 985.2692396476325, 996.480027900751, 1001.3315001200974, 1009.6957845003802, 1015.3713384034054, 1016.6753631393357, 1016.5134325861848, 1017.5299637183401  …  1029.4176332194747, 1033.2694990266527, 1038.835372656051, 1041.3546955529505, 1049.5469990509243, 1051.7078658135006, 1057.8057240646083, 1062.8218958682621, 1069.1402238734984, 1070.98603293494], [0.0019383188997990075, 0.005596042425806358, -0.0007159227183181072, 0.006847461916987374, 0.008721138094515135, 0.006113571478304269, 0.005524904234767591, 0.007427871163720123, 0.003970568363063753, 0.005000795064781016  …  0.004733899732377367, -0.0002138540175570247, 0.0015674498155366923, 0.002106699477053775, 0.0018775258463858968, 0.003332068313889991, 0.002561913938935456, 0.0003582029029831624, 0.0012049012234520706, 0.005227695706492286], [2.3548476e6, 2.3735390800490603e6, 2.4026140036563124e6, 2.4135244647407494e6, 2.4364578916343334e6, 2.429400152644813e6, 2.418937649648778e6, 2.4080528372951336e6, 2.410630600214009e6, 2.4118287950150147e6  …  2.4191656605912726e6, 2.4183238724907213e6, 2.43000723627441e6, 2.4378385672199437e6, 2.4219752069515744e6, 2.446192434580387e6, 2.4631291622009063e6, 2.4636302330414373e6, 2.479639794483188e6, 2.480341896011811e6], [0.0016459319014481277, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01  …  0.009080024073922544, 0.008368667895206853, 0.00826027375208899, 0.008014074811337675, 0.00682381125708812, 0.0073785842209353626, 0.007572130960402788, 0.007039771585582159, 0.007185423707313746, 0.006801279830040713], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086172; 518.6059091613057 258.5036962251161 … 137.13538556670352 505.41380923410753; … ; 542.1051537896797 274.06613216390554 … 146.12175414086624 536.5853357965001; 543.4365636852527 278.275771570561 … 146.48272838538907 538.1557737131759], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086172; 518.0834390395163 258.24326637797435 … 136.99722836422478 504.904629508617; … ; 531.8219605941212 268.8673714332626 … 143.34997044281383 526.4068480338844; 532.591014439278 272.7221268837489 … 143.55932250777386 527.415614997627]), BeforeIT.Data{Float64, Vector{Float64}, Matrix{Float64}}([72421.99999999999, 72482.49028509893, 72675.34088251748, 72962.24427361917, 73206.77112808794, 73469.84132199922, 73582.44125366278, 73813.27252240072, 74203.19430350554, 74388.70427153271  …  74920.9357387872, 75253.95103766356, 75510.77381829033, 75799.98251104688, 76190.13816268761, 76476.71287146503, 77136.8621117013, 77763.90825738097, 78049.4650910848, 78342.00093801146], [72421.99999999999, 72409.46771659778, 72528.98093280726, 72741.94866818446, 72912.20765516411, 73100.49987682413, 73138.77570388529, 73294.30028173365, 73607.25007704907, 73716.92906828455  …  74094.83439626262, 74349.1990419595, 74527.77531980303, 74737.84843275652, 75046.8548094428, 75253.23885717009, 75826.35864293744, 76365.73935740443, 76568.9447109873, 76778.50284829985], [64900.92049553802, 64966.37094093033, 65156.31463783118, 65423.985404760315, 65663.37721323862, 65889.72832779177, 65999.90728354378, 66192.9996379168, 66570.34949940101, 66735.13778009891  …  67213.3395767718, 67512.3962612265, 67765.75198746871, 68032.69989373536, 68394.46695374126, 68649.97126963564, 69263.57392077438, 69818.95578538024, 70072.82999304347, 70357.18653287749], [64900.92049553802, 64900.920495538005, 65025.09715996461, 65226.45013678467, 65399.16623742605, 65558.49299306275, 65601.96064503428, 65727.6046193158, 66035.70653948892, 66132.47893310006  …  66472.2245664959, 66700.7182774149, 66883.57810572776, 67079.40351289907, 67368.16279669538, 67551.70942263838, 68086.83232930658, 68563.63445707379, 68743.61841196811, 68953.04411342769], [40512.94792630534, 40469.43488561749, 40422.80885219491, 40507.75944826131, 40548.31097050753, 40769.337922011735, 40787.41540936463, 41004.512439389975, 41048.512454711876, 41184.79585476732  …  41531.44095519777, 41703.07310695392, 41692.63934882572, 41821.11395956563, 41958.45582282482, 42100.07333576499, 42289.80615395039, 42685.150036744446, 42871.98044562357, 42825.41146870691], [40512.94792630534, 40428.663906729824, 40341.40186876821, 40385.45398080626, 40385.155962895326, 40564.38571419419, 40541.48756607362, 40716.21464455003, 40718.841687413704, 40812.872121493485  …  41073.50247923309, 41201.69161003254, 41149.884986693345, 41235.102870156086, 41328.84147604857, 41426.55660377903, 41571.33075657361, 41917.68540424838, 42058.74180637325, 41970.730094466555], [14866.888022051655, 14894.790671685725, 15036.568712179329, 15117.507321059002, 15135.643078752037, 15153.522049047917, 15070.314409213095, 15212.144157953393, 15143.154188866285, 15082.516894035838  …  15142.182804745204, 15205.032739445633, 15122.059838846075, 15241.516152999877, 15127.639038329158, 15301.84903808985, 15399.794424150674, 15546.825131902033, 15604.205173391636, 15752.296178313261], [14866.888022051655, 14879.784897631107, 15006.286756652136, 15071.862885897915, 15074.741504737623, 15077.343529639413, 14979.447903375993, 15105.18940213213, 15021.535768070502, 14946.312601311492  …  14975.220427401642, 15022.227936161935, 14925.201015078856, 15027.947057406003, 14900.638821457414, 15057.050144860325, 15138.162262060983, 15267.29844812408, 15308.208990106208, 15437.922219408994], [15944.236265986641, 15964.091136809515, 15971.06323178298, 16019.817258711168, 16149.457114128736, 16267.560465789162, 16205.02445475807, 16006.988141006073, 16404.332666228096, 16363.688832410204  …  16361.392584396417, 16518.939511620694, 16671.30046462126, 16587.763243853657, 16861.536984909035, 16728.23331672697, 16973.657592834137, 17129.481534818613, 17083.665236499473, 17152.732230269554], [15944.236265986641, 15948.008094767049, 15938.899309563458, 15971.448470482494, 16084.476237359166, 16185.781545571066, 16107.31621130507, 15894.4449327457, 16272.585408807827, 16215.914778554436  …  16180.98682402703, 16320.338065663722, 16454.273641879518, 16355.330094923265, 16608.51848396072, 16460.615135981207, 16685.286552788362, 16821.49922153986, 16759.60517382147, 16810.409290412794], [15944.236265986641, 15953.858328037026, 15976.293349113503, 16016.598951763015, 16058.180506597571, 16139.339032671312, 16182.22626949742, 16243.817621968295, 16308.353661710735, 16352.072546276586  …  16507.66624314203, 16561.196222814982, 16609.541851617196, 16678.914787814443, 16757.980928757755, 16834.872854657464, 16933.39658193576, 17056.12652706476, 17147.734688339857, 17199.63353624164], [15944.236265986641, 15937.78559504957, 15944.118894026848, 15968.239880599443, 15993.566901244247, 16058.20469652415, 16084.655487770686, 16129.609294113698, 16177.377235440526, 16204.403394543457  …  16325.647624301586, 16362.086739163542, 16393.319001881977, 16445.20439371958, 16506.516354839638, 16565.548655194947, 16645.70954941886, 16749.46311213869, 16822.45929216686, 16856.37457099091], [3173.2320350842083, 3169.9749590786373, 3156.4149128862155, 3150.128376993304, 3141.7965251795113, 3165.5073634293335, 3170.900084803873, 3182.5485436276244, 3185.8428623266373, 3182.5837022840337  …  3223.4481409901505, 3221.021085580001, 3222.4621462542436, 3229.904642664227, 3235.227941172456, 3255.452577777699, 3258.4783644886684, 3283.0596007391223, 3321.4041097107774, 3316.1682816322364], [3173.2320350842083, 3166.7813641471457, 3150.058248819633, 3140.61716410621, 3129.1548189354585, 3149.5939894069597, 3151.7811332517717, 3160.1724276219757, 3160.256569471972, 3153.8430374963777  …  3187.9054076997572, 3182.29587294731, 3180.512166257708, 3184.6461653274782, 3186.681208769937, 3203.3718660926324, 3203.1190060360186, 3224.031293991343, 3258.4003918860867, 3249.9863777822584], [34195.564496956766, 33905.35257561163, 34532.560300463505, 34607.51578634958, 33073.62188640427, 32860.5008463774, 32391.910234481355, 33932.19418234509, 32929.63701296103, 33383.09630243663  …  33040.536042843836, 33447.040372446594, 33095.51883192876, 33054.80471968997, 33335.27059663551, 35685.17625288559, 36765.89753826232, 37063.61759780854, 36647.76323565431, 38136.86731119261], [34195.564496956766, 33871.19458902383, 34463.01561408757, 34503.02498129499, 32940.542926973285, 32695.307283231046, 32196.603114770784, 33693.621006495, 32665.170944601305, 33081.62665696784  …  32676.220902975747, 33044.9182763958, 32664.681698717395, 32591.63001461795, 32835.052840530836, 35114.285007673236, 36141.269637449645, 36397.226226706625, 35952.59177878324, 37375.75681522998], [33097.63671130043, 32751.178984624596, 33287.66021410255, 33290.35554076137, 31700.26192170395, 31581.07996122626, 30872.223254153476, 32342.566398293027, 31322.442019261027, 31625.393612116623  …  31154.61664839537, 31620.134692802527, 31070.744665930735, 30905.215565061524, 31092.76428001037, 33338.619072001864, 34292.293597495765, 34661.16604389206, 34158.149000083526, 35525.3062504704], [33097.63671130043, 32718.18377155324, 33220.6226162634, 33189.84165029658, 31572.70897680063, 31422.31819581087, 30686.07909163933, 32115.16970418834, 31070.88373184357, 31339.797090042066  …  30811.09623737421, 31239.97684629386, 30666.266022565364, 30472.16160434616, 30626.196812554215, 32805.268035123154, 33709.69056593472, 34037.969943213946, 33510.203038096304, 34816.31557121804], [29576.14777688487, 29605.974349916596, 29673.09802471181, 29779.890270670014, 29895.452774943195, 30003.267570611508, 30083.3300632585, 30197.514192990617, 30347.170807001, 30450.63690292775  …  30727.27316714252, 30843.497437625912, 30956.226670425338, 31104.278604488918, 31262.67356179937, 31412.535203720916, 31644.371758299254, 31879.0711104245, 32007.631514243953, 32123.90166529486], [34346.71094688275, 34381.34847608994, 34502.3103521771, 34657.66284353767, 34778.587887525326, 34894.79697330229, 34932.12761183511, 35013.69188210961, 35231.6210002, 35294.45746517665  …  35497.06355982244, 35675.8553949581, 35810.60390749539, 35928.113995990665, 36128.845610603996, 36232.04644680272, 36596.04365404435, 36903.198593633424, 37022.83829547114, 37187.1103340455], [28335.329312139664, 28363.904560528434, 28463.695617623962, 28591.858224196993, 28691.61889556883, 28787.4889985212, 28818.28600665091, 28885.574850170928, 29065.361885306414, 29117.20067507227  …  29284.346531376043, 29431.84611393361, 29543.010862225517, 29639.95426563208, 29805.55371450573, 29890.69227940358, 30190.982480460716, 30444.378981120317, 30543.0792716844, 30678.600321050075], [978.0617717704338, 979.0481149238876, 980.9062609422532, 986.4322905525488, 989.3365507700739, 991.6637838779875, 984.4496084502181, 981.7935628165371, 991.5576922000151, 990.0434119945253  …  989.0028498068486, 993.0434286425964, 998.9214095480072, 1000.3072932558447, 1002.9477813378418, 1005.389619111977, 1023.158508430759, 1036.6860813222793, 1042.3601833284672, 1046.1745335371238], [0.0019383188997990075, 0.006728434425867791, 0.00908046554836961, 0.01185541336935425, 0.009637705065879798, 0.007116495451877647, 0.005715539760787092, 0.004122393759308451, 0.0032764078652021134, 0.0053481690388572645  …  0.008372601817100866, 0.0035504183401180445, 0.002995044956902726, 0.005754180390484365, 0.0022524653853615018, 0.0007814410912665437, 0.004461102266868799, 0.0026462262902717804, 0.0021137825996921933, 0.0020620202347729766], [2.3548476e6, 2.347127886802868e6, 2.346537676374904e6, 2.353541784658797e6, 2.3163016184728546e6, 2.307559769579166e6, 2.3122319577811817e6, 2.3350579501085877e6, 2.313635215710806e6, 2.344139199057313e6  …  2.3413284425446396e6, 2.3555698029072685e6, 2.366455462312521e6, 2.3728944917606143e6, 2.3661575602355613e6, 2.424216066791932e6, 2.428369956856602e6, 2.428737816441381e6, 2.407452457692039e6, 2.439073505074382e6], [0.0016459319014481277, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01  …  0.008813595575164906, 0.008840856438068942, 0.00870961552545275, 0.008464495823647581, 0.007610276652068634, 0.009478258084152001, 0.0090474659484035, 0.008453279279609474, 0.007013941251453087, 0.007833919729536409], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086172; 518.6059091613056 258.5036962251161 … 137.13538556670352 505.41380923410753; … ; 571.2425319871543 282.1978688296847 … 146.36317814627148 535.5340908686115; 574.5730034771111 284.67965764299856 … 147.07015356300158 537.2540606751747], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086172; 518.0834390395163 258.24326637797435 … 136.99722836422478 504.904629508617; … ; 560.4066318359042 276.8448571782292 … 143.5868148760234 525.3755441720687; 563.1060536598974 278.9982084130156 … 144.1350242403374 526.5318977549284])])

Finally, we can plot baseline and shocked simulations

Te = T + 1
 StatsPlots.errorline(
     1:Te,
     data_vec_baseline.real_gdp,
@@ -58,9 +56,4 @@
     titlefont = 10,
     xlabel = "quarters",
     ylabel = "GDP",
-)
Example block output

Note that, importantly, once the function centralbankrate has been changed, the model will use the new interest rate in all the simulations, unless the function is changed again. To restore the original interest rate, you need to close and restart the Julia session.

function central_bank_rate(cb::Bit.CentralBank, model::Bit.Model)
-    gamma_EA = model.rotw.gamma_EA
-    pi_EA = model.rotw.pi_EA
-    taylor_rate = Bit.taylor_rule(cb.rho, cb.r_bar, cb.r_star, cb.pi_star, cb.xi_pi, cb.xi_gamma, gamma_EA, pi_EA)
-    return taylor_rate
-end
central_bank_rate (generic function with 2 methods)
+)Example block output

Note that, importantly, once the function central_bank_rate has been changed, the model will use the new interest rate in all the simulations, unless the function is changed again. To restore the original interest rate, you could close and restart the Julia session.

diff --git a/dev/examples/scenario_analysis_via_shock-2f326142.svg b/dev/examples/scenario_analysis_via_shock-2f326142.svg new file mode 100644 index 0000000..f08bd33 --- /dev/null +++ b/dev/examples/scenario_analysis_via_shock-2f326142.svg @@ -0,0 +1,48 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/dev/examples/scenario_analysis_via_shock-c24962dc.svg b/dev/examples/scenario_analysis_via_shock-c24962dc.svg deleted file mode 100644 index f256b6c..0000000 --- a/dev/examples/scenario_analysis_via_shock-c24962dc.svg +++ /dev/null @@ -1,50 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/dev/examples/scenario_analysis_via_shock.html b/dev/examples/scenario_analysis_via_shock.html index efbb112..14eae07 100644 --- a/dev/examples/scenario_analysis_via_shock.html +++ b/dev/examples/scenario_analysis_via_shock.html @@ -2,7 +2,6 @@ Shocked simulations · BeforeIT.jl

Scenario analysis via custom shocks

In this tutorial we will illustrate how to perform a scenario analysis by running the model multiple times under a specific shock and comparing the results with the unshocked model.

import BeforeIT as Bit
 using Plots, StatsPlots
 
-
 parameters = Bit.AUSTRIA2010Q1.parameters
 initial_conditions = Bit.AUSTRIA2010Q1.initial_conditions
Dict{String, Any} with 21 entries:
   "sb_inact" => 2.23847
@@ -24,8 +23,8 @@
   "Y_I"      => [19804.6; 19944.1; … ; 36883.2; 36575.9;;]
   "Y_EA"     => 2.35485e6
   "D_I"      => 54049.0
-  ⋮          => ⋮

initialise the model and the data collector

T = 20
-model = Bit.init_model(parameters, initial_conditions, T);

Simulate the model for T quarters

data_vec_baseline = Bit.run_n_sims(model, 4)
BeforeIT.DataVector(BeforeIT.Data[BeforeIT.Data{Float64, Vector{Float64}, Matrix{Float64}}([72421.99999999999, 72481.95522491907, 72275.76481768406, 72122.79369027186, 71670.21127446776, 71572.07048603415, 71623.1583584922, 71700.30024711975, 72034.2139535281, 71890.93119015018  …  72064.26541081282, 72152.70592820985, 72185.2343568267, 72112.17556804938, 72177.27985703817, 72147.56853579356, 72231.76090160823, 72630.35847686103, 72863.1405273111, 73142.01531794651], [72421.99999999999, 72408.93319546494, 72130.20956915636, 71905.03264605191, 71381.8304865585, 71212.26935577652, 71191.3063107949, 71196.18406036653, 71455.68934531034, 71241.71239564513  …  71269.66259630032, 71285.2391203688, 71245.52769779398, 71101.71624347943, 71094.2120935053, 70993.352147773, 71004.59180728493, 71324.48907430383, 71480.99954296488, 71682.29511858798], [64900.92049553801, 64966.3709409303, 64760.22888243517, 64615.85470320664, 64181.20093155975, 64080.00645928396, 64120.842772413394, 64181.79016960481, 64508.39291328298, 64356.2628248203  …  64519.86772516566, 64599.696394449886, 64621.796523135534, 64541.96415657898, 64599.26114105384, 64556.69397886052, 64630.11632317047, 65007.74687372355, 65218.71156317167, 65468.18641713065], [64900.92049553801, 64900.920495538, 64629.809076661106, 64420.75943202561, 63922.95381655228, 63757.86880706296, 63734.22595899747, 63730.53572286214, 63990.31003726256, 63775.08666423517  …  63808.45176617225, 63823.03678483593, 63780.55062219035, 63637.58110344903, 63629.906554285, 63523.916358505056, 63532.09406365018, 63838.92946249427, 63981.5777593669, 64161.61544403077], [40512.94792630534, 40506.50587793269, 40552.604364881176, 40533.379390731905, 40491.418874800496, 40481.97384977413, 40529.61741416897, 40573.396945863016, 40628.33295249461, 40691.22510067065  …  40741.68977041216, 40815.102592802636, 40894.92292582698, 40944.60865396594, 40983.378705365845, 41075.76794324987, 41126.485841974, 41246.25847620863, 41309.00537404716, 41443.606775035376], [40512.94792630534, 40465.69755183103, 40470.935987913275, 40410.99656873815, 40328.492784992275, 40278.46625460054, 40285.24396466135, 40288.13027220224, 40302.03675081674, 40323.758611233796  …  40292.459334564155, 40324.3968555416, 40362.55322811194, 40370.879442784004, 40368.39603485848, 40418.63804306338, 40427.77447520918, 40504.66462972911, 40525.41481046666, 40616.502549361256], [14866.888022051655, 14734.756307245096, 14645.434779151194, 14319.938275983266, 14415.982978017737, 14564.328166431715, 14757.15135263622, 14761.637894879083, 14699.808733392258, 14691.850307570594  …  14503.27575158383, 14447.74451742878, 14473.952063507533, 14441.21324507697, 14441.844465925347, 14511.509847583498, 14616.522810788134, 14686.675892770352, 14824.946233879667, 15201.481327029222], [14866.888022051655, 14719.911759995653, 14615.940523304138, 14276.701948706004, 14357.977113994733, 14491.111593260943, 14668.173064385983, 14657.850594405434, 14581.750929723441, 14559.173971517837  …  14343.358160442587, 14274.044326205098, 14285.530300278699, 14238.85825486007, 14225.13504963839, 14279.354796194748, 14368.197907228008, 14422.614402839086, 14543.731814184272, 14898.1001683781], [15944.236265986641, 16567.381733877723, 16418.06514622363, 17021.64003075377, 16305.505589501012, 15938.858620567946, 15677.580910446297, 15259.713812950686, 16439.28820691124, 15785.050965023589  …  15952.073207698479, 16141.158777031618, 16278.731517692102, 15913.362953543257, 16093.300731496665, 15959.792428350906, 14621.90066831964, 15762.822361008479, 15766.66050983216, 15400.89269420407], [15944.236265986641, 16550.690906026884, 16385.001012502882, 16970.24642940008, 16239.896817522484, 15858.732122790918, 15583.052889422312, 15152.424600606837, 16307.260212888572, 15642.502362730378  …  15776.180729007563, 15947.099257031106, 16066.815153575777, 15690.379721446736, 15851.81012301645, 15704.467760533884, 14373.484398572753, 15479.4121197422, 15467.582711109755, 15093.531814740203], [15944.236265986641, 15954.022042415261, 15935.339191110756, 15903.93929643849, 15816.572162787503, 15789.892317526446, 15789.499107823958, 15804.001940456306, 15855.416449251603, 15846.436814450195  …  15865.053032913935, 15891.767256027735, 15895.689548107412, 15886.624984646412, 15900.354435664085, 15880.039348596054, 15907.329409378151, 15997.486746044353, 16061.091101079472, 16093.238668128854], [15944.236265986641, 15937.949144493563, 15903.247213084858, 15855.920379655046, 15752.93072150779, 15710.514690696433, 15694.296275693901, 15692.885903756249, 15728.077673883663, 15703.333860634411  …  15690.12006550658, 15700.706083266523, 15688.759620520868, 15664.016413691079, 15661.7591138104, 15625.990570091955, 15637.074568837863, 15709.857318108552, 15756.428248182034, 15772.060403422189], [3173.2320350842083, 3170.138673456869, 3175.006124970953, 3174.8323574690407, 3171.545742690863, 3170.8059481925616, 3174.537695511426, 3177.9667871861475, 3182.2697250133356, 3187.1958385045214  …  3188.274829596323, 3196.898712439398, 3203.1507491528114, 3207.0424517389556, 3210.079169020742, 3217.315682391331, 3220.9777476398845, 3230.6695864776834, 3235.497616819422, 3233.194011598893], [3173.2320350842083, 3166.9449135911386, 3168.612020297519, 3165.2465556162347, 3158.784333956281, 3154.865937567749, 3155.3968109746565, 3155.6228849589165, 3156.7121289091483, 3158.4135233241486  …  3153.11992808453, 3158.4635146821583, 3161.452164730604, 3162.1043268782873, 3161.9098105572366, 3165.8450845400826, 3166.255499475524, 3172.583234555063, 3174.1234593428594, 3168.66805361619], [34195.564496956766, 32540.327526691057, 32764.474989215774, 33059.443575274636, 33923.01149170361, 34754.09217504692, 34228.55574720187, 35612.14619389739, 33866.193292069525, 35052.40929876644  …  36366.53096184957, 36558.03109375784, 36510.740808404335, 36316.909764144664, 36727.92377508437, 36891.008126718516, 36993.80195951175, 35208.68390990689, 36624.493981989224, 37155.67489793752], [34195.564496956766, 32507.54473616437, 32698.491027483065, 32959.6268795266, 33786.51482721399, 34579.37930785249, 34022.17456787493, 35361.76147752255, 33594.205508337145, 34735.86474255183  …  35965.542376291785, 36118.506641751745, 36035.44434965378, 35808.02537920306, 36176.79701689852, 36300.825990097685, 36365.30211568175, 34575.64362225778, 35929.763919613346, 36414.14639433323], [33097.63671130043, 31867.0162208274, 32104.814461787537, 32811.60758247155, 33465.707659554915, 34167.18232578638, 33569.74706596109, 34506.594600470016, 33599.409231339545, 34329.604481881164  …  35499.30428073111, 35809.33105281092, 35973.11295860413, 35503.91904868125, 36069.16782083433, 36290.50981010924, 35126.95037898535, 34274.08216303338, 35661.96557243697, 36059.64037625948], [33097.63671130043, 31834.911758552964, 32040.158982046763, 32712.539180318734, 33331.0510571648, 33995.419922728135, 33367.33817554955, 34263.98288437015, 33329.56405645565, 34019.587292388744  …  35107.87800400573, 35378.80796016062, 35504.815333826205, 35006.426554814316, 35527.926130906744, 35709.93444211658, 34530.16708940679, 33657.845700264304, 34985.49371240884, 35339.985808224665], [29576.147776884878, 29605.974349916607, 29545.629642249936, 29487.73027857186, 29338.201171489836, 29281.953251403134, 29251.384548243983, 29249.728347104898, 29392.92961662365, 29339.99219997824  …  29430.67616362059, 29473.575093046555, 29496.824151962755, 29441.90911309456, 29484.6379221213, 29439.338880293762, 29497.324720915614, 29649.727356649484, 29754.885149406236, 29842.012115910722], [34346.71094688275, 34381.34847608993, 34243.537608448925, 34158.357745257286, 33877.47970819487, 33836.73757665375, 33895.87841317839, 33958.01053866206, 34130.07510022356, 34032.32219574716  …  34101.77084902657, 34135.20585136735, 34129.08349425365, 34101.066445223885, 34118.67480513702, 34117.93723910033, 34139.084287864636, 34361.48651914725, 34468.81560950407, 34624.157357635835], [28335.32931213966, 28363.90456052843, 28250.213432331653, 28179.94179910218, 27948.22320197015, 27914.611782353248, 27963.401754741364, 28014.659478928286, 28156.6091993057, 28075.96506590264  …  28133.258774869413, 28160.841963354134, 28155.79114479828, 28132.677656236287, 28147.204190598113, 28146.595713804752, 28164.0415936051, 28347.518855020127, 28436.063144595224, 28564.216888225706], [978.0617717704337, 979.0481149238881, 971.061631736288, 969.76667937748, 965.5200518750453, 961.3156312270817, 973.5798109910043, 974.0512838379193, 985.3881964359041, 983.9484290949121  …  987.4207125186091, 990.9154500359589, 995.8888769192428, 998.988598260632, 995.9484137954673, 999.4178594663485, 993.7073143902167, 996.5329979267384, 995.0108042612302, 1002.0169435841813], [0.0019383188997990075, 0.0025249799602384826, 0.003485506345587863, 0.006050583924136044, 0.0038680875604648612, 0.0048779110368468714, 0.005852469965863749, 0.004676334089305456, 0.007685571568960103, 0.010547176445934614  …  0.004286429848259443, 0.004158475278081886, 0.00397106811233483, 0.005795154740779962, 0.004571879193062678, 0.0032584396126187354, 0.0027561196362202445, 0.0027618965313527255, 0.0011805915772813425, 0.0017623101420431997], [2.3548476e6, 2.341147592507514e6, 2.3557531953337416e6, 2.364072002878856e6, 2.3800966795157082e6, 2.3872121414893e6, 2.385711907026837e6, 2.403985571486479e6, 2.3654452700835243e6, 2.3933938709889604e6  …  2.4120068053321782e6, 2.4204971166954176e6, 2.4129701344814193e6, 2.4093830174117256e6, 2.430383557680994e6, 2.4249686596652213e6, 2.4289151282743188e6, 2.3817035849645967e6, 2.4173388833130435e6, 2.4259294876075042e6], [0.0016459319014481277, 0.0010097843819864387, 0.0016286456400205407, 0.0019942566371285095, 0.0026021055975383595, 0.002815455744715192, 0.0026795074662772037, 0.0033418481712765786, 0.0016939192569893485, 0.0029727085469081933  …  0.0034712847363766487, 0.003655952324358119, 0.00317055056389291, 0.0029225904639374363, 0.003668457270036467, 0.003252498582006009, 0.0032350273893904484, 0.0011470572160624487, 0.002560900723651073, 0.0027612967754367793], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086171; 518.6059091613059 258.5036962251161 … 137.13538556670355 505.41380923410765; … ; 501.5363211695344 252.8899332933181 … 138.51860874266535 512.8140974673411; 506.1533550622404 252.52239287146062 … 138.72898751393637 513.7580148515174], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086171; 518.0834390395163 258.24326637797435 … 136.9972283642248 504.90462950861695; … ; 492.02267819985326 248.09286389988165 … 135.89104911714975 503.0865263479715; 496.05187955400095 247.48271716574664 … 135.96032569308863 503.50477054862034]), BeforeIT.Data{Float64, Vector{Float64}, Matrix{Float64}}([72421.99999999999, 72483.93350571705, 72507.14659822917, 72900.44801747912, 73253.64456495838, 73489.45184193389, 73992.21608663976, 74125.76571279396, 74420.9315613816, 74702.82606316959  …  75267.13819287019, 75466.73153042917, 75736.34559304341, 75925.35258878041, 76209.55543374608, 76504.87903322486, 76919.91893793274, 77437.33271355525, 77961.64739528613, 78305.03470606549], [72421.99999999999, 72410.90948324164, 72361.12537286045, 72680.33899407437, 72958.89248649773, 73120.01181239168, 73546.07979827962, 73604.59637009213, 73823.23863309379, 74028.21414926012  …  74437.21951531958, 74559.42134910288, 74750.41060344702, 74861.4617840684, 75065.98071152123, 75280.95441683427, 75613.10118795323, 76045.03553195024, 76482.79282914512, 76742.27436407818], [64900.92049553801, 64966.3709409303, 65013.259137507455, 65386.58333648677, 65708.74918499452, 65927.11922342933, 66384.4894867216, 66496.10315961605, 66779.98923780302, 67047.91837974281  …  67555.53954742581, 67718.00992907803, 67986.93674567937, 68158.71925697311, 68406.86346597978, 68702.95163998476, 69088.69223729613, 69570.68645184726, 70040.98126655773, 70353.3725347307], [64900.92049553801, 64900.920495538, 64882.32975730337, 65189.16099693519, 65444.35564511881, 65595.69592031471, 65984.22400866634, 66028.57705661151, 66243.66260924356, 66442.43493386144  …  66810.65133474061, 66903.85992387962, 67101.8834829669, 67203.65705171498, 67380.3732910779, 67603.84221332516, 67914.92176814853, 68319.82892260441, 68712.37382400506, 68949.30623254413], [40512.94792630534, 40487.31036275896, 40337.57761416024, 40395.86131816772, 40581.48354537348, 40661.666992130835, 40899.10099103085, 41003.084209358916, 41054.26047826497, 41102.47868208909  …  41481.21030375842, 41678.892368628985, 41629.82056360996, 41703.385215572365, 41903.402419518396, 41831.61215063149, 41981.622071068894, 42104.95929383447, 42390.78824626219, 42559.88581156971], [40512.94792630534, 40446.52137520122, 40256.34227684569, 40273.893705812276, 40418.19506064272, 40457.25605861188, 40652.49973919051, 40714.79645623216, 40724.543547165944, 40731.298322905604  …  41023.82568644669, 41177.80158828677, 41087.883975794815, 41119.02377972213, 41274.61418542566, 41162.39025914626, 41268.382514229605, 41347.92629563905, 41586.67734231414, 41710.50362362365], [14866.888022051655, 14756.647240175731, 14915.460869000626, 15032.173513778715, 15035.06919213724, 15139.574298055088, 15292.14318641489, 15315.55256885783, 15335.478807267471, 15407.048530917444  …  15354.937437947146, 15577.785700004431, 15583.384963540322, 15628.269524062123, 15666.642067228313, 15745.82916810064, 15846.34531331735, 16023.337542220082, 16144.709106609016, 16153.082102495076], [14866.888022051655, 14741.780638880648, 14885.422811026867, 14986.786727802111, 14974.572299177147, 15063.46589561444, 15199.939163301553, 15207.870760937569, 15212.315779840794, 15267.913520304188  …  15185.629162405708, 15390.499417936773, 15380.520613912706, 15409.28111408707, 15431.553753850028, 15493.927483295027, 15577.126551601574, 15735.243325668729, 15838.460103682331, 15830.709521914518], [15944.236265986641, 16058.22102245822, 15911.99691376931, 15990.28423265017, 16086.322111674635, 16097.77726246663, 16375.735299683396, 16160.735126255646, 16339.533188847927, 16411.13349926707  …  16564.300302813714, 16442.81285645979, 16611.876285789876, 16601.614146486765, 16739.840791990977, 16781.591316388203, 16896.988690959442, 16972.04406331085, 17065.527511229164, 17174.381000559915], [15944.236265986641, 16042.043149153806, 15879.951944460485, 15942.004613770892, 16021.595272411363, 16016.851862176527, 16276.997754679809, 16047.110941434905, 16208.306352074918, 16262.930991238762  …  16381.65721936558, 16245.126654715477, 16395.623046413737, 16368.98691419076, 16488.648422807924, 16513.119514669324, 16609.920204052083, 16666.892422785822, 16741.81150307933, 16831.626008794658], [15944.236265986641, 15952.424631501912, 15960.120202250326, 16001.86611012271, 16085.12141318649, 16145.355471716659, 16231.079472866419, 16293.981329056229, 16349.506492513774, 16412.960668708773  …  16554.476726510788, 16607.877127385367, 16644.21907361393, 16712.053304044326, 16757.948269999066, 16790.086401066474, 16870.54926051732, 16963.858874117403, 17068.96025414139, 17149.361120954083], [15944.236265986641, 15936.353342893683, 15927.978318059555, 15953.551521969457, 16020.399405196491, 16064.190890229931, 16133.214130603592, 16179.42030621077, 16218.199557669595, 16264.74166023009  …  16371.941960844488, 16408.206415505967, 16427.544796149316, 16477.87856225117, 16506.48418614696, 16521.478695031587, 16583.929961771857, 16658.85440053945, 16745.179130287877, 16807.105459477814], [3173.2320350842083, 3168.5412625435197, 3159.610950374477, 3129.180604744873, 3134.4497863355596, 3146.908310606229, 3149.372136597536, 3179.3088338497473, 3180.2741225872405, 3183.840613903447  …  3211.779906377933, 3229.0535246234685, 3221.64732208856, 3242.7517338559646, 3243.9590208737914, 3227.0293752231555, 3230.4373032277554, 3236.05583289929, 3254.163947063544, 3274.821309743798], [3173.2320350842083, 3165.3491119912574, 3153.2478498484243, 3119.7326396678645, 3121.83764130387, 3131.088436187551, 3130.3829878735482, 3156.9554958538365, 3154.732553660227, 3155.0885984400425  …  3176.3658306407283, 3190.231740778795, 3179.7079494648256, 3197.313238887109, 3195.2812728526824, 3175.403377769634, 3175.5543435686236, 3177.87263807867, 3192.435707950198, 3209.464581543968], [34195.564496956766, 34055.25613623638, 32977.084943392016, 32811.32846822115, 32882.04649132096, 33111.45229107569, 32363.23259055525, 33301.80422704847, 32921.58664475372, 33157.970066045564  …  32551.862746422783, 32817.511607679524, 31815.1091865811, 32402.39314178859, 33499.8573186523, 33798.29140581149, 34116.90478206089, 35016.626912083295, 35475.37350642306, 35380.60276454647], [34195.564496956766, 34020.94712913339, 32910.67280916195, 32712.260908800676, 32749.738377439146, 32944.99716580262, 32168.098382784246, 33067.66324714895, 32657.18523089398, 32858.53344729312  …  32192.93586902385, 32422.958116311824, 31400.940413328874, 31948.360240539867, 32997.16983005967, 33257.58653356993, 33537.2814886519, 34387.03974462044, 34802.44111147851, 34674.49998222108], [33097.63671130043, 32873.50125591202, 31634.97374209288, 31329.199515338514, 31331.276775547605, 31521.019001794164, 30937.99598104448, 31655.41041872675, 31229.927557752006, 31375.80471514915  …  30685.172598071444, 31050.27100234333, 29903.84540647762, 30410.30943912925, 31600.18716364356, 31652.445007706745, 31921.941919473724, 32679.63509789348, 33114.750975236995, 32962.91697310569], [33097.63671130043, 32840.38280912727, 31571.26446863434, 31234.60696211141, 31205.208523172387, 31362.55916981354, 30751.4552416764, 31432.845035661354, 30979.112276881508, 31092.462132481134  …  30346.82842192184, 30676.964428147723, 29514.55744600288, 29984.19026447138, 31126.00548062174, 31146.069373846083, 31379.60957058183, 32092.06625676381, 32486.59723140893, 32305.064772475747], [29576.147776884878, 29605.974349916607, 29650.821816849657, 29774.54614439982, 29951.53485739693, 30061.33165778031, 30234.52898963631, 30297.49984852258, 30434.428356808356, 30566.535835782885  …  30843.234349133003, 30904.407265229725, 30990.107289550713, 31085.443296452362, 31195.70245582306, 31312.310833121206, 31499.12470536653, 31688.784479084305, 31890.09787080228, 32033.18820607691], [34346.71094688275, 34381.34847608993, 34384.59639365197, 34629.08119693161, 34777.093589986536, 34882.82998168331, 35159.93788844559, 35206.88741313295, 35350.88259124927, 35486.60720187122  …  35712.59549669483, 35815.81710781704, 35992.56447689196, 36071.12643123055, 36205.70489851677, 36376.33591805991, 36569.25546416128, 36853.80472247733, 37112.89765625169, 37275.67836228893], [28335.32931213966, 28363.90456052843, 28366.58402564057, 28568.278954259964, 28690.386130867795, 28777.616476842955, 29006.224794106576, 29044.95718525524, 29163.75024225555, 29275.720251368868  …  29462.155941366047, 29547.311645148013, 29693.124585302234, 29757.936579994584, 29868.961044455697, 30009.72812218544, 30168.882775391823, 30403.630054465488, 30617.376389952995, 30751.667120682956], [978.0617717704337, 979.0481149238881, 977.8409270058273, 982.9559951552989, 980.1207376111176, 982.9575839656857, 990.0226086397639, 991.7158979605525, 994.6782897454868, 994.7753420887019  …  999.7097015980053, 997.7855560312471, 1004.2649792366498, 1002.1495292902976, 1005.4561116399777, 1014.3048888036473, 1020.3120677682856, 1028.0972502855634, 1037.9857395037982, 1044.5059663648801], [0.0019383188997990075, 0.0030299344692581442, -0.0014053379616411066, 0.00405822890062435, 0.0020795999284035638, 0.00656371392327415, 0.0032200351963660445, 0.0044199393798594055, 0.004328412941927873, 0.003211432614182108  …  0.007173602201598017, 0.0035410276420742015, 0.0038289101954831484, 0.0035016452037277546, 0.007818432691569788, 0.005170481113170533, 9.736290404194214e-5, 0.00409638764602116, 0.002129180442434153, 0.002931128743400846], [2.3548476e6, 2.3589447851790367e6, 2.3418816662927433e6, 2.335708047831428e6, 2.3292749999087974e6, 2.338030696272488e6, 2.314014561371659e6, 2.339892256384125e6, 2.3438329736527437e6, 2.3635724189122557e6  …  2.34495497058395e6, 2.3552120987070263e6, 2.3352116429862594e6, 2.3340860793054556e6, 2.3479794456140045e6, 2.348387478832377e6, 2.3556806143006156e6, 2.3735990710767317e6, 2.3895416772739436e6, 2.3955608547909106e6], [0.0016459319014481277, 0.0017647452738325884, 0.0008903722234734424, 0.0006582892093479992, 0.00038637209524673493, 0.0008781250038382353, 0.0, 0.0012013909493435672, 0.0013774291230228492, 0.002177523812084301  …  0.0014023025833000632, 0.0018099840316760894, 0.0009285789277002283, 0.0008927800525110539, 0.0015915780119487967, 0.0016094939124198704, 0.0017980381941804843, 0.002507101432655718, 0.003031001375069532, 0.0031216359054052644], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086171; 518.6059091613059 258.50369622511613 … 137.13538556670355 505.41380923410765; … ; 576.4384452744057 281.5932378421996 … 145.0732376687383 532.3075156903259; 576.9263365940085 283.4012026905122 … 145.8721779715059 534.4261806897986], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086171; 518.0834390395163 258.24326637797435 … 136.9972283642248 504.90462950861695; … ; 565.5039838388868 276.2516954365352 … 142.32134328067474 522.2101739015038; 565.4124205034087 277.74526802298124 … 142.9609570571817 523.7604547369683]), BeforeIT.Data{Float64, Vector{Float64}, Matrix{Float64}}([72421.99999999999, 72489.87916040991, 72104.07046925227, 72320.65965035294, 72541.86424250343, 72832.30650903533, 74054.01365320013, 74338.20994312104, 74566.58226318918, 75483.07009527589  …  76758.88032893838, 76724.20512814359, 76592.42654904329, 76905.80099249847, 77202.35756405728, 77227.80492788774, 77609.79795544199, 77727.08201104985, 78088.85956022784, 78573.77205441872], [72421.99999999999, 72416.84914797782, 71958.86099380106, 72102.30118753787, 72249.97616802085, 72466.1700255819, 73607.50475622769, 73815.54693058912, 73967.71957805147, 74801.41210362683  …  75912.51324255325, 75801.77678050993, 75595.34710612231, 75828.17182496501, 76043.88519003625, 75992.31494717703, 76291.25962439789, 76329.57523458783, 76607.5919064053, 77005.64842931755], [64900.92049553801, 64966.3709409303, 64595.269446233084, 64803.362720125515, 65024.280213920065, 65472.5928676834, 66502.75851320547, 66745.60794063663, 67006.36293132948, 67850.75193222701  …  69010.04006095002, 68926.31859484421, 68774.65877415937, 69073.71143549593, 69328.53846141149, 69355.009024094, 69694.8883716726, 69790.6528930798, 70151.01216798407, 70601.78927217069], [64900.92049553801, 64900.920495538, 64465.18185018096, 64607.70130418675, 64762.64078482009, 65143.45452147193, 66101.77993170122, 66276.3275995278, 66468.21823958629, 67238.01841151009  …  68249.1140770455, 68097.64151616058, 67879.35095395718, 68105.82806139337, 68288.21794435785, 68245.46798714, 68510.81903742887, 68535.84044125094, 68820.31754915432, 69192.76523224771], [40512.94792630534, 40553.80390285682, 40510.05065908241, 40505.19442362293, 40472.364744485145, 39562.34324794717, 40426.252191171305, 40632.579172405596, 40422.89632794868, 40757.1009621652  …  41336.41362981843, 41702.956472901875, 41837.81013644266, 41838.661172430715, 42070.62095670633, 42078.71972144294, 42320.80850987445, 42418.034445191326, 42366.271033134355, 42484.02933056769], [40512.94792630534, 40512.94792630536, 40428.46798048436, 40382.89670077128, 40309.51532314225, 39363.45874286592, 40182.50198258508, 40346.896395628464, 40098.25003866915, 40389.03957366784  …  40880.6255852879, 41201.57637823045, 41293.16594244822, 41252.404205750696, 41439.32349800096, 41405.544604455994, 41601.80640329657, 41655.3724611363, 41562.625196226436, 41636.16103634072], [14866.888022051655, 14585.286376925817, 14755.328737923517, 14753.02233166792, 14935.92288647984, 15087.62637889434, 15408.772784008283, 15543.270378821631, 15709.398935169258, 15758.159552497951  …  16168.92236960624, 16157.412053459078, 16315.755595261846, 16482.33513213805, 16318.9942844056, 16510.71898474109, 16594.646377203746, 16606.548800956898, 16646.55515724703, 16729.52965432625], [14866.888022051655, 14570.592413330201, 14725.613168022972, 14708.478389538608, 14875.824930389532, 15011.779124690749, 15315.865542387208, 15433.98751436997, 15583.232862611309, 15615.853796000707  …  15990.638845181355, 15963.157125987167, 16103.357252073914, 16251.379276295846, 16074.116995074055, 16246.580597031823, 16312.714483101561, 16307.968642246125, 16330.786636092147, 16395.65271292636], [15944.236265986641, 16878.298868444872, 15527.33973704696, 15721.81632702159, 15669.014446587991, 17875.47796113958, 16606.815416800207, 16514.63300643155, 17380.69900247975, 17264.25318724877  …  17758.304335497694, 17371.78339052261, 16624.933878704072, 16886.238098769245, 16973.682733584497, 16625.985816602853, 17241.41931019043, 16463.82749300762, 17091.61587684463, 17145.53897105754], [15944.236265986641, 16861.29480676794, 15496.069423960687, 15674.347295870242, 15605.966736088496, 17785.615852489682, 16506.68457353885, 16398.520608182986, 17241.11030526069, 17108.346490023985  …  17562.49579536309, 17162.92850018381, 16408.510655713962, 16649.622622819345, 16718.981411595207, 16360.003390777956, 16948.499178441834, 16167.81341538266, 16767.404998461843, 16803.359589533276], [15944.236265986641, 15960.315504263734, 15894.144416530271, 15928.931719740262, 15968.895824043306, 17626.913890901244, 16190.68555898458, 16308.75709833263, 18207.929907542617, 16510.69977436572  …  16791.951599461743, 16818.635422122534, 16828.888269651452, 16871.495327258508, 16929.572181234966, 16951.665644999026, 17018.0521033359, 17052.47157813872, 17122.267855438455, 17217.895832024464], [15944.236265986641, 15944.236265986634, 15862.135400139814, 15880.837343092922, 15904.641475159857, 17538.30134276854, 16093.063771946436, 16194.092188830658, 18061.697514099335, 16361.598122369987  …  16606.7983626108, 16616.43083680333, 16609.80997043945, 16635.0864318316, 16675.53276722248, 16680.472995145636, 16728.926830379554, 16745.873877964055, 16797.475539643565, 16874.272399894588], [3173.2320350842083, 3176.4321353053424, 3173.717130602685, 3172.174020539829, 3175.0732154101374, 2526.2904390134727, 3171.4347182238434, 3199.366762755125, 2996.354598714095, 3205.798059132766  …  3250.0399263684817, 3257.590988057188, 3271.2898761275487, 3271.623223398136, 3283.007284215449, 3288.4973888601594, 3298.082698516227, 3311.909646920731, 3313.525934054588, 3322.991427426599], [3173.2320350842083, 3173.2320350842083, 3167.3256218187043, 3162.5962450292664, 3162.2976131166924, 2513.5904828833272, 3152.3125430979117, 3176.8723998736964, 2972.290133022514, 3176.8477545960936  …  3214.2039838517544, 3218.426108246949, 3228.7042572317437, 3225.780171700937, 3233.743591208178, 3235.8880264767026, 3242.0504890335556, 3252.362626051688, 3250.671657351624, 3256.673351723835], [34195.564496956766, 33390.76544267921, 33909.328325190094, 34933.71584007509, 34555.802650927435, 34371.52483318931, 34771.414307999665, 34365.42182172339, 34325.16872145969, 33949.85094191052  …  33906.49295969884, 32143.284363767754, 32910.332056914296, 33685.353143256645, 34170.68184726495, 34722.05888573839, 33773.64955200727, 34777.94057616135, 35330.19186048948, 36793.352197576736], [34195.564496956766, 33357.12587749243, 33841.03875780569, 34828.24013606276, 34416.75981265324, 34198.73517655817, 34561.75996135551, 34123.80267445018, 34049.49479240946, 33643.26315764791  …  33532.629511810315, 31756.83687130214, 32481.90568328788, 33213.34298801002, 33657.928193483414, 34166.57558664639, 33199.8579343672, 34152.644908691575, 34660.01341632963, 36059.05469194429], [33097.63671130043, 32918.275430496695, 32597.976989990642, 33593.089272034704, 33091.24048597677, 34064.66591213512, 33159.24104677922, 32717.69443626114, 33271.58072386805, 32246.29454854614  …  32411.252965682917, 30651.231152507557, 31096.405118279494, 31986.786554096292, 32331.622257904048, 32709.678480637493, 32320.725793833615, 32539.269304267444, 33345.77436748765, 34578.67809910923], [33097.63671130043, 32885.11187591808, 32532.328336472485, 33491.661334705124, 32958.090634252505, 33893.4188710225, 32959.30730363897, 32487.660262042526, 33004.36842089907, 31955.090913713288  …  32053.876495089513, 30282.722095193487, 30691.59242740166, 31538.57726791096, 31846.46490811734, 32186.3892317351, 31771.61837480899, 31954.224192868947, 32713.238340704844, 33888.579601426965], [29576.147776884878, 29605.974349916607, 29480.591156195307, 29549.552472733114, 29649.077000700887, 29825.482114548035, 30154.22391905155, 30310.73007893904, 30430.073969684025, 30771.86784192599  …  31268.396122223912, 31272.278852865114, 31243.105815750394, 31337.43724463748, 31434.88119199264, 31504.735250923943, 31632.062758693748, 31660.05909088432, 31832.769159371845, 32029.360594756872], [34346.71094688275, 34381.34847608993, 34141.4683026494, 34278.04225303936, 34394.74654197559, 34661.67322757078, 35337.90604223103, 35422.55425027309, 35563.53015509097, 36051.78795544557  …  36697.853389594464, 36613.20979925566, 36501.276959060415, 36699.75935281328, 36852.56098708105, 36809.45050084679, 37016.30538506444, 37080.78877533914, 37262.87289145757, 37510.75914170656], [28335.32931213966, 28363.90456052843, 28166.008356714257, 28278.679053647775, 28374.957689010018, 28595.166708448145, 29153.044856510303, 29222.877885188464, 29339.18010388618, 29741.982735662605  …  30274.97341596706, 30205.144196798996, 30112.801908401125, 30276.545796377668, 30402.6039983728, 30367.038734899877, 30537.68975511536, 30590.887224340935, 30741.10287091928, 30945.603923250594], [978.0617717704337, 979.0481149238881, 973.2099873883568, 975.7679943530409, 980.4566712436488, 985.4375255645042, 1010.6285519229688, 1012.323611424496, 1012.7588065545392, 1027.0961348554802  …  1043.7905491316765, 1040.8299427234654, 1030.27599934863, 1036.5148380451526, 1041.0962823377404, 1040.8232723232486, 1046.520227914397, 1049.8050268563436, 1055.370117154711, 1061.66953570734], [0.0019383188997990075, 0.002678088463958117, 0.00470399372264807, 0.006313671750754146, 0.00764999142185685, 0.005899429021035241, 0.0031614289268695472, 0.0051889836698963965, 0.004450317947736426, 0.0008932862127333241  …  0.005510771115127877, 0.0033011715928363827, 0.003721006553368822, 0.00521453554864193, 0.0036585210638897525, 0.0018876919912131918, -0.0002929307341669185, 0.006948666828132888, 0.00845968009244169, 0.005044300087610365], [2.3548476e6, 2.3393899886458484e6, 2.3573142315253615e6, 2.375764199471119e6, 2.374211288291659e6, 2.3904757313744146e6, 2.373242385423222e6, 2.3640569203879316e6, 2.3839499409175673e6, 2.372347901046877e6  …  2.377877067711004e6, 2.3437632704614135e6, 2.341767577102189e6, 2.36671223108142e6, 2.380559468428288e6, 2.3821813901654575e6, 2.3851579523931313e6, 2.404056345562914e6, 2.4073857156861904e6, 2.4385679250247753e6], [0.0016459319014481277, 0.0009398843444483715, 0.0017318760486474912, 0.0025183788326485646, 0.002443194927322255, 0.003071508714148127, 0.0022075704272714524, 0.0017825189648924176, 0.0025803567354714383, 0.0019311328152880492  …  0.002017995039770766, 0.0005332484654627977, 0.0004954075988949152, 0.0016261304056838773, 0.0021651861986269976, 0.0021152240231396627, 0.00207480698276773, 0.0028599988787870434, 0.002978615556697038, 0.004147885296346466], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086171; 518.6059091613059 258.5036962251161 … 137.13538556670355 505.41380923410765; … ; 560.618559510895 277.4915342058482 … 146.09445052832274 534.1844630139449; 563.1337738681772 278.65839386141863 … 146.74882110839707 534.7839420372143], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086171; 518.0834390395163 258.24326637797435 … 136.9972283642248 504.90462950861695; … ; 549.98418550399 272.22779702049814 … 143.32318475252166 524.051517409497; 551.8951206661457 273.09711305076576 … 143.8201047273576 524.1110761188957]), BeforeIT.Data{Float64, Vector{Float64}, Matrix{Float64}}([72421.99999999999, 72478.72218331226, 72839.30678656968, 73057.31801953806, 73303.45081948582, 73572.27448758729, 73713.4007292828, 73643.67767479375, 73909.30150152599, 74272.83436755964  …  74836.18805055415, 75142.37598897278, 75505.40726420982, 75874.02536508994, 76368.20556285295, 76821.88585708333, 77091.6193899388, 77481.65073077907, 77976.00246513293, 78497.50084771519], [72421.99999999999, 72405.70341098962, 72692.61662799925, 72836.73535702836, 73008.49833465465, 73202.41809896394, 73268.9455589546, 73125.89783510056, 73315.717600931, 73602.10553995441  …  74011.02116217524, 74238.96542114776, 74522.4786274695, 74810.85377417806, 75222.25019063942, 75592.88976734159, 75781.88456462395, 76088.5567261397, 76496.87559765864, 76930.89939315569], [64900.92049553801, 64966.3709409303, 65293.675853254914, 65498.196872399, 65716.00949336635, 65956.01882809256, 66075.18062395915, 65998.60518770822, 66244.37776104004, 66582.41158258138  …  67102.99622519429, 67378.41083634621, 67707.83416334816, 68045.26814371499, 68498.65587285349, 68919.61956283856, 69161.14431254138, 69534.52543830127, 69984.29636045844, 70454.89740649424], [64900.92049553801, 64900.920495538, 65162.181745374044, 65300.43753702571, 65451.58674005028, 65624.45024330118, 65676.78012461789, 65534.57693310408, 65712.35276087042, 65981.13194595264  …  66363.09789474166, 66568.34371254721, 66826.41425526212, 67091.79565246023, 67470.78829225022, 67817.04388399106, 67986.14293130716, 68284.31807191302, 68656.764173946, 69048.80493774186], [40512.94792630534, 40414.21311273224, 40522.722679231614, 40553.89800773609, 40721.21511471485, 40872.05366802775, 41015.32816836628, 41082.95234571157, 41119.714063885986, 41196.349167200075  …  41336.00963128565, 41497.785259111006, 41637.83394708126, 41758.17580351154, 41918.34669395526, 41996.56794274945, 42157.098563221276, 42173.86578818484, 42380.3847151681, 42646.145410740886], [40512.94792630534, 40373.4977670834, 40441.11448061247, 40431.45323368488, 40557.364389419396, 40666.58509619743, 40768.02612441245, 40794.103049324985, 40789.47145883456, 40824.32110049421  …  40880.22604136779, 40998.8718663549, 41095.79304112056, 41173.046624072704, 41289.334211152964, 41324.70708944745, 41440.87777866106, 41415.59387441096, 41576.47115581203, 41795.04171049146], [14866.888022051655, 15000.262352978114, 15307.6403243924, 15375.61619601149, 15409.569351686217, 15478.39509868724, 15313.580983437105, 15586.473699318432, 15758.655158169346, 16047.764036015646  …  16340.024391320585, 16454.323972965587, 16706.217220913688, 16943.742713261105, 17341.25482915276, 17658.28328430255, 17743.018549794233, 17896.67275641081, 18064.945974996546, 18153.385609705027], [14866.888022051655, 14985.150321356434, 15276.812461174233, 15329.192450243332, 15347.565575333978, 15400.583404638688, 15221.247701062506, 15476.88707751699, 15632.093496688534, 15902.842975048809  …  16159.854243237764, 16256.4993770841, 16488.735852187605, 16706.321463897057, 17081.03784505673, 17375.78616950466, 17441.576583925944, 17574.89660315643, 17722.271997024447, 17791.09228833528], [15944.236265986641, 16049.767643473053, 16031.772503738543, 15975.515329633517, 16028.915942703316, 16317.678070445518, 16407.179269269018, 16048.382578134162, 16198.269188744696, 16160.738981911618  …  16183.588373544982, 16548.166261589504, 16318.664449940368, 16639.283834649043, 16565.520562813534, 16747.868978402745, 16753.021024327754, 16675.77474883258, 17010.357566736613, 16947.694204427302], [15944.236265986641, 16033.598286535054, 15999.48631988416, 15927.280302645091, 15964.420089730524, 16235.647203194421, 16308.252132756754, 15935.54833056528, 16068.176878134153, 16014.797688532022  …  16005.143137237892, 16349.213432615365, 16106.228239311446, 16406.128762396118, 16316.94398382287, 16479.936666453843, 16468.39845136288, 16375.949930876199, 16687.688077318307, 16609.46327853333], [15944.236265986641, 15947.935078074564, 15985.302948219454, 16014.737644097331, 16060.613239163322, 16114.36876947185, 16148.81747729595, 16175.785999582396, 16199.387932352762, 16245.70729163914  …  16353.375616543253, 16405.988597596675, 16466.779403968707, 16536.01350022763, 16624.705060890985, 16696.036248448676, 16769.690151458726, 16837.96871062815, 16929.508769266053, 17027.198387969333], [15944.236265986641, 15931.868312472117, 15953.110348815122, 15966.384192797846, 15995.989845177812, 16033.359961744605, 16051.448133981687, 16062.055993881699, 16069.286636835297, 16098.998682790134  …  16173.05825373372, 16208.745121068072, 16252.415034349338, 16304.305485583847, 16375.24037941024, 16428.933156216568, 16484.784381221776, 16535.22769982307, 16608.372900766506, 16687.380769910193], [3173.2320350842083, 3164.0517091161723, 3160.638195638895, 3153.8203724816426, 3163.0615280732395, 3171.1136737656816, 3197.642912496048, 3214.37205445686, 3203.8885649314884, 3195.4644162289437  …  3210.0840925820203, 3216.865671730355, 3222.4209655496284, 3227.6776080098493, 3242.1586953186193, 3235.4669638541145, 3268.9696901627844, 3257.6023439125747, 3269.3170833717063, 3290.8031253991417], [3173.2320350842083, 3160.8640815696926, 3154.273026356599, 3144.2980123170773, 3150.33425743387, 3155.172116168591, 3178.3627149843123, 3191.7721911743597, 3178.1573425710017, 3166.607430767145  …  3174.6887154107335, 3178.190418188451, 3180.471521643078, 3182.450336609045, 3193.50796237176, 3183.7059819060446, 3213.4320911346904, 3199.0317500751717, 3207.3014044008573, 3225.1274426417963], [34195.564496956766, 34951.38311754628, 35255.09767394727, 36376.051806419295, 36587.873663064434, 36911.12023318489, 36097.52448378047, 36110.61119744437, 36521.92105191015, 36356.38019651212  …  37536.87500743094, 37598.27770359134, 37495.53865020138, 37729.22352048169, 37131.28786424368, 37720.736105542106, 37312.14473000185, 38104.85341235592, 39265.567423946355, 39145.858357400015], [34195.564496956766, 34916.17130628159, 35184.097878694454, 36266.221243560365, 36440.65434213251, 36725.563734835945, 35879.87435186229, 35856.72183358613, 36228.60446096966, 36028.0599907085  …  37122.98184750105, 37146.24672955844, 37007.422102994075, 37200.54933453828, 36574.108361443716, 37117.27998547063, 36678.236456355604, 37419.740971723186, 38520.73883685185, 38364.61108225868], [33097.63671130043, 33936.90404341752, 34277.92639474022, 35223.76332026226, 35444.123252682904, 36006.972582758215, 35120.21217556986, 35184.74214581457, 35689.25796118404, 35488.3980140801  …  36560.30935302778, 36956.17720828463, 36652.84700392674, 37196.400506813334, 36588.20438731233, 37301.570453913395, 36873.66347740642, 37369.515975005, 38745.25321571469, 38395.58273455801], [33097.63671130043, 33902.71427026704, 34208.89451236606, 35117.41187310521, 35301.506061961736, 35825.961339902555, 34908.454751139245, 34937.36245589258, 35402.62869369587, 35167.91621482937  …  36157.18410716905, 36511.86598446497, 36175.70060814407, 36675.19241072596, 36039.17421083689, 36704.820143534824, 36247.204705681586, 36697.624654027044, 38010.29446934802, 37629.308966463046], [29576.147776884878, 29605.974349916607, 29677.970567436474, 29759.347855193377, 29856.162465511155, 29960.65548463098, 29994.300086241205, 30012.79002367094, 30064.35389138742, 30164.548657311057  …  30365.20852295779, 30474.95147181698, 30589.65340359416, 30715.835008361704, 30865.019709301454, 31002.67325435127, 31100.851262396096, 31273.968173369678, 31464.851391274256, 31654.939448243276], [34346.71094688275, 34381.34847608993, 34624.75221807918, 34741.4059009654, 34854.71704617828, 34985.41172120552, 35064.758815723195, 34974.07824413798, 35163.306640285686, 35392.796862379786  …  35701.93542707217, 35859.67483118744, 36066.95828893777, 36272.09522254424, 36565.91115952296, 36841.253112774655, 36977.19892204848, 37176.495948877026, 37426.76795957966, 37693.89606088682], [28335.32931213966, 28363.90456052843, 28564.70763584293, 28660.944522255922, 28754.423883913227, 28862.244299730257, 28927.704018903853, 28852.89441451251, 29009.00394501007, 29198.328652898657  …  29453.361603424477, 29583.493363872196, 29754.497948427554, 29923.731694762417, 30166.123792926417, 30393.275234905825, 30505.42772835233, 30669.843671842533, 30876.312927423878, 31096.68811067711], [978.0617717704337, 979.0481149238881, 990.9530677392304, 997.4431162402165, 1005.1299816769944, 1009.9516222560076, 1016.1217219947764, 1011.7369198993086, 1016.7172293670371, 1025.0660628905014  …  1035.8522751643502, 1043.784533341762, 1051.2224708162564, 1057.33791280905, 1067.7250040290244, 1075.6931957125564, 1083.0941280967947, 1084.0613160545938, 1092.6770096045373, 1106.0618973641085], [0.0019383188997990075, 0.002959217374571832, 0.008528713244735586, 0.0025785005419243223, 0.005763970429135679, 0.00473886504784482, 0.0010459544515559749, 0.004830519671004119, 0.010829624571442764, 0.007694367631656096  …  0.0029020577570897377, 0.005861177401196294, 0.005730406646686781, 0.007952543460525208, 0.00761210865020745, 0.005752002932887246, 0.0009384248790198502, 0.001940217159596358, 0.002201147717633578, 0.005708195699723584], [2.3548476e6, 2.3661053096578484e6, 2.3685711757145585e6, 2.40509547739995e6, 2.398668187581371e6, 2.4123439659418063e6, 2.3974955563719217e6, 2.4043568344846815e6, 2.4010398152735257e6, 2.4016527590160025e6  …  2.4174140923077725e6, 2.4222922151240595e6, 2.4216588235865566e6, 2.4424018231100505e6, 2.421001032980797e6, 2.4274611190477274e6, 2.4216592354985187e6, 2.4544356885113735e6, 2.4739250523895095e6, 2.4500958225129615e6], [0.0016459319014481277, 0.002062211302867032, 0.0022077635420491583, 0.0036202362328797183, 0.0032216370667600734, 0.0036526665424041135, 0.0028008277858257487, 0.002985816211565887, 0.002877589384652843, 0.002866232591915975  …  0.003338076366954317, 0.0034239320106006785, 0.0032762295507398637, 0.00405868857189758, 0.0030710456256869724, 0.003238142659100854, 0.002784857378505752, 0.003954482773995859, 0.004493255676484634, 0.0033441796500701445], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086171; 518.6059091613058 258.5036962251161 … 137.13538556670355 505.41380923410765; … ; 516.3241151134341 263.8326939183166 … 144.51175445423715 535.4229855821163; 512.0167206258297 263.64606032019395 … 145.28138737577137 538.384759187814], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086171; 518.0834390395163 258.24326637797435 … 136.9972283642248 504.90462950861695; … ; 506.52996246588447 258.8280512878199 … 141.77051084182327 525.2665464418574; 501.79822792696956 258.3843857811819 … 142.3819570712978 527.6400305308783])])

Now, apply a shock to the model and simulate it again A shock is simply a function that takes the model and changes some of its parameters for a specific time period.

In this case, let's define an interest rate shock that sets the interest rate for a number of epochs.

We do this by first defining a "struct" with some useful attributes

struct CustomShock
+  ⋮          => ⋮

Initialise the model and the data collector

T = 20
+model = Bit.init_model(parameters, initial_conditions, T);

Simulate the model for T quarters

data_vec_baseline = Bit.run_n_sims(model, 4)
BeforeIT.DataVector(BeforeIT.Data[BeforeIT.Data{Float64, Vector{Float64}, Matrix{Float64}}([72422.0, 72474.35204292928, 72500.67749532155, 72479.97217810026, 72524.38479605025, 72944.98676292054, 73296.87194582711, 73719.31241025148, 73994.37474483742, 74224.6377515799  …  74223.36403833711, 74244.72559165639, 74243.3548214, 74652.6570142359, 74660.63317396006, 75053.3091144611, 75090.68027577705, 75122.74458543962, 75418.10648195737, 75787.19722139236], [72422.0, 72401.33767330972, 72354.66929799739, 72261.1327014391, 72232.5670539482, 72578.28382271383, 72854.92823704587, 73201.00079183122, 73400.10759996096, 73554.34416870477  …  73404.95433650722, 73352.10716134965, 73276.85557073976, 73606.59963502412, 73540.30105343927, 73852.60670531333, 73814.94006183329, 73772.06291943214, 73987.500345904, 74274.68622267427], [64900.920495538005, 64966.370940930225, 65009.76162902033, 64965.39434724502, 64997.12981187437, 65402.09094537466, 65731.2647164538, 66107.98959866511, 66346.07146921755, 66551.99108685428  …  66514.29513029265, 66521.27112465473, 66507.32551657017, 66891.63658794035, 66881.61132696056, 67255.34297325698, 67265.83763517895, 67287.65194572217, 67569.3800715236, 67907.71197340774], [64900.920495538005, 64900.920495538005, 64878.839292404366, 64769.24370765724, 64735.599628362244, 65073.30702053437, 65334.937859106605, 65643.19227542488, 65813.22974169781, 65950.98616578775  …  65780.88799966338, 65721.50909253575, 65641.5338180429, 65954.32915831967, 65878.00856796447, 66179.39238175281, 66123.0362411757, 66077.84260857242, 66287.65643447141, 66552.45455496124], [40512.94792630534, 40440.97467769727, 40333.81893759827, 40506.55871060514, 40564.61834049748, 40599.27996257108, 40699.01242453883, 40948.69124671697, 41136.25261834324, 41266.448275478106  …  41602.790825908676, 41667.16935802959, 41731.68524443336, 41843.421470098074, 41947.6684866807, 41997.274789030445, 42201.00923150865, 42242.32365512629, 42261.84527548088, 42419.06364196005], [40512.94792630534, 40400.232371078906, 40252.591169834915, 40384.25686854891, 40401.397716611464, 40395.182655912635, 40453.61760730934, 40660.78592396843, 40805.877188066006, 40893.78717122756  …  41144.06562426542, 41166.2195193535, 41188.42258322197, 41257.09780057458, 41318.21601100873, 41325.40262760551, 41484.0424341921, 41482.82089194329, 41460.18029087267, 41572.49189018559], [14866.888022051655, 14878.991589799392, 14858.77668598505, 14786.833104116473, 14982.343426806747, 15020.088808085406, 15082.61737108209, 15217.330025565983, 15328.202307959258, 15286.890659169087  …  15081.951186318534, 15030.772789962499, 15311.821172150609, 15173.428894544937, 15449.505496387625, 15347.354934566014, 15344.79309658451, 15520.853741589612, 15574.705139490825, 15688.736864173454], [14866.888022051655, 14864.001732548053, 14828.852783570454, 14742.187076796994, 14922.058687508299, 14944.581073112582, 14991.676684499533, 15110.3388085333, 15205.09771990034, 15148.840747154027  …  14915.652941374608, 14850.06305324846, 15112.49203724383, 14960.813859824108, 15217.675460692153, 15101.828038265201, 15084.095370101477, 15241.794014668876, 15279.268542377275, 15375.631380225572], [15944.236265986641, 16167.970452874444, 16341.576245128988, 16087.22330350771, 15549.423926068755, 15864.523803144848, 16071.17054003792, 16264.221251938488, 16244.473360819566, 16424.371476549586  …  16556.37011561356, 16782.917115888496, 15663.725071626024, 16687.02984982915, 16061.434198153707, 16873.207686033482, 16716.930617068727, 16246.222077341868, 16581.046236870356, 16314.177241465039], [15944.236265986641, 16151.682012379677, 16308.66615143863, 16038.650995560112, 15486.857414214073, 15784.770995148603, 15974.269369164316, 16149.869468615776, 16114.009973062788, 16276.049421542257  …  16373.814472855209, 16581.141959302342, 15459.814855274757, 16453.20574483832, 15820.421768056895, 16603.27020615803, 16432.921195878527, 15954.120471858138, 16266.520354490562, 15988.589630134456], [15944.236265986641, 15949.97169688411, 15965.760506829172, 15993.420422586925, 16005.187879800953, 16050.574126034118, 16118.649008522638, 16201.440332380795, 16271.335715364421, 16327.914191636353  …  16378.491399657665, 16385.262917577584, 16364.102454569871, 16446.531351295827, 16462.20278302087, 16507.093463149737, 16536.26871308014, 16550.88650615304, 16580.376421372628, 16639.953478746305], [15944.236265986641, 15933.902879487692, 15933.607263700364, 15945.131334579306, 15940.787501884757, 15969.886021406022, 16021.461566081198, 16087.529954152053, 16140.656589387067, 16180.463204525848  …  16197.897102477938, 16188.268618668157, 16151.074732450943, 16216.077189708782, 16215.176555566137, 16243.013076514097, 16255.328616274797, 16253.30713677036, 16265.863244723669, 16307.864239699242], [3173.2320350842083, 3166.0883279257173, 3158.3126844564517, 3169.9704633264723, 3177.040515998382, 3159.2541940342876, 3157.6985155600396, 3171.3967538551883, 3196.0910859416445, 3213.491805335185  …  3255.836671199018, 3264.4188078712277, 3262.4327555330897, 3281.678748851086, 3288.5436083875898, 3269.780849714221, 3299.2550240580645, 3307.1018439306517, 3294.659570963819, 3300.1000372092203], [3173.2320350842083, 3162.898648585268, 3151.95219849171, 3160.399341037398, 3164.256997840275, 3143.3722554224155, 3138.659162909199, 3149.099044742066, 3170.422487065618, 3184.472021595084  …  3219.936811986131, 3225.1718395657344, 3219.9624385446177, 3235.6947958514816, 3239.196839178901, 3217.470914416769, 3243.202897551968, 3247.6412657413593, 3232.1631703208855, 3234.2388128052094], [34195.564496956766, 32576.025318769858, 30947.33890374104, 31780.75423404153, 33188.19621124658, 33004.78288216836, 33507.43764681084, 33574.98879120878, 33876.71347012681, 34408.90264930789  …  33441.89627679147, 35063.34554303561, 36045.87563114741, 34774.982222564875, 35657.28464720056, 36329.3853078553, 35979.53013541196, 36977.02025036349, 37154.34311339021, 37093.33411231671], [34195.564496956766, 32543.206564461332, 30885.014449385355, 31684.79829731215, 33054.65623693248, 32838.863996431784, 33305.40445122867, 33338.92708349822, 33604.641196239594, 34098.16934917649  …  33073.15561520705, 34641.79117387993, 35576.63078262589, 34287.70382925952, 35122.22353637751, 35748.188009872436, 35368.26208851223, 36312.18587042481, 36449.56234231951, 36353.049765079115], [33097.63671130043, 31589.609996211562, 29980.83327713186, 30681.397174170786, 31760.19710856951, 31543.688693049186, 32063.36603664231, 32285.918905178743, 32591.267012411627, 33161.97530892472  …  32459.64436629527, 34299.47921525989, 34509.75229795772, 33826.205422800915, 34455.25965446269, 35493.913603024506, 35151.582804796846, 35863.67513898165, 36153.83328327487, 35728.114638523024], [33097.63671130043, 31557.785007158323, 29920.455256231977, 30588.76053677908, 31632.403001318464, 31385.11489789175, 31870.03987515589, 32058.920492784462, 32329.51847730798, 32862.50252039551  …  32101.73431719529, 33887.10854443468, 34060.50468762704, 33352.22159947221, 33938.235722696176, 34926.08217658815, 34554.38102685108, 35218.85832946296, 35468.03118415593, 35015.076442950674], [29576.147776884885, 29605.97434991661, 29629.908616463137, 29640.26839050235, 29667.018326189114, 29809.91627391501, 29968.254406745287, 30128.231937641343, 30224.37898023337, 30320.131235907873  …  30367.019683611663, 30365.716103214396, 30353.961977981508, 30481.39066276418, 30514.517290105818, 30633.979264991423, 30664.4249726064, 30675.905999122897, 30773.3841021436, 30898.472671998974], [34346.71094688275, 34381.34847608993, 34406.160942460374, 34361.42818850695, 34365.85512817582, 34617.16521740784, 34784.38437491573, 34994.83431269168, 35131.41347463892, 35236.72757841601  …  35153.88550497037, 35161.631757794385, 35152.56129968366, 35395.84469351625, 35357.67287902721, 35602.0848637505, 35578.49053568161, 35589.498699432486, 35765.675732366515, 35971.02253803006], [28335.32931213966, 28363.90456052843, 28384.374334380722, 28347.470733442944, 28351.12286751646, 28558.448516509896, 28696.400878312812, 28870.01774368962, 28982.692740050577, 29069.57470718716  …  29001.23170236167, 29007.62220144157, 29000.139260266293, 29200.843050829608, 29169.352089856322, 29370.986944666092, 29351.522109830392, 29360.60361826028, 29505.94604284182, 29675.352929302397], [978.0617717704336, 979.0481149238879, 973.692070096811, 963.6977682355973, 964.2563575095813, 975.0094540518211, 978.6259347929579, 984.9233483320202, 990.2790143452612, 995.1322725304058  …  993.3899417106869, 993.9232636459581, 1000.8022389050561, 1014.4012316599171, 1009.4211578275372, 1019.2788445150399, 1022.9221268909012, 1022.2472471667751, 1030.3202370134668, 1038.2167633786967], [0.0019383188997990075, 0.0028540605204823155, 0.001001084636563121, 0.004376684203776682, 0.0015725718980503789, 0.004313687601069649, 0.002279154218084445, 0.0030138217672484036, 0.0005527697217253547, 0.007966899899319424  …  0.0002577005024497758, 0.0024651948289349246, 0.004850400160717028, 0.008718739937380926, 0.005249933894092118, 0.005823268137937765, 0.005765342364033588, 0.005556423169326141, 0.005709202712355976, 0.007185963396163286], [2.3548476e6, 2.3182728193180757e6, 2.283460755984142e6, 2.304703905170909e6, 2.321818044823849e6, 2.3263389258442614e6, 2.3419420521651534e6, 2.3302927829362964e6, 2.3398182131665577e6, 2.3494056042543813e6  …  2.3212440057627345e6, 2.357895597789562e6, 2.3654023159422404e6, 2.338521372302773e6, 2.3472208382134833e6, 2.3598376968040806e6, 2.34904200826309e6, 2.3635173660507393e6, 2.343158631383005e6, 2.334266614630387e6], [0.0016459319014481277, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01  …  0.0075177030845669434, 0.008570782451205263, 0.008360711382528814, 0.006824036119240345, 0.006805212868729497, 0.006963741638510874, 0.006130524292491828, 0.006410288654342015, 0.005219482557589373, 0.004624707024909909], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.90462950861706; 518.6059091613058 258.50369622511613 … 137.13538556670355 505.4138092341076; … ; 520.7956859480452 260.91949799616356 … 142.57742519175125 527.3636605987473; 522.2404609062448 268.7704922053663 … 142.9914792174397 528.0248333553923], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.90462950861706; 518.0834390395163 258.2432663779743 … 136.9972283642248 504.904629508617; … ; 510.91671206893244 255.97011578197925 … 139.87287387301976 517.3600988020241; 511.8179295281696 263.4065476277094 … 140.13774939276288 517.4868612792734]), BeforeIT.Data{Float64, Vector{Float64}, Matrix{Float64}}([72422.0, 72495.20242787163, 72546.18416075513, 72667.96763096361, 72814.31891903211, 72936.19935959915, 72855.19790791799, 72778.90140425657, 73079.34449686184, 73722.36145102949  …  74779.24236261133, 75482.22414371955, 76312.77285056228, 77050.51935488882, 77690.09403791976, 77969.2641346834, 78464.68836875899, 78847.00981026866, 79053.29847922083, 79432.51530442009], [72422.0, 72422.16705250768, 72400.08431813309, 72448.56053782468, 72521.33456350239, 72569.54059469193, 72415.91727407019, 72267.20170250449, 72492.42618647216, 73056.60372836597  …  73954.70337494959, 74574.72770011022, 75319.33393669246, 75970.86234646046, 76524.30285591753, 76721.91229383188, 77131.62602388609, 77429.36710887542, 77553.73638259593, 77847.25344676433], [64900.920495538005, 64966.370940930225, 65016.56316018585, 65124.666276464806, 65250.509102203534, 65358.20418110915, 65272.36129941637, 65190.63702675879, 65493.675192152485, 66120.00257175631  …  67098.16267650611, 67775.95861354186, 68550.18901899092, 69213.1377061242, 69786.11459462364, 70037.12802001256, 70488.87864553485, 70831.50899900917, 71026.00714532495, 71368.44928829453], [64900.920495538005, 64900.920495538005, 64885.62712605232, 64928.03474561028, 64987.95939163695, 65029.640880141866, 64878.801401595636, 64732.289499110186, 64967.679270190725, 65522.898769487045  …  66358.31764225218, 66961.11191153039, 67657.80334381759, 68243.30064564248, 68738.92784542366, 68916.67444727129, 69291.3199499205, 69557.98230468374, 69678.71474590997, 69944.12475238905], [40512.94792630534, 40551.863567466935, 40515.30444814108, 40558.26609902132, 40668.096387429854, 40781.50834956563, 40855.36289644624, 40881.0085559209, 40792.846129820566, 40787.86373389636  …  41216.888089343716, 41193.38303979386, 41476.6254640758, 41842.2324636509, 42224.80605149479, 42411.636750514605, 42618.32774113448, 42835.11204510867, 42861.62339086678, 43068.64657951385], [40512.94792630534, 40511.00954570859, 40433.71118900371, 40435.80813635024, 40504.45939696452, 40576.49495959199, 40609.02536357843, 40593.57910203028, 40465.22868208156, 40419.524538877165  …  40762.41797028363, 40698.1293687087, 40936.68316853501, 41255.92545487403, 41591.194943590104, 41733.135628804615, 41894.27098268338, 42064.95114616992, 42048.58121459821, 42209.11087903027], [14866.888022051655, 14891.090720647657, 14976.142694000531, 15092.358905722507, 15145.445911405961, 15070.761645484474, 14944.167015723504, 14984.641132712135, 15237.662748554096, 15371.945088194125  …  15593.980788855706, 15996.220612343723, 16145.322689394252, 16400.739088611306, 16256.64302269308, 16407.47980965389, 16524.59294705509, 16544.99175596019, 16568.267535375056, 16393.13835354252], [14866.888022051655, 14876.088674112989, 14945.982429666981, 15046.790401413598, 15084.504893547939, 14994.99917225907, 14854.061115972987, 14879.285923296706, 15115.28530611476, 15233.127083000114  …  15422.036747608101, 15803.903633325557, 15935.143040070821, 16170.926583145043, 16012.701355232068, 16144.993041676258, 16243.851213671198, 16247.518372202348, 16253.984052196674, 16065.974888309804], [15944.236265986641, 16118.54185800835, 16099.46864386107, 16092.152083808345, 15902.191278445085, 16472.668905189774, 16184.238646520624, 15522.923724915277, 15754.809297757041, 16067.061261880117  …  16340.752760530211, 16469.832284405456, 16678.667327281553, 16799.98012232027, 17174.509820193307, 16921.78140981283, 17105.888980899057, 17293.881453032598, 17291.768856559484, 17578.175699575793], [15944.236265986641, 16102.303214408532, 16067.046127606414, 16043.564894347011, 15838.20532990648, 16389.85888096952, 16086.655731160576, 15413.783915339998, 15628.278523333522, 15921.96593523748  …  16160.574581223911, 16271.821237506752, 16461.544602795362, 16564.57332127099, 16916.794955106143, 16651.066847782877, 16815.271418399534, 16982.943284551042, 16963.761276107776, 17227.362038987136], [15944.236265986641, 15960.212201581653, 15958.60481246474, 15969.833564202065, 15995.203219593788, 16027.029463743827, 16029.39094668504, 16024.396141672398, 16073.393898039, 16133.986062322503  …  16394.969947672107, 16491.78164823104, 16664.963092668848, 16815.538303686386, 16961.93709216138, 17064.462988951556, 17176.947114045393, 17264.2811911142, 17315.648535571243, 17394.289120639336], [15944.236265986641, 15944.133067376957, 15926.465980098299, 15921.61569222268, 15930.843017144158, 15946.459720873974, 15932.741685994624, 15911.730539853206, 15944.304491807807, 15988.286364063775  …  16214.193952940195, 16293.506711789638, 16448.018769771807, 16579.91349632526, 16707.412021280834, 16791.465807836124, 16885.122321598694, 16953.875225380336, 16987.18798146487, 17047.14534735823], [3173.2320350842083, 3176.328832623261, 3169.812505418424, 3175.79988653767, 3187.203414883235, 3193.7169953878015, 3200.0559690411083, 3202.922061047957, 3201.8820996101663, 3161.5506371240363  …  3196.480607055723, 3171.191195331479, 3187.6695546244737, 3196.118205956532, 3233.6731954358115, 3275.4021360033, 3296.388574855543, 3316.958366042016, 3323.706157919418, 3341.085307901693], [3173.2320350842083, 3173.128836474533, 3163.428860109712, 3166.211163415062, 3174.3790040762024, 3177.6618082616037, 3180.7612219977245, 3180.4027012918978, 3176.166991669497, 3132.9999136959054  …  3161.2352261110723, 3133.065070082584, 3146.1725042378603, 3151.333155190908, 3185.149793020109, 3223.002271400042, 3240.385147395822, 3257.3205709022886, 3260.658772539985, 3274.4061264419074], [34195.564496956766, 34348.875017480714, 35256.0160476186, 35938.61475516045, 35848.77498232537, 35075.17565320707, 34339.09275312866, 36162.751648593505, 36416.2773776814, 35913.58617917247  …  35224.0699607453, 35299.38662666884, 34591.307863211456, 35815.84917588855, 36256.60478187236, 36011.664075680135, 36230.681107294375, 36069.07954728127, 37229.50965492868, 38162.060955309236], [34195.564496956766, 34314.27020369691, 35185.014402864654, 35830.104950195106, 35704.52958676785, 34898.84866198973, 34132.04509059375, 35908.49569149499, 36123.80923724662, 35589.26467241761  …  34835.67850251247, 34874.99441792445, 34140.998563348156, 35313.98581533864, 35712.55047652663, 35435.5496801494, 35615.14617409933, 35420.56963562807, 36523.303049657996, 37400.44766117983], [33097.63671130043, 33415.168735732026, 34300.74767286616, 35013.424212749225, 34750.189640574165, 34463.91519384776, 33467.66340390085, 34772.42365788525, 35122.25105695135, 34418.094812113646  …  33596.4492368634, 33476.59841949259, 32579.150493400906, 33808.28149558242, 34222.4696383338, 33783.29791097826, 34014.80240762401, 33896.05499111419, 34897.87095850947, 35769.50628352131], [33097.63671130043, 33381.5045854195, 34231.66983100866, 34907.70784448132, 34610.36464368443, 34290.66108011831, 33265.87002723539, 34527.94292965742, 34840.17556230439, 34107.2785011664  …  33226.004426678424, 33074.12095735551, 32155.035438056984, 33334.548828168445, 33708.938874537394, 33242.832904581584, 33436.9137649674, 33286.61532967609, 34235.89320996502, 35055.64202074267], [29576.147776884885, 29605.974349916607, 29615.990299648598, 29630.10862521576, 29665.30818253035, 29721.56974971793, 29712.73431993542, 29700.700532182702, 29832.191883698742, 30047.48692882896  …  30558.480501890816, 30783.63920852624, 31138.58326295463, 31427.052688216176, 31686.016067169112, 31853.88331579168, 32044.470701315327, 32189.787584635174, 32289.184681153267, 32444.824938447473], [34346.71094688275, 34381.34847608993, 34418.60645464125, 34504.349224423226, 34590.03155968401, 34637.23688334656, 34564.18782929034, 34499.7750686547, 34663.90828090316, 35064.33714215768  …  35530.217294816204, 35972.89522900604, 36382.47839272967, 36752.92652699631, 37055.4971552363, 37134.32573683533, 37389.9832419812, 37580.35506525913, 37672.43840350182, 37852.07513243436], [28335.32931213966, 28363.90456052843, 28394.641625669512, 28465.377645245437, 28536.063807585757, 28575.0072276219, 28514.743262148637, 28461.604060920967, 28597.010581426286, 28927.35614689481  …  29311.697680090936, 29676.89786079777, 30014.795537310816, 30320.407620335194, 30570.022158525466, 30635.05411521768, 30845.96629282419, 31003.019127160343, 31078.985985160307, 31227.182587703435], [978.0617717704336, 979.0481149238879, 981.9664058959908, 990.2084268257204, 995.1693599892523, 999.397548044677, 995.4391501906252, 990.1614259213231, 997.5750275506274, 1008.178500769626  …  1009.464879799129, 1019.4241760096022, 1029.1273633066517, 1033.158490911722, 1044.601372218197, 1048.91896738565, 1054.4247022383618, 1061.3663491148611, 1064.3840606698516, 1071.5492174126675], [0.0019383188997990075, 0.0024203105379378975, 0.005833355382178551, 0.0022280272308012883, 0.0019675796320230976, 0.001501745967585455, 0.0034702473911871756, 0.0010822550340543469, 0.003433738363905592, -0.0005924275801507672  …  0.007843921739974613, 0.0034170053784130516, 0.005102995079565575, 0.000986351491279791, 0.0013211566671598174, 0.0032764035845953554, 0.00041887911038052117, 0.0015867627879866397, 0.0025339390114653693, 0.006166644580224201], [2.3548476e6, 2.3528300950060952e6, 2.3852989052506215e6, 2.4009903804299952e6, 2.390844258882871e6, 2.365089610515658e6, 2.337944418379484e6, 2.360462185597913e6, 2.372267610449629e6, 2.375237545415505e6  …  2.365255769520209e6, 2.385244935300158e6, 2.356426836189209e6, 2.380500387832769e6, 2.389395374279324e6, 2.3767106353966193e6, 2.374164851798615e6, 2.374943250220952e6, 2.411668256170708e6, 2.423393804407069e6], [0.0016459319014481277, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01  …  0.008448725154931858, 0.008732908960778751, 0.0070151210972774665, 0.007523261785225643, 0.007364141082940806, 0.00637196785782434, 0.005804486516414908, 0.005443423710162449, 0.006619570517469309, 0.006749241942221222], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.90462950861706; 518.6059091613057 258.50369622511613 … 137.13538556670355 505.4138092341076; … ; 571.082598293091 286.2689852502768 … 147.4596113318288 539.8357206223543; 571.2194431154359 285.9137343720301 … 147.931255679534 541.2157733905921], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.90462950861706; 518.0834390395163 258.2432663779743 … 136.9972283642248 504.904629508617; … ; 560.2497319242387 280.8387485874332 … 144.6624498194047 529.5955763067793; 559.8194214485925 280.2076562509631 … 144.97894104760846 530.4145452155852]), BeforeIT.Data{Float64, Vector{Float64}, Matrix{Float64}}([72422.0, 72479.16835526338, 72637.95381913212, 72770.62345482089, 72941.9547118011, 73059.23885861166, 73388.62948391368, 73688.09671799063, 73857.89065861344, 74032.8647456291  …  74421.19527955227, 74525.56626754194, 74649.67283779455, 74777.82883517486, 75249.41755050291, 75463.6251954151, 75661.554078544, 76172.7545407525, 76824.81244545543, 77304.67894479225], [72422.0, 72406.14913344439, 72491.6691627559, 72550.9064119664, 72648.45678571238, 72691.96155981971, 72946.13252278218, 73170.00457334804, 73264.71965122763, 73364.30298953237  …  73600.60422944717, 73629.5713877803, 73677.8841432603, 73730.01750758171, 74120.25033147004, 74256.35855195604, 74376.11510218975, 74803.19404911705, 75367.52250259707, 75761.8830446516], [64900.920495538005, 64966.370940930225, 65105.47502242692, 65230.8743310351, 65381.092014447684, 65496.557266705655, 65795.28208904731, 66075.63573627333, 66220.35335812773, 66368.00697843758  …  66708.27509090463, 66787.74350275191, 66897.71313599695, 67036.74040243596, 67478.77052564117, 67651.75494545423, 67853.4706572401, 68369.67713350628, 68967.46674135036, 69395.69692393334], [64900.920495538005, 64900.920495538005, 64974.3599298187, 65033.92212518065, 65118.016874941575, 65167.29844867113, 65398.56923876066, 65611.06588914806, 65688.52130388662, 65768.66354567162  …  65972.7290774078, 65984.77776620894, 66026.83937534406, 66097.39973083902, 66466.2069983945, 66569.46255749093, 66700.68577294891, 67140.41334762302, 67659.22279688324, 68010.74328124234], [40512.94792630534, 40446.67433898797, 40519.2448806449, 40555.050249409556, 40688.48896565159, 40673.80356013209, 40809.82873484503, 40906.530351750436, 41091.70572058691, 41282.305132355876  …  41541.08290741968, 41705.02550883899, 41801.67374271298, 41702.70727737412, 41836.47490868108, 42114.81952262529, 42019.6202863649, 41897.25565055502, 42221.378551802, 42557.163628578004], [40512.94792630534, 40405.92629023928, 40437.64368592036, 40432.60199638415, 40524.76992118275, 40469.33161467332, 40563.76575034105, 40618.92145718323, 40761.68805747563, 40909.5008310521  …  41083.038116316035, 41203.62053887072, 41257.49997193102, 41118.35534101543, 41208.690966100105, 41441.06688122614, 41305.73516537432, 41143.95709396608, 41420.48118051532, 41707.83576816901], [14866.888022051655, 14971.465343249532, 15082.981035646268, 15079.407399134605, 15128.854901253048, 15166.469243519825, 15307.01925200293, 15267.214593485889, 15190.68631969529, 15069.361329763029  …  15194.917037765825, 15176.226183504667, 15166.773266077918, 15422.699209852093, 15289.462634022104, 15421.531049354278, 15498.584000850835, 15415.61493258115, 15391.120039353527, 15318.097154911786], [14866.888022051655, 14956.382323208549, 15052.605610927918, 15033.87799943402, 15067.980640957168, 15090.225637057534, 15214.725533607778, 15159.872644056415, 15068.686156587657, 14933.275839778269  …  15027.373196506027, 14993.76771139176, 14969.332363362028, 15206.591318169856, 15060.034147198534, 15174.817483994244, 15235.273470217113, 15138.44736402966, 15099.16586818519, 15012.388654325014], [15944.236265986641, 16143.224009137164, 15874.639597344449, 15958.603408990492, 16048.139821719185, 16024.555013770887, 16126.271322411503, 16320.909796008804, 16314.295520823825, 16408.94719109392  …  16530.29137514269, 16503.08753563427, 16343.395198928334, 16228.717536993201, 16665.383026279396, 16555.571601634758, 16516.201791563442, 16807.748188107533, 16898.308805319, 17062.959514065427], [15944.236265986641, 16126.960499475705, 15842.669861462638, 15910.419444326692, 15983.566617259994, 15943.997710249147, 16029.03792120573, 16206.159442351383, 16183.271374011829, 16260.764426757147  …  16348.023284619287, 16304.676672453394, 16130.637043656363, 16001.315453615622, 16415.30794505671, 16290.715662017545, 16235.602618274354, 16505.550532127083, 16577.76476896628, 16722.42819898984], [15944.236265986641, 15956.304400874531, 15979.538169552863, 16006.64485512596, 16041.64674101725, 16065.341795915701, 16126.276374604604, 16182.6727049168, 16237.9139810384, 16294.497527116888  …  16378.520219772592, 16410.443976421797, 16441.140716929334, 16467.5102418054, 16544.30767309427, 16620.336827941486, 16647.20852154302, 16720.484376885484, 16863.568607752488, 16984.152420815964], [15944.236265986641, 15940.22920358817, 15947.357179763376, 15958.315838462076, 15977.099662889983, 15984.579452492004, 16029.042942936618, 16068.894279619359, 16107.503273284792, 16147.348312793289  …  16197.925604813412, 16213.146934428127, 16227.110111481445, 16236.76211716203, 16296.04940752677, 16354.444774604932, 16364.383631918448, 16419.855694863236, 16543.683558241584, 16645.193885836317], [3173.2320350842083, 3172.4210319161384, 3170.356590522692, 3170.901963182559, 3175.4897526418995, 3175.9459318169766, 3181.0044655670035, 3185.0641111173018, 3200.598411853043, 3217.5006744292705  …  3236.9235352019014, 3252.3519222849127, 3264.009424893429, 3256.939364847195, 3243.6620829961607, 3272.942073586635, 3262.8744630320175, 3241.211404119942, 3258.050330500836, 3284.29765707208], [3173.2320350842083, 3169.2249726857435, 3163.971849487872, 3161.3280284070183, 3162.7124743197164, 3159.980081896143, 3161.8245896208537, 3162.6703084592136, 3174.893613526594, 3188.444688165194  …  3201.2322180592, 3213.250029934457, 3221.518582839009, 3211.302068165406, 3194.9887907240836, 3220.5815650478125, 3207.4404178182695, 3182.9355138638516, 3196.248370576281, 3218.751806169689], [34195.564496956766, 33498.53869986396, 33873.03221103654, 34039.30125059508, 33956.42404887237, 33909.586984423564, 34349.06236966598, 33708.26851372922, 33615.64171364014, 33809.598829593364  …  34666.89881279118, 35280.7795644775, 34807.766910524566, 33962.5679263053, 33819.8864229594, 34022.477856517246, 34759.03776433955, 35145.22397826064, 35615.83155788658, 35311.99449444974], [34195.564496956766, 33464.79055838485, 33804.815739937294, 33936.526061149925, 33819.79294164319, 33739.11954313402, 34141.954595298455, 33471.269732320885, 33345.66617167172, 33504.27760713216  …  34284.65089546307, 34856.61106194928, 34354.63974894768, 33486.67334710091, 33312.39668625025, 33478.18645072227, 34168.50506292995, 34513.32467882603, 34940.23481402606, 34607.26095082128], [33097.63671130043, 32580.73403597495, 32711.943905540087, 32861.73885330887, 32879.953025695126, 32715.175943234775, 33203.55219501166, 32514.826536983823, 32354.438616132793, 32537.347737177148  …  33511.99485356733, 34139.552524913524, 33469.936280449234, 32538.86311535005, 32361.789441439112, 32650.77483471632, 33131.88976457467, 33093.088208751964, 33301.82650890564, 32945.53584721264], [33097.63671130043, 32547.91053786385, 32646.065735492317, 32762.519089328336, 32747.65333533082, 32550.712945294345, 33003.35127767084, 32286.218702563907, 32094.592108519348, 32243.515715187434  …  33142.48126345754, 33729.10459688485, 33034.22498463685, 32082.917952320284, 31876.179413135647, 32128.427926004046, 32569.001214605905, 32498.08561983196, 32670.124129095744, 32288.03052765345], [29576.147776884885, 29605.97434991661, 29636.88998678263, 29699.496943366827, 29773.403175844327, 29824.680312928514, 29940.427544272665, 30056.781361623904, 30160.03334339023, 30256.405165750894  …  30410.544440268626, 30465.79587999467, 30525.02142801316, 30594.96018260858, 30767.257348560677, 30886.54546130514, 30964.318389601063, 31185.66300398519, 31496.803175662844, 31714.877903450706], [34346.71094688275, 34381.34847608993, 34488.331262615495, 34549.25195922109, 34623.58770293288, 34686.29543632627, 34863.88318564055, 35022.81053301597, 35064.82544472118, 35118.75704744281  …  35299.624656671636, 35320.42323982658, 35369.48286920612, 35437.606391965426, 35704.503275493276, 35759.86974837298, 35880.78074180786, 36166.36770262644, 36448.64548278309, 36652.05657188006], [28335.32931213966, 28363.90456052843, 28452.16315657334, 28502.421476879874, 28563.74693482529, 28615.479523685615, 28761.98576023339, 28893.097549410275, 28927.75898645526, 28972.25144821709  …  29121.463501660113, 29138.621904507847, 29179.095088579255, 29235.295592152168, 29455.48002549837, 29501.156225595794, 29600.90530555089, 29836.50866782224, 30069.382024185474, 30237.19198433616], [978.0617717704336, 979.0481149238879, 980.2537730287839, 982.1254284471187, 984.1011356705799, 985.5815174508662, 990.9713591341604, 996.0438416334068, 995.49457001638, 992.8447652439776  …  998.1059939644524, 1001.5243829306683, 1003.2088387777361, 1004.1738278619313, 1007.0099015872405, 1005.3397357761567, 1008.3715258311884, 1017.6464268947177, 1022.018082904454, 1028.7624486025907], [0.0019383188997990075, 0.003668404214827836, 0.001256999172604134, -0.0005987344696729568, -0.0026356803260687567, 0.0024380775912729025, 0.0036961082636601805, 0.003638784755598312, 0.005369794846580955, 0.004270287614935864  …  0.001686845822609806, -0.0008594111385530345, 0.001861309891668217, 0.002577048198165288, 0.0019943669381372597, 0.0038976198648799087, 0.005951729300666564, 0.004862661745621333, 0.0038180887092142957, -0.00016858591091106767], [2.3548476e6, 2.357984319675346e6, 2.3601713187344996e6, 2.3703876805778793e6, 2.3682741094139894e6, 2.374333096009323e6, 2.383499903305526e6, 2.3789693636357374e6, 2.373654210243939e6, 2.3831436073113782e6  …  2.382702279863015e6, 2.3889406911691315e6, 2.3832905008030995e6, 2.3686161227884884e6, 2.367379894382585e6, 2.356172856920746e6, 2.381155028189388e6, 2.3903663902730495e6, 2.393822204786214e6, 2.377759313633577e6], [0.0016459319014481277, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01  …  0.0087110393134639, 0.008303938698170112, 0.007499249974261944, 0.00639757414658646, 0.005918372408352329, 0.005104029303479833, 0.005905638998158877, 0.005960514263642487, 0.0057490577832807165, 0.004659559015877111], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.90462950861706; 518.6059091613058 258.50369622511613 … 137.13538556670355 505.4138092341076; … ; 565.5823469635296 275.1615057598491 … 143.92639607359007 531.1031026986665; 568.3001822164298 278.7917462532915 … 144.95044201381458 533.2542184775907], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.90462950861706; 518.0834390395163 258.2432663779743 … 136.9972283642248 504.904629508617; … ; 554.8538148675563 269.9419668863854 … 141.19625612487482 521.0286074210744; 556.9584212371385 273.2278040833771 … 142.05761649904605 522.61188177521]), BeforeIT.Data{Float64, Vector{Float64}, Matrix{Float64}}([72422.0, 72491.34506965523, 72616.8572486508, 72706.27424685407, 72765.6895080302, 72839.34502218546, 72854.38189979833, 72871.19316389419, 72996.86544249773, 73415.76367274325  …  74740.55266740678, 75459.84952370377, 76084.34560541999, 76400.91663786885, 76766.78612612525, 77195.691255211, 77470.05991903284, 78024.3158167913, 78486.61778339028, 78816.3073416239], [72422.0, 72418.31358039126, 72470.61507839097, 72486.75149418158, 72472.9008235836, 72473.17315530752, 72415.10618607404, 72358.84456988142, 72410.60954181607, 72752.77471432764  …  73916.44028425583, 74552.62208234363, 75093.8803551431, 75330.36207458914, 75614.84978926343, 75960.71502885243, 76153.8956433556, 76621.46487653327, 76997.80505344228, 77243.34335689925], [64900.920495538005, 64966.370940930225, 65084.11883824959, 65159.24609436252, 65205.7785978623, 65263.8101552431, 65265.328483333884, 65275.29560038312, 65403.07019586164, 65819.15435136238  …  67069.55823738292, 67747.93184098444, 68288.6611438264, 68570.6241424417, 68918.49248885174, 69285.29560917999, 69568.02703668243, 70068.80565775071, 70482.79829236539, 70790.97631313166], [64900.920495538005, 64900.920495538005, 64953.04675459051, 64962.510156331446, 64943.40887027418, 64935.72138403253, 64871.81098989886, 64816.35284848654, 64877.80194505949, 65224.76739133941  …  66330.02860449604, 66933.42209508002, 67399.68003591667, 67609.79019157986, 67884.32498248757, 68176.8698470389, 68386.11299129862, 68808.99211282273, 69145.81002221679, 69378.1766027696], [40512.94792630534, 40514.85625555158, 40534.99561605159, 40619.68124994838, 40684.6514706836, 40772.69496024656, 40840.58993745727, 40916.807813341584, 40881.29700042157, 40808.931206252826  …  41085.42315577037, 41254.88011649212, 41795.86451626988, 41988.98088550205, 42068.44487840772, 42446.479880918516, 42335.219457437495, 42591.85258455617, 42847.33027719243, 42931.69516489957], [40512.94792630534, 40474.03951685235, 40453.362701120255, 40497.03785592179, 40520.947867215924, 40567.725876207056, 40594.34147818995, 40629.12665917816, 40552.969181840126, 40440.40175915628  …  40632.40260961061, 40758.88708751122, 41251.76636993975, 41400.61758997374, 41437.180073195086, 41767.421339007975, 41615.97251854175, 41826.06540885222, 42034.559227011305, 42074.892650606955], [14866.888022051655, 14893.816197932156, 14915.87476254503, 14976.230110256563, 15113.643097291955, 15186.730635672791, 15175.747982624049, 15119.41241999583, 15261.47819545435, 15306.533310010407  …  15632.2002442684, 15632.290919565703, 15619.461539849639, 15672.690419767117, 15683.449436742068, 15821.69540421272, 15864.070807918119, 16087.291460026425, 16166.69560157345, 16206.157107623332], [14866.888022051655, 14878.811405612245, 14885.835871036297, 14931.012234735996, 15052.83004502004, 15110.385172833405, 15084.245764740483, 15013.109649870183, 15138.909485264192, 15168.306012922092  …  15459.834783518783, 15444.349340261319, 15416.127545712525, 15453.079569713042, 15448.108917681695, 15568.580011796703, 15594.55090195679, 15798.047373556072, 15860.029536802456, 15882.725291024924], [15944.236265986641, 16017.839938624484, 16016.226588308371, 16314.013885250739, 16184.64269428929, 16261.849941220187, 16202.38292439611, 15749.438147973837, 15537.401473543716, 15889.046677718177  …  16286.993728326213, 16575.6212251805, 16669.356328026694, 16689.727677532203, 16810.76809966672, 16852.603268991297, 16960.470669125232, 17084.142371618796, 17187.375369808007, 17260.048989022165], [15944.236265986641, 16001.702747289586, 15983.971712176435, 16264.756826319815, 16119.520240633734, 16180.099728473888, 16104.690608058321, 15638.705742735772, 15412.616755187531, 15745.558930944415  …  16107.408312687847, 16376.338314758692, 16452.354814035632, 16455.865769699772, 16558.5114193786, 16582.9954184618, 16672.32366605457, 16776.97524123598, 16861.348029509223, 16915.584291930514], [15944.236265986641, 15955.993198124865, 15967.68604475641, 15992.783755834507, 15994.908676447314, 16012.193694251553, 16021.620974552232, 16013.135069096623, 16065.666631566693, 16115.838123438101  …  16326.538963528297, 16465.95758109455, 16635.616957444094, 16738.07568205136, 16817.074576379546, 16920.159532386355, 16979.347598932483, 17090.742129533068, 17187.57242815591, 17255.664653566833], [15944.236265986641, 15939.918314360073, 15935.528923811127, 15944.496590120933, 15930.549659156537, 15931.698532522014, 15925.018562932064, 15900.548642524245, 15936.639284925881, 15970.302312095457  …  16146.517509931131, 16267.993118401726, 16419.054662241895, 16503.53630621015, 16564.723263242384, 16649.470917142167, 16690.87988950542, 16783.45633772402, 16861.54134985713, 16911.287456156417], [3173.2320350842083, 3172.1098291664734, 3168.958009817899, 3181.6590031324145, 3187.2201214827874, 3192.255150237209, 3198.713466214704, 3204.6058529272427, 3210.093316866742, 3176.477959568255  …  3157.3910130333516, 3163.9948906327, 3217.1999068728664, 3256.337688080505, 3266.923650876273, 3285.2835017983743, 3287.808693325822, 3294.9653285740555, 3310.631432632405, 3318.523140389809], [3173.2320350842083, 3168.9140834576488, 3162.5760853670668, 3172.052589522756, 3174.395643453095, 3176.2073119767597, 3179.4268137961376, 3182.07465463302, 3184.3122626071636, 3147.792433347594  …  3122.576646007332, 3125.9552840442484, 3175.3184306559633, 3210.708822289822, 3217.9013034119034, 3232.725555161747, 3231.9510322895585, 3235.722960846521, 3247.8320617298123, 3252.294239818725], [34195.564496956766, 34813.13772180637, 35431.398672231786, 35461.204277101475, 34708.88319045346, 34383.22110618844, 35624.52113331468, 34625.680409143286, 34449.96121311535, 34717.59067150894  …  36940.07592895353, 37536.90786859335, 37706.41979136843, 37766.419706077875, 37128.097565573175, 37558.68128786886, 36688.03451998889, 37262.40494634699, 38083.288642234766, 38931.03499871195], [34195.564496956766, 34778.0651860252, 35360.04382662861, 35354.13592218129, 34569.22439911026, 34210.372651031495, 35409.7229765141, 34382.23141504684, 34173.285044665965, 34404.0697309572  …  36532.76325971144, 37085.614722673454, 37215.55799557421, 37237.2243150498, 36570.96593531228, 36957.81771984214, 36064.729459550195, 36592.43944561771, 37360.88670251401, 38154.07502676603], [33097.63671130043, 33748.30504425906, 34281.638390486114, 34664.85527570327, 33926.13094468807, 33765.15162114269, 34988.86007799359, 33540.145626560436, 33133.272440037195, 33306.33819274716  …  35204.140389912, 35539.850606128086, 35706.756570094796, 35716.90205101044, 34923.97385426452, 35483.76858678062, 34377.735535436994, 35001.37554575726, 35798.07210741861, 36512.628918633054], [33097.63671130043, 33714.30527538799, 34212.59903257067, 34560.19134497737, 33789.62172839645, 33595.41027323845, 34777.89464142863, 33304.32889694959, 32867.170925141756, 33005.561719652374  …  34815.96868127321, 35112.56738286124, 35241.926370119225, 35216.42516984729, 34399.91655630437, 34916.09946025637, 33793.680902747794, 34372.06259272883, 35119.01844239496, 35783.93390342912], [29576.147776884885, 29605.97434991661, 29645.257717275123, 29679.612523018488, 29666.610630549, 29675.465639859736, 29688.510211608693, 29678.517852359637, 29769.050549396445, 29935.238588280696  …  30476.5080720758, 30784.122714606536, 31075.7158314089, 31225.178787932935, 31384.96520976678, 31572.42806869719, 31690.89472684231, 31899.256780858504, 32088.41230189144, 32231.812683256183], [34346.71094688275, 34381.34847608993, 34454.54241060659, 34491.06342781957, 34544.52190934012, 34591.912318521834, 34582.97982005186, 34596.867531354714, 34641.929354891545, 34889.25752460169  …  35576.16792752258, 35933.934464656246, 36176.7426293888, 36307.49391661053, 36491.21247843129, 36670.26171257435, 36829.95617224512, 37116.16438090773, 37336.3691967681, 37494.53422904817], [28335.32931213966, 28363.90456052843, 28424.288049398387, 28454.41713660981, 28498.519283122594, 28537.615394901026, 28530.24626758871, 28541.703343457397, 28578.878420025754, 28782.91906740372  …  29349.606005923073, 29644.756032434303, 29845.067768775323, 29952.93488848712, 30104.49891911569, 30252.21085055437, 30383.955491579625, 30620.071370530437, 30801.73580946819, 30932.218704387935], [978.0617717704336, 979.0481149238879, 984.3187103678514, 988.5701435243803, 994.6460579733008, 996.4321968615352, 993.8384516733977, 999.9102166687564, 992.0902915737332, 994.6582384799905  …  1016.8822377846128, 1029.8746617216543, 1036.2026830287746, 1037.9514378982667, 1042.3148006537317, 1042.6058279083848, 1047.1761375949943, 1053.3844959844332, 1058.0167937058611, 1064.6294008272507], [0.0019383188997990075, 0.005308128238052712, 0.0021088541566325336, 0.006923601323287176, 0.01057633466285135, 0.008402500604969498, 0.004741980271950164, 0.006569049323305265, 0.0022985954729253244, -0.0031905630125552698  …  0.0039679164614467854, 0.008243130157091105, 0.004922016662823658, 0.006917503659251478, 0.005736168202625125, 0.003541467247938801, 0.008585740611248394, 0.0048877168301537655, 0.007482395413037191, 0.005201812639647141], [2.3548476e6, 2.3840021873592413e6, 2.3878512601016425e6, 2.398851084605381e6, 2.4004329577815593e6, 2.3928274893141e6, 2.4051904066505027e6, 2.3962041918615783e6, 2.3917846727152127e6, 2.411605637434065e6  …  2.4439064199785264e6, 2.468043488339714e6, 2.466665632276356e6, 2.4702408945817263e6, 2.457778373694759e6, 2.447189414183631e6, 2.420935822117334e6, 2.4321838408571035e6, 2.44295846814239e6, 2.4747796365824407e6], [0.0016459319014481277, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01  …  0.00994740454800224, 0.010371575392789859, 0.00966177343640167, 0.009247791054075406, 0.008198549791098915, 0.007249086514876012, 0.005854228662475012, 0.005989979684488085, 0.006153965541550509, 0.007098943345674474], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.90462950861706; 518.6059091613058 258.50369622511613 … 137.13538556670355 505.4138092341076; … ; 564.4844959774833 284.3466912583684 … 146.64180466629344 536.6865941342371; 565.0865714365776 285.01219253258085 … 147.32664903242076 538.5646354043912], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.90462950861706; 518.0834390395163 258.2432663779743 … 136.9972283642248 504.904629508617; … ; 553.7767890179489 278.9529185921488 … 143.8601561293128 526.5061856021143; 553.8089455860217 279.3241067901476 … 144.38640074200407 527.8163168963247])])

Now, apply a shock to the model and simulate it again. A shock is simply a function that takes the model and changes some of its parameters for a specific time period.

In this case, let's define an interest rate shock that sets the interest rate for a number of epochs.

We do this by first defining a "struct" with some useful attributes

struct CustomShock
     rate::Float64    # target rate for the first 10 epochs
     final_time::Int  # number of epochs for the shock
 end

and then by making the struct a callable function that changes the interest rate in the model, this is done in Julia using the syntax below

function (s::CustomShock)(model::Bit.Model)
@@ -33,7 +32,7 @@
         model.cb.r_bar = s.rate
     end
 end

Now we define a specific shock with a rate of 0.01 for the first 10 epochs, and run a shocked simulation

custom_shock = CustomShock(0.0, 10)
-data_vec_shocked = Bit.run_n_sims(model, 4; shock = custom_shock)
BeforeIT.DataVector(BeforeIT.Data[BeforeIT.Data{Float64, Vector{Float64}, Matrix{Float64}}([72421.99999999999, 72488.69866984364, 72422.84673932669, 72749.13701471945, 72963.48036565573, 73483.1422269654, 73827.86263945063, 74087.5053622224, 74370.29400719506, 74654.25098352323  …  74882.89455541348, 75155.45351814416, 75319.71676766608, 75651.1205840668, 75861.22108389561, 76370.70269248713, 76957.33012413968, 77415.67275343186, 77810.96914574981, 78156.90458708482], [72421.99999999999, 72415.66984669813, 72276.99528437747, 72529.4848460798, 72669.89582638521, 73113.73391659233, 73382.71732069238, 73566.60502344367, 73773.00776164333, 73980.07773210105  …  74057.21266670783, 74251.88572374874, 74339.20544795263, 74591.07240765015, 74722.87334869515, 75148.92462842721, 75649.87678323875, 76023.76501062099, 76334.97279547316, 76597.10052851314], [64900.92049553801, 64966.3709409303, 64918.87591377861, 65221.444144977606, 65424.02182765468, 65909.00547979464, 66224.08594536067, 66470.97727956435, 66734.33138629161, 67008.28011901063  …  67183.9212859245, 67433.99014919675, 67580.64135194663, 67885.70478741232, 68086.01455863785, 68583.58433184845, 69113.3971781456, 69535.39964635324, 69888.3649270492, 70207.77379582198], [64900.92049553801, 64900.920495538, 64788.13661075488, 65024.52041177433, 65160.77395064501, 65577.6732365781, 65824.78762093822, 66003.6278336005, 66198.371447243, 66403.15463071108  …  66443.13065079536, 66623.25481471191, 66700.87723860724, 66934.46814994985, 67064.338933539, 67486.38454270079, 67939.20698864949, 68285.1765619983, 68562.65246399141, 68806.61325743364], [40512.94792630534, 40516.452778144034, 40425.15618395079, 40550.33519612155, 40598.34677713993, 40715.84589484516, 40855.671151141876, 40903.40910099289, 41051.26454124359, 41129.92374556843  …  41475.5383547891, 41596.16910329781, 41680.16884172984, 41787.102270414965, 41808.04736535845, 41739.873193499756, 42045.054258005766, 42209.348658404946, 42462.50025915614, 42583.53889490223], [40512.94792630534, 40475.63443102628, 40343.744473262355, 40427.90117930168, 40434.99043950388, 40511.16259767524, 40609.33175965125, 40615.822151564076, 40721.571671256796, 40758.49554078451  …  41018.216278136126, 41096.07287591103, 41137.57682053378, 41201.56776388684, 41180.689996843736, 41072.1189413253, 41330.737030922755, 41450.438774565795, 41657.02904996532, 41733.684654288016], [14866.888022051655, 14602.294705786295, 14630.562334153043, 14596.62953341867, 14899.395189010978, 14919.322432335439, 14974.33071243557, 14793.498869052539, 14845.610596059076, 14569.931310822227  …  14661.891582111319, 14698.026890399147, 14945.457566050338, 14950.763259916223, 15116.953462018342, 15338.921885309355, 15483.999345099404, 15514.716446521858, 15552.868521843924, 15501.602336173955], [14866.888022051655, 14587.583607130138, 14601.098029734832, 14552.557789568356, 14839.444210109548, 14844.321261663992, 14884.042940585383, 14689.487557901784, 14726.381821530007, 14438.355977396353  …  14500.225043906696, 14521.31764153384, 14750.897748904283, 14741.26828869369, 14890.113589277727, 15093.529900882288, 15220.936597969252, 15235.767066101078, 15257.846143552051, 15192.231559963293], [15944.236265986641, 16220.835451141236, 15916.11880154259, 16046.395491135794, 15740.84150520215, 16110.583133011372, 16204.031106639444, 16407.315224393642, 16278.099898504282, 16648.97476887841  …  16278.015248664404, 16503.87542870918, 16340.730234323104, 16563.542520048308, 16576.41054804607, 16722.47065441243, 16843.921204497667, 16956.972565290307, 17062.15467695987, 17226.049693469384], [15944.236265986641, 16204.493751742946, 15884.065531216122, 15997.946454994459, 15677.504782805176, 16029.593356119318, 16106.328852581786, 16291.957364562206, 16147.366447697239, 16498.62440965696  …  16098.528832511638, 16305.455092964734, 16128.006771533665, 16331.448759799692, 16327.670557633151, 16454.944664705166, 16557.754298536063, 16652.09190522769, 16738.502648106765, 16882.263531939745], [15944.236265986641, 15957.475067397872, 15948.379340426418, 15998.217005980703, 16018.263204922114, 16105.653404274515, 16182.895429640732, 16238.052768705562, 16300.638064541212, 16347.237440667463  …  16487.557932655192, 16533.53358223958, 16568.227980310694, 16620.34759949104, 16671.799857440248, 16742.061468799773, 16844.372821929486, 16956.093521498977, 17026.539491626096, 17094.284665989522], [15944.236265986641, 15941.39869072217, 15916.261101008764, 15949.913435602679, 15953.810215572305, 16024.688409702703, 16085.320613210799, 16123.884972840773, 16169.723604142186, 16199.611952876045  …  16305.761034247309, 16334.756676863566, 16352.542954138877, 16387.457867941408, 16421.628487427057, 16474.222065356196, 16558.1982432911, 16651.228666347895, 16703.563047258624, 16753.12818415008], [3173.2320350842083, 3173.5916984394803, 3167.968893070512, 3160.296713866949, 3141.05486936985, 3144.048249013812, 3163.47263660301, 3173.558134636419, 3184.452837110434, 3160.3330936862626  …  3230.1847458839875, 3233.339840973415, 3241.15353061198, 3241.133332369937, 3249.42259902097, 3235.529886098154, 3234.633014106365, 3268.4815593435283, 3270.359483739124, 3281.2284961687997], [3173.2320350842083, 3170.3944598197445, 3161.5889605893854, 3150.754799622589, 3128.4161473403324, 3128.2427524577174, 3144.3984688720457, 3151.245229114981, 3158.877707892435, 3131.793365415224  …  3194.567732710489, 3194.466524242862, 3198.9602263607526, 3195.7175149705877, 3200.6628664006125, 3183.76789752038, 3179.678772137994, 3209.715360873943, 3208.324031474674, 3215.743897559569], [34195.564496956766, 34699.23670768453, 34960.53337311454, 35501.737742695615, 36030.87825653513, 36872.65926553986, 37457.120783452694, 37998.073758210994, 37241.10415536122, 36375.17363763396  …  36998.38258519833, 37365.82221727018, 37227.76841750584, 37302.09492723406, 37605.31616023713, 38280.78381439223, 38889.02618718239, 39709.86408083646, 40049.25730407475, 40532.61522188418], [34195.564496956766, 34664.2789216115, 34890.1267971811, 35394.54700469303, 35885.90012858063, 36687.29611495264, 37231.272961576244, 37730.91387211655, 36942.0116268443, 36046.68371563684  …  36590.427008783015, 36916.58597444078, 36743.137700510044, 36779.405806453695, 37041.02354971933, 37668.36805428369, 38228.32775688611, 38995.8940885311, 39289.56290287305, 39723.69196601017], [33097.63671130043, 33550.12097291232, 33509.523953434255, 33945.960948652006, 34305.98136223224, 35135.26849876632, 35663.29111421888, 36014.79159042761, 35045.78518397285, 34069.75247937943  …  34530.933215349454, 35008.440121532, 34874.408291943284, 34952.38239354663, 35245.50645176424, 35711.34685512651, 36304.67087064559, 36975.228997621685, 37315.8116162847, 37686.901559344784], [33097.63671130043, 33516.320864812646, 33442.03954701688, 33843.46758247753, 34167.94373461385, 34958.63941381864, 35448.25919370217, 35761.575922700926, 34764.32380568483, 33762.0819113733  …  34150.18449662947, 34587.54586110151, 34420.41359352937, 34462.618211183646, 34716.62434477854, 35140.03693276907, 35687.878901075404, 36310.42682380461, 36607.96794902386, 36934.771183687975], [29576.147776884878, 29605.974349916607, 29629.41125283662, 29762.531073853712, 29866.640924272662, 30044.757590507656, 30185.800607752408, 30296.465028734863, 30454.017557041192, 30589.448344667664  …  30735.595921123724, 30853.56171617504, 30917.366439576315, 31019.756432601454, 31121.79864440354, 31291.468792679698, 31518.1576427124, 31714.31384286508, 31882.39734951217, 32014.12767821179], [34346.71094688275, 34381.34847608993, 34310.83774432827, 34476.682167562365, 34572.52075680274, 34870.58371609711, 35036.427671304904, 35165.5481440694, 35267.25610222637, 35407.260020854796  …  35444.35321421054, 35572.98861891614, 35651.04748429262, 35847.669343198555, 35943.30217215785, 36261.56146957204, 36554.46761561592, 36771.86884510079, 36949.8877538116, 37130.89570356666], [28335.32931213966, 28363.90456052843, 28305.73465868262, 28442.55289301624, 28521.61775576647, 28767.513559892177, 28904.331408113743, 29010.853139477746, 29094.760110730396, 29210.26046083558  …  29240.861581583333, 29346.98314178659, 29411.38009844411, 29573.589083481445, 29652.484198236503, 29915.041565456548, 30156.68310483242, 30336.034642737886, 30482.896576909963, 30632.224408397433], [978.0617717704337, 979.0481149238881, 978.626916613671, 982.2309035615268, 984.8601465793722, 993.6641731898225, 1001.8576663033045, 1008.9641067601017, 1013.0577270241117, 1011.5717534881855  …  1003.9721505902301, 1007.4398141055813, 1012.2274280776879, 1018.2790116123394, 1020.9137420764362, 1030.5540695967006, 1040.7719198172595, 1049.216958387302, 1056.0798237254712, 1062.7504140435426], [0.0019383188997990075, -0.0005533295205638611, 0.004732362591043593, 0.0035364237859050185, 0.0060616767567907015, 0.004406653802646376, 0.005821702563136633, 0.006280212425443965, 0.004945962011193128, 0.0019680685802656583  …  0.005184194202239478, 0.004634743195987445, 0.003242810346403946, 0.002948594789611958, 0.006791937730278974, 0.005440125506566584, 0.0039330397404169215, 0.0030152239224701116, 0.0033268179198417958, 0.0028952035610507743], [2.3548476e6, 2.3738895378915993e6, 2.3964869565522666e6, 2.397352821840626e6, 2.400747828142884e6, 2.4124904086755477e6, 2.4138866130753686e6, 2.439278588791775e6, 2.4254016478584902e6, 2.4268666361917024e6  …  2.4496574996042876e6, 2.460268469426549e6, 2.4635045111853043e6, 2.466912123955323e6, 2.4724856592929023e6, 2.4870167470572838e6, 2.491613690171397e6, 2.48012668481996e6, 2.4814526955996878e6, 2.492683528597904e6], [0.0016459319014481277, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0020434632653667066, 0.0024245946986216943, 0.0024488852921915284, 0.0024713062488974126, 0.0026664355067662565, 0.003171943894897283, 0.003209176619493981, 0.002587319095393069, 0.0025247042369649147, 0.0028493999069831404], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086171; 518.6059091613058 258.5036962251161 … 137.13538556670355 505.41380923410765; … ; 550.1980523407319 282.2548414331762 … 145.79306293783597 530.2508583740936; 551.227383206366 283.8480402107464 … 146.52046469056808 531.9996367739623], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086171; 518.0834390395163 258.24326637797435 … 136.9972283642248 504.90462950861695; … ; 539.7613449445915 276.90074906834604 … 143.027514183536 520.1925293199313; 540.2263499123326 278.1831878540997 … 143.59630569661113 521.382338187449]), BeforeIT.Data{Float64, Vector{Float64}, Matrix{Float64}}([72421.99999999999, 72490.98139790102, 72457.30207927202, 72533.79361188074, 72610.91787746962, 72805.44193824906, 73072.22234799733, 73494.13703270041, 73719.78943909235, 74061.72347146021  …  75138.08129017478, 76403.00203991335, 76909.05348197726, 77234.22062462637, 77597.56215644881, 77745.9462257918, 78356.05403014955, 78404.17317401415, 78433.93046344322, 78636.77297435573], [72421.99999999999, 72417.95027501852, 72311.38123514951, 72314.79163164704, 72318.75195056688, 72439.44050612043, 72631.63316463801, 72977.40859527451, 73127.72755679429, 73392.90110353185  …  74309.58563383367, 75484.43540493521, 75907.85219280935, 76151.98953408841, 76433.15947645249, 76502.16702356616, 77024.83730971102, 76994.49252630856, 76946.1171593181, 77067.39201836172], [64900.92049553801, 64966.3709409303, 64928.211690932134, 64997.02235086507, 65065.699764985184, 65257.33162071432, 65501.29314662653, 65883.12782664614, 66104.76119007742, 66439.36086362564  …  67581.37435062054, 68690.02540722169, 69117.4433538474, 69394.96074279003, 69712.08631643417, 69881.34322894817, 70429.17348715018, 70435.99548950068, 70447.44119021262, 70627.09192352489], [64900.92049553801, 64900.920495538, 64797.45358670489, 64800.77621654177, 64803.89367525234, 64929.27541785063, 65106.35290354739, 65419.91147947758, 65573.85748515843, 65839.37306191617  …  66836.2012754282, 67864.18919908538, 68217.67316741444, 68422.57591861325, 68666.01041044974, 68763.38190040083, 69232.62914206761, 69169.57999497015, 69111.12360896858, 69217.56290994032], [40512.94792630534, 40529.31222703879, 40591.73704211152, 40638.37050827265, 40646.50159374785, 40657.42992959698, 40767.40698435749, 40928.74150055647, 40917.345149464905, 40893.38703596458  …  40444.431310178086, 41029.010234568406, 41482.68620103454, 41771.179649706624, 42021.62387302622, 41964.07860962339, 42248.89577518543, 42533.32591634795, 42638.073789696035, 42741.629059704144], [40512.94792630534, 40488.480924654395, 40509.989856339955, 40515.6706855886, 40482.95149466314, 40453.0402962847, 40521.59978192463, 40640.97644207321, 40588.727819272295, 40524.09490140411  …  39998.47853778474, 40535.73276036701, 40942.665006880095, 41185.86825613314, 41391.06164792823, 41292.73752048638, 41531.11541766066, 41768.59103044141, 41829.272126031516, 41888.6197596362], [14866.888022051655, 14660.82069604474, 14722.980094875973, 14804.657350356278, 14786.472637907165, 14925.819486757475, 15003.712689427415, 15280.493740467182, 15369.467080024113, 15640.546044342625  …  16192.105666447744, 16474.46237901332, 16592.676494159754, 16650.10029971733, 16779.48548040708, 16628.906235818646, 16687.995209134857, 16579.204386683363, 16623.205342094065, 16860.219494434874], [14866.888022051655, 14646.050635312144, 14693.329671498454, 14759.957506118742, 14726.976027615494, 14850.78565463709, 14913.247758858983, 15173.05842695239, 15246.031084363314, 15499.302409294087  …  16013.566515842318, 16276.395666102491, 16376.673197479038, 16416.793663627774, 16527.698216485656, 16362.877089143856, 16404.47738108738, 16281.115871338769, 16307.87974360579, 16523.73433122665], [15944.236265986641, 16181.347557049055, 15990.809518770742, 15994.427052380592, 15878.1445953211, 15885.085713200335, 16037.66201322536, 16119.149597068654, 16197.863242299518, 16151.185064315512  …  17980.63807464145, 17103.180420663743, 16867.277890242676, 16851.327741822122, 17087.588247905045, 18025.857113613376, 17700.49267419273, 17420.98369552122, 17094.46147840569, 17184.803356165292], [15944.236265986641, 16165.045639775248, 15958.605829753631, 15946.134925045888, 15814.25540387723, 15805.229538088483, 15940.962882114378, 16005.817795101628, 16067.774191945291, 16005.330048617327  …  17782.378014132955, 16897.55485011055, 16647.699835333664, 16615.20144118033, 16831.17769842903, 17737.47955480033, 17399.773194383055, 17107.76027149422, 16770.196621804098, 16841.840361887007], [15944.236265986641, 15955.801764195154, 15957.94608151231, 15969.41107443404, 15990.057670579265, 16015.106082650702, 16052.01595702678, 16117.867546193564, 16174.683519608338, 16199.398866556785  …  17823.84950281384, 16693.57139458775, 16840.560285473537, 16920.42676120072, 16999.667177494226, 18403.72954185426, 17123.39004741865, 17168.17632901376, 17201.7161236408, 17235.661282855333], [15944.236265986641, 15939.727073290695, 15925.808575755793, 15921.194478082, 15925.718172372704, 15934.596280005553, 15955.230278768686, 16004.544758172035, 16044.780631346435, 16053.10845092635  …  17627.31824145076, 16492.870410434225, 16621.330040076245, 16683.33222256167, 16744.575941759125, 18109.306782099477, 16832.475153555515, 16859.498296357346, 16875.416753568225, 16891.683299551056], [3173.2320350842083, 3171.9183952367616, 3178.89124016396, 3183.1490315734563, 3183.215090776215, 3177.8273160676977, 3165.2955463697213, 3164.823181250458, 3182.0736616392965, 3134.791296497783  …  2631.624468178416, 3224.4975354618177, 3259.3072312456156, 3265.7973894495685, 3285.391251804063, 3077.939698973833, 3298.347077441577, 3325.128008803372, 3335.62904857948, 3340.64062423223], [3173.2320350842083, 3168.7228423882693, 3172.489311306182, 3173.53811910659, 3170.4067278644975, 3161.8520082091936, 3146.210387398857, 3142.571690135607, 3156.517640168585, 3106.4822261762865  …  2602.607365218507, 3185.7305266851577, 3216.8776023010546, 3220.0359712378436, 3236.0917857883096, 3028.6988373066515, 3242.3103763385543, 3265.343326236152, 3272.3554978753486, 3273.9703174763886], [34195.564496956766, 34761.09186887811, 34885.97183033911, 34120.311918094325, 35542.72127375636, 34688.046883270355, 34798.84697007053, 35265.43483436973, 34265.11494194663, 34102.24225033365  …  32403.49344027636, 34270.618310286205, 34431.845232339656, 34918.58521325186, 35271.80734205673, 35198.69018891852, 36433.53896327807, 35746.6188251362, 36886.54063572871, 37850.80892054761], [34195.564496956766, 34726.07176675155, 34815.715412953534, 34017.292132361945, 35399.7073523084, 34513.66603344617, 34589.02721810828, 35017.48780386032, 33989.92331966923, 33794.278279952625  …  32046.20252860308, 33858.59462405127, 33983.61181541, 34429.294608002565, 34742.53057283816, 34635.581744969364, 35814.557611384014, 35103.906648746546, 36186.83981012022, 37095.40738966023], [33097.63671130043, 33641.59095110939, 33734.19640682524, 33023.97321722294, 34242.9222232627, 33350.94007457578, 33535.406309083155, 34099.68263976166, 33030.000974642535, 32725.636923496117  …  31882.587201368508, 32474.26930461835, 32465.432335799098, 32956.97227987152, 33562.942786946136, 34071.5859221819, 34714.86859164118, 33875.95964967461, 34808.350782481255, 36000.6878564962], [33097.63671130043, 33607.69869147462, 33666.259535395926, 32924.263617467936, 34105.13832789725, 33183.28101633558, 33333.204476367915, 33859.9318727131, 32764.728858455688, 32430.104535736216  …  31531.039962529117, 32083.842495696186, 32042.797662293273, 32495.168434855415, 33059.30865922844, 33526.50888583353, 34125.086294803754, 33266.88129571238, 34148.07114224356, 35282.209824048325], [29576.147776884878, 29605.974349916603, 29621.96487296885, 29639.59778286796, 29669.58616010398, 29760.65661666253, 29855.09431275083, 29980.919922535275, 30075.471921977634, 30205.076255152915  …  30674.980306986192, 31071.532924764844, 31303.50911994646, 31460.567552961016, 31591.060048541018, 31670.94955695296, 31913.1284416478, 31935.027686170848, 31984.87625607206, 32059.325051733773], [34346.71094688275, 34381.34847608993, 34326.57943244698, 34375.686002910734, 34416.54542666948, 34513.147011537774, 34660.3144070265, 34908.382411598745, 35029.433164636626, 35233.103816947725  …  35892.165802017465, 36584.39461572561, 36773.72760352474, 36892.434212053144, 37073.60571281972, 37157.727826883536, 37451.02994378771, 37431.12256599389, 37398.83410340016, 37499.30766409926], [28335.32931213966, 28363.90456052843, 28318.72122724991, 28359.23313674925, 28392.941320030583, 28472.63563846331, 28594.04570947802, 28798.69670538358, 28898.561084133424, 29066.585178591216  …  29610.29774579871, 30181.372263708326, 30337.568080164714, 30435.498587961552, 30584.961345665914, 30654.36035764461, 30896.32856482696, 30879.9053880517, 30853.268071250364, 30936.156690017244], [978.0617717704337, 979.0481149238881, 979.667385516264, 981.7385650863419, 979.5681782117794, 983.5279925139916, 985.8844268492061, 993.8254925121338, 999.856103463279, 1001.1807915249739  …  1014.2282416169103, 1034.0978667312536, 1040.2066303762554, 1041.9589777758708, 1047.4205550734162, 1052.6658451116987, 1065.015101714673, 1069.845237335913, 1063.7308307404344, 1068.4592076917806], [0.0019383188997990075, 0.0021579953830945797, 0.004925064218380681, 0.0024895910429725276, 0.002340669562971076, 0.0076610058355564, 0.002938313946956983, 0.004178661906442338, 0.00746819965043799, 0.0010436028574285494  …  0.0077867636454196365, 0.00708162397973755, 0.006337551928794927, 0.002240547645533386, 0.0027548714754701553, 0.0031890986582445713, 0.007301265578560923, 0.0031757305262423152, 0.005526110555644781, 0.004081025827163964], [2.3548476e6, 2.3539780592969917e6, 2.3358840286407704e6, 2.3230807347285077e6, 2.343605111701531e6, 2.3353496485788315e6, 2.341144785668103e6, 2.3382318978278595e6, 2.3153371919136513e6, 2.3399309275763147e6  …  2.3445319676569398e6, 2.377631548818919e6, 2.3684804456431814e6, 2.3854878838330912e6, 2.3844929982888857e6, 2.3934909401864363e6, 2.418162297166916e6, 2.396583466665064e6, 2.3884694379231622e6, 2.410493697140704e6], [0.0016459319014481277, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.00013675158358782653, 0.0016777603470281486, 0.0013204140563006911, 0.0019803727006675875, 0.0018559566302099077, 0.0021629014279400246, 0.003184188119442502, 0.002143600033207707, 0.0017787022048378499, 0.0026476552018230917], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086171; 518.6059091613059 258.5036962251161 … 137.13538556670355 505.41380923410765; … ; 558.0421117718907 279.64687796419014 … 146.8297395045611 535.5927374098104; 557.0530251229357 279.9138914737696 … 146.77501324063755 535.9003658070567], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086171; 518.0834390395163 258.24326637797435 … 136.9972283642248 504.90462950861695; … ; 547.456610404682 274.3422560609682 … 144.04452603144648 525.4330782469622; 545.935727501989 274.3275542681426 … 143.84577413426257 525.205219037974]), BeforeIT.Data{Float64, Vector{Float64}, Matrix{Float64}}([72421.99999999999, 72459.89301767724, 72592.13184998951, 72938.29344384385, 73382.50492730636, 73457.95277354443, 73569.81061155064, 73802.92377784492, 73926.27492583709, 74175.80153109474  …  75002.77057338046, 75239.29229364068, 75415.6541077789, 75622.73895801975, 75534.88001833226, 75746.4556362402, 76179.66144387165, 76927.61989858146, 77491.47131637613, 77990.07363195904], [72421.99999999999, 72386.89321481927, 72445.93947389728, 72718.0701533795, 73087.23435096255, 73088.67109348593, 73126.2212182669, 73284.02429795571, 73332.55470746846, 73505.94896896635  …  74175.76689473171, 74334.71653490046, 74433.89387673134, 74563.0884742045, 74401.42924639709, 74534.66427300927, 74885.42017143122, 75544.4871818526, 76021.535520739, 76433.59907578079], [64900.92049553801, 64966.3709409303, 65079.77954758609, 65430.9666077282, 65800.41329747062, 65853.52635431568, 65950.70605786477, 66159.60123482948, 66270.71052868315, 66509.12656842748  …  67285.97976027735, 67484.35276199777, 67642.94050509472, 67833.4847648187, 67741.19356645965, 67957.79451155449, 68379.04651069338, 69084.18165140563, 69584.91748527698, 70028.79024555435], [64900.92049553801, 64900.920495538, 64948.71620276959, 65233.410261339195, 65535.65092696758, 65522.47301112127, 65553.05607829215, 65694.44103638302, 65738.47404353622, 65908.50874000932  …  66544.0637969358, 66673.01193539171, 66762.36538200275, 66882.9798513453, 66724.6922081325, 66870.60610436619, 67217.33244571989, 67842.07131474798, 68264.9611170405, 68631.20174305442], [40512.94792630534, 40332.840394588726, 40456.68250068584, 40347.28146253534, 40764.4817467516, 40880.09360588412, 40931.65635645914, 41025.25564297748, 41103.455305544834, 41109.04747157362  …  41274.41427234888, 41503.35491347655, 41585.16201068241, 41667.88297290735, 41735.43610673345, 41688.738430056874, 41682.58246301347, 41875.94235430751, 42199.90128841978, 42416.25417812601], [40512.94792630534, 40292.2070279787, 40375.20729954691, 40225.46052780494, 40600.45692868845, 40674.584616350134, 40684.85881194561, 40736.81200516789, 40773.343278607215, 40737.80779222961  …  40819.309851854065, 41004.37455870923, 41043.806787462956, 41084.019006061215, 41109.16831812045, 41021.802231535046, 40974.42338822837, 41123.027003612224, 41399.411319363135, 41569.738495781654], [14866.888022051655, 14822.624459279978, 14928.009650174192, 15141.715849687995, 15308.808116023274, 15353.39923233996, 15444.978047538287, 15526.032069012348, 15646.074766453392, 15755.469672395857  …  16076.007081180438, 16064.925953395588, 16101.445176306584, 15911.652357983758, 15758.815609495025, 15876.664310634113, 16120.090186418362, 16201.93565628009, 16424.004689246674, 16812.50677472826], [14866.888022051655, 14807.69138915934, 14897.946320368766, 15095.99832148367, 15247.209774565292, 15276.21590706264, 15351.852506172389, 15416.870405043514, 15520.41726597376, 15613.188207150542  …  15898.748069380177, 15871.782954034517, 15891.836724009683, 15688.693095310173, 15522.344171226614, 15622.669525968071, 15846.220683203293, 15910.630305743047, 16112.457728138288, 16476.973830575258], [15944.236265986641, 16083.030565143208, 15929.867753748842, 16076.912567064377, 16425.54710224055, 16359.262472963848, 16313.013374447839, 16263.767843302425, 15905.143773406477, 16082.367956573564  …  16692.13183289318, 16435.28694387799, 16499.95175949368, 17051.17304968711, 16124.168400948514, 16405.344301072808, 16328.007275112874, 16688.152574491527, 17067.418026541127, 16968.90159481753], [15944.236265986641, 16066.82769743638, 15897.786794581438, 16028.371390422344, 16359.455316951331, 16277.022556080281, 16214.654011480228, 16149.419247841175, 15777.405625585481, 15937.134401176312  …  16508.079239572166, 16237.691223554773, 16285.15555248176, 16812.24645140894, 15882.21460269753, 16142.891696949127, 16050.605400234112, 16388.105207395383, 16743.666157204603, 16630.24742578487], [15944.236265986641, 15945.138135685962, 15982.581968126207, 16021.434279198305, 16124.243241767765, 16164.58807134441, 16173.881259648848, 16211.421371573288, 16237.211983035178, 16264.498926231843  …  16382.496136736794, 16461.506271269103, 16500.930696013358, 16548.576024087757, 16537.970511856693, 16585.568259064818, 16637.47254835736, 16746.347910010696, 16887.449748905066, 16994.708420373372], [15944.236265986641, 15929.074187866354, 15950.394848469266, 15973.06060868407, 16059.363818534386, 16083.326805340426, 16076.360794183853, 16097.440817858407, 16106.80691320125, 16117.620617503313  …  16201.857682090984, 16263.595325121114, 16286.12174521561, 16316.69197926214, 16289.80733957978, 16320.232433093886, 16354.813066376795, 16445.254210366846, 16567.111698004075, 16655.539215702425], [3173.2320350842083, 3161.2547667275708, 3159.073875694485, 3132.5518592749536, 3151.849147038341, 3194.3051100650637, 3197.223438159183, 3205.8421694999192, 3215.226089337135, 3197.055649306574  …  3176.4758574972807, 3229.4206751783427, 3234.921572188751, 3240.1628818404397, 3264.169607990572, 3252.7211204175705, 3223.042929084412, 3203.3749985977006, 3240.713846826414, 3283.508596116486], [3173.2320350842083, 3158.0699569639282, 3152.7118567763364, 3123.093715336738, 3139.1669918691127, 3178.246966417899, 3177.945769869211, 3183.3022788125522, 3189.403812510919, 3168.184294043132  …  3141.451055090562, 3190.594477210669, 3192.809395509967, 3194.7606627104446, 3215.1885867589717, 3200.684106571669, 3168.2855948746533, 3145.779394179509, 3179.2407426777213, 3217.9784927732608], [34195.564496956766, 32841.24473591333, 32849.91704779421, 31509.38422317474, 33348.174027852874, 33992.66172042803, 34850.329066610015, 35388.87085092394, 35380.011060343306, 36031.65682417688  …  37204.171533261004, 37484.511758483546, 38128.06906956003, 38872.928491613486, 39604.35636631378, 39572.63925323495, 40220.059009764496, 39643.90394987393, 39970.95465999584, 40348.95919827101], [34195.564496956766, 32808.15878599687, 32783.761015380514, 31414.24763652738, 33213.99034776495, 33821.7766527693, 34640.19890319261, 35140.05595662939, 35095.86543128645, 35706.269067749534  …  36793.94686444051, 37033.84855271331, 37631.71824767853, 38328.22833857724, 39010.066836966565, 38939.5563972184, 39536.74722596535, 38931.11989852519, 39212.74558172663, 39543.70122843305], [33097.63671130043, 31619.847137247885, 31572.345102413445, 30137.000658618526, 32464.50606556177, 33127.46425807153, 33970.16623350451, 34401.002628371076, 34108.409979910844, 34802.74039362503  …  36243.95414630281, 36248.78727559317, 36898.97390826382, 37880.89791417187, 37687.8964651581, 37796.93065875842, 38171.07749043747, 37482.31463637112, 38170.80734782727, 38556.54811398367], [33097.63671130043, 31587.991685752007, 31508.761955980146, 30046.007722858725, 32333.878017007286, 32960.928638776386, 33765.3430145237, 34159.13331672613, 33834.476893984414, 34488.45049933944  …  35844.31713051497, 35812.980754111544, 36418.62343490158, 37350.098417152985, 37122.364682613676, 37192.255578661214, 37522.57652619985, 36808.39523342276, 37446.74526569358, 37787.061904794005], [29576.147776884878, 29605.974349916603, 29680.27750741657, 29801.744182943807, 29954.53260637813, 29975.10518911799, 29997.54895881327, 30058.350708992464, 30123.920570340688, 30202.972633269295  …  30512.42260056732, 30587.24962461, 30679.112994973497, 30768.31620603065, 30726.629370651004, 30876.525480269935, 31057.44636687669, 31347.29995602148, 31567.12486686619, 31685.089514341664], [34346.71094688275, 34381.34847608993, 34426.155168820915, 34651.97872543364, 34864.855554850794, 34891.79840883323, 34957.151341744364, 35095.60378422116, 35137.23975088465, 35294.75713762972  …  35743.88198761204, 35859.796018119574, 35924.82675901827, 36019.57431099225, 35964.47379733912, 36029.84678147639, 36266.629344993766, 36671.329211677425, 36949.63245654315, 37263.10753210575], [28335.32931213966, 28363.90456052843, 28400.869159435257, 28587.16894380052, 28762.787944810178, 28785.015244576432, 28838.930068572685, 28953.150482798577, 28987.499297986844, 29117.44789867562  …  29487.966652165447, 29583.593340595897, 29637.242362816007, 29715.407142286553, 29669.950353074797, 29723.881718919747, 29919.222458328928, 30253.091515333967, 30482.68596192022, 30741.296444622643], [978.0617717704337, 979.0481149238881, 973.3468713485925, 977.2436993507453, 981.0251362416903, 986.6227563643996, 996.0057573070359, 1005.6467416159156, 1009.5502074578195, 1011.3967975284361  …  1029.6751720979346, 1037.307119268165, 1039.0007511029476, 1045.594247795794, 1050.0903984695415, 1051.4222498081538, 1054.9707988229163, 1065.55248370675, 1068.1601618676177, 1080.5931991069863], [0.0019383188997990075, 0.0036732138969552963, 0.0033397108267958497, 0.0022862986974252486, 0.0020406876913017236, 0.002070826450913721, 0.003419407938833219, 0.007140778685988947, 0.005701320007345689, 0.008173845802715407  …  0.0038612844465713003, 0.005632641818161144, 0.0010158391282486523, 0.00044855021314704757, 0.0020133475474568563, 0.0014551242417462085, 9.829527847204922e-5, 0.0020602068227226766, 0.0005204393401361251, 0.003490239442806242], [2.3548476e6, 2.343580407907839e6, 2.349889554641081e6, 2.3395952939867717e6, 2.379872795716838e6, 2.3939617976463456e6, 2.4132260856262194e6, 2.429254654624857e6, 2.4521087374468287e6, 2.4648300593643505e6  …  2.4805375338928774e6, 2.4820600988815245e6, 2.481658545112664e6, 2.5023219223601804e6, 2.5011006312387586e6, 2.507211624290327e6, 2.5105633480764134e6, 2.505849581712503e6, 2.506263607759069e6, 2.5262720295896996e6], [0.0016459319014481277, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.00018963181697950054, 0.00018299137878560788, 0.0009987251680086805, 0.0009229829189267407, 0.0011283687590934656, 0.0011785785738238237, 0.0009539244390594205, 0.0009114968782689063, 0.0017093534039956495], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086171; 518.6059091613059 258.5036962251161 … 137.13538556670355 505.41380923410765; … ; 528.4490577324841 272.72191858865415 … 144.7724139460687 528.733255022741; 529.3830224954095 274.9600474206347 … 145.41338949008343 531.7407472875522], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086171; 518.0834390395163 258.24326637797435 … 136.9972283642248 504.90462950861695; … ; 518.4249070364641 267.5486562466398 … 142.02622588349737 518.7037133880427; 518.8179445744013 269.4725757739813 … 142.5113247742961 521.1286154470052]), BeforeIT.Data{Float64, Vector{Float64}, Matrix{Float64}}([72421.99999999999, 72476.96549733385, 72574.46367448613, 72879.24445153166, 73404.18223923485, 73797.22025991768, 74164.79485182773, 74375.26876264645, 74794.66654897854, 75222.1932926464  …  75599.67009033986, 75842.00234837408, 76016.02330603416, 76024.77405325822, 76258.09821385487, 76347.75243420982, 76435.00696204175, 76713.6845290103, 77001.08468564329, 76996.00055138953], [72421.99999999999, 72403.94849478653, 72428.30688010907, 72659.19944825748, 73108.82443948011, 73426.23304271018, 73717.61799928642, 73852.34519401197, 74193.97206246723, 74542.89117705192  …  74766.08481353761, 74930.1804169434, 75026.44747476713, 74959.49012255829, 75113.79507514797, 75126.34152825018, 75136.42754078185, 75334.39829822873, 75540.45103448676, 75459.36505145041], [64900.92049553801, 64966.3709409303, 65060.62013758598, 65347.021817555724, 65839.84424911084, 66208.43474854603, 66536.00114034457, 66737.12640554018, 67126.89842977858, 67522.62161281824  …  67835.90393752929, 68055.83603657637, 68208.78876702089, 68203.54110953749, 68423.24551572259, 68493.88668091186, 68564.81496115122, 68820.4674535883, 69077.51812904765, 69056.47395471242], [64900.92049553801, 64900.920495538, 64929.59537766292, 65149.718926478614, 65574.92321954017, 65875.59723953801, 66134.82212232036, 66267.90569708444, 66587.78568760239, 66912.85130828022  …  67087.92434061674, 67237.62446596201, 67320.84743691339, 67247.85084586206, 67396.50951734271, 67398.12187426978, 67399.94481499867, 67583.09860945737, 67767.18661969849, 67678.29030076263], [40512.94792630534, 40443.984204631626, 40460.50212154805, 40495.70776742336, 40604.061705612745, 40709.5436996861, 40941.62872393216, 40983.53172968322, 41122.29304675989, 41274.975663061516  …  41645.66799978127, 41731.55026334258, 41844.80583810438, 41939.781506417494, 41975.10438605248, 42108.4256421722, 42161.043039283155, 42259.78314499051, 42401.73642260722, 42472.92231877276], [40512.94792630534, 40403.2388660619, 40379.01922812299, 40373.438687723996, 40440.68237271058, 40504.89208438486, 40694.771050999036, 40695.38144768928, 40792.02972925829, 40902.23755131902  …  41186.47002119581, 41229.82639550576, 41300.0705741358, 41352.10760863576, 41345.240216586695, 41434.77529003567, 41444.75524072436, 41499.96646605554, 41597.41784269148, 41625.27569097653], [14866.888022051655, 14815.753383584266, 14915.841680474226, 15100.202035358394, 15355.621923384719, 15422.75572792048, 15355.38571374111, 15478.009517544946, 15575.202904177055, 15431.138599812515  …  15765.241411200557, 15840.939459901143, 15761.754748055255, 15932.03373971585, 15924.828310560917, 15977.665392625926, 16068.267905043642, 16225.76019276637, 16463.982437040235, 16577.75278033827], [14866.888022051655, 14800.827235736771, 14885.802855589054, 15054.609850212708, 15293.835216322523, 15345.2237394659, 15262.800369619974, 15369.185494359188, 15450.114593171504, 15291.786041238423  …  15591.408997515344, 15650.489371997926, 15556.568382356518, 15708.788886473678, 15685.865742047328, 15722.054793228854, 15795.278827576252, 15934.026485081109, 16151.67713799457, 16246.904901889313], [15944.236265986641, 16029.399384103648, 15929.961901414868, 15975.166454610306, 16064.516847723378, 16176.094342065218, 16335.540296114776, 16217.761528695668, 16364.095754109152, 16694.31024828489  …  16538.77504454969, 16729.743417525482, 16858.334115666443, 16524.31929116742, 16956.632100018265, 16885.072052385054, 16768.010320169906, 16748.54413321803, 17460.632332044268, 16793.486470738975], [15944.236265986641, 16013.250547192063, 15897.880752644669, 15926.93248098359, 15999.87774671409, 16094.775232698865, 16237.045107005537, 16103.736398098654, 16232.6716492928, 16543.550482135397  …  16356.413410471052, 16528.607549761375, 16638.87249072552, 16292.77513959514, 16702.186634049067, 16614.944766444733, 16483.13308913805, 16447.410946219974, 17129.421580159757, 16458.33312129376], [15944.236265986641, 15950.48610645224, 15972.066166180568, 16002.048719429555, 16074.639479174413, 16166.68715161812, 16250.740784091347, 16312.531187265713, 16364.193822868332, 16440.58267649768  …  16597.943139278344, 16644.403973152053, 16683.07556781218, 16702.396851850506, 16739.22388845732, 16750.07059426909, 16768.079579702237, 16803.356644817053, 16846.401302850707, 16873.75283872465], [15944.236265986641, 15934.41677081331, 15939.900224164146, 15953.733579922284, 16009.95964754104, 16085.415333293264, 16152.756893893667, 16197.839742598415, 16232.768930437494, 16292.114224503694  …  16414.929099540215, 16444.294111750998, 16465.895456894705, 16468.357419415166, 16488.040776319343, 16482.103060882127, 16483.201171997454, 16501.237947306923, 16526.841899963256, 16536.99758593881], [3173.2320350842083, 3166.6027374938476, 3161.238832064945, 3135.0263325472465, 3129.306711847924, 3145.667009653166, 3157.801321168013, 3176.9592589542553, 3151.5770739478057, 3147.6731192818656  …  3237.102760793417, 3249.2592965694116, 3261.9205834263107, 3280.435161123639, 3282.0565459119066, 3288.471792807072, 3293.7511013496883, 3290.764089394891, 3300.08595483238, 3315.015227476284], [3173.2320350842083, 3163.412539910885, 3154.8724531685484, 3125.560717408099, 3116.7152611025604, 3129.853375398889, 3138.761348650433, 3154.622440536824, 3126.26597812393, 3119.2477182727566  …  3201.4094674540584, 3210.194585778841, 3219.45693388921, 3234.468633680885, 3232.8071193609276, 3235.862839909129, 3237.7924827930233, 3231.597258533884, 3237.486621108503, 3248.8563355221654], [34195.564496956766, 33510.123714169735, 33364.28112515224, 34577.99158941058, 34576.88657787904, 34338.794057245286, 35079.43186480946, 34907.84345919759, 34924.27211434737, 35584.05918924795  …  35547.89361813346, 36144.13683405978, 36249.94986971211, 36740.23112876408, 37185.983041907035, 37080.075635648565, 37940.38395331233, 38361.298649713055, 37376.066783253096, 37024.05569352221], [34195.564496956766, 33476.36390135457, 33297.089221429495, 34473.589927047484, 34437.758903808295, 34166.168942035125, 34867.920325384555, 34662.410610635096, 34643.78663760857, 35262.713511455026  …  35155.931580389166, 35709.588488322, 35778.04838479369, 36225.41502678848, 36627.98280183515, 36486.86879810328, 37295.80231729653, 37671.57541001601, 36667.080135670585, 36285.153959367635], [33097.63671130043, 32322.295189155357, 32096.123154103185, 33269.823395270774, 33196.904815365015, 32849.9675669992, 33547.19174676967, 33211.877472475026, 33191.197270415156, 33762.290407760265  …  33897.90798332511, 34604.367626454725, 34698.82126550367, 35111.59161280642, 35784.44962468345, 35703.48628862188, 36502.69825576723, 36881.70159167772, 36701.33328930128, 35872.21671198248], [33097.63671130043, 32289.73205555877, 32031.485177677016, 33169.371497710126, 33063.32980007535, 32684.826955874367, 33344.91885372263, 32978.36875677033, 32924.63054686418, 33457.396409095774  …  33524.13919603373, 34188.33138864346, 34247.11235724413, 34619.59653893461, 35247.480319369926, 35132.302119562286, 35882.54193395334, 36218.58100914388, 36005.14566202934, 35156.302622076604], [29576.147776884878, 29605.974349916607, 29663.279002381318, 29768.09293020063, 29942.541174794635, 30109.693676666207, 30272.799369561923, 30386.9911982264, 30545.250647421806, 30712.135105528243  …  30879.318697168197, 30955.400947610015, 31021.550457834688, 31034.15761426299, 31112.37852576454, 31139.127256981876, 31155.94867392537, 31247.241004879394, 31314.403261710584, 31324.15924661049], [34346.71094688275, 34381.34847608993, 34419.28763365268, 34599.87459739639, 34906.19453745326, 35102.16142280979, 35263.19760365783, 35347.004691528455, 35574.02685087848, 35797.856606243484  …  35940.065437376004, 36075.68581216595, 36162.2619609604, 36137.94158707569, 36280.651894375216, 36312.633350250355, 36364.63959391059, 36518.24011349064, 36697.24656390501, 36685.006942863576], [28335.32931213966, 28363.90456052843, 28395.20358432806, 28544.184111024515, 28796.89175426317, 28958.560399608552, 29091.411932978226, 29160.551054834123, 29347.839661777714, 29532.49460116715  …  29649.813958687762, 29761.697975385952, 29833.1215154874, 29813.057707803357, 29930.790772836055, 29957.174815416005, 30000.078895596467, 30126.796161524704, 30274.47279726816, 30264.37536192999], [978.0617717704337, 979.0481149238881, 978.0535015519625, 979.0542899587197, 991.1085368629526, 996.5796490700113, 1000.0041671248765, 1003.1305157853719, 1007.6209314783034, 1012.6299010465642  …  1016.5198029850524, 1024.7492768003717, 1024.976348225852, 1031.441908198789, 1030.2150955828865, 1042.1260736796073, 1044.2266933152746, 1054.986335218236, 1065.8683034320209, 1047.3077652383427], [0.0019383188997990075, 0.003174331492373339, 0.0054553278861102505, 0.006185291388457692, 0.006981908907320866, 0.004739586368428306, 0.006276505149037881, 0.008604297371610059, 0.0073028783165596245, 0.004742385066141219  …  0.0024258871828521933, 0.0027383421392050966, 0.0036635004234093493, 0.0059609130279190126, 0.005110184601216483, 0.005423074229888192, 0.0046046969288620065, 0.0021847535144967623, 0.002236924959058584, -0.0037917787253684], [2.3548476e6, 2.335014887900277e6, 2.321305427083965e6, 2.336211708914364e6, 2.3103134062590306e6, 2.311571989029637e6, 2.341241639869742e6, 2.335351862065551e6, 2.337259385960943e6, 2.3445383398440313e6  …  2.335154614507318e6, 2.351648752749356e6, 2.3531458899025577e6, 2.348342617069486e6, 2.361652221323045e6, 2.3641242064949335e6, 2.392670718827626e6, 2.4013901568884025e6, 2.3738845520360456e6, 2.3575788903986965e6], [0.0016459319014481277, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  1.815557224799165e-5, 0.0007744068254758258, 0.0008637643601805086, 0.0007358348119221512, 0.001356097818059483, 0.0014831056860879549, 0.00266665959511694, 0.002877820217366468, 0.0015894812297334053, 0.0007091815891912141], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086171; 518.6059091613059 258.5036962251161 … 137.13538556670355 505.41380923410765; … ; 518.6844321917152 266.73691284289066 … 144.29744892449716 529.8431779865995; 546.9293718205157 267.302693598522 … 144.7524703917084 531.8870033352171], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086171; 518.0834390395163 258.24326637797435 … 136.9972283642248 504.90462950861695; … ; 508.8455066871827 261.6771800807552 … 141.56027047388693 519.792582222106; 536.0141154087511 261.9680423793502 … 141.86359586426693 521.2719526127369])])

Finally, we can plot baseline and shocked simulations

Te = T + 1
+data_vec_shocked = Bit.run_n_sims(model, 4; shock = custom_shock)
BeforeIT.DataVector(BeforeIT.Data[BeforeIT.Data{Float64, Vector{Float64}, Matrix{Float64}}([72422.0, 72458.63063173035, 72714.7993073847, 73025.94784345852, 73170.08974424793, 73488.94581643856, 73736.47411998946, 74215.95259231319, 74315.10367343524, 74689.18028783813  …  75172.58090642745, 75228.81699975023, 75598.1201305265, 76403.05467531475, 76935.02128673751, 77443.49876715624, 77857.59775246747, 78271.96742728617, 78684.79761409517, 78745.95566326432], [72422.0, 72385.63210066463, 72568.3598928517, 72805.4598972233, 72875.67386690396, 73119.50833074616, 73291.87982858339, 73694.1491565101, 73718.26067511964, 74014.69160357275  …  74343.70484667894, 74324.36718181372, 74613.98455861978, 75332.47015315716, 75780.56047015703, 76204.55811764165, 76534.84946933789, 76864.66379441545, 77192.22561074348, 77174.39571103048], [64900.920495538005, 64966.370940930225, 65187.0333275795, 65473.4463740019, 65604.67546210511, 65897.04291360846, 66115.53089261762, 66552.03912562672, 66627.47716100705, 66976.25803693687  …  67426.62415519402, 67485.51157561327, 67850.01019928801, 68610.97758355155, 69105.71914574139, 69561.10848322994, 69950.78346788613, 70332.03139881173, 70685.2981040959, 70730.30248547599], [64900.920495538005, 64900.920495538005, 65055.75398573217, 65275.76176804663, 65340.70068564175, 65565.77080760525, 65716.88710121115, 66084.11974357393, 66092.37539469957, 66371.42172749744  …  66683.15740338102, 66674.15681699573, 66966.73944498798, 67649.57818711115, 68068.7421797114, 68448.27026831036, 68762.36664786185, 69067.48514364476, 69344.46861481928, 69318.71366343043], [40512.94792630534, 40319.37525231505, 40466.0852258405, 40613.16803131025, 40686.46819913686, 40815.29155764575, 40944.62291154861, 41108.54017572659, 41202.548443010375, 41309.34175083407  …  41424.931067174024, 41408.0525600783, 41337.38494343024, 41470.82854183544, 41672.285344959695, 41971.28482462056, 42069.92170115199, 42257.978345198026, 42625.707394796336, 42718.4896134155], [40512.94792630534, 40278.75545117816, 40384.59108867232, 40490.54430270733, 40522.75728566462, 40610.108335552424, 40697.74718515263, 40819.51097438523, 40871.64057455023, 40936.29329243609  …  40968.16700208151, 40910.21799225321, 40799.25527959479, 40889.725765950134, 41046.96517524384, 41299.82845049775, 41355.181992915444, 41498.19411595635, 41817.14030928934, 41865.942115186626], [14866.888022051655, 14940.59628379265, 15121.746648645383, 15093.457969701507, 15163.548483205472, 15283.726403855002, 15445.043604555773, 15851.458014057147, 16037.646850636662, 16253.975224072246  …  16419.0428115477, 16578.431361915278, 16662.94762439557, 17052.59631404882, 17117.211873657856, 17202.230268219293, 17261.607399715904, 17286.713469432103, 17253.804014017638, 17056.029435014083], [14866.888022051655, 14925.54436282125, 15091.293154349374, 15047.886146978155, 15102.534625686154, 15206.893331997435, 15351.917667913744, 15740.008319411827, 15908.844537794263, 16107.191950769253  …  16238.001381994814, 16379.114666200048, 16446.029538844316, 16813.649772526293, 16860.356802108658, 16927.02908695957, 16968.34428588822, 16975.90417888339, 16926.51658870146, 16715.63642589483], [15944.236265986641, 16083.080452818574, 15860.9310910651, 16097.858896678581, 16035.852193825702, 16169.704034620892, 16229.851103281786, 16723.826857934848, 16139.715523337365, 16294.203893274376  …  16600.309713185743, 16222.566407222244, 16441.643665884276, 16678.937149425405, 16778.75724686978, 16895.9591017203, 17010.733375331292, 17096.714939558096, 17458.87384317076, 17285.02221434602], [15944.236265986641, 16066.877534852347, 15828.98896257068, 16049.2544765823, 15971.328431327865, 16088.417050074106, 16131.993167477192, 16606.24364287886, 16010.093471711894, 16147.057330642794  …  16417.269578874006, 16027.528151688824, 16227.606513051982, 16445.22644199235, 16526.98091057381, 16625.657644827246, 16721.732442647335, 16789.32175863484, 17127.696448063638, 16940.05911806081], [15944.236265986641, 15945.700682630479, 15993.931032538732, 16049.088158098912, 16089.199605644148, 16141.566892099283, 16206.551474614625, 16279.912371513741, 16304.538492096417, 16358.71070409274  …  16461.38988019368, 16493.37214681648, 16553.09925129602, 16664.409065771408, 16790.936160378144, 16900.254099385253, 17006.148913226392, 17102.169784977345, 17208.47684997033, 17245.780447864843], [15944.236265986641, 15929.6361680723, 15961.721057144538, 16000.630991962398, 16024.461188153955, 16060.421356243482, 16108.83402399082, 16165.450265816675, 16173.592706398023, 16210.981605760708  …  16279.881518802375, 16295.078088365504, 16337.611170767346, 16430.901930585074, 16538.977071439767, 16629.883931144162, 16717.225867473877, 16794.67852776921, 16882.049235673567, 16901.600512925983], [3173.2320350842083, 3161.817313672086, 3161.011066414634, 3165.04106039098, 3171.3372985736114, 3170.6204328400604, 3188.5067143995648, 3197.251739874131, 3216.892703232896, 3211.7404876888277  …  3220.176231467536, 3226.95426952854, 3215.4026966725532, 3197.974230390733, 3217.559577722389, 3231.1378148306476, 3253.0447666585583, 3263.696889845246, 3294.180137666697, 3318.5154029489545], [3173.2320350842083, 3158.631937169875, 3154.645146212599, 3155.4848214955728, 3158.5767285595957, 3154.6813548225423, 3169.281603621613, 3174.7722474642114, 3191.0570414178483, 3182.736519411302  …  3184.669575260567, 3188.1577242954277, 3173.544616520076, 3153.163172405358, 3169.2779707848986, 3179.4460905838687, 3197.7777213828763, 3205.01671812304, 3231.6928313944873, 3252.286656796616], [34195.564496956766, 32640.00069243555, 34052.497475636264, 33889.60224221749, 34042.99144932922, 33645.517403584905, 34331.01558303408, 33933.090075669395, 34616.29959950118, 33533.71544977325  …  33194.253588281106, 32983.01922076771, 34067.31502257016, 33764.073883252684, 33301.64095824034, 33448.957274669665, 33229.38448057876, 33049.64105592808, 33271.19539380034, 34746.687381732256], [34195.564496956766, 32607.117486062987, 33983.91958171077, 33787.27904042717, 33906.01201920964, 33476.377470819396, 34124.01662182047, 33694.51060090113, 34338.287526284585, 33230.88562187743  …  32828.24351135161, 32586.475889117064, 33623.827056266535, 33290.96066732159, 32801.927837074996, 32913.84104785682, 32664.839560879554, 32455.419632194364, 32640.07405564319, 34053.235865372146], [33097.63671130043, 31524.42204963123, 32786.461133802484, 32668.13929644921, 32758.77058124929, 32425.29358326801, 33214.05908243095, 33400.96253107459, 33681.10674305018, 32702.0560301157  …  32465.956273761396, 31963.252550233265, 32911.17112575374, 32563.381213247816, 31934.87413699025, 32074.93270207372, 31714.049204310675, 31419.080382830623, 31924.783031690058, 33060.272981243514], [33097.63671130043, 31492.66273425001, 32720.43289445131, 32569.504069471535, 32626.958494984265, 32262.287857697233, 33013.79481378086, 33166.12438106677, 33410.60543522122, 32406.73659215267  …  32107.976627623353, 31578.969517445305, 32482.733829137876, 32107.092494633464, 31455.67025484432, 31561.7981124999, 31175.24881299291, 30854.175891253977, 31319.201790954376, 32400.477813483845], [29576.147776884885, 29605.974349916618, 29673.37253757367, 29809.249360949187, 29886.497471319253, 29999.054087198103, 30094.731368669665, 30217.99850585117, 30213.97359534498, 30338.831796714898  …  30512.519232477014, 30583.171153001287, 30726.756718722118, 31001.07520435412, 31248.468384139127, 31447.433991263155, 31633.096202894496, 31824.132579897807, 31992.82479910257, 32033.27846867225], [34346.71094688275, 34381.34847608992, 34532.62872432414, 34679.266255959665, 34732.72335492341, 34907.82708747399, 35029.15675475091, 35330.38153751034, 35402.66141351677, 35617.09364839709  …  35891.31063670614, 35883.42351453006, 36101.28795254398, 36572.41345003055, 36814.58360745446, 37063.21260091461, 37266.536366683154, 37455.26434454815, 37637.438236541115, 37640.75547889441], [28335.32931213966, 28363.904560528426, 28488.707650372107, 28609.680594618138, 28653.781600550024, 28798.238574415114, 28898.333051669153, 29146.83729504972, 29206.46670446974, 29383.368882959803  …  29609.592252025224, 29603.085538630465, 29782.819214034647, 30171.488048709176, 30371.273442157504, 30576.387242344495, 30744.125162547272, 30899.82185826551, 31050.111568091805, 31052.8482247293], [978.0617717704336, 979.0481149238879, 981.0320656816637, 984.9307570930322, 985.4546358624658, 990.161738936401, 991.6427691971356, 1003.6590822652624, 1010.8421521453376, 1020.3325918248503  …  1022.7942860109519, 1018.9169080818388, 1021.9655280219037, 1037.4889291669324, 1042.6671541477833, 1050.4618910521606, 1051.1508983085075, 1052.6344743657646, 1055.0350684522741, 1056.2685379092702], [0.0019383188997990075, 0.002318069620665719, 0.003049541140922596, 0.002224369592188191, -0.0022251584479866526, 0.004366924925378823, 0.006068540028211, 0.002763470029782056, 0.0021042695860895577, 0.006527435992621067  …  0.0016670645613094948, 0.0056211649437434286, 0.004403830502085482, 0.0033734120185084926, 0.010405043693178406, 0.0034987674088711174, 0.009835632205891676, 0.005539796592840762, 0.004137709755095864, 0.007862292319288144], [2.3548476e6, 2.328642066464245e6, 2.367136786703873e6, 2.3785683790057097e6, 2.3853441679808004e6, 2.361219699143722e6, 2.3811604460283155e6, 2.3742624887050353e6, 2.3831894560849294e6, 2.3628660285500544e6  …  2.354728150940062e6, 2.367293693829456e6, 2.395702092902069e6, 2.3763293025443605e6, 2.3710765337988767e6, 2.3591676693399525e6, 2.3625614890307123e6, 2.3635673623363497e6, 2.3803493785910932e6, 2.4021938404081287e6], [0.0016459319014481277, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0006538730501113249, 0.0018868794777280042, 0.0010292157403429853, 0.0009743747837785542, 0.000488510365717588, 0.0008195501302721295, 0.0009278809694580809, 0.0016525234320153488, 0.0026132549358040356], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.90462950861706; 518.6059091613058 258.50369622511613 … 137.13538556670355 505.4138092341076; … ; 575.4194435292623 279.69747214608435 … 145.5520215884953 537.3581543186674; 575.9997351272681 280.97917111355696 … 146.15790453342944 538.914856855408], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.90462950861706; 518.0834390395163 258.2432663779743 … 136.9972283642248 504.904629508617; … ; 564.5043115388589 274.39189052177954 … 142.79104514778925 527.1650069607444; 564.5043115388592 275.3715737580535 … 143.24098127645127 528.159548858138]), BeforeIT.Data{Float64, Vector{Float64}, Matrix{Float64}}([72422.0, 72493.85075968767, 72417.55656866034, 72507.8207808218, 72478.6040433599, 72611.16320000871, 72761.62834931223, 73034.45077637117, 73146.85475810623, 73190.84660272078  …  73360.97294699746, 73603.74775187737, 73844.82900888959, 74070.90125414853, 74528.88728996839, 74981.9120458045, 75440.02724381795, 75997.91578722364, 76272.09831019101, 76632.45155768651], [72422.0, 72420.8167460634, 72271.71576751892, 72288.89722060681, 72186.97051014043, 72246.13842971431, 72322.9118933984, 72520.95433772191, 72559.39425609284, 72529.88878212262  …  72552.07223529615, 72718.83557448874, 72883.51776327213, 73032.99562639641, 73410.53210346708, 73782.35184655289, 74158.35185957013, 74631.49883753706, 74825.29280230863, 75103.07152927545], [64900.920495538005, 64966.370940930225, 64881.93501873867, 64960.895494976765, 64935.73948592265, 65063.900988683075, 65191.5100891974, 65445.10906422269, 65543.2286607931, 65580.79444821177  …  65726.29563841161, 65957.73447525573, 66186.7217213428, 66425.03870665304, 66857.20319614936, 67291.06220811843, 67688.65513012966, 68198.36385590868, 68456.96457154857, 68803.22778611373], [64900.920495538005, 64900.920495538005, 64751.270110516234, 64764.758438816956, 64674.45631982898, 64736.81718412491, 64798.43768399093, 64984.97237428725, 65016.834762655184, 64988.56002295819  …  65001.57723319344, 65164.74764764365, 65325.10363981647, 65494.26939873367, 65853.96669728041, 66214.54018050042, 66538.67035092563, 66972.18022510347, 67158.40434324302, 67430.09825251023], [40512.94792630534, 40552.638029447255, 40588.382508019604, 40599.6919466688, 40617.796937594176, 40672.15389340288, 40779.51509040722, 40849.56167784617, 40943.70484983592, 40981.94205363264  …  41111.9326718379, 41134.770773190496, 41189.69321356018, 41029.30554365212, 41161.02313563171, 41275.6289338923, 41624.4278719947, 41868.79733564938, 41945.063952438046, 41980.37402914137], [40512.94792630534, 40511.7832274563, 40506.64207790183, 40477.108906537745, 40454.36233797883, 40467.69024101069, 40533.63488211301, 40562.353323172836, 40614.87581836335, 40611.850213451056  …  40658.61982357872, 40640.22177693566, 40653.48619918732, 40454.38953202696, 40543.37479309933, 40615.301658723205, 40917.256804644574, 41116.01044998533, 41149.40799305878, 41142.55735591296], [14866.888022051655, 14900.2916735275, 15033.203978149442, 14996.975221685181, 14780.30972912565, 14907.279078461826, 15131.762434209306, 15166.157698772913, 15237.079907003548, 15279.153038623861  …  15346.255614516302, 15365.583848180642, 15412.774648068182, 15498.955952313097, 15499.490055459488, 15376.17261982661, 15550.806191352216, 15560.390667904887, 15398.142661655422, 15571.44850066224], [14866.888022051655, 14885.280357482226, 15002.928798817537, 14951.694710250282, 14720.837916646957, 14832.33845113236, 15040.525427321569, 15059.526268214797, 15114.707145509052, 15141.173002024318  …  15177.043067437598, 15180.8487949361, 15212.131301821528, 15281.779526283228, 15266.909968436219, 15130.184698362309, 15286.608440783426, 15280.62008035485, 15106.055278357817, 15260.683780673873], [15944.236265986641, 16583.178904209766, 16344.953849972942, 15916.720779815592, 15610.781054444404, 15910.971271389073, 15753.818760150283, 16114.03689274958, 16141.720941512309, 16140.504932160555  …  15937.490383057784, 16000.25487725652, 16224.092711215864, 16200.951472743875, 16344.50837755799, 16532.008306648833, 16445.264275026744, 16718.87575947478, 16861.48154824455, 16662.62706072532], [15944.236265986641, 16566.472161481444, 16312.036954166917, 15868.663271776619, 15547.967658749014, 15830.984966562888, 15658.831062783414, 16000.741037591795, 16012.082783876967, 15994.746364545925  …  15761.75869908866, 15807.889395678918, 16012.88763453602, 15973.938456514943, 16099.248232404636, 16267.529332489858, 16165.870282489726, 16418.275999852278, 16541.6360881676, 16330.085317253197], [15944.236265986641, 15960.271184500985, 15936.930157099692, 15942.055413670609, 15938.970882806178, 15980.260170457288, 16016.718983437442, 16063.76840379867, 16083.899130785714, 16096.338382971022  …  16150.403524514415, 16178.496717602075, 16222.654595777529, 16247.2319770908, 16339.701688763045, 16421.579120221515, 16557.21088413881, 16666.969479003812, 16734.38637541181, 16817.78643427251], [15944.236265986641, 15944.191990873882, 15904.834975047524, 15893.921412528125, 15874.836943476223, 15899.925542269351, 15920.14612838738, 15950.825980340283, 15954.725354429227, 15950.978666134195  …  15972.324194586734, 15983.988296570169, 16011.46824047008, 16019.57046333985, 16094.51367115029, 16158.866791554226, 16275.914993915765, 16367.302976835756, 16416.951783793364, 16482.148122149632], [3173.2320350842083, 3176.387815542594, 3179.151896475605, 3180.0263790744316, 3179.0534991691793, 3185.7029355505124, 3194.478345262231, 3200.5322900389037, 3199.6727270725196, 3200.4563683803226  …  3220.6588606739633, 3212.7214985063383, 3210.716899030684, 3184.946436038387, 3197.9702358224463, 3183.8371213737546, 3221.129159911762, 3242.2602790503215, 3247.7726470374405, 3258.75780276747], [3173.2320350842083, 3173.187759971456, 3172.7494426853814, 3170.4248948622853, 3166.2618813325257, 3169.6880360360606, 3175.217228518124, 3178.0297324753683, 3173.9753631497547, 3171.554302557169  …  3185.1468828485226, 3174.096068913127, 3168.9198185450527, 3140.317927756694, 3149.9825799006053, 3132.9021133498627, 3166.4043393546485, 3183.96553037598, 3186.1656445006347, 3193.721659466875], [34195.564496956766, 33824.20053060592, 34072.58741446132, 34870.901404813165, 35583.47016504347, 34861.93587256541, 35043.28065694434, 34756.26199373036, 34152.47487221296, 33378.02155145942  …  34849.937940914526, 34797.362001584064, 34334.450352642794, 35393.88725355603, 35146.63174844114, 34357.57279479318, 36036.997880068135, 35892.73198296672, 36674.44822145825, 37979.42997580978], [34195.564496956766, 33790.12430073953, 34003.96906166213, 34765.61535702915, 35440.29228150927, 34686.68086254925, 34831.987091335715, 34511.89489621929, 33878.18789022613, 33076.597734075774  …  34465.67177771192, 34379.005459740496, 33887.48482128356, 34897.93656109119, 34619.233321694344, 33807.92054209594, 35424.75349479243, 35247.3927411723, 35978.77057706518, 37221.46151056086], [33097.63671130043, 33366.458378102565, 33621.57118194306, 33876.46857216108, 34113.75384284742, 33741.17691581043, 33946.74859239856, 33851.567486727836, 33328.12581245853, 32588.77497315582  …  33884.643663329, 33694.22374833428, 33316.181916597576, 34052.198968116456, 33622.76602712206, 32559.47060935635, 34217.46897462387, 34042.879958772, 34607.038073605785, 35561.42800865234], [33097.63671130043, 33332.84330109606, 33553.861125029485, 33774.185024987, 33976.48968474333, 33571.55609154088, 33742.066570155155, 33613.56118747666, 33060.45938188268, 32294.478531974593  …  33511.02113252073, 33289.129852802354, 32882.47219355647, 33575.04844951975, 33118.23421216751, 32038.58438511833, 33636.13716314003, 33430.800433827586, 33950.57713434124, 34851.716435125636], [29576.147776884885, 29605.974349916607, 29543.04891432024, 29540.675826771752, 29553.691210451867, 29660.501470190462, 29704.713060190825, 29786.152135079643, 29830.83158092893, 29843.182370753497  …  29932.978329420752, 30008.335910015398, 30113.26478406185, 30216.35640235909, 30417.92614688064, 30633.713252801826, 30858.097335158334, 31062.838687145446, 31212.376446467104, 31403.740896227457], [34346.71094688275, 34381.34847608993, 34357.54497734817, 34434.70140669193, 34392.519901679574, 34419.08127448162, 34500.00983161686, 34666.22857128488, 34718.16066893402, 34744.14854393934  …  34800.969787470975, 34951.27821892308, 35072.745248092666, 35206.822834176055, 35429.4509701756, 35644.33344647184, 35816.47052677426, 36113.49649173745, 36220.720571061196, 36370.547157727065], [28335.32931213966, 28363.90456052843, 28344.267164194556, 28407.919629706765, 28373.12075661364, 28395.033342260995, 28461.79773553084, 28598.92477321506, 28641.767684463077, 28663.207146236786  …  28710.083502167465, 28834.08486317618, 28934.292661163316, 29044.903908945522, 29228.567537100505, 29405.841155487968, 29547.85070233344, 29792.89100748824, 29881.348665123292, 30004.952514104833], [978.0617717704336, 979.0481149238879, 981.3411270702462, 985.5182615130244, 989.5283737913029, 984.3182440110619, 986.7871973899012, 992.7283578580688, 994.2364109301864, 993.463533518988  …  992.3475215199541, 998.1203463172297, 1000.7116891883217, 1001.8594701178567, 1009.8260790930674, 1013.0155088447548, 1014.0872681970775, 1022.028677025807, 1023.8675540202197, 1028.9397321592878], [0.0019383188997990075, 0.007334852166847261, 0.007227192998082499, 0.0063674479719377786, 0.003446090841553895, 0.0032265409708780446, 0.004191283899704468, 0.003501817474909741, 0.004415694838464823, 0.0046011977677848925  …  0.002086119804288522, 0.006859705088374524, 0.008520942457468372, 0.004944710234454197, 0.004168679591690649, 0.0022241218191243473, 0.004868606894425476, 0.006639637258123665, 0.004286522959381589, 0.004377407679346135], [2.3548476e6, 2.356405005831464e6, 2.365298482338747e6, 2.3716322680014824e6, 2.3787332008662736e6, 2.362896213451429e6, 2.369694317142983e6, 2.373800261204282e6, 2.3834952447609566e6, 2.3920620330929896e6  …  2.3912146652818676e6, 2.3829984989281846e6, 2.371252574860364e6, 2.3939898499252107e6, 2.3817141689064708e6, 2.3613617196600707e6, 2.3985788113046456e6, 2.390330330322664e6, 2.397856469942553e6, 2.4212965359402793e6], [0.0016459319014481277, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.00012203427994020283, 0.0, 0.0, 0.0010566170841607668, 0.0005696944214650553, 0.0, 0.0016619619797324792, 0.0013530380463096917, 0.0016609294841850044, 0.002599928627965536], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.90462950861706; 518.6059091613058 258.50369622511613 … 137.13538556670355 505.4138092341076; … ; 552.4170182477764 274.31944109496715 … 143.1976227942744 526.6241123245321; 553.8992060451629 275.54076932849296 … 143.83576018760857 527.9502176588696], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.90462950861706; 518.0834390395163 258.2432663779743 … 136.9972283642248 504.904629508617; … ; 541.9382192851673 269.1158753469619 … 140.48130694661234 516.6345790197564; 542.8448502695214 270.04170801623934 … 140.96518075904015 517.4137347137171]), BeforeIT.Data{Float64, Vector{Float64}, Matrix{Float64}}([72422.0, 72471.48547557522, 72659.66132674892, 72782.26820482507, 73314.99324853392, 73791.49697545379, 74099.86403964799, 74407.78021309954, 74915.74285060994, 75465.19426916225  …  76706.69449860377, 77138.16929479428, 77511.67199300523, 77707.63738956318, 77907.54721424257, 78252.95009649772, 78845.89268304282, 79393.7054463342, 79944.03307890503, 80623.14486458048], [72422.0, 72398.47399388226, 72513.33295389768, 72562.51600286494, 73019.99432021253, 73420.5385298642, 73653.07868763371, 73884.62806036828, 74314.07597034199, 74783.6977070866  …  75860.90282927844, 76210.76400042625, 76502.62582208758, 76618.77262890358, 76738.49300368334, 77001.05984925466, 77506.3539329534, 77966.23334138824, 78427.57463678236, 79014.12120583994], [64900.920495538005, 64966.370940930225, 65146.025314054816, 65251.369137512185, 65758.27213955988, 66183.76975404056, 66463.33920233867, 66748.26055519706, 67247.61528152751, 67757.10644188913  …  68920.48643223509, 69303.30466832304, 69636.37061121882, 69835.13132065766, 70048.381645569, 70376.90122161311, 70927.19720025655, 71428.44884719889, 71948.39746520469, 72529.9574680292], [64900.920495538005, 64900.920495538005, 65014.82855772722, 65054.35505149155, 65493.67933323341, 65851.05623883184, 66062.59829968773, 66278.96156387504, 66707.53303242565, 67145.21859685628  …  68160.54789425919, 68470.09521761675, 68729.84503493927, 68856.5786827761, 68997.25940601989, 69251.01195913956, 69722.19176684845, 70144.18937529583, 70583.6082429044, 71082.4523163817], [40512.94792630534, 40394.87765857896, 40413.42554772843, 40528.04295752655, 40609.711513182054, 40854.04993879914, 40965.78482886412, 41070.93017870433, 40970.7267344307, 41211.908005385885  …  41511.442200879355, 41811.80723267429, 42038.7669884936, 42001.84086041937, 41936.419032309335, 42028.760872619765, 42221.85208411046, 42426.63234267407, 42510.073697215885, 43067.64740545475], [40512.94792630534, 40354.181792455725, 40332.037461219894, 40405.67624787712, 40446.309447042295, 40648.671873811785, 40718.78150662433, 40782.16540872828, 40641.68068351225, 40839.739432916875  …  41053.724237347174, 41309.118463298844, 41491.50674020912, 41413.29736672815, 41307.13536213191, 41356.384997010486, 41504.53118073038, 41663.81577131624, 41703.700067432, 42208.1316458293], [14866.888022051655, 14873.219880073675, 14605.525492164083, 14941.634492409063, 14985.82272516104, 15186.096004322288, 15342.137133245571, 15437.516995250355, 15816.807121730875, 15844.99065600498  …  16009.715268713906, 16070.26011154719, 16127.921611806072, 15870.717948215099, 15841.703336974364, 16067.567816513536, 16212.656115261107, 16362.86700292542, 16626.68864436795, 16847.05072690098], [14866.888022051655, 14858.235837537972, 14576.111609125268, 14896.521071770005, 14925.52398614389, 15109.753731848643, 15249.631671480318, 15328.977670118478, 15689.77842743217, 15701.900761878775  …  15833.187210881924, 15877.052981463983, 15917.968489536686, 15648.332271842695, 15603.988113600786, 15810.518958654453, 15937.213979098473, 16068.668160935293, 16311.296971115602, 16510.82837728763], [15944.236265986641, 15957.472650343298, 16260.401414111237, 15817.627209170827, 15981.312013121891, 16246.476720089706, 16209.00776567574, 16296.358043915636, 16317.574185055646, 16476.252367574365  …  16859.259416899637, 16793.773934706198, 16951.525934947414, 17147.000107018812, 17107.738715872638, 16938.30829624002, 17120.25213715727, 17296.702703979172, 17457.412592704717, 17660.78717569343], [15944.236265986641, 15941.396276102661, 16227.65479738626, 15769.868895302183, 15917.007704983167, 16164.803790315727, 16111.275504837626, 16181.780310674063, 16186.523706479456, 16327.461796594785  …  16673.364023296563, 16591.868250375715, 16730.851139835104, 16906.730748757942, 16851.025795313864, 16667.32933717574, 16829.39055428174, 16985.713810355064, 17126.2629160591, 17308.324809639576], [15944.236265986641, 15949.636037963875, 15982.853134285011, 16014.826123208924, 16060.064405485584, 16177.462832096257, 16227.703034148592, 16301.320492436815, 16367.834937419764, 16465.293766147846  …  16721.942462434934, 16836.924731688152, 16931.287514237927, 16974.99183683914, 17038.548934091006, 17121.394065867586, 17245.7563892782, 17346.1348505769, 17457.859496183573, 17579.597487195482], [15944.236265986641, 15933.567558727425, 15950.665468529982, 15966.472404763683, 15995.44321985263, 16096.136843171338, 16129.858050133264, 16186.707868816584, 16236.380802296575, 16316.602157998348  …  16537.561167919328, 16634.50026038174, 16710.87618268404, 16737.132714563206, 16782.874251913643, 16847.48610170991, 16952.76257346959, 17034.257183592745, 17126.701342225424, 17228.755451505305], [3173.2320350842083, 3165.752669005484, 3159.0661767088777, 3167.4860179985003, 3138.5219603503165, 3170.4352760017086, 3171.630615554556, 3201.9995447450538, 3176.290815203691, 3170.751084126718  …  3199.0852981978583, 3231.5406318782657, 3259.4173089463075, 3262.9659235218237, 3267.8337769098803, 3263.614926810635, 3267.541244205691, 3270.1684886956614, 3290.3091694448076, 3306.834508712618], [3173.2320350842083, 3162.5633278250007, 3152.704173295621, 3157.9223970190883, 3125.89343003486, 3154.497128789171, 3152.507259265105, 3179.4866710901683, 3150.781237204602, 3142.1172750713413  …  3163.8111971254098, 3192.688946410905, 3216.9862470113826, 3217.244180734246, 3218.79777240317, 3211.403633912503, 3212.0279135148435, 3211.3719598040625, 3227.895291572602, 3240.8388821590343], [34195.564496956766, 33707.05710795776, 35150.48261182413, 36466.01777860536, 36403.36389237194, 36827.28087194863, 37793.024727432385, 37664.695583183915, 37682.64396626672, 36925.16321850511  …  39071.25641832181, 39529.892014344994, 39482.61412776561, 39077.99523020997, 37831.04150154524, 36877.51312568266, 36718.1618751157, 37843.40623497858, 37992.730154747296, 38572.36795119657], [34195.564496956766, 33673.0988943677, 35079.6934995216, 36355.915580622066, 36256.886986902675, 36642.145843828854, 37565.151571720526, 37399.879638938866, 37380.005322201716, 36591.70655638162  …  38640.444695763545, 39054.63791543326, 38968.62985186155, 38530.42161514708, 37263.36173317051, 36287.5468820115, 36094.3449711522, 37162.99452660853, 37272.04601906467, 37802.566020108854], [33097.63671130043, 32461.141821378216, 33770.17373907909, 34971.0542328869, 34665.21689530321, 35322.406559705916, 36210.09041556983, 36061.720587954806, 35872.009156873966, 34993.11997830811  …  36744.97880621105, 37067.563998478494, 37089.15667000751, 36389.91675630021, 34809.35537245922, 33659.200014558155, 33427.029528601735, 34535.90283822311, 34642.872010131054, 35524.70839466567], [33097.63671130043, 32428.438806581737, 33702.16441335545, 34865.46579270648, 34525.73380485979, 35144.836709940806, 35991.76156702922, 35808.174968091516, 35583.91216928356, 34677.110840685506  …  36339.817338010944, 36621.913610145624, 36606.33039935487, 35880.00937357244, 34287.01800053403, 33120.72032559737, 32859.12675230944, 33914.95892782698, 33985.731336889236, 34815.72964702583], [29576.147776884885, 29605.97434991661, 29688.187302257807, 29791.055310887376, 29954.246542021996, 30135.157648167857, 30237.949564347276, 30355.461039819496, 30526.54883081404, 30769.00208946214  …  31277.586533389265, 31490.360110839578, 31641.064299887224, 31730.092009694246, 31883.38008935013, 32062.952875230047, 32300.546113342, 32506.365203852954, 32716.537770648494, 32945.21931032319], [34346.71094688275, 34381.34847608993, 34478.93838258168, 34478.81101039637, 34808.564495569015, 35047.12431190442, 35215.61027708442, 35374.41522947689, 35695.93188619647, 35954.09574486552  …  36593.92689673031, 36758.48726269108, 36934.50657148024, 37040.05588431696, 37100.87776135359, 37255.6309534618, 37569.72430004793, 37860.0508221554, 38159.307483044475, 38502.23822803649], [28335.32931213966, 28363.90456052843, 28444.414223950378, 28444.30914452017, 28716.34897996883, 28913.155916358206, 29052.153368406292, 29183.164184242432, 29448.408805818475, 29661.388673474303  …  30189.236199261915, 30324.99511278455, 30470.20741819421, 30557.28342796189, 30607.460224158785, 30735.12842118855, 30994.248964754825, 31233.76236749914, 31480.642950861456, 31763.553754333545], [978.0617717704336, 979.0481149238879, 978.8996292153163, 981.5028162283588, 995.461101968945, 1001.4877939683074, 1009.7793609070602, 1018.3842859006885, 1025.1345645169856, 1034.0086075614827  …  1048.9730021155597, 1054.4572947923173, 1060.7997398513148, 1064.9834266464186, 1064.1237948653104, 1058.3173929212023, 1056.9267868666032, 1062.0328211905166, 1072.5522115117042, 1082.4999296695164], [0.0019383188997990075, 0.004913747016755732, 0.003475849536142883, 0.0026785353155975855, 0.002833027790142051, 0.0025062456441373726, 0.004504269256856652, 0.0063516469931883535, 0.007394206434488071, 0.000928360706036635  …  0.00651752878883971, 0.009269265471895327, 0.008849266521555155, 0.007489719597350231, 0.009643965971925184, 0.005367699029979356, 0.0064210984598085385, 0.004673907961617374, 0.006709721766567256, 0.006254234915375356], [2.3548476e6, 2.3548701560200085e6, 2.3778266031949264e6, 2.4114834942277633e6, 2.396827286594168e6, 2.3989050663318974e6, 2.426610592082712e6, 2.4108659601624985e6, 2.4271672169272183e6, 2.4088805031362944e6  …  2.471264799995176e6, 2.46480577043819e6, 2.46402585516802e6, 2.4630982825571825e6, 2.444932898058688e6, 2.432077377648159e6, 2.415443275837942e6, 2.4274013369837604e6, 2.4343751376155578e6, 2.4377205902182804e6], [0.0016459319014481277, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0013727024444591957, 0.0012267096395511992, 0.001307842635981478, 0.0013458660793440607, 0.0007421316099707973, 0.0002931883833720881, 0.0, 0.0005942044740219506, 0.0009867716391267288, 0.0011924118659388365], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.90462950861706; 518.6059091613058 258.50369622511613 … 137.13538556670355 505.4138092341076; … ; 584.9573093762568 296.346810347612 … 147.94948213271226 537.2722953290793; 588.2006670853754 298.0307208785496 … 149.0509162237135 540.7551038593715], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.90462950861706; 518.0834390395163 258.2432663779743 … 136.9972283642248 504.904629508617; … ; 573.8612535992181 290.72540741058197 … 145.1430282605842 527.0807766304139; 576.4617453276471 292.0828199162323 … 146.076256143612 529.9630694236535]), BeforeIT.Data{Float64, Vector{Float64}, Matrix{Float64}}([72422.0, 72494.0405607391, 72357.91577714065, 72322.93237771772, 72468.55308273868, 72480.45348912213, 72562.35382239977, 72637.48240819099, 73011.56515318483, 73428.25435216863  …  74133.80870296348, 74305.61570004578, 74470.98248938756, 74585.15866763094, 74793.01398061299, 75096.13296462584, 75444.24554443605, 75821.50623310808, 76146.90411583566, 76397.50759971752], [72422.0, 72421.00635589953, 72212.1950858349, 72104.5670528353, 72176.95999175994, 72116.0858117605, 72124.8388928424, 72126.7770063901, 72425.19119548677, 72765.15259532766  …  73316.3864658801, 73412.26520921232, 73501.5199840224, 73540.04709726809, 73670.6953986404, 73894.74545976949, 74162.49849409465, 74458.26106783624, 74702.47341674949, 74872.81642817895], [64900.920495538005, 64966.370940930225, 64831.16510870328, 64792.20433976117, 64927.14592650012, 64932.13791856583, 65002.759643073776, 65072.154036281834, 65417.79342529473, 65817.11447828253  …  66458.22166755683, 66617.78551176711, 66763.45101614413, 66858.73439229552, 67047.80930424923, 67335.1440423188, 67657.35935791042, 68010.50219704185, 68307.0453451691, 68532.4208014713], [64900.920495538005, 64900.920495538005, 64700.60244536048, 64596.57661442768, 64665.897338474366, 64605.71650229994, 64610.82530924718, 64614.63954828794, 64892.406928591336, 65222.745939553075  …  65725.43282022077, 65816.86312084831, 65894.32507842523, 65921.88799897238, 66041.71263481671, 66257.91679376994, 66507.9062728529, 66787.69625564072, 67011.32893481651, 67164.6958554214], [40512.94792630534, 40552.78995030874, 40574.55285485206, 40587.34351239799, 40651.889453834236, 40696.37853851351, 40739.14474300169, 40747.65594985953, 40819.27180291464, 40808.76105047472  …  41169.42922116927, 41253.459661982226, 41397.36676297503, 41493.675501986196, 41577.82515644044, 41601.32619338799, 41750.353971855955, 41881.91553328958, 42045.055248982404, 42193.49043301612], [40512.94792630534, 40511.93499526494, 40492.84027609788, 40464.797756013206, 40488.31767551489, 40491.793106010286, 40493.507947838, 40461.16408210222, 40491.44212405198, 40440.23313998825  …  40715.482398225715, 40757.483710630426, 40858.456256412595, 40912.252587043375, 40953.92242425241, 40935.788415327814, 41041.04350466312, 41128.89278684686, 41247.50255460079, 41351.42052287345], [14866.888022051655, 14710.633616338231, 14702.583132922538, 14729.338084027991, 14677.191018675243, 14950.487227792604, 14987.365454862878, 15168.908385380175, 15501.716487237869, 15738.419498428288  …  15733.437505225531, 15655.432694518675, 15632.846234513703, 15667.700043977557, 15892.182987819795, 15780.424525002705, 15809.899033257356, 15817.91069446376, 15815.690173350615, 16022.39477695487], [14866.888022051655, 14695.813371521584, 14672.973786728713, 14684.865651975291, 14618.134126906807, 14875.329388066457, 14896.999089994313, 15062.257615075392, 15377.218363842432, 15596.292006614913  …  15559.955771215828, 15467.212889728728, 15429.33799855534, 15448.159120696766, 15653.710283939141, 15527.969383875828, 15541.299469356392, 15533.50998350145, 15515.68233089293, 15702.63036799895], [15944.236265986641, 16414.244302179748, 16264.714412360883, 15736.369282579799, 16165.546747811182, 15999.714502575014, 16213.599082644834, 15748.540587013707, 15617.989739588791, 15741.808388304682  …  16313.22948368928, 16283.204421191822, 16400.771514163665, 16302.544241077647, 16376.835640603973, 16395.41747925414, 16526.129817153105, 16533.671912941885, 16744.08409756225, 16621.41009174018], [15944.236265986641, 16397.707752811235, 16231.959109743288, 15688.856311549924, 16100.501130877507, 15919.282075194777, 16115.83913844732, 15637.814492418778, 15492.557796914005, 15599.650292756407  …  16133.354784521429, 16087.437135974307, 16187.266434593777, 16074.107673842758, 16131.0904035137, 16133.123684369162, 16245.361973378735, 16236.402056152016, 16426.465549842855, 16289.690929405986], [15944.236265986641, 15960.296579453752, 15932.819048566264, 15913.384741194568, 15943.226313488869, 15945.45114858631, 15947.050396215765, 15970.042606920735, 16045.90881122171, 16121.856629034188  …  16248.352558090091, 16285.793651618535, 16334.036054334729, 16377.975355271092, 16398.64245846233, 16444.834785914267, 16517.195661700913, 16593.121535242037, 16668.280256359827, 16741.788981532227], [15944.236265986641, 15944.217360242474, 15900.732145823567, 15865.33730568906, 15879.075251501774, 15865.291509403536, 15850.897608120878, 15857.759158266635, 15917.040144528182, 15976.26646692876  …  16069.193211911466, 16089.995236987033, 16121.399736313568, 16148.48182266109, 16152.56999566482, 16181.750413240505, 16236.579603225944, 16294.78279425025, 16352.099631778776, 16407.667376549412], [3173.2320350842083, 3176.4132104953596, 3177.335989511194, 3176.861123723722, 3184.2983091492765, 3187.6007566812573, 3191.144164220242, 3192.9489479695267, 3198.0539542124566, 3192.844756389898  …  3204.8109037410413, 3214.1055060402637, 3221.8964886667995, 3238.389812723393, 3229.159035703299, 3243.1010703496268, 3241.5494927276095, 3250.2279835772492, 3260.236169008886, 3287.535726904672], [3173.2320350842083, 3173.213129340048, 3170.9371927530356, 3167.2691963974776, 3171.4855876712654, 3171.5763165990465, 3171.9031509307083, 3170.4997079719383, 3172.3695910553447, 3164.0114280483535  …  3169.4736703761423, 3175.4634370073854, 3179.9538723950814, 3193.0124384161995, 3180.7033712363714, 3191.217958009614, 3186.477744433799, 3191.789978256957, 3198.392745911555, 3221.925252735906], [34195.564496956766, 34465.99272237795, 35262.01843278985, 36192.63254971931, 36093.84865392906, 35785.33764380507, 34796.297569824805, 34283.37706758425, 34143.958721784074, 35446.852429035986  …  36310.75315928286, 35671.004758242845, 35093.29118627509, 36070.91596259129, 36808.13263108753, 37677.40409713934, 38197.43048854454, 37756.251863760306, 37672.1863287131, 36786.25581618433], [34195.564496956766, 34431.26991822715, 35191.00469990834, 36083.355786385255, 35948.617150792736, 35605.440585588854, 34586.49318947923, 34042.33476710918, 33869.74013510996, 35126.74581166435  …  35910.37959697783, 35242.1447143676, 34636.44707253179, 35565.478523032005, 36255.802286032966, 37074.6412022903, 37548.481804572664, 37077.40716165411, 36957.58258918205, 36052.09993546156], [33097.63671130043, 33649.620030465245, 34445.95305578486, 34922.75105100759, 35119.922791510835, 34951.46442356405, 34174.0530279341, 33310.9995816467, 33071.3715983404, 34307.58701407485  …  35393.0406664035, 34557.48583588952, 34053.2932085399, 34949.67708200191, 35861.96243533898, 36358.439330158566, 36839.56776637499, 36168.24377134747, 36130.111732772784, 35226.04351817794], [33097.63671130043, 33615.71968192523, 34376.58278664343, 34817.308453088444, 34978.61009233188, 34775.75934309975, 33968.00047291629, 33076.79395031535, 32805.767224431474, 33997.7686556961  …  35002.78608506078, 34142.01324148849, 33609.98777807117, 34459.95080734698, 35323.82999909814, 35776.77722609382, 36213.68825787633, 35517.95092031819, 35444.759607769236, 34523.02532756096], [29576.147776884885, 29605.97434991661, 29563.24311325228, 29537.92787075053, 29595.964354160835, 29604.875692169273, 29575.560547597222, 29596.54861242116, 29713.849391836357, 29874.5205808665  …  30168.592266972384, 30245.81008557569, 30338.588467894722, 30396.71823027157, 30478.236002690825, 30555.218859610326, 30744.50396483407, 30912.203704695796, 31053.802168045197, 31164.475415074365], [34346.71094688275, 34381.34847608993, 34287.979105266, 34268.14610045285, 34338.590320835036, 34335.6382106215, 34431.89933282723, 34481.940933560385, 34711.284233565966, 34944.24421578349  …  35273.92484344359, 35352.50425326331, 35407.827313533184, 35448.211856442984, 35550.65413178743, 35750.52860632675, 35877.994296479024, 36060.94306779688, 36211.27934902259, 36324.948763017295], [28335.32931213966, 28363.90456052843, 28286.876752129112, 28270.51493153152, 28328.629962858773, 28326.194532718306, 28405.607976464747, 28446.89126668352, 28636.094766874292, 28828.281955420298  …  29100.261684921286, 29165.08808002616, 29210.728465614353, 29244.044881973383, 29328.557649785675, 29493.449975747284, 29598.606545529154, 29749.535514843268, 29873.55985134177, 29967.33477736712], [978.0617717704336, 979.0481149238879, 979.9428901849948, 986.1303685577066, 992.5912515043683, 991.6240157749926, 995.2997626494996, 993.664490300186, 992.6597998924836, 998.349681632556  …  1015.7045571409152, 1019.4711729281863, 1017.0352347162537, 1013.80430558097, 1018.919169771012, 1029.3965763817207, 1034.86109659735, 1037.3554245491675, 1041.9638281013008, 1042.9966233796792], [0.0019383188997990075, 0.0059337629210785, 0.003943337011621528, 0.004535312137140979, 0.00623670731643422, 0.0057231191671611725, 0.00904737445662529, 0.006121017831568709, 0.007029923195770005, 0.0019599562491985356  …  0.0020302158278751037, 0.00401685895213677, 0.005091218389326357, 0.007001375159919165, 0.006856659645657626, 0.008684781054133506, 0.005709028050161713, 0.008313107337827086, 0.00784404480625156, 0.0024787722012944435], [2.3548476e6, 2.34915898809926e6, 2.3567542943364447e6, 2.3702216865586527e6, 2.380602603509879e6, 2.3697841881565345e6, 2.3564159198731207e6, 2.3465596353763165e6, 2.359921057995423e6, 2.3950357205390623e6  …  2.4185775943704867e6, 2.4129792043594285e6, 2.396628844506011e6, 2.415444703729562e6, 2.417570320801106e6, 2.4357073661518255e6, 2.4409909022970395e6, 2.425077891673508e6, 2.412809984563572e6, 2.382180876097404e6], [0.0016459319014481277, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0001453196167151053, 0.0, 0.0, 0.0009328885408478772, 0.001107728512764879, 0.0019629323123390805, 0.0021619835756051483, 0.0015514785613892816, 0.001119043065576464, 0.0], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.90462950861706; 518.6059091613057 258.50369622511613 … 137.13538556670355 505.4138092341076; … ; 530.1915929097995 268.8320363764925 … 143.19514965207782 525.8481628264552; 536.5777766986058 271.4109900780944 … 143.75991903588113 527.7953497136106], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.90462950861706; 518.0834390395163 258.2432663779743 … 136.9972283642248 504.904629508617; … ; 520.1343880622946 263.7325612139914 … 140.47888071745302 515.8733485084738; 525.8691106088339 265.99434818188473 … 140.8908531951007 517.2619575209776])])

Finally, we can plot baseline and shocked simulations

Te = T + 1
 StatsPlots.errorline(
     1:Te,
     data_vec_baseline.real_gdp,
@@ -51,4 +50,4 @@
     titlefont = 10,
     xlabel = "quarters",
     ylabel = "GDP",
-)
Example block output

Note that, importantly, once the function centralbankrate has been changed, the model will use the new interest rate in all the simulations, unless the function is changed again. To restore the original interest rate, we can simply re-import the function centralbankrate

+)Example block output

Note that, importantly, once the function central_bank_rate has been changed, the model will use the new interest rate in all the simulations, unless the function is changed again. To restore the original interest rate, we can simply re-import the function central_bank_rate.

diff --git a/dev/index.html b/dev/index.html index 1ed28eb..f902c18 100644 --- a/dev/index.html +++ b/dev/index.html @@ -7,9 +7,9 @@ T = 20 model = BeforeIT.initialise_model(parameters, initial_conditions, T) -data = BeforeIT.run_one_sim!(model)

To plot the results of the simulation, install the Plots package via Pkg.add("Plots") and then run

using Plots
+data = BeforeIT.run_one_sim!(model)

To plot the results of the simulation, you can use the Plots package

using Plots
 
-plot(data.real_gdp)

License

BeforeIT.jl is released under the GNU Affero General Public License v3 or later (AGPLv3+).

Copyright 2024- Banca d'Italia and the authors.

Main developers and maintainers

Other collaborators and contributors

Disclaimer

This package is an outcome of a research project. All errors are those of the authors. All views expressed are personal views, not those of Bank of Italy.

Reproducibility

The documentation of BeforeIT.jl was built using these direct dependencies,
Status `~/work/BeforeIT.jl/BeforeIT.jl/docs/Project.toml`
+plot(data.real_gdp)

License

BeforeIT.jl is released under the GNU Affero General Public License v3 or later (AGPLv3+).

Copyright 2024 - Banca d'Italia and the authors.

Main developers and maintainers

Other collaborators and contributors

Disclaimer

This package is an outcome of a research project. All errors are those of the authors. All views expressed are personal views, not those of Bank of Italy.

Reproducibility

The documentation of BeforeIT.jl was built using these direct dependencies,
Status `~/work/BeforeIT.jl/BeforeIT.jl/docs/Project.toml`
   [ca9fcad7] BeforeIT v0.1.2 `~/work/BeforeIT.jl/BeforeIT.jl`
   [e30172f5] Documenter v1.8.0
   [5789e2e9] FileIO v1.16.6
@@ -288,4 +288,4 @@
   [8e850b90] libblastrampoline_jll v5.11.0+0
   [8e850ede] nghttp2_jll v1.52.0+1
   [3f19e933] p7zip_jll v17.4.0+2
-Info Packages marked with ⌃ and ⌅ have new versions available. Those with ⌃ may be upgradable, but those with ⌅ are restricted by compatibility constraints from upgrading. To see why use `status --outdated -m`

You can also download the manifest file and the project file.

+Info Packages marked with ⌃ and ⌅ have new versions available. Those with ⌃ may be upgradable, but those with ⌅ are restricted by compatibility constraints from upgrading. To see why use `status --outdated -m`

You can also download the manifest file and the project file.

diff --git a/dev/search_index.js b/dev/search_index.js index e0ea3a4..b9e615e 100644 --- a/dev/search_index.js +++ b/dev/search_index.js @@ -1,3 +1,3 @@ var documenterSearchIndex = {"docs": -[{"location":"examples/scenario_analysis_via_shock.html","page":"Shocked simulations","title":"Shocked simulations","text":"EditURL = \"../../../examples/scenario_analysis_via_shock.jl\"","category":"page"},{"location":"examples/scenario_analysis_via_shock.html#Scenario-analysis-via-custom-shocks","page":"Shocked simulations","title":"Scenario analysis via custom shocks","text":"","category":"section"},{"location":"examples/scenario_analysis_via_shock.html","page":"Shocked simulations","title":"Shocked simulations","text":"In this tutorial we will illustrate how to perform a scenario analysis by running the model multiple times under a specific shock and comparing the results with the unshocked model.","category":"page"},{"location":"examples/scenario_analysis_via_shock.html","page":"Shocked simulations","title":"Shocked simulations","text":"import BeforeIT as Bit\nusing Plots, StatsPlots\n\n\nparameters = Bit.AUSTRIA2010Q1.parameters\ninitial_conditions = Bit.AUSTRIA2010Q1.initial_conditions","category":"page"},{"location":"examples/scenario_analysis_via_shock.html","page":"Shocked simulations","title":"Shocked simulations","text":"initialise the model and the data collector","category":"page"},{"location":"examples/scenario_analysis_via_shock.html","page":"Shocked simulations","title":"Shocked simulations","text":"T = 20\nmodel = Bit.init_model(parameters, initial_conditions, T);\nnothing #hide","category":"page"},{"location":"examples/scenario_analysis_via_shock.html","page":"Shocked simulations","title":"Shocked simulations","text":"Simulate the model for T quarters","category":"page"},{"location":"examples/scenario_analysis_via_shock.html","page":"Shocked simulations","title":"Shocked simulations","text":"data_vec_baseline = Bit.run_n_sims(model, 4)","category":"page"},{"location":"examples/scenario_analysis_via_shock.html","page":"Shocked simulations","title":"Shocked simulations","text":"Now, apply a shock to the model and simulate it again A shock is simply a function that takes the model and changes some of its parameters for a specific time period.","category":"page"},{"location":"examples/scenario_analysis_via_shock.html","page":"Shocked simulations","title":"Shocked simulations","text":"In this case, let's define an interest rate shock that sets the interest rate for a number of epochs.","category":"page"},{"location":"examples/scenario_analysis_via_shock.html","page":"Shocked simulations","title":"Shocked simulations","text":"We do this by first defining a \"struct\" with some useful attributes","category":"page"},{"location":"examples/scenario_analysis_via_shock.html","page":"Shocked simulations","title":"Shocked simulations","text":"struct CustomShock\n rate::Float64 # target rate for the first 10 epochs\n final_time::Int # number of epochs for the shock\nend","category":"page"},{"location":"examples/scenario_analysis_via_shock.html","page":"Shocked simulations","title":"Shocked simulations","text":"and then by making the struct a callable function that changes the interest rate in the model, this is done in Julia using the syntax below","category":"page"},{"location":"examples/scenario_analysis_via_shock.html","page":"Shocked simulations","title":"Shocked simulations","text":"function (s::CustomShock)(model::Bit.Model)\n if model.agg.t <= s.final_time\n model.cb.r_bar = s.rate\n end\nend","category":"page"},{"location":"examples/scenario_analysis_via_shock.html","page":"Shocked simulations","title":"Shocked simulations","text":"Now we define a specific shock with a rate of 0.01 for the first 10 epochs, and run a shocked simulation","category":"page"},{"location":"examples/scenario_analysis_via_shock.html","page":"Shocked simulations","title":"Shocked simulations","text":"custom_shock = CustomShock(0.0, 10)\ndata_vec_shocked = Bit.run_n_sims(model, 4; shock = custom_shock)","category":"page"},{"location":"examples/scenario_analysis_via_shock.html","page":"Shocked simulations","title":"Shocked simulations","text":"Finally, we can plot baseline and shocked simulations","category":"page"},{"location":"examples/scenario_analysis_via_shock.html","page":"Shocked simulations","title":"Shocked simulations","text":"Te = T + 1\nStatsPlots.errorline(\n 1:Te,\n data_vec_baseline.real_gdp,\n errortype = :sem,\n label = \"baseline\",\n titlefont = 10,\n xlabel = \"quarters\",\n ylabel = \"GDP\",\n)\nStatsPlots.errorline!(\n 1:Te,\n data_vec_shocked.real_gdp,\n errortype = :sem,\n label = \"shock\",\n titlefont = 10,\n xlabel = \"quarters\",\n ylabel = \"GDP\",\n)","category":"page"},{"location":"examples/scenario_analysis_via_shock.html","page":"Shocked simulations","title":"Shocked simulations","text":"Note that, importantly, once the function centralbankrate has been changed, the model will use the new interest rate in all the simulations, unless the function is changed again. To restore the original interest rate, we can simply re-import the function centralbankrate","category":"page"},{"location":"api.html","page":"API","title":"API","text":"CurrentModule = BeforeIT ","category":"page"},{"location":"api.html","page":"API","title":"API","text":"Pages = [\"api.md\"]","category":"page"},{"location":"api.html#Code-reference","page":"API","title":"Code reference","text":"","category":"section"},{"location":"api.html","page":"API","title":"API","text":"In this page we document the functions which constitute the bulk of BeforeIT.jl functionality.","category":"page"},{"location":"api.html#Agent-types","page":"API","title":"Agent types","text":"","category":"section"},{"location":"api.html","page":"API","title":"API","text":"Modules = [BeforeIT]\nOrder = [:type, :function]\nPages = [\"agents.jl\"]","category":"page"},{"location":"api.html#BeforeIT.Aggregates","page":"API","title":"BeforeIT.Aggregates","text":"This is a Aggregates type. It is used to store the aggregate variables of the economy. Note that t is an integer, while the rest are floats or vectors of floats.\n\nFields\n\nY [vector]: GDP data + predictions\npi_ [vector]: inflation data + predictions\nP_bar: Global price index\nP_bar_g [vector]: Producer price index for principal good g\nP_bar_HH: Consumer price index\nP_bar_CF: Capital price index\nP_bar_h: CPI_h\nP_bar_CF_h: Capital price index _h\nY_e: Expected GDP\ngamma_e: Expected growth\npi_e: Expected inflation\nt: Time index\n\n\n\n\n\n","category":"type"},{"location":"api.html#BeforeIT.Bank","page":"API","title":"BeforeIT.Bank","text":"This is a Bank type. It represents the bank of the model.\n\nFields\n\nE_k: equity capital (common equity) of the bank\nPi_k: Profits of the bank\nPi_e_k: Expected profits of the bank\nD_k: Residual and balancing item on the bank’s balance sheet\nr: Rate for loans and morgages\n\nHousehold fields (bank' owner)\n\nY_h: Net disposable income of bank owner (investor)\nC_d_h: Consumption budget\nI_d_h: Investment budget\nC_h: Realised consumption\nI_h: Realised investment\nK_h: Capital stock\nD_h: Deposits\n\n\n\n\n\n","category":"type"},{"location":"api.html#BeforeIT.CentralBank","page":"API","title":"BeforeIT.CentralBank","text":"This is a CentralBank type. It represents the central bank of the model.\n\nFields\n\nr_bar: Nominal interest rate\nr_G: Interest rate on government bonds\nrho: Parameter for gradual adjustment of the policy rate\nr_star: Real equilibrium interest rate\npi_star: Inflation target by CB\nxi_pi: Weight the CB puts on inflation targeting\nxi_gamma: Weight placed on economic\nE_CB: Central bank equity\n\n\n\n\n\n","category":"type"},{"location":"api.html#BeforeIT.Firms","page":"API","title":"BeforeIT.Firms","text":"This is a Firms type. Each field is an array which stores the values for all the firms in the economy. Note that the G_i, N_i and V_i fields are integers, while the rest are floats.\n\nFor all fields the entry at index i corresponds to the ith firm.\n\nFields\n\nG_i: Principal product\nalpha_bar_i: Average productivity of labor\nbeta_i: Productivity of intermediate consumption\nkappa_i: Productivity of capital\nw_i: Wages\nw_bar_i: Average wage rate\ndelta_i: Depreciation rate for capital\ntau_Y_i: Net tax rate on products\ntau_K_i: Net tax rate on production\nN_i: Number of persons employed\nY_i: Production of goods\nQ_i: Sales of goods\nQ_d_i: Demand for goods\nP_i: Price\nS_i: Inventories\nK_i: Capital, in real terms\nM_i: Intermediate goods/services and raw materials, in real terms\nL_i: Outstanding loans\npi_bar_i: Operating margin\nD_i: Deposits of the firm\nPi_i: Profits\nV_i: Vacancies\nI_i: Investments\nE_i: Equity\nP_bar_i: Price index\nP_CF_i: Price index\nDS_i: Differnece in stock of final goods\nDM_i: Difference in stock of intermediate goods\nDL_i: Obtained loans\nDL_d_i: Target loans\nK_e_i: Expected capital \nL_e_i: Expected loans\nQ_s_i: Expected sales\nI_d_i: Desired investments\nDM_d_i: Desired materials\nN_d_i: Desired employment\nPi_e_i: Expected profits\n\nHousehold fields (firms' owners)\n\nY_h: Net disposable income of firm owner (investor)\nC_d_h: Consumption budget\nI_d_h: Investment budget\nC_h: Realised consumption\nI_h: Realised investment\nK_h: Capital stock\nD_h: Deposits of the owner of the firms\n\n\n\n\n\n","category":"type"},{"location":"api.html#BeforeIT.Government","page":"API","title":"BeforeIT.Government","text":"This is a Government type. It represents the government of the model.\n\nFields\n\nalpha_G: Autoregressive coefficient for government consumption\nbeta_G: Scalar constant for government consumption\nsigma_G: Variance coefficient for government consumption\nY_G: Government revenues\nC_G: Consumption demand of the general government\nL_G: Loans taken out by the government\nsb_inact: Social benefits for inactive persons\nsb_other: Social benefits for all\nC_d_j [vector]: Local governments consumption demand\nC_j: Realised government consumption\nP_j: Price inflation of government goods <- ??\n\n\n\n\n\n","category":"type"},{"location":"api.html#BeforeIT.Model","page":"API","title":"BeforeIT.Model","text":"This is a Model type. It is used to store all the agents of the economy.\n\nFields\n\nw_act: Workers that are active\nw_inact: Workers that are inactive\nfirms: Firms\nbank: Bank\ncb: CentralBank\ngov: Government\nrotw: RestOfTheWorld\nagg: Aggregates\n\n\n\n\n\n","category":"type"},{"location":"api.html#BeforeIT.RestOfTheWorld","page":"API","title":"BeforeIT.RestOfTheWorld","text":"This is a RestOfTheWorld type. It represents the rest of the world of the model.\n\nFields\n\nalpha_E: Autoregressive coefficient for exports\nbeta_E: Scalar constant for exports\nsigma_E: Variance coefficient for exports\nalpha_I: Autoregressive coefficient for imports\nbeta_I: Scalar constant for imports\nsigma_I: Variance coefficient for imports\nY_EA: GDP euro area\ngamma_EA: Growth euro area\npi_EA: Inflation euro area\nalpha_pi_EA: Autoregressive coefficient for euro area inflation\nbeta_pi_EA: Autoregressive coefficient for euro area inflation Scalar constant for euro area inflation\nsigma_pi_EA: Variance coefficient for euro area inflation\nalpha_Y_EA: Autoregressive coefficient for euro area GDP\nbeta_Y_EA: Autoregressive coefficient for euro area GDP Scalar constant for euro area GDP\nsigma_Y_EA: Variance coefficient for euro area GDP\nD_RoW: Net creditor/debtor position of the national economy to the rest of the world\nY_I: Supply of imports (in real terms)\nC_E: Total demand for exports\nC_d_l [vector]: Demand for exports of specific product\nC_l: Realised consumption by foreign consumers\nY_m [vector]: Supply of imports per sector\nQ_m [vector]: Sales for imports per sector\nQ_d_m [vector]: Demand for goods\nP_m [vector]: Price of imports per sector\nP_l: Price inflation of exports <- ??\n\n\n\n\n\n","category":"type"},{"location":"api.html#BeforeIT.Workers","page":"API","title":"BeforeIT.Workers","text":"This is a Workers. Each field is an array which stores the values for all the workers in the economy. Note that the O_h field is an integer, while the rest are floats.\n\nFor all fields the entry at index i corresponds to the ith worker.\n\nFields\n\nY_h: Net disposable income of worker owner (investor)\nD_h: Deposits\nK_h: Capital stock\nw_h: Wages (0 if inactive or unemployed)\nO_h: Occupation (0 if unemployed, -1 if inactive)\nC_d_h: Consumption budget\nI_d_h: Investment budget\nC_h: Realised consumption\nI_h: Realised investment\n\n\n\n\n\n","category":"type"},{"location":"api.html#Initialisation-function","page":"API","title":"Initialisation function","text":"","category":"section"},{"location":"api.html","page":"API","title":"API","text":"Modules = [BeforeIT]\nOrder = [:type, :function]\nPages = [\"init.jl\"]","category":"page"},{"location":"api.html#BeforeIT.init_model","page":"API","title":"BeforeIT.init_model","text":"init_model(parameters, initial_conditions, T, typeInt = Int64, typeFloat = Float64)\n\nInitializes the model with given parameters and initial conditions.\n\nParameters:\n\nparameters: A dictionary containing the model parameters.\ninitial_conditions: A dictionary containing the initial conditions.\nT (integer): The time horizon of the model.\ntypeInt: (optional, default: Int64): The data type to be used for integer values.\ntypeFloat: (optional, default: Float64): The data type to be used for floating-point values.\n\nReturns:\n\nmodel::Model: The initialized model.\n\n\n\n\n\n","category":"function"},{"location":"api.html#BeforeIT.update_variables_with_totals!-Tuple{Model}","page":"API","title":"BeforeIT.update_variables_with_totals!","text":"update_variables_with_totals!(model::Model)\n\nUpdate the variables in the given model with some global quantities obtained from all agents. This is the last step in the initialization process and it must be performed after all agents have been initialized.\n\nArguments\n\nmodel::Model: The model object to update.\n\nReturns\n\nNothing\n\n\n\n\n\n","category":"method"},{"location":"api.html#Functions-to-run-an-entire-simulation","page":"API","title":"Functions to run an entire simulation","text":"","category":"section"},{"location":"api.html","page":"API","title":"API","text":"Modules = [BeforeIT]\nOrder = [:type, :function]\nPages = [\"one_epoch.jl\", \"one_simulation.jl\"]","category":"page"},{"location":"api.html#BeforeIT.run_one_epoch!-Tuple{Any}","page":"API","title":"BeforeIT.run_one_epoch!","text":"run_one_epoch!(model; multi_threading = false)\n\nThis function simulates a single epoch the economic model, updating various components of the model based the interactions between different economic agents. It accepts a model object, which encapsulates the state for the simulation, and an optional boolean parameter multi_threading to enable or disable multi-threading.\n\nKey operations performed include:\n\nFinancial adjustments for firms and banks, including insolvency checks and profit calculations.\nEconomic expectations and adjustments, such as growth, inflation, and central bank rates.\nLabor and credit market operations, including wage updates and loan processing.\nHousehold economic activities, including consumption and investment budgeting.\nGovernment and international trade financial activities, including budgeting and trade balances.\nGeneral market matching and accounting updates to reflect changes in economic indicators and positions.\n\nThe function updates the model in-place and does not return any value.\n\n\n\n\n\n","category":"method"},{"location":"api.html#BeforeIT.run_n_sims-Tuple{Any, Any}","page":"API","title":"BeforeIT.run_n_sims","text":"run_n_sims(model, n_sims; shock = NoShock(), multi_threading = true)\n\nA function that runs n_sims simulations in parallel with multiple threading and returns a vector of data objects of dimension n_sims.\n\nArguments\n\nmodel: The model configuration used to simulate.\nn_sims: The number of simulations to run in parallel.\n\nReturns\n\ndata_vector: A vector containing the data objects collected during each simulation.\n\n\n\n\n\n","category":"method"},{"location":"api.html#BeforeIT.run_one_sim!-Tuple{Any}","page":"API","title":"BeforeIT.run_one_sim!","text":"run_one_sim!(model; shock = NoShock())\n\nRun a single simulation based on the provided model. The simulation runs for a number of epochs specified by model.prop.T.\n\nArguments\n\nmodel::Model: The model configuration used for the simulation.\n\nReturns\n\ndata::Data: The data collected during the simulation.\n\nDetails\n\nThe function initializes the data using BeforeIT.init_data(model), then iteratively updates the model and data for each epoch using BeforeIT.run_one_epoch!(model) and BeforeIT.update_data!(data, model) respectively.\n\nExample\n\n```julia model = BeforeIT.initializemodel(parameters, initialconditions, T) data = runonesim!(model)\n\n\n\n\n\n","category":"method"},{"location":"api.html#Firms-actions","page":"API","title":"Firms actions","text":"","category":"section"},{"location":"api.html","page":"API","title":"API","text":"Modules = [BeforeIT]\nOrder = [:type, :function]\nPages = [\"firms.jl\"]","category":"page"},{"location":"api.html#BeforeIT.firms_deposits-Tuple{Any, Any}","page":"API","title":"BeforeIT.firms_deposits","text":"firms_deposits(firms, model)\n\nCalculate the new deposits of firms.\n\nArguments\n\nfirms: Firms object\nmodel: Model object\n\nReturns\n\nDD_i: Vector of new deposits\n\nThe new deposits DD_i are calculated as follows:\n\nDD_i = sales + labour_cost + material_cost + taxes_products + taxes_production + corporate_tax + dividend_payments + interest_payments + interest_received + investment_cost + new_credit + debt_installment\n\nwhere:\n\nsales = P_i * Q_i\nlabour_cost = (1 + tau_SIF) * w_i * N_i * P_bar_HH\nmaterial_cost = -DM_i * P_bar_i\ntaxes_products = -tau_Y_i * P_i * Y_i\ntaxes_production = -tau_K_i * P_i * Y_i\ncorporate_tax = -tau_FIRM * pos(Pi_i)\ndividend_payments = -theta_DIV * (1 - tau_FIRM) * pos(Pi_i)\ninterest_payments = -r * (L_i + pos(-D_i))\ninterest_received = r_bar * pos(D_i)\ninvestment_cost = -P_CF_i * I_i\nnew_credit = DL_i\ndebt_installment = -theta * L_i\n\n\n\n\n\n","category":"method"},{"location":"api.html#BeforeIT.firms_equity-Tuple{Any, Any}","page":"API","title":"BeforeIT.firms_equity","text":"firms_equity(firms, model)\n\nCalculate the equity of firms.\n\nArguments\n\nfirms: Firms object\nmodel: Model object\n\nReturns\n\nE_i: Vector of equity\n\nThe equity E_i is calculated as follows:\n\nE_i = D_i + M_i * sum(a_sg G_i * barP_g) + P_i * S_i + barP_CF * K_i - L_i\n\nwhere:\n\nD_i: Deposits\nM_i: Intermediate goods\na_sg: Technology coefficient of the gth product in the sth industry\nG_i: Vector of goods\nP_bar_g: Producer price index for principal good g\nP_i: Price\nS_i: Stock\nP_bar_CF: Capital price index\nK_i: Capital stock\nL_i: Loans\n\n\n\n\n\n","category":"method"},{"location":"api.html#BeforeIT.firms_expectations_and_decisions-Tuple{Any, Any}","page":"API","title":"BeforeIT.firms_expectations_and_decisions","text":"firms_expectations_and_decisions(firms, model)\n\nCalculate the expectations and decisions of firms. That is: compute firm quantity, price, investment and intermediate-goods, employment decisions, expected profits, and desired/expected loans and capital.\n\nArguments\n\nfirms: Firms object\nmodel: Model object\n\nReturns\n\nQ_s_i: Vector of desired quantities\nI_d_i: Vector of desired investments\nDM_d_i: Vector of desired intermediate goods\nN_d_i: Vector of desired employment\nPi_e_i: Vector of expected profits\nDL_d_i: Vector of desired new loans\nK_e_i: Vector of expected capital\nL_e_i: Vector of expected loans\nP_i: Vector of prices\n\n\n\n\n\n","category":"method"},{"location":"api.html#BeforeIT.firms_loans-Tuple{Any, Any}","page":"API","title":"BeforeIT.firms_loans","text":"firms_loans(firms, model)\n\nCalculate the new loans of firms.\n\nArguments\n\nfirms: Firms object\nmodel: Model object\n\nReturns\n\nL_i: Vector of new loans\n\nThe new loans L_i are calculated as follows:\n\nL_i = (1 - theta) * L_i + DL_i\n\nwhere:\n\ntheta: Rate of repayment\nL_i: Loans\nDL_i: Acquired new loans\n\n\n\n\n\n","category":"method"},{"location":"api.html#BeforeIT.firms_production-Tuple{AbstractFirms}","page":"API","title":"BeforeIT.firms_production","text":"firms_production(firms)\n\nCalculate the production of firms.\n\nArguments\n\nfirms: Firms object\n\nReturns\n\nY_i: Vector of production\n\nThe production Y_i is computed using a Leontief technology.\n\n\n\n\n\n","category":"method"},{"location":"api.html#BeforeIT.firms_profits-Tuple{AbstractFirms, Model}","page":"API","title":"BeforeIT.firms_profits","text":"firms_profits(firms, model)\n\nCalculate the profits of firms.\n\nArguments\n\nfirms: Firms object\nmodel: Model object\n\nReturns\n\nPi_i: Vector of profits\n\nThe profits Pi_i are calculated as follows:\n\nPi_i = in_sales + in_deposits - out_wages - out_expenses - out_depreciation - out_taxes_prods - out_taxes_capital - out_loans\n\nwhere:\n\nin_sales = P_i * Q_i + P_i * DS_i\nin_deposits = r_bar * pos(D_i)\nout_wages = (1 + tau_SIF) * w_i * N_i * P_bar_HH\nout_expenses = 1 / beta_i * P_bar_i * Y_i\nout_depreciation = delta_i / kappa_i * P_CF_i * Y_i\nout_taxes_prods = tau_Y_i * P_i * Y_i\nout_taxes_capital = tau_K_i * P_i * Y_i\nout_loans = r * (L_i + pos(-D_i))\n\n\n\n\n\n","category":"method"},{"location":"api.html#BeforeIT.firms_stocks-Tuple{Any}","page":"API","title":"BeforeIT.firms_stocks","text":"firms_stocks(firms)\n\nCalculate the stocks of firms.\n\nArguments\n\nfirms: Firms object\n\nReturns\n\nK_i: Vector of capital stock\nM_i: Vector of intermediate goods\nDS_i: Vector of differneces in stock of final goods\nS_i: Vector of stock of final goods\n\nThe stocks are calculated as follows:\n\nK_i = K_i - delta_i / kappa_i * Y_i + I_i\nM_i = M_i - Y_i / beta_i + DM_i\nDS_i = Y_i - Q_i\nS_i = S_i + DS_i\n\n\n\n\n\n","category":"method"},{"location":"api.html#BeforeIT.firms_wages-Tuple{AbstractFirms}","page":"API","title":"BeforeIT.firms_wages","text":"firms_wages(firms)\n\nCalculate the wages set by firms.\n\nArguments\n\nfirms: Firms object\n\nReturns\n\nw_i: Vector of wages\n\n\n\n\n\n","category":"method"},{"location":"api.html#BeforeIT.init_firms-Tuple{Any, Any}","page":"API","title":"BeforeIT.init_firms","text":"init_firms(parameters, initial_conditions; typeInt = Int64, typeFloat = Float64)\n\nInitialize firms with given parameters and initial conditions.\n\nArguments\n\nparameters: The parameters for initializing the firms.\ninitial_conditions: The initial conditions for the firms.\ntypeInt: (optional) The integer type to be used. Default is Int64.\ntypeFloat: (optional) The floating-point type to be used. Default is Float64.\n\nReturns\n\nfirms::Firms: The initialized firms.\nfirms_args::Tuple: The arguments used to initialize the firms.\n\n\n\n\n\n","category":"method"},{"location":"api.html#BeforeIT.leontief_production-NTuple{7, Any}","page":"API","title":"BeforeIT.leontief_production","text":"leontief_production(Q_s_i, N_i, alpha_i, K_i, kappa_i, M_i, beta_i)\n\nCalculate the production function of firms.\n\nArguments\n\nQ_s_i: Vector of desired quantities\nN_i: Vector of employment\nalpha_i: Vector of labour productivity\nK_i: Vector of capital stock\nkappa_i: Vector of capital productivity\nM_i: Vector of intermediate goods\nbeta_i: Vector of intermediate goods productivity\n\nReturns\n\nY_i: Vector of production\n\nThe Leontief production function Y_i is calculated as follows:\n\nY_i = min(Q_s_i min(N_i cdot alpha_i min(K_i cdot kappa_i M_i cdot beta_i)))\n\n\n\n\n\n","category":"method"},{"location":"api.html#Households-actions","page":"API","title":"Households actions","text":"","category":"section"},{"location":"api.html","page":"API","title":"API","text":"Modules = [BeforeIT]\nOrder = [:type, :function]\nPages = [\"households.jl\"]","category":"page"},{"location":"api.html#Government-actions","page":"API","title":"Government actions","text":"","category":"section"},{"location":"api.html","page":"API","title":"API","text":"Modules = [BeforeIT]\nOrder = [:type, :function]\nPages = [\"government.jl\"]","category":"page"},{"location":"api.html#BeforeIT.gov_expenditure-Tuple{Any, Any}","page":"API","title":"BeforeIT.gov_expenditure","text":"gov_expenditure(gov::AbstractGovernment, model)\n\nComputes government expenditure on consumption and transfers to households.\n\nArguments\n\ngov: government object\nmodel: model object\n\nReturns\n\nC_G: government consumption\nC_d_j: local government consumptions\n\n\n\n\n\n","category":"method"},{"location":"api.html#BeforeIT.gov_loans-Tuple{Any, Any}","page":"API","title":"BeforeIT.gov_loans","text":"gov_loans(gov::AbstractGovernment, model, Y_G)\n\nComputes government new government debt.\n\nArguments\n\ngov::AbstractGovernment: government object\nmodel: model object\n\nReturns\n\nL_G: new government debt\n\n\n\n\n\n","category":"method"},{"location":"api.html#BeforeIT.gov_revenues-Tuple{Model}","page":"API","title":"BeforeIT.gov_revenues","text":"gov_revenues(model)\n\nComputes government revenues from taxes and social security contributions. The government collects taxes on labour income, capital income, value added, and corporate income. It also collects social security contributions from workers and firms. The government also collects taxes on consumption and capital formation. Finally, the government collects taxes on exports and imports.\n\nArguments\n\nmodel: model object\n\nReturns\n\nY_G: government revenues\n\n\n\n\n\n","category":"method"},{"location":"api.html#BeforeIT.gov_social_benefits-Tuple{AbstractGovernment, Any}","page":"API","title":"BeforeIT.gov_social_benefits","text":"gov_social_benefits(gov::AbstractGovernment, model)\n\nComputes social benefits paid by the government households.\n\nArguments\n\ngov: government object\nmodel: model object\n\nReturns\n\nsb_other: social benefits for other households\nsb_inact: social benefits for inactive households\n\n\n\n\n\n","category":"method"},{"location":"api.html#BeforeIT.init_government-Tuple{Any, Any}","page":"API","title":"BeforeIT.init_government","text":"init_government(parameters, initial_conditions; typeInt = Int64, typeFloat = Float64)\n\nInitialize the government agent.\n\nArguments\n\nparameters: The parameters.\ninitial_conditions: The initial conditions.\ntypeInt: The integer type to be used (default: Int64).\ntypeFloat: The floating-point type to be used (default: Float64).\n\nReturns\n\nThe initialized government model.\nThe arguments used to initialize the government model.\n\n\n\n\n\n","category":"method"},{"location":"api.html#Bank-and-Central-Bank-actions","page":"API","title":"Bank and Central Bank actions","text":"","category":"section"},{"location":"api.html","page":"API","title":"API","text":"Modules = [BeforeIT]\nOrder = [:type, :function]\nPages = [\"bank.jl\"]","category":"page"},{"location":"api.html#BeforeIT._bank_deposits-NTuple{7, Any}","page":"API","title":"BeforeIT._bank_deposits","text":"_deposit_bank(waD_h, wiD_h, fD_h, bD_h, fD_i, bE_k, fL_i)\n\nHelper function to calculate the new deposits of a bank.\n\nArguments\n\nwaD_h: Array of deposits from active workers\nwiD_h: Array of deposits from inactive workers\nfD_h: Array of deposits from firms\nbD_h: Deposits from the bank owner\nfD_i: Array of deposits from firms\nbE_k: Bank equity\nfL_i: Array of loans to firms\n\nReturns\n\nD_k: New deposits of the bank\n\nThe new deposits D_k are calculated as the sum of the deposits of the active workers, the inactive workers, the firms, and the bank owner itself, plus the bank's equity, minus the loans of the firms.\n\n\n\n\n\n","category":"method"},{"location":"api.html#BeforeIT._bank_profits-Union{Tuple{T}, Tuple{AbstractVector{T}, AbstractVector{T}, AbstractVector{T}, T, T, T}} where T","page":"API","title":"BeforeIT._bank_profits","text":"_bank_profits(L_i, D_i, D_h, D_k, r_bar, r)\n\nHelper function to calculate the total profits of a bank.\n\nArguments\n\nL_i: Array of loans provided by the bank\nD_i: Array of deposits from firms\nD_h: Array of deposits from households\nD_k: Residual and balancing item on the bank’s balance sheet\nr_bar: Base interest rate\nr: Interest rate set by the bank\n\nReturns\n\nPi_k: Total profits of the bank\n\nThe total profits Pi_k are calculated as follows:\n\nPi_k = r cdot sum_i(L_i + max(0 -D_i)) + r cdot sum_h(max(0 -D_h)) + r_bar \ncdot max(0 D_k) - r_bar cdot sum_i(max(0 D_i)) - r_bar cdot \nsum_h(max(0 D_h)) - r_bar cdot max(0 -D_k)\n\n\n\n\n\n","category":"method"},{"location":"api.html#BeforeIT._central_bank_profits-NTuple{4, Any}","page":"API","title":"BeforeIT._central_bank_profits","text":"_central_bank_profits(r_bar, D_k, L_G, r_G)\n\nHelper function to calculate the profits of a central bank.\n\nArguments\n\nr_bar: The base interest rate\nD_k: Deposits from commercial banks\nL_G: Loans provided to the government\nr_G: Interest rate on government loans\n\nReturns\n\nPi_CB: Profits of the central bank\n\nThe profits Pi_CB are calculated as follows:\n\nPi_CB = r_G cdot L_G - r_bar cdot D_k\n\n\n\n\n\n","category":"method"},{"location":"api.html#BeforeIT.bank_deposits-Tuple{Any, Any}","page":"API","title":"BeforeIT.bank_deposits","text":"deposits_bank(bank, w_act, w_inact, firms)\n\nCalculate the new deposits of a bank.\n\nArguments\n\nbank: The Bank object containing the bank of the model\nw_act: The Workers object containing the active workers of the model\nw_inact: The Workers object containing the inactive workers of the model\nfirms: The Firms object containing the firms of the model\n\nReturns\n\nD_k: New deposits of the bank\n\nThe new deposits D_k are calculated as the sum of the deposits of the active workers, the inactive workers, the firms, and the bank owner itself, plus the bank's equity, minus the loans of the firms.\n\n\n\n\n\n","category":"method"},{"location":"api.html#BeforeIT.bank_equity-Tuple{Any, Any}","page":"API","title":"BeforeIT.bank_equity","text":"bank_equity(bank, model)\n\nCalculate the net profits of a bank.\n\nArguments\n\nbank: The bank object.\nmodel: The model object.\n\nReturns\n\nE_k: The updated equity of the bank.\n\nThe net profits DE_k are calculated as:\n\nDE_k = Pi_k - theta_DIV cdot (1 - tau_FIRM) cdot max(0 Pi_k) - tau_FIRM cdot max(0 Pi_k)\n\nand the equity E_k is updated as:\n\nE_k = E_k + DE_k\n\n\n\n\n\n","category":"method"},{"location":"api.html#BeforeIT.bank_expected_profits-Tuple{Any, Any}","page":"API","title":"BeforeIT.bank_expected_profits","text":"bank_expected_profits(Pi_k, pi_e, gamma_e)\n\nCalculate the expected profits of a bank.\n\nArguments\n\nPi_k: Past profits of the bank\npi_e: Expected inflation rate\ngamma_e: Expected growth rate\n\nReturns\n\nE_Pi_k: Expected profits of the bank\n\nThe expected profits E_Pi_k are calculated as follows:\n\nE_Pi_k = Pi_k cdot (1 + pi_e) cdot (1 + gamma_e)\n\n\n\n\n\n","category":"method"},{"location":"api.html#BeforeIT.bank_profits-Tuple{Any, Any}","page":"API","title":"BeforeIT.bank_profits","text":"bank_profits(bank, model)\n\nCalculate the total profits of a bank.\n\nArguments\n\nbank: The bank object.\nmodel: The model object.\n\nReturns\n\nPi_k: The total profits of the bank.\n\nThe total profits Pi_k are calculated as:\n\nPi_k = r cdot sum_i(L_i + max(0 -D_i)) + r cdot sum_h(max(0 -D_h)) + r_bar\ncdot max(0 D_k) - r_bar cdot sum_i(max(0 D_i)) - r_bar cdot\nsum_h(max(0 D_h)) - r_bar cdot max(0 -D_k)\n\n\n\n\n\n","category":"method"},{"location":"api.html#BeforeIT.bank_rate-Tuple{Any, Any}","page":"API","title":"BeforeIT.bank_rate","text":"bank_rate(bank, model)\n\nUpdate the interest rate set by the bank.\n\nArguments\n\nbank: The bank whose interest rate is to be updated\nmodel: Model object\n\nReturns\n\nr: The updated interest rate\n\nr = barr + mu\n\n\n\n\n\n","category":"method"},{"location":"api.html#BeforeIT.central_bank_equity-Tuple{Any, Any}","page":"API","title":"BeforeIT.central_bank_equity","text":"central_bank_equity(cb, model)\n\nCalculate the equity of the central bank.\n\nArguments\n\ncb: The central bank\nmodel: The model object\n\nReturns\n\nE_CB: The equity of the central bank\n\nThe equity E_CB is calculated as follows:\n\nE_CB = E_CB + Pi_CB\n\nwhere \\Pi_{CB} are the profits of the central bank.\n\n\n\n\n\n","category":"method"},{"location":"api.html#BeforeIT.central_bank_rate-Tuple{AbstractCentralBank, Model}","page":"API","title":"BeforeIT.central_bank_rate","text":"central_bank_rate(cb, model)\n\nUpdate the base interest rate set by the central bank according to the Taylor rule.\n\nArguments\n\ncb: The central bank whose base interest rate is to be updated\nmodel: The model object\n\nReturns\n\nr_bar: The updated base interest rate\n\n\n\n\n\n","category":"method"},{"location":"api.html#BeforeIT.finance_insolvent_firms!-Tuple{AbstractFirms, AbstractBank, Any}","page":"API","title":"BeforeIT.finance_insolvent_firms!","text":"finance_insolvent_firms!(firms, bank, P_bar_CF, zeta_b, insolvent)\n\nRifinance insolvent firms using bank equity.\n\nArguments\n\nfirms: The Firms object containing the firms of the model\nbank: The Bank object containing the bank of the model\nP_bar_CF: Capital price index\nzeta_b: Parameter of loan-to-capital ratio for new firms after bankruptcy\n\nReturns\n\nThis function does not return a value. It modifies the banks and firms collections in-place.\n\n\n\n\n\n","category":"method"},{"location":"api.html#BeforeIT.taylor_rule-Union{Tuple{T}, NTuple{8, T}} where T","page":"API","title":"BeforeIT.taylor_rule","text":"taylor_rule(rho, r_bar, r_star, pi_star, xi_pi, xi_gamma, gamma_EA, pi_EA)\n\nCalculate the interest rate according to the Taylor rule.\n\nArguments\n\nrho: Parameter for gradual adjustment of the policy rate.\nr_bar: Nominal interest rate.\nr_star: Real equilibrium interest rate.\npi_star: The target inflation rate.\nxi_pi: Weight the CB puts on inflation targeting.\nxi_gamma: Weight placed on economic growth.\ngamma_EA: The output growth rate.\npi_EA: The inflation rate.\n\nReturns\n\nrate: The calculated interest rate.\n\nThe Taylor rule is given by the following equation:\n\nr_t = ρ * r_t-1 + (1 - ρ) * (r^* + π^* + ξ_π * (π_t - π^*) + ξ_γ * γ_t)\n\n\n\n\n\n","category":"method"},{"location":"api.html#Rest-Of-The-World-actions","page":"API","title":"Rest Of The World actions","text":"","category":"section"},{"location":"api.html","page":"API","title":"API","text":"Modules = [BeforeIT]\nOrder = [:type, :function]\nPages = [\"rotw.jl\"]","category":"page"},{"location":"api.html#BeforeIT.rotw_deposits-Tuple{Any, Any}","page":"API","title":"BeforeIT.rotw_deposits","text":"rotw_deposits(rotw, tau_EXPORT)\n\nCalculate the deposits of the rest of the world.\n\nArguments\n\nrotw: The rest of the world object.\ntau_EXPORT: The export tax.\n\nReturns\n\nD_RoW: The deposits of the rest of the world.\n\nThe deposits D_RoW are calculated as follows:\n\nD_RoW = D_RoW + left( sum_m P_m cdot Q_m right) - (1 + tau_EXPORT) cdot C_l\n\n\n\n\n\n","category":"method"},{"location":"api.html#BeforeIT.rotw_import_export-Tuple{Any, Any}","page":"API","title":"BeforeIT.rotw_import_export","text":"rotw_import_export(rotw, model, pi_e, epsilon_E, epsilon_I)\n\nCalculate the demand for exports and supply of imports of the rest of the world.\n\nArguments\n\nrotw: The rest of the world object.\nmodel: The model object.\n\nReturns\n\nC_E: Total demand for exports.\nY_I: Supply of imports (in real terms).\nC_d_l: TDemand for exports of specific product.\nY_m: Supply of imports per sector.\nP_m: Price of imports per sector.\n\n\n\n\n\n","category":"method"},{"location":"api.html#Markets","page":"API","title":"Markets","text":"","category":"section"},{"location":"api.html","page":"API","title":"API","text":"Modules = [BeforeIT]\nOrder = [:type, :function]\nPages = [\"search_and_matching_credit.jl\", \"search_and_matching_labour.jl\", \"search_and_matching.jl\"]","category":"page"},{"location":"api.html#BeforeIT.search_and_matching_credit-Tuple{AbstractFirms, Any}","page":"API","title":"BeforeIT.search_and_matching_credit","text":"search_and_matching_credit(firms::Firms, model)\n\nThis function calculates the credit allocation for each firm in the given firms object.\n\nParameters:\n\nfirms::Firms: The firms object.\nmodel: The model object.\n\nReturns:\n\nDL_i: An array of credit allocations for each firm.\n\n\n\n\n\n","category":"method"},{"location":"api.html#BeforeIT.search_and_matching_labour-Tuple{AbstractFirms, Any}","page":"API","title":"BeforeIT.search_and_matching_labour","text":"search_and_matching_labour(firms::Firms, model)\n\nThis function implements a labor search and matching algorithm. It takes in a Firms object and a Model object as input. The Firms object contains information about the number of desired employees (N_d_i) and the current number of employees (N_i) for each firm. The model object contains information about the current employment status (O_h) of each worker.\n\nThe function performs the following steps:\n\nCalculates the vacancies (V_i) for each firm as the difference between desired and current employees.\nIdentifies employed workers and shuffles them randomly.\nFires workers from firms with negative vacancies to adjust the workforce.\nIdentifies unemployed workers and firms with positive vacancies.\nRandomly matches unemployed workers to firms with vacancies until all vacancies are filled or there are no more unemployed workers.\n\nThe function returns:\n\nN_i: An updated array of the number of employed workers for each firm.\nO_h: An updated array where each element represents the firm a worker is employed with (0 if unemployed).\n\n\n\n\n\n","category":"method"},{"location":"api.html#BeforeIT.perform_firms_market!-NTuple{15, Any}","page":"API","title":"BeforeIT.perform_firms_market!","text":"Perform the firms market exchange process\n\n\n\n\n\n","category":"method"},{"location":"api.html#BeforeIT.perform_retail_market!-NTuple{31, Any}","page":"API","title":"BeforeIT.perform_retail_market!","text":"Perform the retail market exchange process\n\n\n\n\n\n","category":"method"},{"location":"api.html#BeforeIT.search_and_matching!","page":"API","title":"BeforeIT.search_and_matching!","text":"search_and_matching!(model, multi_threading::Bool = false)\n\nThis function performs a search and matching algorithm for firms and for retail markets. It takes in a model object and an optional boolean argument for multi-threading. The function loops over all goods and performs the firms market and retail market operations for each good. Finally, it updates the aggregate variables based on the results of markets.\n\nArgs:\n\nmodel: The model object\nmulti_threading: A boolean indicating whether to use multi-threading for the algorithm. Default is false.\n\nThis function updates the model in-place and does not return any value.\n\n\n\n\n\n","category":"function"},{"location":"examples/basic_example.html","page":"Essentials","title":"Essentials","text":"EditURL = \"../../../examples/basic_example.jl\"","category":"page"},{"location":"examples/basic_example.html#Essential-use-of-BeforeIT","page":"Essentials","title":"Essential use of BeforeIT","text":"","category":"section"},{"location":"examples/basic_example.html","page":"Essentials","title":"Essentials","text":"We start by importing the BeforeIT library and other useful libraries.","category":"page"},{"location":"examples/basic_example.html","page":"Essentials","title":"Essentials","text":"import BeforeIT as Bit\nusing FileIO, Plots","category":"page"},{"location":"examples/basic_example.html","page":"Essentials","title":"Essentials","text":"We then initialise the model loading some precomputed set of parameters and by specifying a number of epochs. In another tutorial we will illustrate how to compute parameters and initial conditions.","category":"page"},{"location":"examples/basic_example.html","page":"Essentials","title":"Essentials","text":"parameters = Bit.AUSTRIA2010Q1.parameters\ninitial_conditions = Bit.AUSTRIA2010Q1.initial_conditions","category":"page"},{"location":"examples/basic_example.html","page":"Essentials","title":"Essentials","text":"We can now initialise the model, by specifying in advance the maximum number of epochs.","category":"page"},{"location":"examples/basic_example.html","page":"Essentials","title":"Essentials","text":"T = 16\nmodel = Bit.init_model(parameters, initial_conditions, T)","category":"page"},{"location":"examples/basic_example.html","page":"Essentials","title":"Essentials","text":"Note that the it is very simple to inspect the model by typing","category":"page"},{"location":"examples/basic_example.html","page":"Essentials","title":"Essentials","text":"fieldnames(typeof(model))","category":"page"},{"location":"examples/basic_example.html","page":"Essentials","title":"Essentials","text":"and to inspect the specific attributes of one agent type by typing","category":"page"},{"location":"examples/basic_example.html","page":"Essentials","title":"Essentials","text":"fieldnames(typeof(model.bank))","category":"page"},{"location":"examples/basic_example.html","page":"Essentials","title":"Essentials","text":"We can now define a data tracker, which will store the time series of the model.","category":"page"},{"location":"examples/basic_example.html","page":"Essentials","title":"Essentials","text":"data = Bit.init_data(model);\nnothing #hide","category":"page"},{"location":"examples/basic_example.html","page":"Essentials","title":"Essentials","text":"We can run now the model for a number of epochs and progressively update the data tracker.","category":"page"},{"location":"examples/basic_example.html","page":"Essentials","title":"Essentials","text":"for t in 1:T\n println(t)\n Bit.run_one_epoch!(model; multi_threading = true)\n Bit.update_data!(data, model)\nend","category":"page"},{"location":"examples/basic_example.html","page":"Essentials","title":"Essentials","text":"Note that we can equivalently run the model for a number of epochs in the single command data = BeforeIT.run_one_sim!(model) , but writing the loop explicitely is more instructive.","category":"page"},{"location":"examples/basic_example.html","page":"Essentials","title":"Essentials","text":"We can then plot any time series stored in the data tracker, for example","category":"page"},{"location":"examples/basic_example.html","page":"Essentials","title":"Essentials","text":"plot(data.real_gdp, title = \"gdp\", titlefont = 10)","category":"page"},{"location":"examples/basic_example.html","page":"Essentials","title":"Essentials","text":"Or we can plot multiple time series at once using the function plot_data","category":"page"},{"location":"examples/basic_example.html","page":"Essentials","title":"Essentials","text":"ps = Bit.plot_data(data, quantities = [:real_gdp, :real_household_consumption, :real_government_consumption, :real_capitalformation, :real_exports, :real_imports, :wages, :euribor, :gdp_deflator])\nplot(ps..., layout = (3, 3))","category":"page"},{"location":"examples/basic_example.html","page":"Essentials","title":"Essentials","text":"To run multiple monte-carlo repetitions in parallel we can use","category":"page"},{"location":"examples/basic_example.html","page":"Essentials","title":"Essentials","text":"model = Bit.init_model(parameters, initial_conditions, T)\ndata_vector = Bit.run_n_sims(model, 4)","category":"page"},{"location":"examples/basic_example.html","page":"Essentials","title":"Essentials","text":"Note that this will use the number of threads specified when activating the Julia environment. To discover the number of threads available, you can use the command","category":"page"},{"location":"examples/basic_example.html","page":"Essentials","title":"Essentials","text":"Threads.nthreads()","category":"page"},{"location":"examples/basic_example.html","page":"Essentials","title":"Essentials","text":"To activate Julia with a specific number of threads, say 8, you can use the command julia -t 8 in the terminal.","category":"page"},{"location":"examples/basic_example.html","page":"Essentials","title":"Essentials","text":"We can then plot the results of the monte-carlo repetitions using the function plot_data_vector","category":"page"},{"location":"examples/basic_example.html","page":"Essentials","title":"Essentials","text":"ps = Bit.plot_data_vector(data_vector)\nplot(ps..., layout = (3, 3))","category":"page"},{"location":"examples/change_expectations.html","page":"Experimentations (advanced)","title":"Experimentations (advanced)","text":"EditURL = \"../../../examples/change_expectations.jl\"","category":"page"},{"location":"examples/change_expectations.html#Changing-expectations-via-function-overloading","page":"Experimentations (advanced)","title":"Changing expectations via function overloading","text":"","category":"section"},{"location":"examples/change_expectations.html","page":"Experimentations (advanced)","title":"Experimentations (advanced)","text":"In this tutorial we will illustrate how to experiment with different expectations of the agents in the model.","category":"page"},{"location":"examples/change_expectations.html","page":"Experimentations (advanced)","title":"Experimentations (advanced)","text":"import BeforeIT as Bit\nusing Random, Plots","category":"page"},{"location":"examples/change_expectations.html","page":"Experimentations (advanced)","title":"Experimentations (advanced)","text":"Import standard parameters and initial conditions","category":"page"},{"location":"examples/change_expectations.html","page":"Experimentations (advanced)","title":"Experimentations (advanced)","text":"par = Bit.AUSTRIA2010Q1.parameters\ninit = Bit.AUSTRIA2010Q1.initial_conditions","category":"page"},{"location":"examples/change_expectations.html","page":"Experimentations (advanced)","title":"Experimentations (advanced)","text":"Set the seed, initialise the model and run one simulation","category":"page"},{"location":"examples/change_expectations.html","page":"Experimentations (advanced)","title":"Experimentations (advanced)","text":"Random.seed!(1234)\nT = 40\nmodel = Bit.init_model(par, init, T)\ndata = Bit.run_one_sim!(model)","category":"page"},{"location":"examples/change_expectations.html","page":"Experimentations (advanced)","title":"Experimentations (advanced)","text":"Now we can experiment with changing expectations of the agents in the model. We will change the function 'estimatenextvalue' to make the agents expect the last value of the time series (in way representing backward looking expectations)","category":"page"},{"location":"examples/change_expectations.html","page":"Experimentations (advanced)","title":"Experimentations (advanced)","text":"import BeforeIT: estimate_next_value\nfunction estimate_next_value(data)\n return data[end]\nend","category":"page"},{"location":"examples/change_expectations.html","page":"Experimentations (advanced)","title":"Experimentations (advanced)","text":"run the model again, with the same seed","category":"page"},{"location":"examples/change_expectations.html","page":"Experimentations (advanced)","title":"Experimentations (advanced)","text":"Random.seed!(1234)\nmodel = Bit.init_model(par, init, T)\ndata_back = Bit.run_one_sim!(model)","category":"page"},{"location":"examples/change_expectations.html","page":"Experimentations (advanced)","title":"Experimentations (advanced)","text":"plot the results, comparing the two cases as different lines","category":"page"},{"location":"examples/change_expectations.html","page":"Experimentations (advanced)","title":"Experimentations (advanced)","text":"p1 = plot(data.real_gdp, title = \"gdp\", titlefont = 10, label = \"forward looking\")\nplot!(p1, data_back.real_gdp, titlefont = 10, label = \"backward looking\")\n\np2 = plot(data.real_household_consumption, title = \"consumption\", titlefont = 10)\nplot!(p2, data_back.real_household_consumption, titlefont = 10, label = \"backward looking\")\n\nplot(p1, p2, layout = (2, 1), legend = true)","category":"page"},{"location":"examples/change_expectations.html","page":"Experimentations (advanced)","title":"Experimentations (advanced)","text":"plot all time series","category":"page"},{"location":"examples/change_expectations.html","page":"Experimentations (advanced)","title":"Experimentations (advanced)","text":"p1 = plot(data.real_gdp, title = \"gdp\", titlefont = 10)\nplot!(p1, data_back.real_gdp, titlefont = 10)\np2 = plot(data.real_household_consumption, title = \"household cons.\", titlefont = 10)\nplot!(p2, data_back.real_household_consumption, titlefont = 10)\np3 = plot(data.real_government_consumption, title = \"gov. cons.\", titlefont = 10)\nplot!(p3, data_back.real_government_consumption, titlefont = 10)\np4 = plot(data.real_capitalformation, title = \"capital form.\", titlefont = 10)\nplot!(p4, data_back.real_capitalformation, titlefont = 10)\np5 = plot(data.real_exports, title = \"exports\", titlefont = 10)\nplot!(p5, data_back.real_exports, titlefont = 10)\np6 = plot(data.real_imports, title = \"imports\", titlefont = 10)\nplot!(p6, data_back.real_imports, titlefont = 10)\np7 = plot(data.wages, title = \"wages\", titlefont = 10)\nplot!(p7, data_back.wages, titlefont = 10)\np8 = plot(data.euribor, title = \"euribor\", titlefont = 10)\nplot!(p8, data_back.euribor, titlefont = 10)\np9 = plot(data.nominal_gdp ./ data.real_gdp, title = \"gdp deflator\", titlefont = 10)\nplot!(p9, data_back.nominal_gdp ./ data_back.real_gdp, titlefont = 10)\n\nplot(p1, p2, p3, p4, p5, p6, p7, p8, p9, layout = (3, 3), legend = false)","category":"page"},{"location":"examples/change_expectations.html","page":"Experimentations (advanced)","title":"Experimentations (advanced)","text":"Note that, importantly, once the function estimatenextvalue has been changed, the model will use the new expectations in all the simulations, unless the function is changed again. To restore the original expectations you need to close the Julia session.","category":"page"},{"location":"examples/scenario_analysis_via_overload.html","page":"Shocked simulations (advanced)","title":"Shocked simulations (advanced)","text":"EditURL = \"../../../examples/scenario_analysis_via_overload.jl\"","category":"page"},{"location":"examples/scenario_analysis_via_overload.html#Scenario-analysis-via-function-overloading","page":"Shocked simulations (advanced)","title":"Scenario analysis via function overloading","text":"","category":"section"},{"location":"examples/scenario_analysis_via_overload.html","page":"Shocked simulations (advanced)","title":"Shocked simulations (advanced)","text":"In this tutorial we will illustrate how to perform a scenario analysis by running the model multiple times under a specific shock and comparing the results with the unshocked model.","category":"page"},{"location":"examples/scenario_analysis_via_overload.html","page":"Shocked simulations (advanced)","title":"Shocked simulations (advanced)","text":"import BeforeIT as Bit\nusing Plots, StatsPlots\n\n\nparameters = Bit.AUSTRIA2010Q1.parameters\ninitial_conditions = Bit.AUSTRIA2010Q1.initial_conditions","category":"page"},{"location":"examples/scenario_analysis_via_overload.html","page":"Shocked simulations (advanced)","title":"Shocked simulations (advanced)","text":"initialise the model and the data collector","category":"page"},{"location":"examples/scenario_analysis_via_overload.html","page":"Shocked simulations (advanced)","title":"Shocked simulations (advanced)","text":"T = 20\nmodel = Bit.init_model(parameters, initial_conditions, T);\ndata = Bit.init_data(model);\nnothing #hide","category":"page"},{"location":"examples/scenario_analysis_via_overload.html","page":"Shocked simulations (advanced)","title":"Shocked simulations (advanced)","text":"Simulate the model for T quarters","category":"page"},{"location":"examples/scenario_analysis_via_overload.html","page":"Shocked simulations (advanced)","title":"Shocked simulations (advanced)","text":"data_vec_baseline = Bit.run_n_sims(model, 4)","category":"page"},{"location":"examples/scenario_analysis_via_overload.html","page":"Shocked simulations (advanced)","title":"Shocked simulations (advanced)","text":"Now, apply a shock to the model and simulate it again Here, we do this by overloading the centralbankrate function with the wanted behaviour","category":"page"},{"location":"examples/scenario_analysis_via_overload.html","page":"Shocked simulations (advanced)","title":"Shocked simulations (advanced)","text":"import BeforeIT: central_bank_rate\n\nfunction central_bank_rate(cb::Bit.CentralBank, model::Bit.Model)\n gamma_EA = model.rotw.gamma_EA\n pi_EA = model.rotw.pi_EA\n taylor_rate = Bit.taylor_rule(cb.rho, cb.r_bar, cb.r_star, cb.pi_star, cb.xi_pi, cb.xi_gamma, gamma_EA, pi_EA)\n\n if model.agg.t < 10\n return 0.01\n else\n return taylor_rate\n end\nend\n\ndata_vec_shocked = Bit.run_n_sims(model, 4)","category":"page"},{"location":"examples/scenario_analysis_via_overload.html","page":"Shocked simulations (advanced)","title":"Shocked simulations (advanced)","text":"Finally, we can plot baseline and shocked simulations","category":"page"},{"location":"examples/scenario_analysis_via_overload.html","page":"Shocked simulations (advanced)","title":"Shocked simulations (advanced)","text":"Te = T + 1\nStatsPlots.errorline(\n 1:Te,\n data_vec_baseline.real_gdp,\n errortype = :sem,\n label = \"baseline\",\n titlefont = 10,\n xlabel = \"quarters\",\n ylabel = \"GDP\",\n)\nStatsPlots.errorline!(\n 1:Te,\n data_vec_shocked.real_gdp,\n errortype = :sem,\n label = \"shock\",\n titlefont = 10,\n xlabel = \"quarters\",\n ylabel = \"GDP\",\n)","category":"page"},{"location":"examples/scenario_analysis_via_overload.html","page":"Shocked simulations (advanced)","title":"Shocked simulations (advanced)","text":"Note that, importantly, once the function centralbankrate has been changed, the model will use the new interest rate in all the simulations, unless the function is changed again. To restore the original interest rate, you need to close and restart the Julia session.","category":"page"},{"location":"examples/scenario_analysis_via_overload.html","page":"Shocked simulations (advanced)","title":"Shocked simulations (advanced)","text":"function central_bank_rate(cb::Bit.CentralBank, model::Bit.Model)\n gamma_EA = model.rotw.gamma_EA\n pi_EA = model.rotw.pi_EA\n taylor_rate = Bit.taylor_rule(cb.rho, cb.r_bar, cb.r_star, cb.pi_star, cb.xi_pi, cb.xi_gamma, gamma_EA, pi_EA)\n return taylor_rate\nend","category":"page"},{"location":"examples/get_parameters_and_initial_conditions.html","page":"Calibration","title":"Calibration","text":"EditURL = \"../../../examples/get_parameters_and_initial_conditions.jl\"","category":"page"},{"location":"examples/get_parameters_and_initial_conditions.html","page":"Calibration","title":"Calibration","text":"In this tutorial we illustrate how to calibrate the model to the Italian data for a specific quarter","category":"page"},{"location":"examples/get_parameters_and_initial_conditions.html","page":"Calibration","title":"Calibration","text":"import BeforeIT as Bit\nusing Dates, FileIO","category":"page"},{"location":"examples/get_parameters_and_initial_conditions.html","page":"Calibration","title":"Calibration","text":"We start from loading the calibration oject for italy, which contains 4 datasets: calibration_data, figaro, data, and ea These are saved within BeforeIT for the Italian case, and would need to be appropriately generated for other countries","category":"page"},{"location":"examples/get_parameters_and_initial_conditions.html","page":"Calibration","title":"Calibration","text":"cal = Bit.ITALY_CALIBRATION\n\nfieldnames(typeof(cal))","category":"page"},{"location":"examples/get_parameters_and_initial_conditions.html","page":"Calibration","title":"Calibration","text":"These are essentually 4 dictionaries with well defined keys, such as","category":"page"},{"location":"examples/get_parameters_and_initial_conditions.html","page":"Calibration","title":"Calibration","text":"println(keys(cal.calibration))\nprintln(keys(cal.figaro))\nprintln(keys(cal.data))\nprintln(keys(cal.ea))","category":"page"},{"location":"examples/get_parameters_and_initial_conditions.html","page":"Calibration","title":"Calibration","text":"The object also contains two time variables related to the data","category":"page"},{"location":"examples/get_parameters_and_initial_conditions.html","page":"Calibration","title":"Calibration","text":"println(cal.max_calibration_date)\nprintln(cal.estimation_date)","category":"page"},{"location":"examples/get_parameters_and_initial_conditions.html","page":"Calibration","title":"Calibration","text":"We can calibrate the model on a specific quarter as follows","category":"page"},{"location":"examples/get_parameters_and_initial_conditions.html","page":"Calibration","title":"Calibration","text":"calibration_date = DateTime(2010, 03, 31)\nparameters, initial_conditions = Bit.get_params_and_initial_conditions(cal, calibration_date; scale = 0.01)","category":"page"},{"location":"examples/get_parameters_and_initial_conditions.html","page":"Calibration","title":"Calibration","text":"In sgeneral, we might want to repeat this operation for multiple quarters. In the following, we loop over all quarters from 2010Q1 to 2019Q4 and save the parameters and initial conditions in separate files. We can then load these files later to run the model for each quarter.","category":"page"},{"location":"examples/get_parameters_and_initial_conditions.html","page":"Calibration","title":"Calibration","text":"start_calibration_date = DateTime(2010, 03, 31)\nend_calibration_date = DateTime(2019, 12, 31)\n\nfor calibration_date in collect(start_calibration_date:Dates.Month(3):end_calibration_date)\n params, init_conds = Bit.get_params_and_initial_conditions(cal, calibration_date; scale = 0.0005)\n save(\n \"data/\" *\n \"italy/\" *\n \"/parameters/\" *\n string(year(calibration_date)) *\n \"Q\" *\n string(Dates.quarterofyear(calibration_date)) *\n \".jld2\",\n params,\n )\n save(\n \"data/\" *\n \"italy/\" *\n \"/initial_conditions/\" *\n string(year(calibration_date)) *\n \"Q\" *\n string(Dates.quarterofyear(calibration_date)) *\n \".jld2\",\n init_conds,\n )\nend","category":"page"},{"location":"index.html","page":"Home","title":"Home","text":"CurrentModule = BeforeIT ","category":"page"},{"location":"index.html#Behavioural-agent-based-economic-forecasting-in-Julia","page":"Home","title":"Behavioural agent-based economic forecasting in Julia","text":"","category":"section"},{"location":"index.html","page":"Home","title":"Home","text":"Welcome to BeforeIT.jl, a Julia implementation of the agent-based model presented in Economic forecasting with an agent-based model, the first ABM matching the performance of traditional economic forecasting tools.","category":"page"},{"location":"index.html","page":"Home","title":"Home","text":"With BeforeIT.jl, you can perform economic forecasting and explore different counterfactual scenarios. Thanks to its modular design, the package is also a great starting point for anyone looking to extend its capabilities or integrate it with other tools.","category":"page"},{"location":"index.html","page":"Home","title":"Home","text":"Developed in Julia, a language known for its efficiency, BeforeIT.jl is both fast and user-friendly, making it accessible whether you’re an expert programmer or just starting out.","category":"page"},{"location":"index.html#Julia-installation","page":"Home","title":"Julia installation","text":"","category":"section"},{"location":"index.html","page":"Home","title":"Home","text":"To run this software, you will need a working Julia installation on your machine. If you don't have it installed already, simply follow the short instructions available here.","category":"page"},{"location":"index.html#BeforeIT.jl-Installation","page":"Home","title":"BeforeIT.jl Installation","text":"","category":"section"},{"location":"index.html","page":"Home","title":"Home","text":"To install BeforeIT.jl, simply open a Julia REPL by writing julia in your terminal, and then execute the following","category":"page"},{"location":"index.html","page":"Home","title":"Home","text":"using Pkg\nPkg.add(\"BeforeIT\")","category":"page"},{"location":"index.html#Quick-example","page":"Home","title":"Quick example","text":"","category":"section"},{"location":"index.html","page":"Home","title":"Home","text":"To check that the installation worked, try running the model in your terminal following","category":"page"},{"location":"index.html","page":"Home","title":"Home","text":"using BeforeIT\n\nparameters = BeforeIT.AUSTRIA2010Q1.parameters\ninitial_conditions = BeforeIT.AUSTRIA2010Q1.initial_conditions\n\nT = 20\nmodel = BeforeIT.initialise_model(parameters, initial_conditions, T)\ndata = BeforeIT.run_one_sim!(model)","category":"page"},{"location":"index.html","page":"Home","title":"Home","text":"To plot the results of the simulation, install the Plots package via Pkg.add(\"Plots\") and then run","category":"page"},{"location":"index.html","page":"Home","title":"Home","text":"using Plots\n\nplot(data.real_gdp)","category":"page"},{"location":"index.html#License","page":"Home","title":"License","text":"","category":"section"},{"location":"index.html","page":"Home","title":"Home","text":"BeforeIT.jl is released under the GNU Affero General Public License v3 or later (AGPLv3+).","category":"page"},{"location":"index.html","page":"Home","title":"Home","text":"Copyright 2024- Banca d'Italia and the authors.","category":"page"},{"location":"index.html#Main-developers-and-maintainers","page":"Home","title":"Main developers and maintainers","text":"","category":"section"},{"location":"index.html","page":"Home","title":"Home","text":"Aldo Glielmo \nMitja Devetak \nAdriano Meligrana ","category":"page"},{"location":"index.html#Other-collaborators-and-contributors","page":"Home","title":"Other collaborators and contributors","text":"","category":"section"},{"location":"index.html","page":"Home","title":"Home","text":"Sebastian Poledna \nMarco Benedetti\nSara Corbo for the logo design\nAndrea Gentili for suggesting the name of the pakege\nArnau Quera-Bofarull for help in the deployment of the documentation\nSteven Hoekstra for fixing a bug in a script","category":"page"},{"location":"index.html#Disclaimer","page":"Home","title":"Disclaimer","text":"","category":"section"},{"location":"index.html","page":"Home","title":"Home","text":"This package is an outcome of a research project. All errors are those of the authors. All views expressed are personal views, not those of Bank of Italy.","category":"page"},{"location":"index.html#Reproducibility","page":"Home","title":"Reproducibility","text":"","category":"section"},{"location":"index.html","page":"Home","title":"Home","text":"
The documentation of BeforeIT.jl was built using these direct dependencies,","category":"page"},{"location":"index.html","page":"Home","title":"Home","text":"using Pkg # hide\nPkg.status() # hide","category":"page"},{"location":"index.html","page":"Home","title":"Home","text":"
","category":"page"},{"location":"index.html","page":"Home","title":"Home","text":"
and using this machine and Julia version.","category":"page"},{"location":"index.html","page":"Home","title":"Home","text":"using InteractiveUtils # hide\nversioninfo() # hide","category":"page"},{"location":"index.html","page":"Home","title":"Home","text":"
","category":"page"},{"location":"index.html","page":"Home","title":"Home","text":"
A more complete overview of all dependencies and their versions is also provided.","category":"page"},{"location":"index.html","page":"Home","title":"Home","text":"using Pkg # hide\nPkg.status(; mode = PKGMODE_MANIFEST) # hide","category":"page"},{"location":"index.html","page":"Home","title":"Home","text":"
","category":"page"},{"location":"index.html","page":"Home","title":"Home","text":"using TOML\nusing Markdown\nversion = TOML.parse(read(\"../../Project.toml\", String))[\"version\"]\nname = TOML.parse(read(\"../../Project.toml\", String))[\"name\"]\nlink_manifest = \"https://github.com/BeforeIT/\" * name * \".jl/tree/gh-pages/v\" * version *\n \"/assets/Manifest.toml\"\nlink_project = \"https://github.com/BeforeIT/\" * name * \".jl/tree/gh-pages/v\" * version *\n \"/assets/Project.toml\"\nMarkdown.parse(\"\"\"You can also download the\n[manifest]($link_manifest)\nfile and the\n[project]($link_project)\nfile.\n\"\"\")","category":"page"},{"location":"examples/multithreading_speedup.html","page":"Multithreading within the model","title":"Multithreading within the model","text":"EditURL = \"../../../examples/multithreading_speedup.jl\"","category":"page"},{"location":"examples/multithreading_speedup.html#Multithreading-speedup-for-large-models","page":"Multithreading within the model","title":"Multithreading speedup for large models","text":"","category":"section"},{"location":"examples/multithreading_speedup.html","page":"Multithreading within the model","title":"Multithreading within the model","text":"In this tutorial we illustrate how to make use of multi threading in BeforeIT to allow for faster executions of single simulation runs.","category":"page"},{"location":"examples/multithreading_speedup.html","page":"Multithreading within the model","title":"Multithreading within the model","text":"import BeforeIT as Bit\nusing FileIO, Plots, StatsPlots","category":"page"},{"location":"examples/multithreading_speedup.html","page":"Multithreading within the model","title":"Multithreading within the model","text":"We then initialise the model, this time we will use the Italy 2010Q1 scenario, and we want to simulate the model for a large number of epochs","category":"page"},{"location":"examples/multithreading_speedup.html","page":"Multithreading within the model","title":"Multithreading within the model","text":"parameters = Bit.ITALY2010Q1.parameters\ninitial_conditions = Bit.ITALY2010Q1.initial_conditions\nT = 50\nmodel = Bit.init_model(parameters, initial_conditions, T);\nnothing #hide","category":"page"},{"location":"examples/multithreading_speedup.html","page":"Multithreading within the model","title":"Multithreading within the model","text":"The model is in scale 1:2000, so it has around 30,000 households","category":"page"},{"location":"examples/multithreading_speedup.html","page":"Multithreading within the model","title":"Multithreading within the model","text":"println(model.prop.H)","category":"page"},{"location":"examples/multithreading_speedup.html","page":"Multithreading within the model","title":"Multithreading within the model","text":"Note that households are the sum of active and inactive households and the owners of firms and of the bank","category":"page"},{"location":"examples/multithreading_speedup.html","page":"Multithreading within the model","title":"Multithreading within the model","text":"println(length(model.w_act) + length(model.w_inact) + length(model.firms) + 1)","category":"page"},{"location":"examples/multithreading_speedup.html","page":"Multithreading within the model","title":"Multithreading within the model","text":"Let's fist check how many threads we have available in this Julia session","category":"page"},{"location":"examples/multithreading_speedup.html","page":"Multithreading within the model","title":"Multithreading within the model","text":"println(Threads.nthreads())","category":"page"},{"location":"examples/multithreading_speedup.html","page":"Multithreading within the model","title":"Multithreading within the model","text":"Let's now compare the performance of single threading and multi threading","category":"page"},{"location":"examples/multithreading_speedup.html","page":"Multithreading within the model","title":"Multithreading within the model","text":"@time data = Bit.run_one_sim!(model; multi_threading = false);\n\nmodel = Bit.init_model(parameters, initial_conditions, T);\n@time data = Bit.run_one_sim!(model; multi_threading = true);\nnothing #hide","category":"page"},{"location":"examples/multithreading_speedup.html","page":"Multithreading within the model","title":"Multithreading within the model","text":"Is the speedup in line to what we would expect?","category":"page"}] +[{"location":"examples/scenario_analysis_via_shock.html","page":"Shocked simulations","title":"Shocked simulations","text":"EditURL = \"../../../examples/scenario_analysis_via_shock.jl\"","category":"page"},{"location":"examples/scenario_analysis_via_shock.html#Scenario-analysis-via-custom-shocks","page":"Shocked simulations","title":"Scenario analysis via custom shocks","text":"","category":"section"},{"location":"examples/scenario_analysis_via_shock.html","page":"Shocked simulations","title":"Shocked simulations","text":"In this tutorial we will illustrate how to perform a scenario analysis by running the model multiple times under a specific shock and comparing the results with the unshocked model.","category":"page"},{"location":"examples/scenario_analysis_via_shock.html","page":"Shocked simulations","title":"Shocked simulations","text":"import BeforeIT as Bit\nusing Plots, StatsPlots\n\nparameters = Bit.AUSTRIA2010Q1.parameters\ninitial_conditions = Bit.AUSTRIA2010Q1.initial_conditions","category":"page"},{"location":"examples/scenario_analysis_via_shock.html","page":"Shocked simulations","title":"Shocked simulations","text":"Initialise the model and the data collector","category":"page"},{"location":"examples/scenario_analysis_via_shock.html","page":"Shocked simulations","title":"Shocked simulations","text":"T = 20\nmodel = Bit.init_model(parameters, initial_conditions, T);\nnothing #hide","category":"page"},{"location":"examples/scenario_analysis_via_shock.html","page":"Shocked simulations","title":"Shocked simulations","text":"Simulate the model for T quarters","category":"page"},{"location":"examples/scenario_analysis_via_shock.html","page":"Shocked simulations","title":"Shocked simulations","text":"data_vec_baseline = Bit.run_n_sims(model, 4)","category":"page"},{"location":"examples/scenario_analysis_via_shock.html","page":"Shocked simulations","title":"Shocked simulations","text":"Now, apply a shock to the model and simulate it again. A shock is simply a function that takes the model and changes some of its parameters for a specific time period.","category":"page"},{"location":"examples/scenario_analysis_via_shock.html","page":"Shocked simulations","title":"Shocked simulations","text":"In this case, let's define an interest rate shock that sets the interest rate for a number of epochs.","category":"page"},{"location":"examples/scenario_analysis_via_shock.html","page":"Shocked simulations","title":"Shocked simulations","text":"We do this by first defining a \"struct\" with some useful attributes","category":"page"},{"location":"examples/scenario_analysis_via_shock.html","page":"Shocked simulations","title":"Shocked simulations","text":"struct CustomShock\n rate::Float64 # target rate for the first 10 epochs\n final_time::Int # number of epochs for the shock\nend","category":"page"},{"location":"examples/scenario_analysis_via_shock.html","page":"Shocked simulations","title":"Shocked simulations","text":"and then by making the struct a callable function that changes the interest rate in the model, this is done in Julia using the syntax below","category":"page"},{"location":"examples/scenario_analysis_via_shock.html","page":"Shocked simulations","title":"Shocked simulations","text":"function (s::CustomShock)(model::Bit.Model)\n if model.agg.t <= s.final_time\n model.cb.r_bar = s.rate\n end\nend","category":"page"},{"location":"examples/scenario_analysis_via_shock.html","page":"Shocked simulations","title":"Shocked simulations","text":"Now we define a specific shock with a rate of 0.01 for the first 10 epochs, and run a shocked simulation","category":"page"},{"location":"examples/scenario_analysis_via_shock.html","page":"Shocked simulations","title":"Shocked simulations","text":"custom_shock = CustomShock(0.0, 10)\ndata_vec_shocked = Bit.run_n_sims(model, 4; shock = custom_shock)","category":"page"},{"location":"examples/scenario_analysis_via_shock.html","page":"Shocked simulations","title":"Shocked simulations","text":"Finally, we can plot baseline and shocked simulations","category":"page"},{"location":"examples/scenario_analysis_via_shock.html","page":"Shocked simulations","title":"Shocked simulations","text":"Te = T + 1\nStatsPlots.errorline(\n 1:Te,\n data_vec_baseline.real_gdp,\n errortype = :sem,\n label = \"baseline\",\n titlefont = 10,\n xlabel = \"quarters\",\n ylabel = \"GDP\",\n)\nStatsPlots.errorline!(\n 1:Te,\n data_vec_shocked.real_gdp,\n errortype = :sem,\n label = \"shock\",\n titlefont = 10,\n xlabel = \"quarters\",\n ylabel = \"GDP\",\n)","category":"page"},{"location":"examples/scenario_analysis_via_shock.html","page":"Shocked simulations","title":"Shocked simulations","text":"Note that, importantly, once the function central_bank_rate has been changed, the model will use the new interest rate in all the simulations, unless the function is changed again. To restore the original interest rate, we can simply re-import the function central_bank_rate.","category":"page"},{"location":"api.html","page":"API","title":"API","text":"CurrentModule = BeforeIT ","category":"page"},{"location":"api.html","page":"API","title":"API","text":"Pages = [\"api.md\"]","category":"page"},{"location":"api.html#Code-reference","page":"API","title":"Code reference","text":"","category":"section"},{"location":"api.html","page":"API","title":"API","text":"In this page we document the functions which constitute the bulk of BeforeIT.jl functionality.","category":"page"},{"location":"api.html#Agent-types","page":"API","title":"Agent types","text":"","category":"section"},{"location":"api.html","page":"API","title":"API","text":"Modules = [BeforeIT]\nOrder = [:type, :function]\nPages = [\"agents.jl\"]","category":"page"},{"location":"api.html#BeforeIT.Aggregates","page":"API","title":"BeforeIT.Aggregates","text":"This is a Aggregates type. It is used to store the aggregate variables of the economy. Note that t is an integer, while the rest are floats or vectors of floats.\n\nFields\n\nY [vector]: GDP data + predictions\npi_ [vector]: inflation data + predictions\nP_bar: Global price index\nP_bar_g [vector]: Producer price index for principal good g\nP_bar_HH: Consumer price index\nP_bar_CF: Capital price index\nP_bar_h: CPI_h\nP_bar_CF_h: Capital price index _h\nY_e: Expected GDP\ngamma_e: Expected growth\npi_e: Expected inflation\nt: Time index\n\n\n\n\n\n","category":"type"},{"location":"api.html#BeforeIT.Bank","page":"API","title":"BeforeIT.Bank","text":"This is a Bank type. It represents the bank of the model.\n\nFields\n\nE_k: equity capital (common equity) of the bank\nPi_k: Profits of the bank\nPi_e_k: Expected profits of the bank\nD_k: Residual and balancing item on the bank’s balance sheet\nr: Rate for loans and morgages\n\nHousehold fields (bank' owner)\n\nY_h: Net disposable income of bank owner (investor)\nC_d_h: Consumption budget\nI_d_h: Investment budget\nC_h: Realised consumption\nI_h: Realised investment\nK_h: Capital stock\nD_h: Deposits\n\n\n\n\n\n","category":"type"},{"location":"api.html#BeforeIT.CentralBank","page":"API","title":"BeforeIT.CentralBank","text":"This is a CentralBank type. It represents the central bank of the model.\n\nFields\n\nr_bar: Nominal interest rate\nr_G: Interest rate on government bonds\nrho: Parameter for gradual adjustment of the policy rate\nr_star: Real equilibrium interest rate\npi_star: Inflation target by CB\nxi_pi: Weight the CB puts on inflation targeting\nxi_gamma: Weight placed on economic\nE_CB: Central bank equity\n\n\n\n\n\n","category":"type"},{"location":"api.html#BeforeIT.Firms","page":"API","title":"BeforeIT.Firms","text":"This is a Firms type. Each field is an array which stores the values for all the firms in the economy. Note that the G_i, N_i and V_i fields are integers, while the rest are floats.\n\nFor all fields the entry at index i corresponds to the ith firm.\n\nFields\n\nG_i: Principal product\nalpha_bar_i: Average productivity of labor\nbeta_i: Productivity of intermediate consumption\nkappa_i: Productivity of capital\nw_i: Wages\nw_bar_i: Average wage rate\ndelta_i: Depreciation rate for capital\ntau_Y_i: Net tax rate on products\ntau_K_i: Net tax rate on production\nN_i: Number of persons employed\nY_i: Production of goods\nQ_i: Sales of goods\nQ_d_i: Demand for goods\nP_i: Price\nS_i: Inventories\nK_i: Capital, in real terms\nM_i: Intermediate goods/services and raw materials, in real terms\nL_i: Outstanding loans\npi_bar_i: Operating margin\nD_i: Deposits of the firm\nPi_i: Profits\nV_i: Vacancies\nI_i: Investments\nE_i: Equity\nP_bar_i: Price index\nP_CF_i: Price index\nDS_i: Differnece in stock of final goods\nDM_i: Difference in stock of intermediate goods\nDL_i: Obtained loans\nDL_d_i: Target loans\nK_e_i: Expected capital \nL_e_i: Expected loans\nQ_s_i: Expected sales\nI_d_i: Desired investments\nDM_d_i: Desired materials\nN_d_i: Desired employment\nPi_e_i: Expected profits\n\nHousehold fields (firms' owners)\n\nY_h: Net disposable income of firm owner (investor)\nC_d_h: Consumption budget\nI_d_h: Investment budget\nC_h: Realised consumption\nI_h: Realised investment\nK_h: Capital stock\nD_h: Deposits of the owner of the firms\n\n\n\n\n\n","category":"type"},{"location":"api.html#BeforeIT.Government","page":"API","title":"BeforeIT.Government","text":"This is a Government type. It represents the government of the model.\n\nFields\n\nalpha_G: Autoregressive coefficient for government consumption\nbeta_G: Scalar constant for government consumption\nsigma_G: Variance coefficient for government consumption\nY_G: Government revenues\nC_G: Consumption demand of the general government\nL_G: Loans taken out by the government\nsb_inact: Social benefits for inactive persons\nsb_other: Social benefits for all\nC_d_j [vector]: Local governments consumption demand\nC_j: Realised government consumption\nP_j: Price inflation of government goods <- ??\n\n\n\n\n\n","category":"type"},{"location":"api.html#BeforeIT.Model","page":"API","title":"BeforeIT.Model","text":"This is a Model type. It is used to store all the agents of the economy.\n\nFields\n\nw_act: Workers that are active\nw_inact: Workers that are inactive\nfirms: Firms\nbank: Bank\ncb: CentralBank\ngov: Government\nrotw: RestOfTheWorld\nagg: Aggregates\n\n\n\n\n\n","category":"type"},{"location":"api.html#BeforeIT.RestOfTheWorld","page":"API","title":"BeforeIT.RestOfTheWorld","text":"This is a RestOfTheWorld type. It represents the rest of the world of the model.\n\nFields\n\nalpha_E: Autoregressive coefficient for exports\nbeta_E: Scalar constant for exports\nsigma_E: Variance coefficient for exports\nalpha_I: Autoregressive coefficient for imports\nbeta_I: Scalar constant for imports\nsigma_I: Variance coefficient for imports\nY_EA: GDP euro area\ngamma_EA: Growth euro area\npi_EA: Inflation euro area\nalpha_pi_EA: Autoregressive coefficient for euro area inflation\nbeta_pi_EA: Autoregressive coefficient for euro area inflation Scalar constant for euro area inflation\nsigma_pi_EA: Variance coefficient for euro area inflation\nalpha_Y_EA: Autoregressive coefficient for euro area GDP\nbeta_Y_EA: Autoregressive coefficient for euro area GDP Scalar constant for euro area GDP\nsigma_Y_EA: Variance coefficient for euro area GDP\nD_RoW: Net creditor/debtor position of the national economy to the rest of the world\nY_I: Supply of imports (in real terms)\nC_E: Total demand for exports\nC_d_l [vector]: Demand for exports of specific product\nC_l: Realised consumption by foreign consumers\nY_m [vector]: Supply of imports per sector\nQ_m [vector]: Sales for imports per sector\nQ_d_m [vector]: Demand for goods\nP_m [vector]: Price of imports per sector\nP_l: Price inflation of exports <- ??\n\n\n\n\n\n","category":"type"},{"location":"api.html#BeforeIT.Workers","page":"API","title":"BeforeIT.Workers","text":"This is a Workers. Each field is an array which stores the values for all the workers in the economy. Note that the O_h field is an integer, while the rest are floats.\n\nFor all fields the entry at index i corresponds to the ith worker.\n\nFields\n\nY_h: Net disposable income of worker owner (investor)\nD_h: Deposits\nK_h: Capital stock\nw_h: Wages (0 if inactive or unemployed)\nO_h: Occupation (0 if unemployed, -1 if inactive)\nC_d_h: Consumption budget\nI_d_h: Investment budget\nC_h: Realised consumption\nI_h: Realised investment\n\n\n\n\n\n","category":"type"},{"location":"api.html#Initialisation-function","page":"API","title":"Initialisation function","text":"","category":"section"},{"location":"api.html","page":"API","title":"API","text":"Modules = [BeforeIT]\nOrder = [:type, :function]\nPages = [\"init.jl\"]","category":"page"},{"location":"api.html#BeforeIT.init_model","page":"API","title":"BeforeIT.init_model","text":"init_model(parameters, initial_conditions, T, typeInt = Int64, typeFloat = Float64)\n\nInitializes the model with given parameters and initial conditions.\n\nParameters:\n\nparameters: A dictionary containing the model parameters.\ninitial_conditions: A dictionary containing the initial conditions.\nT (integer): The time horizon of the model.\ntypeInt: (optional, default: Int64): The data type to be used for integer values.\ntypeFloat: (optional, default: Float64): The data type to be used for floating-point values.\n\nReturns:\n\nmodel::Model: The initialized model.\n\n\n\n\n\n","category":"function"},{"location":"api.html#BeforeIT.update_variables_with_totals!-Tuple{Model}","page":"API","title":"BeforeIT.update_variables_with_totals!","text":"update_variables_with_totals!(model::Model)\n\nUpdate the variables in the given model with some global quantities obtained from all agents. This is the last step in the initialization process and it must be performed after all agents have been initialized.\n\nArguments\n\nmodel::Model: The model object to update.\n\nReturns\n\nNothing\n\n\n\n\n\n","category":"method"},{"location":"api.html#Functions-to-run-an-entire-simulation","page":"API","title":"Functions to run an entire simulation","text":"","category":"section"},{"location":"api.html","page":"API","title":"API","text":"Modules = [BeforeIT]\nOrder = [:type, :function]\nPages = [\"one_epoch.jl\", \"one_simulation.jl\"]","category":"page"},{"location":"api.html#BeforeIT.run_one_epoch!-Tuple{Any}","page":"API","title":"BeforeIT.run_one_epoch!","text":"run_one_epoch!(model; multi_threading = false)\n\nThis function simulates a single epoch the economic model, updating various components of the model based the interactions between different economic agents. It accepts a model object, which encapsulates the state for the simulation, and an optional boolean parameter multi_threading to enable or disable multi-threading.\n\nKey operations performed include:\n\nFinancial adjustments for firms and banks, including insolvency checks and profit calculations.\nEconomic expectations and adjustments, such as growth, inflation, and central bank rates.\nLabor and credit market operations, including wage updates and loan processing.\nHousehold economic activities, including consumption and investment budgeting.\nGovernment and international trade financial activities, including budgeting and trade balances.\nGeneral market matching and accounting updates to reflect changes in economic indicators and positions.\n\nThe function updates the model in-place and does not return any value.\n\n\n\n\n\n","category":"method"},{"location":"api.html#BeforeIT.run_n_sims-Tuple{Any, Any}","page":"API","title":"BeforeIT.run_n_sims","text":"run_n_sims(model, n_sims; shock = NoShock(), multi_threading = true)\n\nA function that runs n_sims simulations in parallel with multiple threading and returns a vector of data objects of dimension n_sims.\n\nArguments\n\nmodel: The model configuration used to simulate.\nn_sims: The number of simulations to run in parallel.\n\nReturns\n\ndata_vector: A vector containing the data objects collected during each simulation.\n\n\n\n\n\n","category":"method"},{"location":"api.html#BeforeIT.run_one_sim!-Tuple{Any}","page":"API","title":"BeforeIT.run_one_sim!","text":"run_one_sim!(model; shock = NoShock())\n\nRun a single simulation based on the provided model. The simulation runs for a number of epochs specified by model.prop.T.\n\nArguments\n\nmodel::Model: The model configuration used for the simulation.\n\nReturns\n\ndata::Data: The data collected during the simulation.\n\nDetails\n\nThe function initializes the data using BeforeIT.init_data(model), then iteratively updates the model and data for each epoch using BeforeIT.run_one_epoch!(model) and BeforeIT.update_data!(data, model) respectively.\n\nExample\n\n```julia model = BeforeIT.initializemodel(parameters, initialconditions, T) data = runonesim!(model)\n\n\n\n\n\n","category":"method"},{"location":"api.html#Firms-actions","page":"API","title":"Firms actions","text":"","category":"section"},{"location":"api.html","page":"API","title":"API","text":"Modules = [BeforeIT]\nOrder = [:type, :function]\nPages = [\"firms.jl\"]","category":"page"},{"location":"api.html#BeforeIT.firms_deposits-Tuple{Any, Any}","page":"API","title":"BeforeIT.firms_deposits","text":"firms_deposits(firms, model)\n\nCalculate the new deposits of firms.\n\nArguments\n\nfirms: Firms object\nmodel: Model object\n\nReturns\n\nDD_i: Vector of new deposits\n\nThe new deposits DD_i are calculated as follows:\n\nDD_i = sales + labour_cost + material_cost + taxes_products + taxes_production + corporate_tax + dividend_payments + interest_payments + interest_received + investment_cost + new_credit + debt_installment\n\nwhere:\n\nsales = P_i * Q_i\nlabour_cost = (1 + tau_SIF) * w_i * N_i * P_bar_HH\nmaterial_cost = -DM_i * P_bar_i\ntaxes_products = -tau_Y_i * P_i * Y_i\ntaxes_production = -tau_K_i * P_i * Y_i\ncorporate_tax = -tau_FIRM * pos(Pi_i)\ndividend_payments = -theta_DIV * (1 - tau_FIRM) * pos(Pi_i)\ninterest_payments = -r * (L_i + pos(-D_i))\ninterest_received = r_bar * pos(D_i)\ninvestment_cost = -P_CF_i * I_i\nnew_credit = DL_i\ndebt_installment = -theta * L_i\n\n\n\n\n\n","category":"method"},{"location":"api.html#BeforeIT.firms_equity-Tuple{Any, Any}","page":"API","title":"BeforeIT.firms_equity","text":"firms_equity(firms, model)\n\nCalculate the equity of firms.\n\nArguments\n\nfirms: Firms object\nmodel: Model object\n\nReturns\n\nE_i: Vector of equity\n\nThe equity E_i is calculated as follows:\n\nE_i = D_i + M_i * sum(a_sg G_i * barP_g) + P_i * S_i + barP_CF * K_i - L_i\n\nwhere:\n\nD_i: Deposits\nM_i: Intermediate goods\na_sg: Technology coefficient of the gth product in the sth industry\nG_i: Vector of goods\nP_bar_g: Producer price index for principal good g\nP_i: Price\nS_i: Stock\nP_bar_CF: Capital price index\nK_i: Capital stock\nL_i: Loans\n\n\n\n\n\n","category":"method"},{"location":"api.html#BeforeIT.firms_expectations_and_decisions-Tuple{Any, Any}","page":"API","title":"BeforeIT.firms_expectations_and_decisions","text":"firms_expectations_and_decisions(firms, model)\n\nCalculate the expectations and decisions of firms. That is: compute firm quantity, price, investment and intermediate-goods, employment decisions, expected profits, and desired/expected loans and capital.\n\nArguments\n\nfirms: Firms object\nmodel: Model object\n\nReturns\n\nQ_s_i: Vector of desired quantities\nI_d_i: Vector of desired investments\nDM_d_i: Vector of desired intermediate goods\nN_d_i: Vector of desired employment\nPi_e_i: Vector of expected profits\nDL_d_i: Vector of desired new loans\nK_e_i: Vector of expected capital\nL_e_i: Vector of expected loans\nP_i: Vector of prices\n\n\n\n\n\n","category":"method"},{"location":"api.html#BeforeIT.firms_loans-Tuple{Any, Any}","page":"API","title":"BeforeIT.firms_loans","text":"firms_loans(firms, model)\n\nCalculate the new loans of firms.\n\nArguments\n\nfirms: Firms object\nmodel: Model object\n\nReturns\n\nL_i: Vector of new loans\n\nThe new loans L_i are calculated as follows:\n\nL_i = (1 - theta) * L_i + DL_i\n\nwhere:\n\ntheta: Rate of repayment\nL_i: Loans\nDL_i: Acquired new loans\n\n\n\n\n\n","category":"method"},{"location":"api.html#BeforeIT.firms_production-Tuple{AbstractFirms}","page":"API","title":"BeforeIT.firms_production","text":"firms_production(firms)\n\nCalculate the production of firms.\n\nArguments\n\nfirms: Firms object\n\nReturns\n\nY_i: Vector of production\n\nThe production Y_i is computed using a Leontief technology.\n\n\n\n\n\n","category":"method"},{"location":"api.html#BeforeIT.firms_profits-Tuple{AbstractFirms, Model}","page":"API","title":"BeforeIT.firms_profits","text":"firms_profits(firms, model)\n\nCalculate the profits of firms.\n\nArguments\n\nfirms: Firms object\nmodel: Model object\n\nReturns\n\nPi_i: Vector of profits\n\nThe profits Pi_i are calculated as follows:\n\nPi_i = in_sales + in_deposits - out_wages - out_expenses - out_depreciation - out_taxes_prods - out_taxes_capital - out_loans\n\nwhere:\n\nin_sales = P_i * Q_i + P_i * DS_i\nin_deposits = r_bar * pos(D_i)\nout_wages = (1 + tau_SIF) * w_i * N_i * P_bar_HH\nout_expenses = 1 / beta_i * P_bar_i * Y_i\nout_depreciation = delta_i / kappa_i * P_CF_i * Y_i\nout_taxes_prods = tau_Y_i * P_i * Y_i\nout_taxes_capital = tau_K_i * P_i * Y_i\nout_loans = r * (L_i + pos(-D_i))\n\n\n\n\n\n","category":"method"},{"location":"api.html#BeforeIT.firms_stocks-Tuple{Any}","page":"API","title":"BeforeIT.firms_stocks","text":"firms_stocks(firms)\n\nCalculate the stocks of firms.\n\nArguments\n\nfirms: Firms object\n\nReturns\n\nK_i: Vector of capital stock\nM_i: Vector of intermediate goods\nDS_i: Vector of differneces in stock of final goods\nS_i: Vector of stock of final goods\n\nThe stocks are calculated as follows:\n\nK_i = K_i - delta_i / kappa_i * Y_i + I_i\nM_i = M_i - Y_i / beta_i + DM_i\nDS_i = Y_i - Q_i\nS_i = S_i + DS_i\n\n\n\n\n\n","category":"method"},{"location":"api.html#BeforeIT.firms_wages-Tuple{AbstractFirms}","page":"API","title":"BeforeIT.firms_wages","text":"firms_wages(firms)\n\nCalculate the wages set by firms.\n\nArguments\n\nfirms: Firms object\n\nReturns\n\nw_i: Vector of wages\n\n\n\n\n\n","category":"method"},{"location":"api.html#BeforeIT.init_firms-Tuple{Any, Any}","page":"API","title":"BeforeIT.init_firms","text":"init_firms(parameters, initial_conditions; typeInt = Int64, typeFloat = Float64)\n\nInitialize firms with given parameters and initial conditions.\n\nArguments\n\nparameters: The parameters for initializing the firms.\ninitial_conditions: The initial conditions for the firms.\ntypeInt: (optional) The integer type to be used. Default is Int64.\ntypeFloat: (optional) The floating-point type to be used. Default is Float64.\n\nReturns\n\nfirms::Firms: The initialized firms.\nfirms_args::Tuple: The arguments used to initialize the firms.\n\n\n\n\n\n","category":"method"},{"location":"api.html#BeforeIT.leontief_production-NTuple{7, Any}","page":"API","title":"BeforeIT.leontief_production","text":"leontief_production(Q_s_i, N_i, alpha_i, K_i, kappa_i, M_i, beta_i)\n\nCalculate the production function of firms.\n\nArguments\n\nQ_s_i: Vector of desired quantities\nN_i: Vector of employment\nalpha_i: Vector of labour productivity\nK_i: Vector of capital stock\nkappa_i: Vector of capital productivity\nM_i: Vector of intermediate goods\nbeta_i: Vector of intermediate goods productivity\n\nReturns\n\nY_i: Vector of production\n\nThe Leontief production function Y_i is calculated as follows:\n\nY_i = min(Q_s_i min(N_i cdot alpha_i min(K_i cdot kappa_i M_i cdot beta_i)))\n\n\n\n\n\n","category":"method"},{"location":"api.html#Households-actions","page":"API","title":"Households actions","text":"","category":"section"},{"location":"api.html","page":"API","title":"API","text":"Modules = [BeforeIT]\nOrder = [:type, :function]\nPages = [\"households.jl\"]","category":"page"},{"location":"api.html#Government-actions","page":"API","title":"Government actions","text":"","category":"section"},{"location":"api.html","page":"API","title":"API","text":"Modules = [BeforeIT]\nOrder = [:type, :function]\nPages = [\"government.jl\"]","category":"page"},{"location":"api.html#BeforeIT.gov_expenditure-Tuple{Any, Any}","page":"API","title":"BeforeIT.gov_expenditure","text":"gov_expenditure(gov::AbstractGovernment, model)\n\nComputes government expenditure on consumption and transfers to households.\n\nArguments\n\ngov: government object\nmodel: model object\n\nReturns\n\nC_G: government consumption\nC_d_j: local government consumptions\n\n\n\n\n\n","category":"method"},{"location":"api.html#BeforeIT.gov_loans-Tuple{Any, Any}","page":"API","title":"BeforeIT.gov_loans","text":"gov_loans(gov::AbstractGovernment, model, Y_G)\n\nComputes government new government debt.\n\nArguments\n\ngov::AbstractGovernment: government object\nmodel: model object\n\nReturns\n\nL_G: new government debt\n\n\n\n\n\n","category":"method"},{"location":"api.html#BeforeIT.gov_revenues-Tuple{Model}","page":"API","title":"BeforeIT.gov_revenues","text":"gov_revenues(model)\n\nComputes government revenues from taxes and social security contributions. The government collects taxes on labour income, capital income, value added, and corporate income. It also collects social security contributions from workers and firms. The government also collects taxes on consumption and capital formation. Finally, the government collects taxes on exports and imports.\n\nArguments\n\nmodel: model object\n\nReturns\n\nY_G: government revenues\n\n\n\n\n\n","category":"method"},{"location":"api.html#BeforeIT.gov_social_benefits-Tuple{AbstractGovernment, Any}","page":"API","title":"BeforeIT.gov_social_benefits","text":"gov_social_benefits(gov::AbstractGovernment, model)\n\nComputes social benefits paid by the government households.\n\nArguments\n\ngov: government object\nmodel: model object\n\nReturns\n\nsb_other: social benefits for other households\nsb_inact: social benefits for inactive households\n\n\n\n\n\n","category":"method"},{"location":"api.html#BeforeIT.init_government-Tuple{Any, Any}","page":"API","title":"BeforeIT.init_government","text":"init_government(parameters, initial_conditions; typeInt = Int64, typeFloat = Float64)\n\nInitialize the government agent.\n\nArguments\n\nparameters: The parameters.\ninitial_conditions: The initial conditions.\ntypeInt: The integer type to be used (default: Int64).\ntypeFloat: The floating-point type to be used (default: Float64).\n\nReturns\n\nThe initialized government model.\nThe arguments used to initialize the government model.\n\n\n\n\n\n","category":"method"},{"location":"api.html#Bank-and-Central-Bank-actions","page":"API","title":"Bank and Central Bank actions","text":"","category":"section"},{"location":"api.html","page":"API","title":"API","text":"Modules = [BeforeIT]\nOrder = [:type, :function]\nPages = [\"bank.jl\"]","category":"page"},{"location":"api.html#BeforeIT._bank_deposits-NTuple{7, Any}","page":"API","title":"BeforeIT._bank_deposits","text":"_deposit_bank(waD_h, wiD_h, fD_h, bD_h, fD_i, bE_k, fL_i)\n\nHelper function to calculate the new deposits of a bank.\n\nArguments\n\nwaD_h: Array of deposits from active workers\nwiD_h: Array of deposits from inactive workers\nfD_h: Array of deposits from firms\nbD_h: Deposits from the bank owner\nfD_i: Array of deposits from firms\nbE_k: Bank equity\nfL_i: Array of loans to firms\n\nReturns\n\nD_k: New deposits of the bank\n\nThe new deposits D_k are calculated as the sum of the deposits of the active workers, the inactive workers, the firms, and the bank owner itself, plus the bank's equity, minus the loans of the firms.\n\n\n\n\n\n","category":"method"},{"location":"api.html#BeforeIT._bank_profits-Union{Tuple{T}, Tuple{AbstractVector{T}, AbstractVector{T}, AbstractVector{T}, T, T, T}} where T","page":"API","title":"BeforeIT._bank_profits","text":"_bank_profits(L_i, D_i, D_h, D_k, r_bar, r)\n\nHelper function to calculate the total profits of a bank.\n\nArguments\n\nL_i: Array of loans provided by the bank\nD_i: Array of deposits from firms\nD_h: Array of deposits from households\nD_k: Residual and balancing item on the bank’s balance sheet\nr_bar: Base interest rate\nr: Interest rate set by the bank\n\nReturns\n\nPi_k: Total profits of the bank\n\nThe total profits Pi_k are calculated as follows:\n\nPi_k = r cdot sum_i(L_i + max(0 -D_i)) + r cdot sum_h(max(0 -D_h)) + r_bar \ncdot max(0 D_k) - r_bar cdot sum_i(max(0 D_i)) - r_bar cdot \nsum_h(max(0 D_h)) - r_bar cdot max(0 -D_k)\n\n\n\n\n\n","category":"method"},{"location":"api.html#BeforeIT._central_bank_profits-NTuple{4, Any}","page":"API","title":"BeforeIT._central_bank_profits","text":"_central_bank_profits(r_bar, D_k, L_G, r_G)\n\nHelper function to calculate the profits of a central bank.\n\nArguments\n\nr_bar: The base interest rate\nD_k: Deposits from commercial banks\nL_G: Loans provided to the government\nr_G: Interest rate on government loans\n\nReturns\n\nPi_CB: Profits of the central bank\n\nThe profits Pi_CB are calculated as follows:\n\nPi_CB = r_G cdot L_G - r_bar cdot D_k\n\n\n\n\n\n","category":"method"},{"location":"api.html#BeforeIT.bank_deposits-Tuple{Any, Any}","page":"API","title":"BeforeIT.bank_deposits","text":"deposits_bank(bank, w_act, w_inact, firms)\n\nCalculate the new deposits of a bank.\n\nArguments\n\nbank: The Bank object containing the bank of the model\nw_act: The Workers object containing the active workers of the model\nw_inact: The Workers object containing the inactive workers of the model\nfirms: The Firms object containing the firms of the model\n\nReturns\n\nD_k: New deposits of the bank\n\nThe new deposits D_k are calculated as the sum of the deposits of the active workers, the inactive workers, the firms, and the bank owner itself, plus the bank's equity, minus the loans of the firms.\n\n\n\n\n\n","category":"method"},{"location":"api.html#BeforeIT.bank_equity-Tuple{Any, Any}","page":"API","title":"BeforeIT.bank_equity","text":"bank_equity(bank, model)\n\nCalculate the net profits of a bank.\n\nArguments\n\nbank: The bank object.\nmodel: The model object.\n\nReturns\n\nE_k: The updated equity of the bank.\n\nThe net profits DE_k are calculated as:\n\nDE_k = Pi_k - theta_DIV cdot (1 - tau_FIRM) cdot max(0 Pi_k) - tau_FIRM cdot max(0 Pi_k)\n\nand the equity E_k is updated as:\n\nE_k = E_k + DE_k\n\n\n\n\n\n","category":"method"},{"location":"api.html#BeforeIT.bank_expected_profits-Tuple{Any, Any}","page":"API","title":"BeforeIT.bank_expected_profits","text":"bank_expected_profits(Pi_k, pi_e, gamma_e)\n\nCalculate the expected profits of a bank.\n\nArguments\n\nPi_k: Past profits of the bank\npi_e: Expected inflation rate\ngamma_e: Expected growth rate\n\nReturns\n\nE_Pi_k: Expected profits of the bank\n\nThe expected profits E_Pi_k are calculated as follows:\n\nE_Pi_k = Pi_k cdot (1 + pi_e) cdot (1 + gamma_e)\n\n\n\n\n\n","category":"method"},{"location":"api.html#BeforeIT.bank_profits-Tuple{Any, Any}","page":"API","title":"BeforeIT.bank_profits","text":"bank_profits(bank, model)\n\nCalculate the total profits of a bank.\n\nArguments\n\nbank: The bank object.\nmodel: The model object.\n\nReturns\n\nPi_k: The total profits of the bank.\n\nThe total profits Pi_k are calculated as:\n\nPi_k = r cdot sum_i(L_i + max(0 -D_i)) + r cdot sum_h(max(0 -D_h)) + r_bar\ncdot max(0 D_k) - r_bar cdot sum_i(max(0 D_i)) - r_bar cdot\nsum_h(max(0 D_h)) - r_bar cdot max(0 -D_k)\n\n\n\n\n\n","category":"method"},{"location":"api.html#BeforeIT.bank_rate-Tuple{Any, Any}","page":"API","title":"BeforeIT.bank_rate","text":"bank_rate(bank, model)\n\nUpdate the interest rate set by the bank.\n\nArguments\n\nbank: The bank whose interest rate is to be updated\nmodel: Model object\n\nReturns\n\nr: The updated interest rate\n\nr = barr + mu\n\n\n\n\n\n","category":"method"},{"location":"api.html#BeforeIT.central_bank_equity-Tuple{Any, Any}","page":"API","title":"BeforeIT.central_bank_equity","text":"central_bank_equity(cb, model)\n\nCalculate the equity of the central bank.\n\nArguments\n\ncb: The central bank\nmodel: The model object\n\nReturns\n\nE_CB: The equity of the central bank\n\nThe equity E_CB is calculated as follows:\n\nE_CB = E_CB + Pi_CB\n\nwhere \\Pi_{CB} are the profits of the central bank.\n\n\n\n\n\n","category":"method"},{"location":"api.html#BeforeIT.central_bank_rate-Tuple{AbstractCentralBank, Model}","page":"API","title":"BeforeIT.central_bank_rate","text":"central_bank_rate(cb, model)\n\nUpdate the base interest rate set by the central bank according to the Taylor rule.\n\nArguments\n\ncb: The central bank whose base interest rate is to be updated\nmodel: The model object\n\nReturns\n\nr_bar: The updated base interest rate\n\n\n\n\n\n","category":"method"},{"location":"api.html#BeforeIT.finance_insolvent_firms!-Tuple{AbstractFirms, AbstractBank, Any}","page":"API","title":"BeforeIT.finance_insolvent_firms!","text":"finance_insolvent_firms!(firms, bank, P_bar_CF, zeta_b, insolvent)\n\nRifinance insolvent firms using bank equity.\n\nArguments\n\nfirms: The Firms object containing the firms of the model\nbank: The Bank object containing the bank of the model\nP_bar_CF: Capital price index\nzeta_b: Parameter of loan-to-capital ratio for new firms after bankruptcy\n\nReturns\n\nThis function does not return a value. It modifies the banks and firms collections in-place.\n\n\n\n\n\n","category":"method"},{"location":"api.html#BeforeIT.taylor_rule-Union{Tuple{T}, NTuple{8, T}} where T","page":"API","title":"BeforeIT.taylor_rule","text":"taylor_rule(rho, r_bar, r_star, pi_star, xi_pi, xi_gamma, gamma_EA, pi_EA)\n\nCalculate the interest rate according to the Taylor rule.\n\nArguments\n\nrho: Parameter for gradual adjustment of the policy rate.\nr_bar: Nominal interest rate.\nr_star: Real equilibrium interest rate.\npi_star: The target inflation rate.\nxi_pi: Weight the CB puts on inflation targeting.\nxi_gamma: Weight placed on economic growth.\ngamma_EA: The output growth rate.\npi_EA: The inflation rate.\n\nReturns\n\nrate: The calculated interest rate.\n\nThe Taylor rule is given by the following equation:\n\nr_t = ρ * r_t-1 + (1 - ρ) * (r^* + π^* + ξ_π * (π_t - π^*) + ξ_γ * γ_t)\n\n\n\n\n\n","category":"method"},{"location":"api.html#Rest-Of-The-World-actions","page":"API","title":"Rest Of The World actions","text":"","category":"section"},{"location":"api.html","page":"API","title":"API","text":"Modules = [BeforeIT]\nOrder = [:type, :function]\nPages = [\"rotw.jl\"]","category":"page"},{"location":"api.html#BeforeIT.rotw_deposits-Tuple{Any, Any}","page":"API","title":"BeforeIT.rotw_deposits","text":"rotw_deposits(rotw, tau_EXPORT)\n\nCalculate the deposits of the rest of the world.\n\nArguments\n\nrotw: The rest of the world object.\ntau_EXPORT: The export tax.\n\nReturns\n\nD_RoW: The deposits of the rest of the world.\n\nThe deposits D_RoW are calculated as follows:\n\nD_RoW = D_RoW + left( sum_m P_m cdot Q_m right) - (1 + tau_EXPORT) cdot C_l\n\n\n\n\n\n","category":"method"},{"location":"api.html#BeforeIT.rotw_import_export-Tuple{Any, Any}","page":"API","title":"BeforeIT.rotw_import_export","text":"rotw_import_export(rotw, model, pi_e, epsilon_E, epsilon_I)\n\nCalculate the demand for exports and supply of imports of the rest of the world.\n\nArguments\n\nrotw: The rest of the world object.\nmodel: The model object.\n\nReturns\n\nC_E: Total demand for exports.\nY_I: Supply of imports (in real terms).\nC_d_l: TDemand for exports of specific product.\nY_m: Supply of imports per sector.\nP_m: Price of imports per sector.\n\n\n\n\n\n","category":"method"},{"location":"api.html#Markets","page":"API","title":"Markets","text":"","category":"section"},{"location":"api.html","page":"API","title":"API","text":"Modules = [BeforeIT]\nOrder = [:type, :function]\nPages = [\"search_and_matching_credit.jl\", \"search_and_matching_labour.jl\", \"search_and_matching.jl\"]","category":"page"},{"location":"api.html#BeforeIT.search_and_matching_credit-Tuple{AbstractFirms, Any}","page":"API","title":"BeforeIT.search_and_matching_credit","text":"search_and_matching_credit(firms::Firms, model)\n\nThis function calculates the credit allocation for each firm in the given firms object.\n\nParameters:\n\nfirms::Firms: The firms object.\nmodel: The model object.\n\nReturns:\n\nDL_i: An array of credit allocations for each firm.\n\n\n\n\n\n","category":"method"},{"location":"api.html#BeforeIT.search_and_matching_labour-Tuple{AbstractFirms, Any}","page":"API","title":"BeforeIT.search_and_matching_labour","text":"search_and_matching_labour(firms::Firms, model)\n\nThis function implements a labor search and matching algorithm. It takes in a Firms object and a Model object as input. The Firms object contains information about the number of desired employees (N_d_i) and the current number of employees (N_i) for each firm. The model object contains information about the current employment status (O_h) of each worker.\n\nThe function performs the following steps:\n\nCalculates the vacancies (V_i) for each firm as the difference between desired and current employees.\nIdentifies employed workers and shuffles them randomly.\nFires workers from firms with negative vacancies to adjust the workforce.\nIdentifies unemployed workers and firms with positive vacancies.\nRandomly matches unemployed workers to firms with vacancies until all vacancies are filled or there are no more unemployed workers.\n\nThe function returns:\n\nN_i: An updated array of the number of employed workers for each firm.\nO_h: An updated array where each element represents the firm a worker is employed with (0 if unemployed).\n\n\n\n\n\n","category":"method"},{"location":"api.html#BeforeIT.perform_firms_market!-NTuple{15, Any}","page":"API","title":"BeforeIT.perform_firms_market!","text":"Perform the firms market exchange process\n\n\n\n\n\n","category":"method"},{"location":"api.html#BeforeIT.perform_retail_market!-NTuple{31, Any}","page":"API","title":"BeforeIT.perform_retail_market!","text":"Perform the retail market exchange process\n\n\n\n\n\n","category":"method"},{"location":"api.html#BeforeIT.search_and_matching!","page":"API","title":"BeforeIT.search_and_matching!","text":"search_and_matching!(model, multi_threading::Bool = false)\n\nThis function performs a search and matching algorithm for firms and for retail markets. It takes in a model object and an optional boolean argument for multi-threading. The function loops over all goods and performs the firms market and retail market operations for each good. Finally, it updates the aggregate variables based on the results of markets.\n\nArgs:\n\nmodel: The model object\nmulti_threading: A boolean indicating whether to use multi-threading for the algorithm. Default is false.\n\nThis function updates the model in-place and does not return any value.\n\n\n\n\n\n","category":"function"},{"location":"examples/basic_example.html","page":"Essentials","title":"Essentials","text":"EditURL = \"../../../examples/basic_example.jl\"","category":"page"},{"location":"examples/basic_example.html#Essential-use-of-BeforeIT","page":"Essentials","title":"Essential use of BeforeIT","text":"","category":"section"},{"location":"examples/basic_example.html","page":"Essentials","title":"Essentials","text":"We start by importing the BeforeIT library and other useful libraries.","category":"page"},{"location":"examples/basic_example.html","page":"Essentials","title":"Essentials","text":"import BeforeIT as Bit\nusing FileIO, Plots","category":"page"},{"location":"examples/basic_example.html","page":"Essentials","title":"Essentials","text":"We then initialise the model loading some precomputed set of parameters and by specifying a number of epochs. In another tutorial we will illustrate how to compute parameters and initial conditions.","category":"page"},{"location":"examples/basic_example.html","page":"Essentials","title":"Essentials","text":"parameters = Bit.AUSTRIA2010Q1.parameters\ninitial_conditions = Bit.AUSTRIA2010Q1.initial_conditions","category":"page"},{"location":"examples/basic_example.html","page":"Essentials","title":"Essentials","text":"We can now initialise the model, by specifying in advance the maximum number of epochs.","category":"page"},{"location":"examples/basic_example.html","page":"Essentials","title":"Essentials","text":"T = 16\nmodel = Bit.init_model(parameters, initial_conditions, T)","category":"page"},{"location":"examples/basic_example.html","page":"Essentials","title":"Essentials","text":"Note that the it is very simple to inspect the model by typing","category":"page"},{"location":"examples/basic_example.html","page":"Essentials","title":"Essentials","text":"fieldnames(typeof(model))","category":"page"},{"location":"examples/basic_example.html","page":"Essentials","title":"Essentials","text":"and to inspect the specific attributes of one agent type by typing","category":"page"},{"location":"examples/basic_example.html","page":"Essentials","title":"Essentials","text":"fieldnames(typeof(model.bank))","category":"page"},{"location":"examples/basic_example.html","page":"Essentials","title":"Essentials","text":"We can now define a data tracker, which will store the time series of the model.","category":"page"},{"location":"examples/basic_example.html","page":"Essentials","title":"Essentials","text":"data = Bit.init_data(model);\nnothing #hide","category":"page"},{"location":"examples/basic_example.html","page":"Essentials","title":"Essentials","text":"We can run now the model for a number of epochs and progressively update the data tracker.","category":"page"},{"location":"examples/basic_example.html","page":"Essentials","title":"Essentials","text":"for t in 1:T\n Bit.run_one_epoch!(model; multi_threading = true)\n Bit.update_data!(data, model)\nend","category":"page"},{"location":"examples/basic_example.html","page":"Essentials","title":"Essentials","text":"Note that we can equivalently run the model for a number of epochs in the single command data = BeforeIT.run_one_sim!(model), but writing the loop explicitely is more instructive.","category":"page"},{"location":"examples/basic_example.html","page":"Essentials","title":"Essentials","text":"We can then plot any time series stored in the data tracker, for example","category":"page"},{"location":"examples/basic_example.html","page":"Essentials","title":"Essentials","text":"plot(data.real_gdp, title = \"gdp\", titlefont = 10)","category":"page"},{"location":"examples/basic_example.html","page":"Essentials","title":"Essentials","text":"Or we can plot multiple time series at once using the function plot_data","category":"page"},{"location":"examples/basic_example.html","page":"Essentials","title":"Essentials","text":"ps = Bit.plot_data(data, quantities = [:real_gdp, :real_household_consumption, :real_government_consumption, :real_capitalformation, :real_exports, :real_imports, :wages, :euribor, :gdp_deflator])\nplot(ps..., layout = (3, 3))","category":"page"},{"location":"examples/basic_example.html","page":"Essentials","title":"Essentials","text":"To run multiple monte-carlo repetitions in parallel we can use","category":"page"},{"location":"examples/basic_example.html","page":"Essentials","title":"Essentials","text":"model = Bit.init_model(parameters, initial_conditions, T)\ndata_vector = Bit.run_n_sims(model, 4)","category":"page"},{"location":"examples/basic_example.html","page":"Essentials","title":"Essentials","text":"Note that this will use the number of threads specified when activating the Julia environment. To discover the number of threads available, you can use the command","category":"page"},{"location":"examples/basic_example.html","page":"Essentials","title":"Essentials","text":"Threads.nthreads()","category":"page"},{"location":"examples/basic_example.html","page":"Essentials","title":"Essentials","text":"To activate Julia with a specific number of threads, say 8, you can use the command julia -t 8 in the terminal.","category":"page"},{"location":"examples/basic_example.html","page":"Essentials","title":"Essentials","text":"We can then plot the results of the monte-carlo repetitions using the function plot_data_vector","category":"page"},{"location":"examples/basic_example.html","page":"Essentials","title":"Essentials","text":"ps = Bit.plot_data_vector(data_vector)\nplot(ps..., layout = (3, 3))","category":"page"},{"location":"examples/change_expectations.html","page":"Experimentations (advanced)","title":"Experimentations (advanced)","text":"EditURL = \"../../../examples/change_expectations.jl\"","category":"page"},{"location":"examples/change_expectations.html#Changing-expectations-via-function-overloading","page":"Experimentations (advanced)","title":"Changing expectations via function overloading","text":"","category":"section"},{"location":"examples/change_expectations.html","page":"Experimentations (advanced)","title":"Experimentations (advanced)","text":"In this tutorial we will illustrate how to experiment with different expectations of the agents in the model.","category":"page"},{"location":"examples/change_expectations.html","page":"Experimentations (advanced)","title":"Experimentations (advanced)","text":"import BeforeIT as Bit\nusing Random, Plots","category":"page"},{"location":"examples/change_expectations.html","page":"Experimentations (advanced)","title":"Experimentations (advanced)","text":"Import standard parameters and initial conditions","category":"page"},{"location":"examples/change_expectations.html","page":"Experimentations (advanced)","title":"Experimentations (advanced)","text":"par = Bit.AUSTRIA2010Q1.parameters\ninit = Bit.AUSTRIA2010Q1.initial_conditions","category":"page"},{"location":"examples/change_expectations.html","page":"Experimentations (advanced)","title":"Experimentations (advanced)","text":"Set the seed, initialise the model and run one simulation","category":"page"},{"location":"examples/change_expectations.html","page":"Experimentations (advanced)","title":"Experimentations (advanced)","text":"Random.seed!(1234)\nT = 40\nmodel = Bit.init_model(par, init, T)\ndata = Bit.run_one_sim!(model)","category":"page"},{"location":"examples/change_expectations.html","page":"Experimentations (advanced)","title":"Experimentations (advanced)","text":"Now we can experiment with changing expectations of the agents in the model. We will change the function estimate_next_value to make the agents expect the last value of the time series (so to represent backward looking expectations)","category":"page"},{"location":"examples/change_expectations.html","page":"Experimentations (advanced)","title":"Experimentations (advanced)","text":"import BeforeIT: estimate_next_value\nfunction estimate_next_value(data)\n return data[end]\nend","category":"page"},{"location":"examples/change_expectations.html","page":"Experimentations (advanced)","title":"Experimentations (advanced)","text":"Run the model again, with the same seed","category":"page"},{"location":"examples/change_expectations.html","page":"Experimentations (advanced)","title":"Experimentations (advanced)","text":"Random.seed!(1234)\nmodel = Bit.init_model(par, init, T)\ndata_back = Bit.run_one_sim!(model)","category":"page"},{"location":"examples/change_expectations.html","page":"Experimentations (advanced)","title":"Experimentations (advanced)","text":"Plot the results, comparing the two cases as different lines","category":"page"},{"location":"examples/change_expectations.html","page":"Experimentations (advanced)","title":"Experimentations (advanced)","text":"p1 = plot(data.real_gdp, title = \"gdp\", titlefont = 10, label = \"forward looking\")\nplot!(p1, data_back.real_gdp, titlefont = 10, label = \"backward looking\")\n\np2 = plot(data.real_household_consumption, title = \"consumption\", titlefont = 10)\nplot!(p2, data_back.real_household_consumption, titlefont = 10, label = \"backward looking\")\n\nplot(p1, p2, layout = (2, 1), legend = true)","category":"page"},{"location":"examples/change_expectations.html","page":"Experimentations (advanced)","title":"Experimentations (advanced)","text":"Plot all time series","category":"page"},{"location":"examples/change_expectations.html","page":"Experimentations (advanced)","title":"Experimentations (advanced)","text":"p1 = plot(data.real_gdp, title = \"gdp\", titlefont = 10)\nplot!(p1, data_back.real_gdp, titlefont = 10)\np2 = plot(data.real_household_consumption, title = \"household cons.\", titlefont = 10)\nplot!(p2, data_back.real_household_consumption, titlefont = 10)\np3 = plot(data.real_government_consumption, title = \"gov. cons.\", titlefont = 10)\nplot!(p3, data_back.real_government_consumption, titlefont = 10)\np4 = plot(data.real_capitalformation, title = \"capital form.\", titlefont = 10)\nplot!(p4, data_back.real_capitalformation, titlefont = 10)\np5 = plot(data.real_exports, title = \"exports\", titlefont = 10)\nplot!(p5, data_back.real_exports, titlefont = 10)\np6 = plot(data.real_imports, title = \"imports\", titlefont = 10)\nplot!(p6, data_back.real_imports, titlefont = 10)\np7 = plot(data.wages, title = \"wages\", titlefont = 10)\nplot!(p7, data_back.wages, titlefont = 10)\np8 = plot(data.euribor, title = \"euribor\", titlefont = 10)\nplot!(p8, data_back.euribor, titlefont = 10)\np9 = plot(data.nominal_gdp ./ data.real_gdp, title = \"gdp deflator\", titlefont = 10)\nplot!(p9, data_back.nominal_gdp ./ data_back.real_gdp, titlefont = 10)\n\nplot(p1, p2, p3, p4, p5, p6, p7, p8, p9, layout = (3, 3), legend = false)","category":"page"},{"location":"examples/change_expectations.html","page":"Experimentations (advanced)","title":"Experimentations (advanced)","text":"Note that, importantly, once the function estimate_next_value has been changed, the model will use the new expectations in all the simulations, unless the function is changed again. To restore the original expectations you could close the Julia session.","category":"page"},{"location":"examples/scenario_analysis_via_overload.html","page":"Shocked simulations (advanced)","title":"Shocked simulations (advanced)","text":"EditURL = \"../../../examples/scenario_analysis_via_overload.jl\"","category":"page"},{"location":"examples/scenario_analysis_via_overload.html#Scenario-analysis-via-function-overloading","page":"Shocked simulations (advanced)","title":"Scenario analysis via function overloading","text":"","category":"section"},{"location":"examples/scenario_analysis_via_overload.html","page":"Shocked simulations (advanced)","title":"Shocked simulations (advanced)","text":"In this tutorial we will illustrate how to perform a scenario analysis by running the model multiple times under a specific shock and comparing the results with the unshocked model.","category":"page"},{"location":"examples/scenario_analysis_via_overload.html","page":"Shocked simulations (advanced)","title":"Shocked simulations (advanced)","text":"import BeforeIT as Bit\nusing Plots, StatsPlots\n\nparameters = Bit.AUSTRIA2010Q1.parameters\ninitial_conditions = Bit.AUSTRIA2010Q1.initial_conditions","category":"page"},{"location":"examples/scenario_analysis_via_overload.html","page":"Shocked simulations (advanced)","title":"Shocked simulations (advanced)","text":"Initialise the model and the data collector","category":"page"},{"location":"examples/scenario_analysis_via_overload.html","page":"Shocked simulations (advanced)","title":"Shocked simulations (advanced)","text":"T = 20\nmodel = Bit.init_model(parameters, initial_conditions, T);\ndata = Bit.init_data(model);\nnothing #hide","category":"page"},{"location":"examples/scenario_analysis_via_overload.html","page":"Shocked simulations (advanced)","title":"Shocked simulations (advanced)","text":"Simulate the model for T quarters","category":"page"},{"location":"examples/scenario_analysis_via_overload.html","page":"Shocked simulations (advanced)","title":"Shocked simulations (advanced)","text":"data_vec_baseline = Bit.run_n_sims(model, 4)","category":"page"},{"location":"examples/scenario_analysis_via_overload.html","page":"Shocked simulations (advanced)","title":"Shocked simulations (advanced)","text":"Now, apply a shock to the model and simulate it again Here, we do this by overloading the centralbankrate function with the wanted behaviour","category":"page"},{"location":"examples/scenario_analysis_via_overload.html","page":"Shocked simulations (advanced)","title":"Shocked simulations (advanced)","text":"import BeforeIT: central_bank_rate\n\nfunction central_bank_rate(cb::Bit.CentralBank, model::Bit.Model)\n gamma_EA = model.rotw.gamma_EA\n pi_EA = model.rotw.pi_EA\n taylor_rate = Bit.taylor_rule(cb.rho, cb.r_bar, cb.r_star, cb.pi_star, cb.xi_pi, cb.xi_gamma, gamma_EA, pi_EA)\n if model.agg.t < 10\n return 0.01\n else\n return taylor_rate\n end\nend\n\ndata_vec_shocked = Bit.run_n_sims(model, 4)","category":"page"},{"location":"examples/scenario_analysis_via_overload.html","page":"Shocked simulations (advanced)","title":"Shocked simulations (advanced)","text":"Finally, we can plot baseline and shocked simulations","category":"page"},{"location":"examples/scenario_analysis_via_overload.html","page":"Shocked simulations (advanced)","title":"Shocked simulations (advanced)","text":"Te = T + 1\nStatsPlots.errorline(\n 1:Te,\n data_vec_baseline.real_gdp,\n errortype = :sem,\n label = \"baseline\",\n titlefont = 10,\n xlabel = \"quarters\",\n ylabel = \"GDP\",\n)\nStatsPlots.errorline!(\n 1:Te,\n data_vec_shocked.real_gdp,\n errortype = :sem,\n label = \"shock\",\n titlefont = 10,\n xlabel = \"quarters\",\n ylabel = \"GDP\",\n)","category":"page"},{"location":"examples/scenario_analysis_via_overload.html","page":"Shocked simulations (advanced)","title":"Shocked simulations (advanced)","text":"Note that, importantly, once the function central_bank_rate has been changed, the model will use the new interest rate in all the simulations, unless the function is changed again. To restore the original interest rate, you could close and restart the Julia session.","category":"page"},{"location":"examples/get_parameters_and_initial_conditions.html","page":"Calibration","title":"Calibration","text":"EditURL = \"../../../examples/get_parameters_and_initial_conditions.jl\"","category":"page"},{"location":"examples/get_parameters_and_initial_conditions.html","page":"Calibration","title":"Calibration","text":"In this tutorial we illustrate how to calibrate the model to the Italian data for a specific quarter","category":"page"},{"location":"examples/get_parameters_and_initial_conditions.html","page":"Calibration","title":"Calibration","text":"import BeforeIT as Bit\nusing Dates, FileIO","category":"page"},{"location":"examples/get_parameters_and_initial_conditions.html","page":"Calibration","title":"Calibration","text":"We start from loading the calibration object for italy, which contains 4 datasets: calibration_data, figaro, data, and ea. These are saved within BeforeIT.jl for the Italian case, and would need to be appropriately generated for other countries.","category":"page"},{"location":"examples/get_parameters_and_initial_conditions.html","page":"Calibration","title":"Calibration","text":"cal = Bit.ITALY_CALIBRATION\nfieldnames(typeof(cal))","category":"page"},{"location":"examples/get_parameters_and_initial_conditions.html","page":"Calibration","title":"Calibration","text":"These are essentially 4 dictionaries with well defined keys, such as","category":"page"},{"location":"examples/get_parameters_and_initial_conditions.html","page":"Calibration","title":"Calibration","text":"println(keys(cal.calibration))\nprintln(keys(cal.figaro))\nprintln(keys(cal.data))\nprintln(keys(cal.ea))","category":"page"},{"location":"examples/get_parameters_and_initial_conditions.html","page":"Calibration","title":"Calibration","text":"The object also contains two time variables related to the data","category":"page"},{"location":"examples/get_parameters_and_initial_conditions.html","page":"Calibration","title":"Calibration","text":"println(cal.max_calibration_date)\nprintln(cal.estimation_date)","category":"page"},{"location":"examples/get_parameters_and_initial_conditions.html","page":"Calibration","title":"Calibration","text":"We can calibrate the model on a specific quarter as follows","category":"page"},{"location":"examples/get_parameters_and_initial_conditions.html","page":"Calibration","title":"Calibration","text":"calibration_date = DateTime(2010, 03, 31)\nparameters, initial_conditions = Bit.get_params_and_initial_conditions(cal, calibration_date; scale = 0.01)","category":"page"},{"location":"examples/get_parameters_and_initial_conditions.html","page":"Calibration","title":"Calibration","text":"In general, we might want to repeat this operation for multiple quarters. In the following, we loop over all quarters from 2010Q1 to 2019Q4 and save the parameters and initial conditions in separate files. We can then load these files later to run the model for each quarter.","category":"page"},{"location":"examples/get_parameters_and_initial_conditions.html","page":"Calibration","title":"Calibration","text":"start_calibration_date = DateTime(2010, 03, 31)\nend_calibration_date = DateTime(2019, 12, 31)\n\nfor calibration_date in collect(start_calibration_date:Dates.Month(3):end_calibration_date)\n params, init_conds = Bit.get_params_and_initial_conditions(cal, calibration_date; scale = 0.0005)\n save(\n \"data/italy/parameters/\" *\n string(year(calibration_date)) *\n \"Q\" *\n string(Dates.quarterofyear(calibration_date)) *\n \".jld2\",\n params,\n )\n save(\n \"data/italy/initial_conditions/\" *\n string(year(calibration_date)) *\n \"Q\" *\n string(Dates.quarterofyear(calibration_date)) *\n \".jld2\",\n init_conds,\n )\nend","category":"page"},{"location":"index.html","page":"Home","title":"Home","text":"CurrentModule = BeforeIT ","category":"page"},{"location":"index.html#Behavioural-agent-based-economic-forecasting-in-Julia","page":"Home","title":"Behavioural agent-based economic forecasting in Julia","text":"","category":"section"},{"location":"index.html","page":"Home","title":"Home","text":"Welcome to BeforeIT.jl, a Julia implementation of the agent-based model presented in Economic forecasting with an agent-based model, the first ABM matching the performance of traditional economic forecasting tools.","category":"page"},{"location":"index.html","page":"Home","title":"Home","text":"With BeforeIT.jl, you can perform economic forecasting and explore different counterfactual scenarios. Thanks to its modular design, the package is also a great starting point for anyone looking to extend its capabilities or integrate it with other tools.","category":"page"},{"location":"index.html","page":"Home","title":"Home","text":"Developed in Julia, a language known for its efficiency, BeforeIT.jl is both fast and user-friendly, making it accessible whether you’re an expert programmer or just starting out.","category":"page"},{"location":"index.html#Julia-installation","page":"Home","title":"Julia installation","text":"","category":"section"},{"location":"index.html","page":"Home","title":"Home","text":"To run this software, you will need a working Julia installation on your machine. If you don't have it installed already, simply follow the short instructions available here.","category":"page"},{"location":"index.html#BeforeIT.jl-Installation","page":"Home","title":"BeforeIT.jl Installation","text":"","category":"section"},{"location":"index.html","page":"Home","title":"Home","text":"To install BeforeIT.jl, simply open a Julia REPL by writing julia in your terminal, and then execute the following","category":"page"},{"location":"index.html","page":"Home","title":"Home","text":"using Pkg\nPkg.add(\"BeforeIT\")","category":"page"},{"location":"index.html#Quick-example","page":"Home","title":"Quick example","text":"","category":"section"},{"location":"index.html","page":"Home","title":"Home","text":"To check that the installation worked, try running the model in your terminal following","category":"page"},{"location":"index.html","page":"Home","title":"Home","text":"using BeforeIT\n\nparameters = BeforeIT.AUSTRIA2010Q1.parameters\ninitial_conditions = BeforeIT.AUSTRIA2010Q1.initial_conditions\n\nT = 20\nmodel = BeforeIT.initialise_model(parameters, initial_conditions, T)\ndata = BeforeIT.run_one_sim!(model)","category":"page"},{"location":"index.html","page":"Home","title":"Home","text":"To plot the results of the simulation, you can use the Plots package","category":"page"},{"location":"index.html","page":"Home","title":"Home","text":"using Plots\n\nplot(data.real_gdp)","category":"page"},{"location":"index.html#License","page":"Home","title":"License","text":"","category":"section"},{"location":"index.html","page":"Home","title":"Home","text":"BeforeIT.jl is released under the GNU Affero General Public License v3 or later (AGPLv3+).","category":"page"},{"location":"index.html","page":"Home","title":"Home","text":"Copyright 2024 - Banca d'Italia and the authors.","category":"page"},{"location":"index.html#Main-developers-and-maintainers","page":"Home","title":"Main developers and maintainers","text":"","category":"section"},{"location":"index.html","page":"Home","title":"Home","text":"Aldo Glielmo \nMitja Devetak \nAdriano Meligrana ","category":"page"},{"location":"index.html#Other-collaborators-and-contributors","page":"Home","title":"Other collaborators and contributors","text":"","category":"section"},{"location":"index.html","page":"Home","title":"Home","text":"Sebastian Poledna \nMarco Benedetti\nSara Corbo for the logo design\nAndrea Gentili for suggesting the name of the pakege\nArnau Quera-Bofarull for help in the deployment of the documentation\nSteven Hoekstra for fixing a bug in a script","category":"page"},{"location":"index.html#Disclaimer","page":"Home","title":"Disclaimer","text":"","category":"section"},{"location":"index.html","page":"Home","title":"Home","text":"This package is an outcome of a research project. All errors are those of the authors. All views expressed are personal views, not those of Bank of Italy.","category":"page"},{"location":"index.html#Reproducibility","page":"Home","title":"Reproducibility","text":"","category":"section"},{"location":"index.html","page":"Home","title":"Home","text":"
The documentation of BeforeIT.jl was built using these direct dependencies,","category":"page"},{"location":"index.html","page":"Home","title":"Home","text":"using Pkg # hide\nPkg.status() # hide","category":"page"},{"location":"index.html","page":"Home","title":"Home","text":"
","category":"page"},{"location":"index.html","page":"Home","title":"Home","text":"
and using this machine and Julia version.","category":"page"},{"location":"index.html","page":"Home","title":"Home","text":"using InteractiveUtils # hide\nversioninfo() # hide","category":"page"},{"location":"index.html","page":"Home","title":"Home","text":"
","category":"page"},{"location":"index.html","page":"Home","title":"Home","text":"
A more complete overview of all dependencies and their versions is also provided.","category":"page"},{"location":"index.html","page":"Home","title":"Home","text":"using Pkg # hide\nPkg.status(; mode = PKGMODE_MANIFEST) # hide","category":"page"},{"location":"index.html","page":"Home","title":"Home","text":"
","category":"page"},{"location":"index.html","page":"Home","title":"Home","text":"using TOML\nusing Markdown\nversion = TOML.parse(read(\"../../Project.toml\", String))[\"version\"]\nname = TOML.parse(read(\"../../Project.toml\", String))[\"name\"]\nlink_manifest = \"https://github.com/BeforeIT/\" * name * \".jl/tree/gh-pages/v\" * version *\n \"/assets/Manifest.toml\"\nlink_project = \"https://github.com/BeforeIT/\" * name * \".jl/tree/gh-pages/v\" * version *\n \"/assets/Project.toml\"\nMarkdown.parse(\"\"\"You can also download the\n[manifest]($link_manifest)\nfile and the\n[project]($link_project)\nfile.\n\"\"\")","category":"page"},{"location":"examples/multithreading_speedup.html","page":"Multithreading within the model","title":"Multithreading within the model","text":"EditURL = \"../../../examples/multithreading_speedup.jl\"","category":"page"},{"location":"examples/multithreading_speedup.html#Multithreading-speedup-for-large-models","page":"Multithreading within the model","title":"Multithreading speedup for large models","text":"","category":"section"},{"location":"examples/multithreading_speedup.html","page":"Multithreading within the model","title":"Multithreading within the model","text":"In this tutorial we illustrate how to make use of multi threading in BeforeIT.jl to allow for faster executions of single simulation runs.","category":"page"},{"location":"examples/multithreading_speedup.html","page":"Multithreading within the model","title":"Multithreading within the model","text":"import BeforeIT as Bit\nusing FileIO, Plots, StatsPlots","category":"page"},{"location":"examples/multithreading_speedup.html","page":"Multithreading within the model","title":"Multithreading within the model","text":"First, we initialise the model, this time we use the Italy 2010Q1 scenario, and we want to simulate the model for a large number of epochs","category":"page"},{"location":"examples/multithreading_speedup.html","page":"Multithreading within the model","title":"Multithreading within the model","text":"parameters = Bit.ITALY2010Q1.parameters\ninitial_conditions = Bit.ITALY2010Q1.initial_conditions\nT = 50\nmodel = Bit.init_model(parameters, initial_conditions, T);\nnothing #hide","category":"page"},{"location":"examples/multithreading_speedup.html","page":"Multithreading within the model","title":"Multithreading within the model","text":"The model is in scale 1:2000, so it has around 30,000 households","category":"page"},{"location":"examples/multithreading_speedup.html","page":"Multithreading within the model","title":"Multithreading within the model","text":"model.prop.H","category":"page"},{"location":"examples/multithreading_speedup.html","page":"Multithreading within the model","title":"Multithreading within the model","text":"Note that the households number is actually the sum of active and inactive households, the owners of firms and of the bank","category":"page"},{"location":"examples/multithreading_speedup.html","page":"Multithreading within the model","title":"Multithreading within the model","text":"length(model.w_act) + length(model.w_inact) + length(model.firms) + 1","category":"page"},{"location":"examples/multithreading_speedup.html","page":"Multithreading within the model","title":"Multithreading within the model","text":"Let's fist check how many threads we have available in this Julia session","category":"page"},{"location":"examples/multithreading_speedup.html","page":"Multithreading within the model","title":"Multithreading within the model","text":"Threads.nthreads()","category":"page"},{"location":"examples/multithreading_speedup.html","page":"Multithreading within the model","title":"Multithreading within the model","text":"Then we need to first compile the code not to count compilation time, we can do that just by executing the function one time","category":"page"},{"location":"examples/multithreading_speedup.html","page":"Multithreading within the model","title":"Multithreading within the model","text":"Bit.run_one_sim!(model; multi_threading = false)","category":"page"},{"location":"examples/multithreading_speedup.html","page":"Multithreading within the model","title":"Multithreading within the model","text":"Let's now compare the performance of single threading and multi threading","category":"page"},{"location":"examples/multithreading_speedup.html","page":"Multithreading within the model","title":"Multithreading within the model","text":"model = Bit.init_model(parameters, initial_conditions, T);\n@time data = Bit.run_one_sim!(model; multi_threading = false);\n\nmodel = Bit.init_model(parameters, initial_conditions, T);\n@time data = Bit.run_one_sim!(model; multi_threading = true);\nnothing #hide","category":"page"},{"location":"examples/multithreading_speedup.html","page":"Multithreading within the model","title":"Multithreading within the model","text":"Is the speedup in line to what we would expect? Yes!","category":"page"}] }