From 50a73784eeea890b5f8d7a3d7ed05be4d2a4878e Mon Sep 17 00:00:00 2001 From: "Documenter.jl" Date: Tue, 3 Dec 2024 10:15:44 +0000 Subject: [PATCH] build based on 32de72c --- previews/PR37/.documenter-siteinfo.json | 2 +- previews/PR37/api.html | 8 +- .../PR37/examples/basic_example-28bbe6c6.svg | 46 ++ .../PR37/examples/basic_example-43f713b4.svg | 269 ++++++++++ .../PR37/examples/basic_example-4a3fa9f9.svg | 286 +++++++++++ .../PR37/examples/basic_example-9661b50e.svg | 48 -- .../PR37/examples/basic_example-97344674.svg | 283 ----------- .../PR37/examples/basic_example-c570da7b.svg | 290 ----------- previews/PR37/examples/basic_example.html | 10 +- ...8.svg => change_expectations-3a8b2f52.svg} | 128 ++--- ...6.svg => change_expectations-6930c3c4.svg} | 474 +++++++++--------- .../PR37/examples/change_expectations.html | 4 +- ...get_parameters_and_initial_conditions.html | 2 +- .../PR37/examples/multithreading_speedup.html | 4 +- ...enario_analysis_via_overload-1da6f893.svg} | 64 +-- .../scenario_analysis_via_overload.html | 2 +- ... scenario_analysis_via_shock-9ded59bd.svg} | 68 +-- .../examples/scenario_analysis_via_shock.html | 2 +- previews/PR37/index.html | 20 +- 19 files changed, 995 insertions(+), 1015 deletions(-) create mode 100644 previews/PR37/examples/basic_example-28bbe6c6.svg create mode 100644 previews/PR37/examples/basic_example-43f713b4.svg create mode 100644 previews/PR37/examples/basic_example-4a3fa9f9.svg delete mode 100644 previews/PR37/examples/basic_example-9661b50e.svg delete mode 100644 previews/PR37/examples/basic_example-97344674.svg delete mode 100644 previews/PR37/examples/basic_example-c570da7b.svg rename previews/PR37/examples/{change_expectations-af36c358.svg => change_expectations-3a8b2f52.svg} (86%) rename previews/PR37/examples/{change_expectations-f0ebbb36.svg => change_expectations-6930c3c4.svg} (86%) rename previews/PR37/examples/{scenario_analysis_via_overload-ee533d2d.svg => scenario_analysis_via_overload-1da6f893.svg} (86%) rename previews/PR37/examples/{scenario_analysis_via_shock-f8be1bf5.svg => scenario_analysis_via_shock-9ded59bd.svg} (86%) diff --git a/previews/PR37/.documenter-siteinfo.json b/previews/PR37/.documenter-siteinfo.json index 0628181..766aeab 100644 --- a/previews/PR37/.documenter-siteinfo.json +++ b/previews/PR37/.documenter-siteinfo.json @@ -1 +1 @@ -{"documenter":{"julia_version":"1.10.7","generation_timestamp":"2024-11-30T23:53:56","documenter_version":"1.8.0"}} \ No newline at end of file +{"documenter":{"julia_version":"1.10.7","generation_timestamp":"2024-12-03T10:15:39","documenter_version":"1.8.0"}} \ No newline at end of file diff --git a/previews/PR37/api.html b/previews/PR37/api.html index 73be72c..850984a 100644 --- a/previews/PR37/api.html +++ b/previews/PR37/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/previews/PR37/examples/basic_example-28bbe6c6.svg b/previews/PR37/examples/basic_example-28bbe6c6.svg new file mode 100644 index 0000000..c0df258 --- /dev/null +++ b/previews/PR37/examples/basic_example-28bbe6c6.svg @@ -0,0 +1,46 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/previews/PR37/examples/basic_example-43f713b4.svg b/previews/PR37/examples/basic_example-43f713b4.svg new file mode 100644 index 0000000..4a7a118 --- /dev/null +++ b/previews/PR37/examples/basic_example-43f713b4.svg @@ -0,0 +1,269 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/previews/PR37/examples/basic_example-4a3fa9f9.svg b/previews/PR37/examples/basic_example-4a3fa9f9.svg new file mode 100644 index 0000000..a735365 --- /dev/null +++ b/previews/PR37/examples/basic_example-4a3fa9f9.svg @@ -0,0 +1,286 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/previews/PR37/examples/basic_example-9661b50e.svg b/previews/PR37/examples/basic_example-9661b50e.svg deleted file mode 100644 index f937397..0000000 --- a/previews/PR37/examples/basic_example-9661b50e.svg +++ /dev/null @@ -1,48 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/previews/PR37/examples/basic_example-97344674.svg b/previews/PR37/examples/basic_example-97344674.svg deleted file mode 100644 index d9c8f21..0000000 --- a/previews/PR37/examples/basic_example-97344674.svg +++ /dev/null @@ -1,283 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/previews/PR37/examples/basic_example-c570da7b.svg b/previews/PR37/examples/basic_example-c570da7b.svg deleted file mode 100644 index 0208e5d..0000000 --- a/previews/PR37/examples/basic_example-c570da7b.svg +++ /dev/null @@ -1,290 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/previews/PR37/examples/basic_example.html b/previews/PR37/examples/basic_example.html index 8f2981f..7158bf5 100644 --- a/previews/PR37/examples/basic_example.html +++ b/previews/PR37/examples/basic_example.html @@ -22,10 +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, 1, 1, 1, 1, 2, 3, 3, 3, 4  …  0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 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], [5, 1, 3, 2, 3, 1, 5, 1, 8, 2  …  2, 14, 1, 1, 7, 1, 2, 1, 1, 1], [54.11013329653311, 10.822026659306621, 32.46607997791986, 21.644053318613242, 32.46607997791986, 10.822026659306621, 54.11013329653311, 10.822026659306621, 86.57621327445297, 21.644053318613242  …  23.976206776597902, 167.8334474361853, 11.988103388298951, 11.988103388298951, 83.91672371809265, 11.988103388298951, 23.976206776597902, 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], [54.11013329653311, 10.822026659306621, 32.46607997791986, 21.644053318613242, 32.46607997791986, 10.822026659306621, 54.11013329653311, 10.822026659306621, 86.57621327445297, 21.644053318613242  …  23.976206776597902, 167.8334474361853, 11.988103388298951, 11.988103388298951, 83.91672371809265, 11.988103388298951, 23.976206776597902, 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], [1490.7682926829268, 298.15365853658534, 894.460975609756, 596.3073170731707, 894.460975609756, 298.15365853658534, 1490.7682926829268, 298.15365853658534, 2385.2292682926827, 596.3073170731707  …  158.41666666666669, 1108.9166666666667, 79.20833333333334, 79.20833333333334, 554.4583333333334, 79.20833333333334, 158.41666666666669, 79.20833333333334, 79.20833333333334, 79.20833333333334], [38.27557127036775, 7.65511425407355, 22.965342762220647, 15.3102285081471, 22.965342762220647, 7.65511425407355, 38.27557127036775, 7.65511425407355, 61.2409140325884, 15.3102285081471  …  8.114973344694128, 56.804813412858906, 4.057486672347064, 4.057486672347064, 28.402406706429453, 4.057486672347064, 8.114973344694128, 4.057486672347064, 4.057486672347064, 4.057486672347064], [470.4037062303999, 94.08074124607998, 282.24222373823994, 188.16148249215996, 282.24222373823994, 94.08074124607998, 470.4037062303999, 94.08074124607998, 752.6459299686398, 188.16148249215996  …  49.98750476142275, 349.9125333299592, 24.993752380711374, 24.993752380711374, 174.9562666649796, 24.993752380711374, 49.98750476142275, 24.993752380711374, 24.993752380711374, 24.993752380711374], [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], [61.92146026533503, 12.384292053067005, 37.152876159201014, 24.76858410613401, 37.152876159201014, 12.384292053067005, 61.92146026533503, 12.384292053067005, 99.07433642453604, 24.76858410613401  …  27.060222993190397, 189.42156095233275, 13.530111496595199, 13.530111496595199, 94.71078047616638, 13.530111496595199, 27.060222993190397, 13.530111496595199, 13.530111496595199, 13.530111496595199], [6.274227337382185, 1.2548454674764369, 3.7645364024293104, 2.5096909349528738, 3.7645364024293104, 1.2548454674764369, 6.274227337382185, 1.2548454674764369, 10.038763739811495, 2.5096909349528738  …  7.1542129675965755, 50.07949077317602, 3.5771064837982878, 3.5771064837982878, 25.03974538658801, 3.5771064837982878, 7.1542129675965755, 3.5771064837982878, 3.5771064837982878, 3.5771064837982878], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0  …  0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0  …  0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [4.1697853618049034, 1.3061857958470848, 2.7379855788259935, 2.0220856873365394, 2.7379855788259935, 1.3061857958470848, 4.1697853618049034, 1.3061857958470848, 6.3174850362732675, 2.0220856873365394  …  4.671824563850786, 29.16105652080971, 2.631055234104208, 2.631055234104208, 14.87567121258367, 2.631055234104208, 4.671824563850786, 2.631055234104208, 2.631055234104208, 2.631055234104208], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [37.954373668328195, 11.88921238727358, 24.921793027800884, 18.405502707537234, 24.921793027800884, 11.88921238727358, 37.954373668328195, 11.88921238727358, 57.503244629119166, 18.405502707537234  …  42.5240533561937, 265.4308410912962, 23.94848771160181, 23.94848771160181, 135.40188157915307, 23.94848771160181, 42.5240533561937, 23.94848771160181, 23.94848771160181, 23.94848771160181], [20.583135007492878, 6.447669663541784, 13.515402335517328, 9.981535999529557, 13.515402335517328, 6.447669663541784, 20.583135007492878, 6.447669663541784, 31.184734015456197, 9.981535999529557  …  23.061329873209296, 143.94648914714094, 12.987566600381651, 12.987566600381651, 73.43014623734749, 12.987566600381651, 23.061329873209296, 12.987566600381651, 12.987566600381651, 12.987566600381651]), 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
+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.7818066335944875, 3.7818066335944875, 3.7818066335944875, 3.7818066335944875, 3.7818066335944875, 3.7818066335944875, 3.7818066335944875, 3.7818066335944875, 3.7818066335944875, 3.7818066335944875  …  22.98196000121096, 22.98196000121096, 22.98196000121096, 22.98196000121096, 22.98196000121096, 22.98196000121096, 22.98196000121096, 22.98196000121096, 22.98196000121096, 22.98196000121096], [6.973481059156251, 6.973481059156251, 6.973481059156251, 6.973481059156251, 6.973481059156251, 6.973481059156251, 6.973481059156251, 6.973481059156251, 6.973481059156251, 6.973481059156251  …  42.37769888790033, 42.37769888790033, 42.37769888790033, 42.37769888790033, 42.37769888790033, 42.37769888790033, 42.37769888790033, 42.37769888790033, 42.37769888790033, 42.37769888790033], [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, 9, 10  …  0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0  …  0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 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.963459838592986, 13.963459838592986, 13.963459838592986, 13.963459838592986, 13.963459838592986, 13.963459838592986, 13.963459838592986, 13.963459838592986, 13.963459838592986, 13.963459838592986  …  13.963459838592986, 13.963459838592986, 13.963459838592986, 13.963459838592986, 13.963459838592986, 13.963459838592986, 13.963459838592986, 13.963459838592986, 13.963459838592986, 13.963459838592986], [25.747990878149775, 25.747990878149775, 25.747990878149775, 25.747990878149775, 25.747990878149775, 25.747990878149775, 25.747990878149775, 25.747990878149775, 25.747990878149775, 25.747990878149775  …  25.747990878149775, 25.747990878149775, 25.747990878149775, 25.747990878149775, 25.747990878149775, 25.747990878149775, 25.747990878149775, 25.747990878149775, 25.747990878149775, 25.747990878149775], [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 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, 1, 1, 1  …  1, 6, 2, 15, 9, 1, 2, 2, 1, 1], [10.822026659306621, 10.822026659306621, 10.822026659306621, 10.822026659306621, 10.822026659306621, 10.822026659306621, 10.822026659306621, 10.822026659306621, 10.822026659306621, 10.822026659306621  …  11.988103388298951, 71.9286203297937, 23.976206776597902, 179.82155082448426, 107.89293049469056, 11.988103388298951, 23.976206776597902, 23.976206776597902, 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, 10.822026659306621, 10.822026659306621, 10.822026659306621  …  11.988103388298951, 71.9286203297937, 23.976206776597902, 179.82155082448426, 107.89293049469056, 11.988103388298951, 23.976206776597902, 23.976206776597902, 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, 298.15365853658534, 298.15365853658534, 298.15365853658534  …  79.20833333333334, 475.25, 158.41666666666669, 1188.125, 712.8750000000001, 79.20833333333334, 158.41666666666669, 158.41666666666669, 79.20833333333334, 79.20833333333334], [7.65511425407355, 7.65511425407355, 7.65511425407355, 7.65511425407355, 7.65511425407355, 7.65511425407355, 7.65511425407355, 7.65511425407355, 7.65511425407355, 7.65511425407355  …  4.057486672347064, 24.344920034082385, 8.114973344694128, 60.862300085205966, 36.51738005112358, 4.057486672347064, 8.114973344694128, 8.114973344694128, 4.057486672347064, 4.057486672347064], [94.08074124608001, 94.08074124608001, 94.08074124608001, 94.08074124608001, 94.08074124608001, 94.08074124608001, 94.08074124608001, 94.08074124608001, 94.08074124608001, 94.08074124608001  …  24.99375238071138, 149.96251428426825, 49.98750476142276, 374.90628571067066, 224.94377142640244, 24.99375238071138, 49.98750476142276, 49.98750476142276, 24.99375238071138, 24.99375238071138], [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.384292053067014, 12.384292053067014, 12.384292053067014, 12.384292053067014, 12.384292053067014, 12.384292053067014, 12.384292053067014, 12.384292053067014, 12.384292053067014, 12.384292053067014  …  13.530111496595206, 81.18066897957124, 27.06022299319041, 202.9516724489281, 121.77100346935686, 13.530111496595206, 27.06022299319041, 27.06022299319041, 13.530111496595206, 13.530111496595206], [1.2548454674764362, 1.2548454674764362, 1.2548454674764362, 1.2548454674764362, 1.2548454674764362, 1.2548454674764362, 1.2548454674764362, 1.2548454674764362, 1.2548454674764362, 1.2548454674764362  …  3.5771064837982873, 21.462638902789728, 7.154212967596575, 53.65659725697431, 32.19395835418458, 3.5771064837982873, 7.154212967596575, 7.154212967596575, 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, 1.3061857958470844, 1.3061857958470844, 1.3061857958470844  …  2.631055234104207, 12.834901882837096, 4.671824563850785, 31.201825850556286, 18.95720987207682, 2.631055234104207, 4.671824563850785, 4.671824563850785, 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.88921238727358, 11.88921238727358, 11.88921238727358, 11.88921238727358, 11.88921238727358, 11.88921238727358, 11.88921238727358, 11.88921238727358, 11.88921238727358, 11.88921238727358  …  23.948487711601807, 116.82631593456124, 42.52405335619369, 284.00640673588816, 172.5530128683368, 23.948487711601807, 42.52405335619369, 42.52405335619369, 23.948487711601807, 23.948487711601807], [6.447669663541782, 6.447669663541782, 6.447669663541782, 6.447669663541782, 6.447669663541782, 6.447669663541782, 6.447669663541782, 6.447669663541782, 6.447669663541782, 6.447669663541782  …  12.987566600381651, 63.35638296451987, 23.061329873209292, 154.02025241996864, 93.57767278300275, 12.987566600381651, 23.061329873209292, 23.061329873209292, 12.987566600381651, 12.987566600381651]), Bank{Float64}(89460.0, 6476.292527744362, 0.0, 126431.0, 0.028359903595743693, 3695.3696336675234, 0.0, 0.0, 0.0, 0.0, 33636.12938055409, 18241.296726948163), 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

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}}([72421.99999999997, 73180.37260892316, 72901.86556320162, 73507.99879126648, 72780.61352306635, 72420.88815184621, 73880.01283474478, 73155.51386747992, 73687.89206889519, 74176.50579837585, 74772.61185993107, 75305.15427218446, 75412.87840519901, 75180.2018978045, 75159.13110303701, 75670.580365146, 76846.11959007091], [72421.99999999997, 72853.3157293365, 72225.25823967686, 72567.85772394718, 71567.80368976669, 71086.38781941767, 72157.75836927927, 71268.45469268474, 72182.37414190313, 72458.91948087103, 72395.59179421997, 72346.32118136185, 71998.200070258, 71686.78543195041, 71842.72034121685, 72064.10787692109, 72700.6810456738], [64900.92049553802, 65591.33836705655, 65327.5386296232, 65870.90502706748, 65205.661208131656, 64864.84710933434, 66188.15647740503, 65512.87439340027, 66011.18318116243, 66459.69976823684, 66984.60761044534, 67458.89516505641, 67546.8174422445, 67328.28367233653, 67308.57120469032, 67774.05142233205, 68836.06214211066], [64900.92049553802, 65298.19831201908, 64721.22916520584, 65028.43966308327, 64119.07972342124, 63669.58201055737, 64645.21077828719, 63822.95843005648, 64662.508156393356, 64920.79914520558, 64855.16806803534, 64808.351344864954, 64488.31259543378, 64199.724173143404, 64338.56787136341, 64543.92882130645, 65122.72350158299], [40512.94792630534, 40887.29132937075, 40851.00818142298, 41189.29001846293, 40859.02172103213, 40738.13152826865, 41423.10562703006, 41215.04162304462, 41332.346671170795, 41535.7506759912, 41954.677209096786, 42245.34642701578, 42358.125860824824, 42284.36865758347, 42256.5832523368, 42407.572127715335, 43045.58268689712], [40512.94792630534, 40704.558317222814, 40471.86711150127, 40662.4937008262, 40178.150525757526, 39987.449626204594, 40457.47059392337, 40151.89247238434, 40487.885157467615, 40573.97394789501, 40620.938730584436, 40585.47426886667, 40440.15935769651, 40319.530761598, 40392.00358784229, 40386.42016306801, 40723.502943792555], [14866.888022051655, 14715.18466697338, 14725.060756250045, 14681.18290125718, 14900.758820211113, 14972.47227743691, 14896.723498473762, 15175.136891971333, 15117.019304670168, 14939.19476156176, 15186.31663361059, 15383.507461155232, 15390.35933126376, 15507.580235557818, 15538.029534744912, 15708.481617359255, 16022.342036071237], [14866.888022051655, 14649.419732905037, 14588.396435384499, 14493.415812106892, 14652.453867202581, 14696.57440126582, 14549.458418492806, 14783.69160252069, 14808.16335931911, 14593.271800634704, 14703.543884813782, 14779.07033638067, 14693.487289156417, 14786.985786847868, 14852.411066167042, 14959.812762020507, 15158.022085992397], [15944.236265986641, 16459.731057942972, 16246.06045845531, 16557.029674131878, 16262.38715068863, 15751.956730758648, 16918.771088229994, 15287.13526961809, 16010.566678138126, 16496.783147673767, 16733.86202965864, 16427.153830304873, 16864.89347821686, 16534.437150585276, 16252.720207883445, 16285.759263608234, 17015.699603243513], [15944.236265986641, 16386.169417208854, 16095.2796327563, 16345.271174302798, 15991.3921412411, 15461.695287823512, 16524.36903090944, 14892.800962581103, 15683.454659073974, 16114.793611872414, 16201.892838909313, 15781.710542778226, 16101.254858408074, 15766.127495418317, 15535.565879257912, 15509.577259312287, 16097.793307239974], [15944.236265986641, 16109.451056425238, 16067.344974059439, 16193.338475684708, 16037.668991349186, 15931.88564495645, 16229.257102865158, 16091.629609002304, 16186.4477976831, 16300.26133462703, 16437.817774398285, 16536.102599375892, 16559.541020537617, 16524.148307093976, 16508.207780291024, 16582.579541423882, 16842.870106028095], [15944.236265986641, 16037.45488304519, 15918.222819296152, 15986.231456471414, 15770.418665824684, 15638.308650362971, 15850.928655912696, 15676.54323087802, 15855.742350023558, 15922.822339101836, 15915.25982551397, 15886.378579325057, 15809.728691991124, 15756.316746084252, 15779.780014596587, 15792.251033153421, 15934.287040178366], [3173.2320350842083, 3202.588512714135, 3197.1149042588117, 3225.7267929621157, 3199.8494034444834, 3189.506631780712, 3240.977839047901, 3228.0769868057673, 3234.5118429578265, 3240.0942329384716, 3286.71664861172, 3304.9360596595025, 3320.6480443164874, 3311.924786564941, 3311.165219717999, 3318.5497169825485, 3368.1785243832123], [3173.2320350842083, 3188.275540967379, 3167.4422567667343, 3184.4708986392748, 3146.527390428678, 3130.733565487046, 3165.425760189168, 3144.8081807670064, 3168.4275049761104, 3165.068570000824, 3182.2319819707823, 3175.081014930037, 3170.2898405894457, 3158.028783481791, 3165.059433133223, 3160.3870836665146, 3186.4832461587457], [34195.564496956766, 34089.33783255631, 34876.67853974537, 35504.456943378376, 36089.63778011973, 36382.42662538557, 37467.53257823729, 37491.395056919064, 37353.11110437309, 39119.92151224364, 39982.70119749894, 40717.57029203913, 40352.598307251974, 40500.780224919865, 40070.53849729267, 42217.86697919414, 42513.732749478746], [34195.564496956766, 33936.98615599032, 34552.98564193124, 35050.36761168367, 35488.24318530668, 35712.00733524465, 36594.10791550504, 36524.298015591674, 36589.94938515904, 38214.08426353409, 38711.65180302517, 39117.726356755076, 38525.44164499082, 38618.8207602459, 38302.41846777599, 40205.7563935836, 40220.34347561546], [33097.63671130043, 32971.17227792004, 33796.94237267273, 34423.960745963996, 35331.19194898542, 35424.09901000376, 36826.119957225645, 36013.1949740732, 36125.151689457285, 37915.14429909439, 39084.945209933896, 39468.42373833067, 39553.098572358285, 39646.964370841735, 38958.74038922121, 40949.099622730886, 41751.23748561975], [33097.63671130043, 32823.817893990374, 33483.27058189708, 33983.690574972534, 34742.43602974127, 34771.3388311212, 35967.64758955068, 35084.22836039298, 35387.07841911684, 37037.20414306498, 37842.43546311281, 37917.660323419, 37762.14307999366, 37804.67937215948, 37239.67865982677, 38997.45870106326, 39498.980766966575], [29576.147776884867, 29890.779693349552, 29824.24368908957, 30060.743348855918, 29778.550962283654, 29556.281630706006, 30119.744797715073, 29868.66610410375, 30032.46861864273, 30288.785669691053, 30544.355749953742, 30739.108921496074, 30749.216999668766, 30696.394539189067, 30656.274724944866, 30783.456937803825, 31286.881586531945], [34346.71094688275, 34712.0922524875, 34521.98853182094, 34817.445484998774, 34441.46299337523, 34319.353763160885, 35053.351780351804, 34637.99296502686, 34961.29849343413, 35165.86307207554, 35409.67391636672, 35676.46936315479, 35745.69457703021, 35613.96289872717, 35629.35141001777, 35935.281829190324, 36472.524700915164], [28335.329312139664, 28636.761365846975, 28479.929710644807, 28723.675613383566, 28413.49779949543, 28312.760198869673, 28918.29344960004, 28575.63097943998, 28842.35138332444, 29011.112948598256, 29212.25187492939, 29432.35262505392, 29489.462001113156, 29380.786078946105, 29393.481283902325, 29645.86758043189, 30089.081887457243], [978.0617717704338, 988.4664212195248, 981.3064087126824, 992.7161932128256, 985.6472524727367, 989.2117154674929, 1015.059899338131, 1006.2153242695763, 1017.4160690854662, 1005.051026470165, 1030.5779441249067, 1043.3168804055829, 1051.905865545469, 1017.926234420308, 1022.9450697276263, 1055.31265533788, 1076.6558546635117], [0.0019383188997990075, 0.003154995883304812, 0.004831780844333666, 0.005723780859290928, 0.006023130872307991, 0.00484672901525518, 0.0030495286497673746, 0.001107300826401536, -0.00040739715871696003, 0.0002285290104337978, 0.0016017589564485402, -0.00027092808449924455, 0.004929080947266851, 0.007984839173708513, 0.00269914164094609, 0.004129176432712045, -0.0014497385571683452], [2.3548476e6, 2.349818704654284e6, 2.3805994555325736e6, 2.4181957694516345e6, 2.4136967490224238e6, 2.4176963114058846e6, 2.437275350080456e6, 2.4363466479674526e6, 2.438837515293292e6, 2.4593944302797355e6, 2.459873798846714e6, 2.470427804532535e6, 2.4654977814470287e6, 2.4818611268858034e6, 2.500796632711369e6, 2.524031154833142e6, 2.5214666182421492e6], [0.0016459319014481277, 0.0013864267824560128, 0.002683101698179394, 0.004169190690146446, 0.0038157541094127386, 0.0038074698681499794, 0.004392111997852383, 0.004054881348520824, 0.003845897806692695, 0.0043954921395835365, 0.004126008918269141, 0.004236340195123304, 0.0038395347830626177, 0.004391326630514189, 0.0048786057692704245, 0.005526030883333689, 0.004983714407581769], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086172; 523.5948256657705 260.9904657234587 … 138.4546088464888 510.275819577472; … ; 499.2559915127671 257.4439399347825 … 143.60043529456905 528.6194659801071; 501.28426993669973 256.90451257898644 … 145.33793892114898 535.967523964976], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086172; 521.2547816929806 259.82405013580444 … 137.83582910105466 507.9953007535054; … ; 475.46136764066625 245.17411879485292 … 136.75641458417 503.4253740146714; 474.24265553403814 243.0458834854744 … 137.49773180098617 507.0549328772077]), BeforeIT.Data{Float64, Vector{Float64}, Matrix{Float64}}([72421.99999999997, 72304.57274664809, 71497.92102995246, 71831.22079390123, 71148.28302556869, 72078.14409391064, 72842.58988441632, 73875.57658273242, 72551.20128873478, 73390.84849415057, 73552.29105287437, 74221.66540125864, 75064.78525415453, 76751.27572000488, 77508.56018453684, 76863.7559260406, 77349.97175780126], [72421.99999999997, 72457.94448240777, 71860.06356316146, 71696.18925825076, 70765.68021838056, 71639.40940213775, 72394.76765412319, 73067.79494104322, 71600.98174567624, 72127.23833292011, 71714.19032666241, 71817.54461500181, 72121.25890780042, 73275.76749550867, 73790.96502980521, 73105.36722717588, 73330.65418627234], [64900.92049553802, 64809.264317854206, 64088.30887472305, 64372.561532060485, 63758.870473736126, 64616.8776866367, 65302.590923440934, 66207.72628505113, 64981.163245835036, 65752.61569947847, 65890.28245773785, 66512.16447689336, 67288.810624851, 68826.75924791551, 69486.54494818898, 68882.86098138253, 69322.17246671168], [64900.92049553802, 64946.73708042159, 64412.92114583019, 64251.551117071576, 63416.00453531805, 64223.55920887127, 64901.12315633301, 65483.787626228564, 64130.09020844818, 64620.5171472732, 64243.65834444117, 64357.7628437131, 64650.20470306667, 65710.09485911496, 66153.71510070635, 65514.712194755404, 65720.00145668916], [40512.94792630534, 40344.89381958442, 39908.45654961406, 40237.32525024325, 39816.564713883534, 40113.73230203789, 40515.07159543252, 41228.53107651724, 40753.28901092566, 41072.55102557101, 41199.54952900649, 41423.63875732814, 41783.200085665696, 42581.03167001894, 43161.83283264522, 42945.21395990381, 43176.587211006205], [40512.94792630534, 40430.47300440071, 40110.59598728085, 40161.68532990001, 39602.44950569722, 39869.56278021358, 40265.992728918594, 40777.72375889004, 40219.53393900097, 40365.38257216767, 40169.956557464124, 40081.88186679635, 40144.749381107984, 40652.845794430796, 41091.6328414965, 40845.33209916655, 40933.01282161619], [14866.888022051655, 14694.450206399682, 14226.553575135942, 14388.791432412114, 14598.664295708866, 14873.482136077873, 15109.021218826894, 15163.555524970225, 15102.971034713484, 15362.953899272718, 15450.573018516447, 15475.561057042625, 15718.812250588906, 15725.76517112381, 15850.419358566802, 16016.473128124726, 15846.889176832976], [14866.888022051655, 14725.619927049109, 14298.61217595002, 14361.742739910454, 14520.159380295405, 14782.94827615968, 15016.133862810357, 14997.75185422541, 14905.163996642308, 15098.441564942867, 15064.457112686776, 14974.290736374347, 15102.42817866563, 15013.659402509304, 15090.17504403458, 15233.319470393826, 15023.441169354022], [15944.236265986641, 16043.220491265136, 15993.064978158282, 15782.034799014153, 15375.447773484791, 15793.834988882152, 16818.740576707358, 17079.566621119557, 15511.921770820423, 15873.754109409114, 15910.736298836706, 15895.669151985545, 15968.491311240417, 17223.069280080716, 17462.056559654826, 16740.088042337105, 17288.87019895211], [15944.236265986641, 16077.251209938242, 16074.07109667941, 15752.367025432592, 15292.765673091797, 15697.699004626926, 16715.342194967594, 16892.81260845749, 15308.758612179292, 15600.447049999362, 15513.120731370063, 15380.791071398833, 15342.316537982646, 16443.16147565073, 16624.51220709215, 15921.55195912958, 16390.49288602798], [15944.236265986641, 15903.629487576181, 15730.416008602991, 15815.536735007032, 15659.10910141338, 15801.610637202853, 15942.502735602588, 16228.935922816478, 15943.171303968982, 16112.630620745167, 16135.040278134598, 16281.2390503153, 16446.050263050864, 16806.72285286794, 17050.549253156616, 16913.771297852778, 16996.5437683975], [15944.236265986641, 15937.364107209916, 15810.09178965683, 15785.805982990545, 15574.901600606756, 15705.427323112595, 15844.491295553025, 16051.48300658886, 15734.359972354094, 15835.210694497151, 15731.819265870276, 15753.8719397113, 15801.148901129287, 16045.668356326887, 16232.74230205169, 16086.742666020124, 16113.356541936872], [3173.2320350842083, 3150.661078416359, 3120.916607064972, 3146.2412722618133, 3114.308590029738, 3110.779574417571, 3131.106004567351, 3229.2810636601967, 3192.0570791281857, 3217.1712136915567, 3226.9454724476686, 3242.3351769474616, 3255.831054993229, 3289.4113362053317, 3380.7192584631007, 3363.742597527146, 3382.0735787932117], [3173.2320350842083, 3157.344229149858, 3136.7242925156174, 3140.3268274587717, 3097.5612679816827, 3091.844473702753, 3111.8565671643933, 3193.9709641693544, 3150.2499833769425, 3161.779426848228, 3146.302833973104, 3137.312400204717, 3128.1596780992263, 3140.4577709976456, 3218.5675489635614, 3199.2664798547225, 3206.331720657675], [34195.564496956766, 34956.04451670094, 35474.80678384236, 35771.306691248516, 36197.09790924197, 36483.706624965045, 35359.46665524339, 36535.47942897917, 37255.76915328862, 37902.17132911422, 37611.040790039835, 37650.47195799094, 36972.8167072026, 36285.219660478644, 36629.76991455601, 37594.12448119699, 38223.31958014066], [34195.564496956766, 35030.192928331875, 35654.489440467005, 35704.0621919715, 36002.44653210108, 36261.63281906932, 35142.08345614725, 36135.98759530133, 36767.82189242603, 37249.589027548616, 36671.126065424854, 36430.93206007525, 35522.99626599182, 34642.12541644675, 34872.87164642826, 35755.893563496364, 36237.13061924906], [33097.63671130043, 33734.03628730224, 34104.96085679815, 34348.23737901649, 34839.49166675017, 35186.61195805179, 34959.710161794166, 36131.55606885357, 36072.749681013534, 36820.58186921637, 36619.608583524976, 36223.67552308822, 35378.53510054331, 35063.810061696815, 35595.51848088591, 36432.14368552222, 37185.69440913106], [33097.63671130043, 33805.592587312356, 34277.705137215766, 34283.66802896349, 34652.140872804586, 34972.43347793124, 34744.784588720846, 35736.480875830886, 35600.29669457242, 36186.62188173826, 35704.470140283396, 35050.35111964253, 33991.23145594788, 33476.02459352853, 33888.226709246206, 34650.72986501057, 35253.42330997519], [29576.147776884867, 29534.378929306975, 29228.504244601325, 29404.797704600067, 29110.42291733911, 29424.21239873823, 29665.87222357631, 30112.81086693495, 29564.234860116216, 29896.634817091977, 29921.260777031373, 30219.753355746012, 30568.7067536716, 31291.136935324386, 31656.07376112954, 31384.32513375365, 31532.652081557608], [34346.71094688275, 34298.20488229436, 33892.39348351125, 33994.609745007605, 33683.818511647994, 34208.88903223727, 34637.469517963465, 35081.89563093483, 34419.17282171162, 34839.49015962372, 34947.675731278825, 35265.80429715676, 35684.10572862319, 36489.54390992968, 36780.00400313442, 36455.71025809511, 36732.27778954452], [28335.329312139664, 28295.312807622722, 27960.526759522734, 28044.85307056411, 27788.456702417254, 28221.629070391664, 28575.199146390765, 28941.841538596316, 28395.10886684073, 28741.862016036295, 28831.11288504702, 29093.562401441493, 29438.652469328077, 30103.122384458668, 30342.74598060793, 30075.21031835, 30303.372837107145], [978.0617717704338, 976.6805062528616, 967.4111466104299, 973.1540824528173, 964.6290447489897, 983.7762556611649, 999.2491819011057, 1013.0197871814249, 997.7555640071281, 1016.4907227627632, 1021.3459494277668, 1026.606823990566, 1035.9981425562205, 1046.0784026614806, 1050.4671839250418, 1042.8255895337577, 1057.2425956095044], [0.0019383188997990075, 0.001293460494171672, 0.003562879809191344, 0.005616287772521655, 0.0077016800207805325, 0.00448363339076141, 0.00775968553955253, 0.008265323419251347, 0.006591838538478445, 0.008468914306484443, 0.004043338721918532, 0.004156052477066741, 0.005633966170383031, 0.0048854595813196955, -0.002385159710203699, 0.0025204017149813573, 0.0019901745458088538], [2.3548476e6, 2.370516997893631e6, 2.3838598622927144e6, 2.3875437385929762e6, 2.4038851593248425e6, 2.4132033690378238e6, 2.4005271794114583e6, 2.4200839538330333e6, 2.4332433633424863e6, 2.4340685510037467e6, 2.423367847810922e6, 2.4126143357217135e6, 2.4010314885556004e6, 2.3871137394355596e6, 2.3937855095649823e6, 2.409415321581888e6, 2.43000669187676e6], [0.0016459319014481277, 0.00220825781782541, 0.0026801704718706484, 0.0027626314164595532, 0.003408063016600537, 0.003639917768773371, 0.003031843045592449, 0.0037983842832397816, 0.004203288041994408, 0.004119807231995379, 0.0034751796667429557, 0.0028768096786457014, 0.0023208975230871137, 0.0016910356040873535, 0.0017860154234348087, 0.002353853622205818, 0.003065865655203445], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086172; 517.3517768784697 257.87856291108864 … 136.8037543393686 504.1915790914227; … ; 545.6510594389758 274.81650930907153 … 145.5230644631862 534.8501326179038; 537.9059448121318 276.9252007851785 … 145.92508647528913 537.4412144176076], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086172; 518.4491782875932 258.425572336723 … 137.09394109332382 505.26106522076645; … ; 518.9704900261013 261.37887214959557 … 138.40745796811893 508.6976935417853; 509.95487040730967 262.5354046389017 … 138.34241707195036 509.51428868405503]), BeforeIT.Data{Float64, Vector{Float64}, Matrix{Float64}}([72421.99999999997, 73346.83266784738, 73222.35327004617, 74696.80043692546, 75543.10339502887, 77147.34680730745, 77160.13873524335, 76194.38166011931, 76772.92628337772, 77607.45822169732, 77848.31594559958, 78352.9597424533, 78590.70188045941, 79469.0023461915, 81439.98461470309, 82122.7399381365, 82168.18406790121], [72421.99999999997, 73038.60977592802, 72699.15082390138, 73513.81422697564, 74050.96884833793, 74788.57633818875, 75089.86148635353, 74540.32524183065, 74965.85104604004, 75067.44879096346, 75060.80533070926, 75200.4586979297, 75090.5316232494, 75665.48141613907, 77113.87201451208, 77387.32351556489, 77196.78306638112], [64900.92049553802, 65746.23513246608, 65666.62013660213, 67007.94081775879, 67780.40682196167, 69229.28876929311, 69254.98426748716, 68379.31204920847, 68919.23037074343, 69658.13656410716, 69868.65421878535, 70330.73297404117, 70541.86617184174, 71355.0275389308, 73157.15474573725, 73755.11792742104, 73773.42175579279], [64900.92049553802, 65469.951972195115, 65197.406368522046, 65946.72441383157, 66441.60179459938, 67112.6119332774, 67396.80955899984, 66894.90811405118, 67297.01482408523, 67378.2999626462, 67366.87093783342, 67501.00312220708, 67400.1644697965, 67939.8551736545, 69271.02816507826, 69502.20092848365, 69309.92694983193], [40512.94792630534, 40891.768275168535, 40572.26040368094, 41289.53667115406, 41697.7913756843, 42513.786753592714, 42457.149466188304, 42012.245661755085, 42194.5808224949, 42696.43869435361, 42875.914027762636, 43128.47636979521, 43292.3342054272, 43634.218085299726, 44496.65939775375, 44991.4406641394, 45151.10750921943], [40512.94792630534, 40719.93019279972, 40282.355682775014, 40635.627103254534, 40874.17264364702, 41213.93304669524, 41317.98522888486, 41100.22796347494, 41201.40802258454, 41299.02974130418, 41340.658396041144, 41393.21879622811, 41364.23664521566, 41545.8105697389, 42132.98558570992, 42397.114084721616, 42419.34139271884], [14866.888022051655, 15031.280644137081, 14986.483630152221, 15195.516996785344, 15239.885381933598, 15556.239090420497, 15293.413096827846, 15161.050016338593, 15385.432009513032, 15444.438707860529, 15340.582762170403, 15234.270839015999, 15174.902845105733, 15521.987078252676, 15773.758135693717, 15815.123416023795, 16117.849042826609], [14866.888022051655, 14968.115206436882, 14879.399324004795, 14954.862953304153, 14938.865719727202, 15080.609028006502, 14883.076805172455, 14831.928215739426, 15023.290893548392, 14938.95868223858, 14791.28331016894, 14621.325841272259, 14499.062798845822, 14779.07851031888, 14935.85211021948, 14903.181179249292, 15142.674870696395], [15944.236265986641, 16223.237590397179, 16031.21338542311, 16382.194618105117, 16658.842377250738, 16863.817779432145, 17129.246780044316, 16632.983098986533, 16741.009529820552, 17070.58794513223, 17258.55142460681, 17309.22696537158, 17343.437192518628, 17316.72970684841, 18104.128011496032, 18412.410548656768, 18101.480117530762], [15944.236265986641, 16155.063232697892, 15916.66407522834, 16122.746954904405, 16329.795341825231, 16348.20866232177, 16669.65338790405, 16271.908019030034, 16346.960934385908, 16511.885787345473, 16640.57536810045, 16612.79691004766, 16571.01778963078, 16487.92171963936, 17142.43214825955, 17350.701802006086, 17006.290812739455], [15944.236265986641, 16139.542140406762, 16089.945761852443, 16381.120631758806, 16555.326983706476, 16923.595104432086, 16917.158518781238, 16729.597587449345, 16841.079493592017, 17036.526694583292, 17096.621147387865, 17210.385021651426, 17271.156352353886, 17460.39947876902, 17881.240282058072, 18072.910238650038, 18099.769805099397], [15944.236265986641, 16071.719493240818, 15974.976785781839, 16121.689977466507, 16228.324594157035, 16406.15830309448, 16463.255649095274, 16366.425163682714, 16444.675459042475, 16478.939325240834, 16484.4433199265, 16517.931833721468, 16501.956099325464, 16624.715213157288, 16931.3842714359, 17030.777986216242, 17004.683978911526], [3173.2320350842083, 3202.1994859161005, 3178.439394506854, 3212.4685448315254, 3228.9954295531847, 3307.720791085387, 3296.3938083444814, 3267.2474254337567, 3273.6914027333437, 3317.865310064729, 3341.890683938312, 3364.7688979021254, 3370.8952453416605, 3405.018385198591, 3458.8844327900397, 3515.4881397909794, 3536.5222256452194], [3173.2320350842083, 3188.742992293242, 3155.728197831763, 3161.592122197576, 3165.2160054229776, 3206.587642053188, 3207.9485409219706, 3196.32078417191, 3196.6355061438508, 3209.275113058209, 3222.227777398481, 3229.3887220914885, 3220.7667060157037, 3242.0484432972526, 3275.1476160643206, 3312.7757085805442, 3322.5529097364947], [34195.564496956766, 35510.46304318003, 36794.8429381764, 37382.36473534381, 37629.25986577874, 39081.02572931935, 38588.24242832276, 38267.28171259385, 37706.94885393585, 39070.60755013118, 39903.59351671329, 39617.07847822258, 41072.43842588162, 40113.52298875177, 39847.94846316153, 40229.42440688132, 41116.077623812846], [34195.564496956766, 35361.238636147646, 36531.929347298385, 36790.33372841249, 36886.00315419598, 37886.12826092769, 37552.88451316768, 37436.561106322435, 36819.40559033802, 37791.86818775776, 38474.76761150248, 38023.10064134067, 39243.207690825686, 38193.62189824606, 37731.21535283726, 37909.6883977022, 38628.44190694357], [33097.63671130043, 34309.916885035644, 35162.447087386085, 35552.8125844632, 35682.67560561802, 36867.522545456704, 36307.91303613975, 35879.178829554876, 35255.04493238648, 36674.6146757805, 37530.32578565359, 36936.09290995224, 38292.41078847385, 37117.455512961074, 36782.50939340252, 37325.659097564894, 38318.3302254876], [33097.63671130043, 34165.73749215429, 34911.19760540471, 34989.75651290012, 34977.868011057166, 35740.3026597619, 35333.738448775344, 35100.30006273619, 34425.21439481667, 35474.29360768282, 36186.47935510385, 35449.983490959174, 36586.99330126847, 35340.95128180408, 34828.61318251459, 35173.36194811439, 35999.96591671636], [29576.147776884867, 29961.368054638344, 29918.400615010345, 30531.033925681204, 30894.519600706233, 31568.063581998216, 31583.0095170845, 31227.343957599107, 31466.800704950503, 31786.00496005543, 31895.709018403806, 32130.221167139083, 32268.646768036142, 32656.333076663952, 33455.14550103845, 33755.305156311864, 33781.79922947977], [34346.71094688275, 34794.066350659115, 34755.25549864459, 35460.94616299344, 35860.162959774636, 36614.773708969115, 36624.61782331706, 36121.035720186825, 36413.731524765826, 36822.24910120941, 36918.98457958782, 37136.33810237587, 37210.71054969846, 37621.87027931761, 38602.98600641408, 38899.160455848934, 38892.56019366094], [28335.329312139664, 28704.38830894352, 28672.370155169865, 29254.550422670618, 29583.896059905775, 30206.434390110775, 30214.5555817517, 29799.110715721818, 30040.57872772022, 30377.597316668307, 30457.402094489935, 30636.714275352828, 30698.070013021403, 31037.26832393584, 31846.668597038875, 32091.006419416008, 32085.561339014203], [978.0617717704338, 990.800727168674, 992.9640229472307, 1015.9607290840645, 1025.724261480913, 1046.451478325794, 1047.3569270856042, 1030.9323714224656, 1038.6981410271321, 1049.8825028423335, 1053.9606207937327, 1064.173704526231, 1062.5088541070295, 1076.8241829492267, 1099.0232382846584, 1100.6523152601744, 1099.0623326520893], [0.0019383188997990075, 0.0018434140017578038, 0.005630795894032259, 0.0041503210433544435, 0.005434172089451295, 0.0018838687357984885, 0.0008073204992140592, 0.0026616361667830546, 0.0030724021396384416, 0.0069660881312858525, 0.009234786742173151, 0.0021423888248170986, 0.0036506389400536854, 0.002132510411475552, 0.0003015905834740096, 0.003687081171600992, 0.003472550240389616], [2.3548476e6, 2.386096419148011e6, 2.4139748184694066e6, 2.4241175306307585e6, 2.418999338103111e6, 2.4458530766241564e6, 2.4471158957511396e6, 2.4400609319669665e6, 2.43581499607212e6, 2.467372815158202e6, 2.4769553172603813e6, 2.476206014488127e6, 2.494839815810342e6, 2.4614539780379147e6, 2.4495797730091866e6, 2.474076432190228e6, 2.4924428740150114e6], [0.0016459319014481277, 0.0028716169750353533, 0.003937444246078356, 0.004154459987820307, 0.0037639223020038606, 0.004620409282130639, 0.004347656526592403, 0.003803296373747102, 0.003421076445891343, 0.004601988402132676, 0.004855208041928113, 0.00451517052553061, 0.005004845636434247, 0.0033670098708481287, 0.00265016614600964, 0.0035222111296385845, 0.004071319265700896], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086172; 524.8313173565921 261.6068059285797 … 138.78157535762102 511.4808578628162; … ; 597.3856559222095 305.2552098993454 … 155.0215001109902 560.6784102343875; 599.3676672433814 306.33172617397577 … 155.24845996518764 561.3631704902955], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086172; 522.6258366218203 260.5074645755009 … 138.19837827949272 509.331479308383; … ; 562.9388042000955 287.6533795765654 … 146.08254656377224 528.3481962935801; 563.104275822315 287.7978146901806 … 145.85550138747843 527.3991555902494]), BeforeIT.Data{Float64, Vector{Float64}, Matrix{Float64}}([72421.99999999997, 73365.24765711153, 73714.21072420827, 73912.91485586684, 73943.13082988925, 73662.58427656115, 73929.92941489293, 73377.81953860336, 75053.30732996642, 74039.0729947669, 73399.673867027, 73581.95603561246, 73303.75394522562, 73871.84667272502, 72688.68182864865, 73344.46069031287, 74400.07313100823], [72421.99999999997, 72707.78217179778, 72946.63012735748, 72931.72894860173, 72841.39619887034, 72705.36850043172, 72704.55110408628, 71605.72455586669, 72955.11373497063, 72223.82833442939, 71673.12769963923, 71448.94304248379, 70649.43774746243, 70558.53636924736, 69852.95785061413, 70708.69914146923, 71651.7173853008], [64900.92049553802, 65749.67888360313, 66058.3712580289, 66225.72755978178, 66243.25701381346, 65997.31975333647, 66233.07274291276, 65711.31395020458, 67232.13359234313, 66297.38195154956, 65714.38830881864, 65858.9073865224, 65580.40317028156, 66089.74381569918, 65007.74990760414, 65620.0961571523, 66583.80984457328], [64900.92049553802, 65160.460610416536, 65370.51034845564, 65346.58822795121, 65256.24862636086, 65139.71101926097, 65135.26876231142, 64124.3672339843, 65352.58907791994, 64671.9433322625, 64168.61951586231, 63949.77214824849, 63205.748162561365, 63125.47746794038, 62471.67371893938, 63261.92316556483, 64124.188655287704], [40512.94792630534, 41035.274111887455, 41260.347209903746, 41425.23658982656, 41468.781575977264, 41300.37882545052, 41477.963132947436, 41372.393792433955, 42138.054079801324, 41760.36009555981, 41481.8805789682, 41732.10693824463, 41761.31679368986, 42073.25195336171, 41518.02261739738, 41655.06654682434, 42126.30702032747], [40512.94792630534, 40667.53492650296, 40830.70628142472, 40875.32107876439, 40850.90683554297, 40763.696946039185, 40790.47165552006, 40373.23884446206, 40960.040767381695, 40736.50515503946, 40506.121721246236, 40522.36570376555, 40249.14676637805, 40186.17662660734, 39898.32544728954, 40158.11883345533, 40570.151588317574], [14866.888022051655, 14965.644423475016, 15176.462567965866, 15263.695298021323, 15294.039442998708, 15264.676790415646, 15034.147163088302, 15386.573358075491, 15470.816396595115, 15507.604018543432, 15363.792398867105, 15339.19486634447, 15397.63782060872, 15549.52102934512, 15651.22440184602, 15828.08274956259, 16150.874912876172], [14866.888022051655, 14831.529226046656, 15018.431191362157, 15061.071402746575, 15066.161982125628, 15066.318429996967, 14784.958262180036, 15014.983283298023, 15038.31356590734, 15127.398077941238, 15002.397102603785, 14894.538272298387, 14840.092029637744, 14852.091757420712, 15040.640316327219, 15259.272896568138, 15554.257893604647], [15944.236265986641, 16574.215833129998, 16841.58419716422, 16581.341652540275, 16257.7158310476, 16398.792260859347, 16977.853791962945, 16231.622940491385, 17343.443592603424, 16317.355246512569, 16989.71575172001, 17250.75355903482, 15865.13737794595, 16745.68841501589, 15384.699133092288, 15754.405080813254, 15747.301646209597], [15944.236265986641, 16425.685361218362, 16666.214032809654, 16361.226145192944, 16015.479826819746, 16185.696524187542, 16696.448223671883, 15839.624680589583, 16858.589512806728, 15917.296321083339, 16590.074621579817, 16750.684201475582, 15290.663509206746, 15994.608477754986, 14784.512706140717, 15188.242963782368, 15165.59271586299], [15944.236265986641, 16152.164252972476, 16236.08800054956, 16270.418147408001, 16281.973066892873, 16204.936530812156, 16275.368698241824, 16169.98911451505, 16498.79104960482, 16306.945905839453, 16150.603765477326, 16223.963133270407, 16170.120097981777, 16277.120776217238, 16012.18170340538, 16139.142094824734, 16354.218613466695], [15944.236265986641, 16007.416012510155, 16067.022823081816, 16054.430115780824, 16039.375635761888, 15994.359871700779, 16005.606722800418, 15779.47932884792, 16037.550113835541, 15907.142190251598, 15770.70067377149, 15753.658645216889, 15584.602857924456, 15547.057099621721, 15387.515985790236, 15559.153779899636, 15750.090031311529], [3173.2320350842083, 3214.143947687249, 3231.773105806279, 3244.688291923272, 3248.099012497643, 3234.908636824667, 3248.818170500234, 3243.006784347013, 3300.5206963800106, 3270.937298686168, 3249.125009815689, 3268.724331512122, 3271.01223337519, 3295.4449812300327, 3252.0521857773606, 3262.7785047799357, 3300.788812006952], [3173.2320350842083, 3185.3402732239515, 3198.1208926838735, 3201.615407682253, 3199.7031287031123, 3192.872294875541, 3194.9694606016533, 3164.6872582605306, 3208.251193120821, 3190.7424606692393, 3172.6973632402583, 3173.969695379637, 3152.569448567511, 3147.637226278044, 3125.1834335998547, 3145.5248492979667, 3178.856917116582], [34195.564496956766, 33975.54068986936, 33891.896161796256, 33870.945535217805, 35265.62545966975, 34555.026136253626, 34747.85139288361, 34036.53991034755, 33984.51632110175, 34041.4568219738, 32812.14945898444, 32204.107249474528, 32923.20544156563, 33813.282037579396, 33406.82318727681, 33543.64929440647, 33943.60274756589], [34195.564496956766, 33671.06757675638, 33538.98236635992, 33421.312416436005, 34740.176233793085, 34105.99741309616, 34171.91058270086, 33214.54789717364, 33034.44367259778, 33206.84922592021, 32040.324627789734, 31270.566162825657, 31731.06189116668, 32296.68402608187, 32103.55936189289, 32338.199555108382, 32689.718285960425], [33097.63671130043, 33185.42740125064, 33456.07941262159, 33228.304219739024, 34343.031479803685, 33856.289736418104, 34307.88606598982, 33649.31046274468, 33883.52306013564, 33587.70318782227, 33247.86432151334, 32944.20657748646, 32643.543488585354, 34309.89676257736, 33272.08751096446, 33436.74298129356, 33568.01319597095], [33097.63671130043, 32888.034918727, 33107.7037445987, 32787.20209453801, 33831.32867941077, 33416.340812888186, 33739.23761998688, 32836.670149656435, 32936.27378372326, 32764.220445554478, 32465.790373580912, 31989.211297881757, 31461.526448927565, 32771.02451861771, 31974.07998103678, 32235.135107444898, 32328.00309844487], [29576.147776884867, 29962.93741439104, 30116.17744863212, 30163.29003510056, 30168.516119824293, 30048.181514029282, 30152.107021795116, 29945.69087994011, 30562.076287450516, 30210.3745645231, 29881.621734187054, 29979.74863927089, 29845.460216924566, 30056.07152143222, 29546.073818477438, 29761.6629802807, 30179.97108484413], [34346.71094688275, 34795.8888444539, 34946.444048142985, 35059.767994784605, 35070.22159172619, 34944.50880998122, 35073.51952708853, 34762.89972443901, 35647.94748133456, 35091.65878685677, 34831.703357512095, 34886.491040400426, 34735.17904020607, 35030.52072304044, 34466.23819803051, 34850.65439122557, 35378.46531173686], [28335.329312139664, 28705.891828797994, 28830.096771821034, 28923.586694393463, 28932.21069662454, 28828.500240185273, 28934.93142539204, 28678.67648405115, 29408.822659834594, 28949.895941202787, 28735.43806462905, 28780.63677490122, 28655.807490344218, 28899.45829742311, 28433.93683319996, 28751.072277229705, 29186.505418713325], [978.0617717704338, 990.8526247583069, 995.7497612537171, 1002.6695298965703, 1004.5193022630108, 1004.6294293259247, 1007.446194028995, 1002.7233458256421, 1022.1098235579828, 995.3486001696953, 1001.0632171194999, 992.6677068510263, 999.7639131509055, 1003.1515712264132, 995.4378910961451, 1007.7787856461108, 1025.3734479922857], [0.0019383188997990075, 0.0008291301285510144, -0.00016827628773552483, -0.00041151296334251963, 0.002760593160989089, 0.002591383349407783, 0.005251030880333962, 0.004578054755261629, 0.004823671584751166, -0.0031074738233362043, 0.002132556992826995, 0.002930053483548356, 0.0015581762796845755, 0.0056962215907736535, 0.005112085557886559, 0.0065509723570555956, 0.006487035154066456], [2.3548476e6, 2.3463390074127843e6, 2.341791716846204e6, 2.3301409804631346e6, 2.3652258279085425e6, 2.3673039933632263e6, 2.371170080914802e6, 2.3432757506288546e6, 2.351699897113657e6, 2.360797698807752e6, 2.349829887807077e6, 2.3366554443142856e6, 2.3431130508125727e6, 2.36203894708018e6, 2.3516536099302424e6, 2.3753852435207996e6, 2.397331359394961e6], [0.0016459319014481277, 0.0011877088241747445, 0.0009052922754396234, 0.00033947305150412255, 0.0018586927786959097, 0.00186697734187722, 0.0020098933766386066, 0.0008090505995305185, 0.001213454698935444, 0.0014328242746509336, 0.000918724529996129, 0.0003664873951609107, 0.0006469408282806808, 0.0015242399899117547, 0.0010962422596249711, 0.002158011829671608, 0.003055856657369919], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086172; 524.8588077283582 261.62050874720586 … 138.78884465915573 511.507648944957; … ; 502.6657821524618 242.13575052278964 … 138.39980938230434 518.8298203145891; 500.6742896571151 262.89899944804677 … 140.26597728661343 524.9872020151181], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086172; 520.1552653596716 259.2759865075286 … 137.5450830959637 506.9237534986131; … ; 484.6016075979421 233.43417858645557 … 133.42617003035042 500.18476276139734; 482.1792666981446 253.18745018113322 … 135.08451995223533 505.59405450381865])])

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, 73376.75286190142, 74132.48551790214, 74360.90733277408, 75243.08437195272, 75661.65257813458, 76165.4981048719, 76359.72904723366, 77790.68633323292, 78215.21716667718, 79856.4598783387, 80500.82228468612, 80849.9262573898, 81749.18326686803, 82155.86988948645, 83465.57438821555, 83559.05706410826], [72422.0, 73276.7817900441, 73523.42422081971, 73826.86226986046, 74501.93564546325, 74356.3074059816, 74707.82271839974, 75228.16705183823, 76131.91453268366, 76105.46374627168, 76737.38515767423, 77403.1350970887, 77412.65973032938, 77638.23815090113, 77603.68860902428, 78653.11533307159, 78423.05993312632], [64900.92049553802, 65765.37095875153, 66438.13054850035, 66651.23489462392, 67462.03809042578, 67831.0346157896, 68293.11986352167, 68492.26658683484, 69815.28180283583, 70204.36966819351, 71699.56740295334, 72285.82562287326, 72600.91740280495, 73419.89439287965, 73784.53896842377, 74965.28090838034, 75038.19516235637], [64900.92049553802, 65675.76990161273, 65892.28490896852, 66172.55914671678, 66797.53311917899, 66660.78640496146, 66986.10812766485, 67477.2911958115, 68326.57375614424, 68310.69840574272, 68899.08878782517, 69504.25309327844, 69514.35054029364, 69727.80666542295, 69696.2054442166, 70642.9318731848, 70425.93685536947], [40512.94792630534, 40996.98091045671, 41433.9765852329, 41453.62538240697, 41811.77712091927, 42076.61421974207, 42268.71260133846, 42163.42952790854, 42688.36255298383, 42931.77139582362, 43679.19108784511, 43971.64376077206, 44124.13484741035, 44508.88609971392, 44772.609359342394, 45496.26069774294, 45629.87804377118], [40512.94792630534, 40941.1251800697, 41093.561295687694, 41155.91379214521, 41399.92870157163, 41350.691597637444, 41459.7628339254, 41538.616749699264, 41778.09610140397, 41773.742883886065, 41973.14675594341, 42279.60641718279, 42248.2344135168, 42270.65471174473, 42291.80020380412, 42873.03677129315, 42825.215916719375], [14866.888022051655, 14928.175920588144, 15296.984796150751, 15372.993095809286, 15586.91531348023, 15762.923910524067, 15905.246876748826, 16109.292565678623, 16255.681346630456, 16417.64751425451, 16861.413754626654, 16986.20602142652, 17188.10804115759, 17117.754711048252, 17119.23186719439, 17195.50041034808, 17645.042387436053], [14866.888022051655, 14907.837248059763, 15171.30708095876, 15262.587354950268, 15433.383297469589, 15490.975625963783, 15600.84806803786, 15870.57166570331, 15909.05288649581, 15974.802895867835, 16202.831975809431, 16332.573533395778, 16457.370102754496, 16256.94916763403, 16170.670955520463, 16204.042048453737, 16560.481476122794], [15944.236265986641, 16723.024369297284, 16538.519194114346, 15977.897079133834, 16664.807752483535, 16569.804905474706, 16562.245498451113, 16570.921728306897, 17202.579134745007, 17124.835010709772, 17398.657050589893, 17763.266521753685, 17662.724688799844, 18137.60520398012, 18089.671145664084, 18452.64151657181, 18006.438989888982], [15944.236265986641, 16700.24033204179, 16402.641219946647, 15863.147039671981, 16500.65843369845, 16283.9359864137, 16245.272876876981, 16325.360023329877, 16835.75947405715, 16662.91493241183, 16719.091346541827, 17079.732595606703, 16911.808823320695, 17225.514140204836, 17087.339085036132, 17388.698898209033, 16899.664664751283], [15944.236265986641, 16152.252724072041, 16319.380841372335, 16347.65090459798, 16534.158342911793, 16624.290173338002, 16731.377086037883, 16761.244395952082, 17049.50472311042, 17150.90115524563, 17513.07345877982, 17661.782965398117, 17743.791782384564, 17918.843136956628, 18043.216697060405, 18322.498821881934, 18352.51122774422], [15944.236265986641, 16130.246326204142, 16185.303274791528, 16230.245367616455, 16371.295928356229, 16337.481252586105, 16411.167579542955, 16512.86233133973, 16685.949148772408, 16688.27797671242, 16829.038819758207, 16982.154146097902, 16989.42941769232, 17017.7530253016, 17043.458634755545, 17266.059972517476, 17224.46540813078], [3173.2320350842083, 3211.144580331236, 3245.3728640126797, 3245.946791133383, 3274.964607494113, 3296.95144364627, 3311.58634592821, 3307.423939044867, 3330.638656064556, 3337.38205116033, 3385.677019856939, 3414.1376022362842, 3435.0968365833837, 3454.088300377828, 3494.6103985971213, 3539.0209596432346, 3557.130825272], [3173.2320350842083, 3206.7696038834715, 3218.7093710478534, 3222.6350548936966, 3242.706016975099, 3240.071115195307, 3248.2083332223738, 3258.4117793792807, 3259.617692747267, 3247.3605252642838, 3253.4375038420862, 3282.7609279739986, 3289.0565874431486, 3280.39155062312, 3300.977246633639, 3334.9680481474957, 3338.490089545317], [34195.564496956766, 34339.85916883628, 35372.03493829517, 36263.71959283035, 36264.89468968937, 36106.17376383289, 36579.0796988091, 36152.64750823523, 36079.59245799302, 34995.50711572773, 35211.15651793217, 35005.02075300314, 35025.85601419607, 36015.28374266095, 37232.015978003394, 37917.937297694625, 37787.50636675782], [34195.564496956766, 34293.07333552207, 35081.42364515623, 36003.280860893276, 35907.68338263194, 35483.25557474275, 35879.01962615862, 35616.9074988916, 35310.2482939853, 34051.54897675216, 33835.86103967321, 33658.02079436072, 33536.7612427803, 34204.172623437546, 35169.02417477704, 35731.66442965053, 35464.87933977101], [33097.63671130043, 33611.287507277244, 34509.02999589162, 34707.32781740612, 35085.31050461973, 34853.86422143917, 35149.786570476244, 34636.56228289559, 34435.529159119, 33254.54386983852, 33293.95853265463, 33225.31477226854, 33150.897334174035, 34030.34649053605, 35057.65846071795, 35596.7655341417, 35509.80872374603], [33097.63671130043, 33565.49430564939, 34225.50902093017, 34458.06677780011, 34739.718169908396, 34252.551378776225, 34477.080686599715, 34123.28888578568, 33701.2422232582, 32357.545942646128, 31993.545960293304, 31946.79824345639, 31741.514852042783, 32319.052492120896, 33115.14581011374, 33544.32681453464, 33327.18146423839], [29576.147776884874, 29970.088486054785, 30289.78175507876, 30348.876374595206, 30707.170040341964, 30854.547200754616, 31064.627412925052, 31109.88588177341, 31698.466490389586, 31922.878914962686, 32614.560668568723, 32860.765202931514, 32990.09175039573, 33327.70379945776, 33565.98741838573, 34110.96203377452, 34176.238849622656], [34346.71094688275, 34804.193367181106, 35144.78318285757, 35292.80704945871, 35731.84573225175, 35946.92764537752, 36193.11659341373, 36343.276347118204, 37061.3673314215, 37221.64089955609, 38012.975051628644, 38346.462961262056, 38530.6659577165, 39000.362228818856, 39121.48540155685, 39735.8483662643, 39744.23598922277], [28335.329312139664, 28712.742889052915, 28993.722474040795, 29115.839116088006, 29478.036989326807, 29655.4751389921, 29858.575951946317, 29982.454656874605, 30574.864933007873, 30707.0873265916, 31359.92170801448, 31635.042366749265, 31787.00604597583, 32174.49579831199, 32274.419921823264, 32781.25671761107, 32788.176333845695], [978.0617717704338, 991.0891055155136, 1003.5656105640174, 1009.5514705701477, 1023.0223178320341, 1029.5597696575526, 1035.3758571829026, 1039.1043579432135, 1055.447981024736, 1059.8498536746208, 1072.0316827560746, 1078.5974586795207, 1080.1596946925883, 1091.8283646030502, 1097.0661484812595, 1118.4705083414935, 1117.720323510978], [0.0019383188997990075, 0.003619124181351463, -0.00019448922686304826, 0.002146136306912183, 0.0024991529780620247, 0.0004492457284577256, 0.002609693202556107, 0.004101622152202333, 0.007283190611206969, 0.00431486201003195, 0.0035858399315722433, 0.0074444403474158705, 0.00832395124534302, 0.004548419794656144, 0.0029214443371248233, 0.0042871954795367095, 0.005171725851051523], [2.3548476e6, 2.3688763733924646e6, 2.397098933505211e6, 2.4186185555626564e6, 2.4155920466910847e6, 2.4020372597518614e6, 2.4170457589491825e6, 2.417875650261521e6, 2.4108819047023384e6, 2.3691861646053866e6, 2.369941660283256e6, 2.3694376598297153e6, 2.361971967250797e6, 2.3684969324221406e6, 2.3775663041877183e6, 2.3845556057865433e6, 2.394203259457891e6], [0.0016459319014481277, 0.0021930997763436747, 0.003198125041850544, 0.0038936199477894516, 0.00353963218252728, 0.0027359572095607024, 0.003207869201302407, 0.0030982765559634967, 0.002751528592920426, 0.0009457258419290002, 0.0009893641748172878, 0.0010660361262223672, 0.0008682171467036857, 0.0011800376236361636, 0.0015363537770540527, 0.001810142817083521, 0.002192766801835802], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086171; 524.9840725812496 261.6829481195843 … 138.82196854686285 511.6297273581507; … ; 609.5787705658761 300.71962289684853 … 155.4846903202101 571.6190696236085; 612.3449772516168 302.2352373017731 … 156.16304145378052 571.5844634986778], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086171; 524.2688157949118 261.3264220566293 … 138.6328326086853 510.93266500198104; … ; 574.4316707497453 283.38072739559453 … 146.5197522442146 538.6606506842247; 574.7069023757524 283.6582048865721 … 146.5644059371461 536.4517529608988]), BeforeIT.Data{Float64, Vector{Float64}, Matrix{Float64}}([72422.0, 73081.54630504102, 72957.94126654076, 72612.96290699035, 72229.92300422724, 72368.9045692366, 72217.85323388956, 72337.97312553076, 73228.9350597516, 73476.74329529452, 73052.92457885771, 73030.71397182456, 73615.82915379637, 74879.14141211548, 75610.26867327442, 76402.75342794383, 76411.83021067567], [72422.0, 72958.03520436076, 73013.61932564672, 73080.12523198039, 72935.18514723667, 73381.36849856302, 73825.25748988219, 74366.52886165693, 74821.98921407817, 74960.44141394763, 74635.2489381695, 74659.57425184408, 75234.71195656194, 76036.39979595438, 75611.23208283514, 75489.60164363703, 75279.49012276364], [64900.92049553802, 65501.52033522523, 65418.454433113075, 65101.40919665186, 64772.26286055239, 64916.351018767, 64789.801666935324, 64898.99586305249, 65700.14153391034, 65906.65519614809, 65518.39164870976, 65514.499477589474, 66041.407266561, 67169.97064734006, 67808.46277675846, 68517.55977722959, 68520.22785490252], [64900.92049553802, 65390.819819406024, 65468.37871153043, 65520.245234500806, 65404.70746263133, 65824.55136007674, 66231.87448246287, 66718.9422154111, 67129.41103407496, 67237.49235544153, 66937.51822969662, 66975.71983489799, 67493.72125559334, 68208.08366797453, 67809.3267774092, 67698.65039033254, 67504.83271753893], [40512.94792630534, 40804.56832370006, 40542.33599180089, 40424.56356624425, 40102.77309115557, 40022.68340167569, 39875.413203259755, 39925.33984728134, 40429.015960217715, 40679.46358991401, 40438.29989458567, 40278.281832045686, 40529.176329407266, 41253.825987932636, 41776.502057052865, 42243.173886244236, 42257.12049318306], [40512.94792630534, 40735.606767722405, 40573.27599011314, 40684.63879725375, 40494.34166155593, 40582.61343709967, 40762.94870898574, 41044.95619350439, 41308.52638568284, 41500.894166302074, 41314.19237036589, 41176.639384033486, 41420.45185158951, 41891.40455907584, 41777.034364134975, 41738.291170919314, 41630.9159983786], [14866.888022051655, 14918.121587578595, 14919.686156526113, 14796.94086654482, 14766.612211819855, 14852.204326203784, 14858.33494494903, 14899.682495454314, 15005.37747470853, 15153.11611974557, 15268.315795135619, 15464.67600394025, 15862.001685700543, 16120.198446436652, 16166.239235145846, 16547.384929203803, 16535.465651915743], [14866.888022051655, 14892.909291034199, 14931.072157189603, 14892.138377033563, 14910.79528914211, 15059.991375638534, 15189.047500888973, 15317.510575046235, 15331.810993150624, 15459.099331171297, 15599.027099954506, 15809.596587571783, 16210.82234073617, 16369.336383243537, 16166.445221842003, 16349.61360034766, 16290.428063124415], [15944.236265986641, 16199.97633106621, 15989.307990440426, 15942.652611225969, 15811.514176297915, 15879.862478608124, 15787.182270664214, 15844.827645302717, 16232.761371278884, 16512.649621570006, 15667.447366233371, 16113.677904187798, 16521.511536430615, 16587.234508871905, 16867.759485603347, 16570.139800409073, 16970.23950013282], [15944.236265986641, 16172.597642343697, 16001.51027602994, 16045.221165960613, 15965.899809126975, 16102.026791553784, 16138.568843868097, 16289.160194571568, 16585.895933697513, 16846.085564410307, 16006.803850025703, 16473.07367722222, 16884.835446647558, 16843.5904958409, 16867.974410917606, 16372.096509479448, 16718.759036512354], [15944.236265986641, 16081.749663639275, 16033.75228739467, 15954.248322189087, 15872.609130340215, 15857.044294177207, 15810.301675214258, 15844.92752155148, 16054.696373068806, 16142.933964222411, 16034.851270679923, 15988.309904732434, 16098.014987018294, 16396.43076953575, 16580.227967754086, 16758.686326100084, 16760.19782347559], [15944.236265986641, 16054.570783302901, 16045.988490775033, 16056.891479020607, 16027.591302060953, 16078.889373485072, 16162.202833491021, 16289.262871625062, 16403.957231945154, 16468.904328151046, 16382.165713049046, 16344.909498685583, 16452.02580127809, 16649.837881519663, 16580.439229404426, 16558.38956145865, 16511.82994870368], [3173.2320350842083, 3192.561236963339, 3164.234243440598, 3149.453068276365, 3128.9281592496177, 3094.029094753661, 3075.2083308100123, 3090.8941897606874, 3138.9639390853304, 3175.1632267752793, 3152.381022886676, 3115.4367965944894, 3140.4664070674053, 3215.489184389724, 3272.2016398891847, 3308.9101648584283, 3309.8629947340896], [3173.2320350842083, 3187.165664861991, 3166.649037747749, 3169.7153707485536, 3159.4794112395443, 3137.3155431719506, 3143.655435475376, 3177.5713645208534, 3207.250328056589, 3239.2785304033964, 3220.6615100964877, 3184.922783748356, 3209.5282802746297, 3265.184623554789, 3272.2433335691503, 3269.3626736282754, 3260.8144306033687], [34195.564496956766, 35185.83757916957, 35534.35338715704, 35214.269068939495, 35111.39164228806, 35533.414341930715, 35707.24719290569, 35503.511042319245, 34884.20516673964, 34653.0894999576, 34958.917947743925, 35157.30299879576, 35102.078818422255, 34632.128455774015, 35034.554295645095, 34944.87412358631, 35182.33198089871], [34195.564496956766, 35126.37193089737, 35561.4715293886, 35440.82338035284, 35454.22373020598, 36030.5380792756, 36502.008855534616, 36499.12714636094, 35643.0913626936, 35352.830960870924, 35716.12715959675, 35941.44341442201, 35874.00725275048, 35167.36858072483, 35035.00069829856, 34527.219356884496, 34660.968145241815], [33097.63671130043, 34026.95751647345, 34027.7422593841, 33765.463205964494, 33562.36811733379, 33919.259979182, 34010.3243778895, 33835.3879048271, 33322.424913193085, 33521.57553589243, 33280.056424840775, 33983.224767144464, 34398.93921616416, 33714.24598690001, 34234.78640017305, 33902.8193114998, 34533.32741545486], [33097.63671130043, 33969.450427637086, 34053.71062707481, 33982.69648862056, 33890.07534279384, 34393.8011850049, 34767.3164193956, 34784.225247826485, 34047.335461146344, 34198.46860880676, 34000.90154177315, 34741.17881140498, 35155.40493516167, 34235.30022293103, 34235.222612358324, 33497.61899399396, 34021.58112049375], [29576.147776884874, 29849.84851144664, 29820.94202508453, 29671.608591208733, 29528.286746080397, 29560.938837028603, 29496.204788163035, 29536.7355885403, 29908.088948891233, 30020.452096369398, 29798.497220654892, 29758.316249260133, 29933.929564505044, 30439.579701343606, 30726.158283914538, 31075.763663782218, 31049.757186542032], [34346.71094688275, 34664.55896707997, 34609.43482947299, 34446.67528576899, 34266.89114176611, 34375.2975342875, 34314.36581450403, 34379.934642827924, 34797.66800900369, 34891.4882352058, 34730.00400249869, 34765.65175703119, 35102.39193660125, 35703.847393584794, 36044.50361904692, 36393.65138693315, 36424.54777635049], [28335.329312139664, 28597.54738412414, 28552.071105636896, 28417.797833396107, 28269.479616455304, 28358.912658133886, 28308.64524393258, 28362.73817719894, 28707.35960291752, 28784.75935772046, 28651.5381907927, 28680.946854273723, 28958.75056874009, 29454.938936428873, 29735.9733081225, 30024.01302747014, 30049.50191256457], [978.0617717704338, 987.1128566987283, 988.0775785554533, 983.1253196739766, 977.0849727057841, 980.1146474508973, 979.2310642682655, 982.3256316842966, 994.3845760154092, 994.7148645728872, 989.8904255561662, 990.5314712981783, 1005.0857654547779, 1026.5435524116833, 1037.8008737970317, 1048.1447265141662, 1045.9228920100093], [0.0019383188997990075, 0.00036938535246644477, 0.0032191978462150495, 0.004470341024149338, 0.000741841080931005, 0.0020336219779175657, 0.01105004569489676, 0.010429822388425158, 0.006900444340995238, 0.009997197664004087, 0.005926950215425775, 0.00562650759588057, 0.007777615590119913, 0.008565628557845262, 0.007430215871875756, 0.011785888290797963, 0.009413058847170364], [2.3548476e6, 2.387352675325919e6, 2.3974266853595935e6, 2.3972800018716287e6, 2.401075044669193e6, 2.410915979226509e6, 2.4191242192811794e6, 2.4221463571156347e6, 2.412718309361278e6, 2.4117586071294844e6, 2.439904203366811e6, 2.41959626375175e6, 2.4308920272040917e6, 2.42850959610595e6, 2.424004629263596e6, 2.39504824767119e6, 2.403304415727643e6], [0.0016459319014481277, 0.002890263637583509, 0.0031652160146597996, 0.003027452640118692, 0.002976054460780945, 0.0032055288431278505, 0.003556667947928833, 0.0036555786087778728, 0.0031604366339371306, 0.0031167511782238186, 0.004169895706367202, 0.0031716279835344134, 0.003574491751417682, 0.0034100261564651816, 0.0031456190888069905, 0.0020082258780735234, 0.0024146264015895624], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086171; 522.8778368393615 260.633076309832 … 138.26501490353616 509.57706924020897; … ; 529.7499463180379 267.58693776521216 … 143.5735743786139 529.0702897204018; 531.1039264624951 266.51151015032576 … 143.3411703931548 528.5520875334408], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086171; 521.9941497745068 260.192594686819 … 138.03134080877848 508.71586107090434; … ; 523.4184715083909 264.38878745368015 … 141.8576091844174 522.7469380425401; 523.2335448066333 262.5620998822933 … 141.2170103902222 520.7195213507755]), BeforeIT.Data{Float64, Vector{Float64}, Matrix{Float64}}([72422.0, 73018.69948896328, 72772.17300665523, 74264.27519842036, 75563.61971710762, 76868.0694733309, 77456.52958273244, 78058.69475827902, 79392.2298786129, 80325.91919754611, 81389.76839902315, 82686.91921215298, 83286.1209040756, 84147.96950952787, 85017.43294587874, 85778.89430148689, 86031.8286611994], [72422.0, 72726.21157539496, 71973.4247463063, 72788.14173609263, 73599.76075344012, 74648.17297761395, 74646.06746881983, 75412.44364876792, 76717.10944007484, 77532.18691324574, 78233.24011849813, 79155.89662246671, 79252.98014741705, 79481.4397605557, 80122.74156606528, 80096.29712616776, 80004.09851986766], [64900.92049553802, 65451.542223398064, 65227.23323515231, 66596.4212547454, 67804.14946658837, 68990.16092522054, 69506.50304682605, 70062.53762314195, 71287.97744255343, 72156.93019494362, 73125.47174070899, 74287.70724818151, 74813.36817318335, 75578.96346118153, 76351.30374437917, 77021.24164431881, 77250.5993423296], [64900.92049553802, 65189.36575136103, 64511.298325950294, 65272.699914669676, 66041.95507724701, 66997.77296067071, 66984.50271275472, 67687.36252580614, 68885.929713573, 69647.31502420579, 70289.4565496515, 71115.36058284855, 71190.52152062181, 71387.63854337526, 71955.54565893995, 71918.81296682543, 71838.11685372118], [40512.94792630534, 40753.19526285248, 40637.41927682173, 41211.2474490404, 41616.51351286657, 42249.73749756106, 42687.69946133319, 42864.13048950292, 43415.23381221506, 43742.488642073105, 44274.872697858125, 45112.09467984391, 45527.08423073571, 46040.02402823066, 46559.70123019698, 47063.244743139716, 47164.92064774128], [40512.94792630534, 40589.951913722674, 40191.382466165305, 40392.101214579016, 40534.922088252424, 41029.59440227579, 41138.80277421762, 41411.00277301562, 41952.357917526846, 42221.12662174615, 42557.766352226674, 43185.64939804675, 43322.42951816612, 43486.81753943003, 43879.12901857534, 43945.44445186127, 43860.359786650086], [14866.888022051655, 14762.027695380333, 14981.162056820634, 15314.683236156354, 15583.945242203676, 15445.500210922668, 15803.264679264925, 15817.055175267895, 15805.876775254359, 15793.882237701488, 15545.918709087322, 15763.787661671717, 15880.427880595415, 16181.925891543979, 16267.695287680284, 16763.416243125703, 16861.058308461405], [14866.888022051655, 14702.896065936355, 14816.72863898392, 15010.2768936796, 15178.926654319981, 14999.444884858864, 15229.853026348459, 15280.844571998588, 15273.29790607351, 15244.57163979361, 14943.00346535052, 15090.618424472716, 15111.416186652134, 15284.537172497105, 15331.118574705126, 15652.889667006933, 15679.705883873221], [15944.236265986641, 16286.391872366623, 15831.531936719563, 16288.37626944403, 16555.852299506758, 17150.086487666922, 16805.11096867204, 17208.949919902385, 17628.998561304943, 17862.12254850385, 18274.085449848644, 18415.89090710859, 18324.01444382592, 18338.51388892892, 18927.794806517202, 18758.538115210777, 18577.010708812417], [15944.236265986641, 16221.154161867169, 15657.764848687775, 15964.616060459715, 16125.574355421197, 16654.80389300749, 16195.347944792915, 16625.55299070594, 17034.989620701923, 17240.878634604032, 17565.364087718917, 17629.467523316092, 17436.67176683758, 17321.528914562627, 17838.068724840374, 17515.840636132125, 17275.431873073336], [15944.236265986641, 16072.012471710857, 16031.471454886198, 16304.471888864598, 16555.009951376007, 16846.577646791622, 17002.213700255983, 17114.730111725024, 17401.269674824707, 17613.942610871247, 17856.627107750344, 18178.396142964066, 18322.863178651794, 18514.83574609429, 18704.717925312965, 18853.7850504825, 18893.264475688673], [15944.236265986641, 16007.63349170166, 15855.509828259335, 15980.39175105367, 16124.753899477892, 16360.06017680482, 16385.298926064133, 16534.527308086264, 16814.934056908307, 17001.330385360514, 17164.09597553151, 17402.11462181583, 17435.576251822604, 17488.07262501035, 17627.835003557953, 17604.77774461323, 17569.52765037091], [3173.2320350842083, 3192.658584710525, 3184.069726135513, 3204.5674513563495, 3215.35562246066, 3273.900549647547, 3319.8926733995554, 3332.4478820543786, 3386.6985943092454, 3415.825483181917, 3462.5611956380385, 3533.362249195989, 3568.725836442511, 3607.4057061384983, 3647.219409667596, 3686.4291781648462, 3695.5745998968564], [3173.2320350842083, 3179.8698873670496, 3149.1213379054752, 3140.871020810244, 3131.790211166336, 3179.3525740409846, 3199.4324277480964, 3219.4752794175774, 3272.583817048837, 3297.023208334217, 3328.273157324717, 3382.4752402430427, 3395.9098442452705, 3407.3525599672093, 3437.2387882090266, 3442.2141855907303, 3436.648028743032], [34195.564496956766, 34038.654947567375, 34664.51158538376, 35241.1260784463, 36636.0719698553, 37954.34351703919, 38846.402660123575, 40336.48024276037, 40764.94815765703, 41908.64816827867, 43670.66769289793, 42518.08083638432, 43204.56442145084, 44544.18344051844, 45261.67433794588, 45678.28624910161, 44544.805298600266], [34195.564496956766, 33902.30774834349, 34284.03348254996, 34540.64653676208, 35683.919616633975, 36858.24841867145, 37436.885043904316, 38969.0418564702, 39391.37361315525, 40451.06704690786, 41976.99414751776, 40702.40907918441, 41112.378019318734, 42073.93064202031, 42655.833164655065, 42652.2353478129, 41423.82008049554], [33097.63671130043, 32821.57028920394, 33342.45184909051, 33791.15783466699, 34828.76330732486, 35931.598239859224, 36685.948186661095, 38167.92106915451, 38222.827427817836, 38981.22239901123, 40375.77615066887, 39122.93487285507, 39649.97007253186, 40956.6777396945, 41999.43271646172, 42484.59104909169, 41115.96630241652], [33097.63671130043, 32690.0983144753, 32976.484690080586, 33119.4989693879, 33923.581961187534, 34893.91862119983, 35354.821320443276, 36873.99854342241, 36934.90961738212, 37625.45702980607, 38809.88793431579, 37452.24780255278, 37729.91534355722, 38685.374507954584, 39581.407916710596, 39670.112976646175, 38235.2191042249], [29576.147776884874, 29827.072871136425, 29767.202374331846, 30327.03946404488, 30875.03252762532, 31418.19283527436, 31712.27149954949, 31925.505957142745, 32479.01378203697, 32921.33162836466, 33397.41992411763, 33998.26396307716, 34257.93510297597, 34614.852329793146, 34942.30621436311, 35242.42271930166, 35302.95674077652], [34346.71094688275, 34638.109669481564, 34480.99711018305, 35267.38683640937, 35909.59799134569, 36533.46170763073, 36748.414927586506, 37079.18392335074, 37725.1520070659, 38140.49121052815, 38620.4576702668, 39164.50205030749, 39432.32394389591, 39830.55179047045, 40259.80183152425, 40613.76348541795, 40778.667209246196], [28335.329312139664, 28575.727258212097, 28446.112631831096, 29094.867963739478, 29624.67894305544, 30139.35366326868, 30316.6856437186, 30589.563254495355, 31122.47362269648, 31465.119913473638, 31861.082359965498, 32309.90777130437, 32530.855318904047, 32859.38509258177, 33213.507537939615, 33505.518614122666, 33641.560790816024], [978.0617717704338, 986.3596827802357, 979.0337506372961, 1001.9949542909401, 1019.5189476172068, 1038.506382315349, 1045.816619689956, 1057.8477426485194, 1083.8116534506769, 1095.1073560506704, 1107.5941463246327, 1124.9412347968605, 1123.1091263115634, 1133.5593409178166, 1149.195698491681, 1165.05543959919, 1168.9753923066885], [0.0019383188997990075, 0.00540816628614782, 0.0018729539896980008, 0.004651371057827758, 0.006059897808044168, 0.006307565679219973, 0.001442050053406474, 0.005991329308983717, 0.0016332916781673923, 0.0035042845619506213, 0.003126654583416544, -0.0008862943897435249, 0.0003980086929931126, 0.0033331165411381036, 0.002596623927120456, 0.0039001026075200507, 0.0025090572543815526], [2.3548476e6, 2.3552284253888256e6, 2.373702508369358e6, 2.3801938117114697e6, 2.396516242820811e6, 2.410878093320839e6, 2.431019842959532e6, 2.4548063172744666e6, 2.469851385143312e6, 2.497407076723463e6, 2.510573238052495e6, 2.4870139064584523e6, 2.492367157160956e6, 2.518673032587336e6, 2.528635779421983e6, 2.521932000621488e6, 2.486891539879579e6], [0.0016459319014481277, 0.0016640919192886753, 0.002355396102770746, 0.0025567409148783173, 0.00318103369817459, 0.0036797296994929857, 0.004262150758924599, 0.0050465087676941295, 0.005313211052341814, 0.006097657939338145, 0.006236526619581113, 0.004831464303505282, 0.004694627229498163, 0.005461704882203648, 0.005506013106838252, 0.0049271189706161424, 0.0032532852341422536], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086171; 522.4788774431869 260.43421147483275 … 138.15951774345095 509.188258421457; … ; 608.1927931327774 318.2976857858788 … 162.569898333404 584.6397995248825; 604.6415672082817 320.6709331062464 … 162.69603463245565 585.6195756353245], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086171; 520.3860059210086 259.39100117843947 … 137.6060980116942 507.1486245692854; … ; 567.9018255649446 297.2114087373522 … 151.80012503912053 545.9091478836706; 562.2779878670112 298.20345939316934 … 151.29690704107065 544.5887522488761]), BeforeIT.Data{Float64, Vector{Float64}, Matrix{Float64}}([72422.0, 72935.76175761246, 73254.45371511347, 73783.75430524837, 74028.39792761742, 75257.0158758605, 76051.27924503553, 77062.7704631311, 78261.56672063211, 79120.77702048012, 79794.90724397541, 80525.72027504366, 82055.55948653785, 82830.29783646791, 83057.93005031908, 84019.32672003824, 85148.25053267139], [72422.0, 72813.89922021839, 72807.33115267522, 72994.4667530557, 73777.92864945688, 74544.64336137644, 74825.35566057252, 75649.54249076132, 76043.6209606044, 76562.27515183848, 76637.58779898795, 76718.56664081395, 77498.36079630107, 77437.18797115334, 77048.88493019302, 77770.05726343168, 78917.06005914864], [64900.92049553802, 65381.15861140864, 65675.34659809379, 66169.70659780396, 66397.41834455854, 67514.74320084316, 68260.53954232034, 69212.68605096958, 70281.96320752669, 71057.13966255791, 71662.73009743198, 72316.63892884518, 73700.7457572805, 74373.34956274863, 74552.48946540627, 75424.81385665851, 76429.8411444252], [64900.92049553802, 65271.918456865154, 65274.48456485604, 65461.86885978616, 66172.76788730097, 66875.65796979883, 67160.20032194408, 67943.41811027344, 68290.16073238582, 68759.38891423136, 68827.18408287612, 68897.60021956266, 69607.55640927957, 69530.87457810897, 69158.79288828302, 69814.79525849428, 70836.6681191114], [40512.94792630534, 40667.46968426772, 40787.72932169175, 40927.41955757641, 41020.743795245624, 41589.34458071366, 41799.36003671414, 42074.48818860531, 42892.42511497593, 43400.17064545219, 43815.58356095671, 44269.93227626838, 45105.791013030146, 45756.56074995152, 46013.1257569396, 46466.71060637987, 47149.11985419862], [40512.94792630534, 40599.521658145866, 40538.77361831201, 40489.60634104476, 40881.953325971226, 41195.66559105542, 41125.56701451703, 41302.8984407422, 41676.84668475278, 41996.75397188977, 42081.891540393255, 42176.90618501425, 42600.70722574088, 42777.334963867455, 42684.18475607459, 43010.56537554488, 43698.72428373725], [14866.888022051655, 14861.825809984954, 15027.416987717419, 15122.662446151257, 15160.31042161292, 15376.980039634895, 15513.370704921836, 15193.52381476735, 15118.813506589593, 15035.144201029723, 15122.692107175637, 14956.504447455813, 14757.399136903086, 14983.095665009165, 15279.413428668804, 15377.009054803118, 15494.613827880561], [14866.888022051655, 14836.994372568379, 14935.694275314103, 14960.890666751444, 15109.016700361452, 15231.423671122027, 15263.299868369495, 14914.89494216319, 14690.343828320925, 14548.957816337426, 14524.318457782749, 14249.379940304387, 13937.803238236034, 14007.541029150592, 14173.98394533942, 14233.283238713866, 14360.710436193636], [15944.236265986641, 16150.197851913972, 16021.468795004474, 16198.042614574586, 16274.078088809792, 16591.334648350727, 16664.328940730018, 17311.208318126897, 17554.236691455717, 17903.712869234314, 17952.660882137487, 18217.52841874787, 19008.600775763094, 19026.922234796093, 18239.506471153643, 19338.80574900065, 19325.87106309928], [15944.236265986641, 16123.213776582146, 15923.67869736067, 16024.767162194132, 16219.016022011872, 16434.283366891646, 16395.70500605736, 16993.74394870869, 17056.74671685144, 17324.766547464707, 17242.311221361142, 17356.226845918434, 17952.90179448012, 17788.072626725836, 16919.921245665922, 17900.405647352913, 17911.59439966147], [15944.236265986641, 16052.514734554465, 16118.721196655166, 16196.47461353066, 16247.39544810035, 16526.482792693387, 16699.23761971696, 16904.255912258723, 17210.267574789646, 17443.396823808722, 17604.737514154047, 17773.331804475612, 18129.915956268356, 18323.718271329803, 18360.252016331764, 18572.713175131226, 18842.080284625954], [15944.236265986641, 16025.69387013941, 16020.337500385967, 16023.215934540465, 16192.423659924487, 16370.045389939776, 16430.050967713345, 16594.254504786208, 16722.525741908797, 16879.335586674748, 16908.15446146136, 16933.031282596894, 17123.01734065944, 17130.65452099225, 17031.931135758605, 17191.294236148213, 17463.2076661467], [3173.2320350842083, 3187.010719014205, 3187.272848723987, 3175.2661462619553, 3185.5450430825103, 3240.762412037789, 3258.877430944171, 3266.186857574024, 3344.5053335851157, 3401.6882669061606, 3430.9815627119633, 3462.0856049252334, 3527.364035747911, 3576.691313490442, 3597.8430031565945, 3633.308677187418, 3687.5687424683856], [3173.2320350842083, 3181.6857974179647, 3167.81871957502, 3141.299346012474, 3174.767001279296, 3210.0858028015564, 3206.34531391565, 3206.2893661865487, 3249.7214986218446, 3291.6890212571566, 3295.224718353178, 3298.402600938615, 3331.4614197120504, 3343.811682343233, 3337.5475572190417, 3363.0669860295216, 3417.710664647835], [34195.564496956766, 34093.60484501013, 34948.680498487236, 35898.37075611333, 35473.16571079807, 35533.68072954014, 35828.97178990825, 37095.72407201932, 37171.317763373176, 37120.71272009432, 36883.96248394706, 37239.34144543029, 38148.834310625265, 38977.37908003146, 40368.868827827144, 40113.23719519052, 41085.959693331715], [34195.564496956766, 34036.64056445414, 34735.36454586156, 35514.35482403461, 35353.14503686234, 35197.32381722343, 35251.41961773786, 36415.43818820243, 36117.87646284035, 35920.35275857514, 35424.54037317639, 35478.712746474994, 36030.12573265298, 36439.54820013243, 37448.276488385236, 37129.65665728873, 38079.26913850469], [33097.63671130043, 32837.336433563534, 33530.841887787705, 34362.74106916723, 33899.900088848415, 33834.324122379505, 33754.75222723952, 34612.17393038738, 34475.22635576248, 34338.96341533087, 33979.99179024161, 34157.586312858744, 34965.06574978362, 35913.6598933203, 36842.984434270154, 37276.435885335086, 37907.313905838986], [33097.63671130043, 32782.47115153142, 33326.179984173235, 33995.15224096927, 33785.2024357495, 33514.053084916595, 33210.63584611002, 33977.43302905482, 33498.192732161355, 33228.55594242902, 32635.473793725687, 32542.659076898133, 33023.17719480888, 33575.30884872293, 34177.48150527218, 34503.85365546795, 35133.238198948595], [29576.147776884874, 29794.99819340644, 29949.031680907156, 30151.638007704136, 30253.50104583524, 30756.29392907458, 31111.185786815277, 31559.976568169335, 32129.871423236684, 32542.737546337692, 32862.82266343991, 33184.55302485771, 33871.66086023403, 34261.53088392934, 34345.17512919208, 34693.72062162276, 35167.34295779063], [34346.71094688275, 34600.861421568545, 34737.60259843119, 35022.75192052218, 35143.00171349132, 35741.722670308496, 36122.30041015312, 36616.9248569903, 37103.71525238488, 37458.78061522123, 37741.67164906252, 38069.146921694824, 38747.49111246364, 39026.1499669322, 39117.400948933115, 39621.02122402631, 40135.446235087744], [28335.329312139664, 28544.998220647252, 28657.806875977447, 28893.049195309766, 28992.252798495138, 29486.185259851634, 29800.1540589033, 30208.209042934843, 30609.801095833987, 30902.722709168705, 31136.10198719452, 31406.262344207134, 31965.882334084385, 32195.770151270764, 32271.05033250997, 32686.526689623322, 33110.916731434576], [978.0617717704338, 985.2989964337182, 988.7123187552894, 995.3166695775928, 1000.9155852320238, 1016.7266014600277, 1027.0533453519588, 1035.7846258099635, 1048.376531905196, 1055.6215009989926, 1058.2357849295718, 1062.93898229268, 1081.5937845828792, 1085.6687118870811, 1089.913387281058, 1110.0720110094733, 1127.051951546837], [0.0019383188997990075, 0.0028240424329275537, 0.002940042516952346, 0.006414046659498185, 0.0058078781448576144, 0.009281913301443456, 0.004395989216741336, 0.0031368330416847723, 0.0033304405502221357, 0.0016597425796032184, 0.0019333532135568099, 0.002750196076073186, 0.003591801796716698, 0.004106100788129119, -0.00011906560628494045, 0.002519219729573585, 0.0039949370606988666], [2.3548476e6, 2.351728336881796e6, 2.373772551429636e6, 2.3892977085199975e6, 2.381031104283676e6, 2.3866873311728914e6, 2.3928916363912094e6, 2.4181967331194407e6, 2.421471841990502e6, 2.406358295434522e6, 2.3865750769565916e6, 2.39198708931776e6, 2.3877253018930294e6, 2.397155827839663e6, 2.401299847412943e6, 2.3979073911424717e6, 2.417547963073704e6], [0.0016459319014481277, 0.0014585957200227294, 0.002340068340284227, 0.0029573177703408576, 0.0025313473478653886, 0.0027906030310405144, 0.0029405764527413044, 0.003835027705432286, 0.003760750364730465, 0.002906507394648524, 0.0019270568722238757, 0.0020705522070072688, 0.001824440289214702, 0.0021720791483181103, 0.002178578095908398, 0.001936143454443298, 0.0026901185720104516], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086171; 521.9170274189794 260.15415236749084 … 138.01094728110309 508.64070052453195; … ; 627.0353802422181 316.7977594485383 … 159.69476098190873 577.5057370203372; 633.9767202250364 322.00047623305215 … 162.62010905742142 587.3130419714762], [518.0834390395164 258.24326637797435 … 136.99722836422484 504.9046295086171; 521.0449979544505 259.71948157833145 … 137.78035581515343 507.7908534139498; … ; 580.3971458867306 293.2346741522239 … 147.81683204408586 534.5514656132141; 587.5819948514871 298.4363244457725 … 150.71949021883444 544.3331873154592])])

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/previews/PR37/examples/change_expectations-af36c358.svg b/previews/PR37/examples/change_expectations-3a8b2f52.svg similarity index 86% rename from previews/PR37/examples/change_expectations-af36c358.svg rename to previews/PR37/examples/change_expectations-3a8b2f52.svg index 894f66d..8943836 100644 --- a/previews/PR37/examples/change_expectations-af36c358.svg +++ b/previews/PR37/examples/change_expectations-3a8b2f52.svg @@ -1,82 +1,82 @@ - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/previews/PR37/examples/change_expectations-f0ebbb36.svg b/previews/PR37/examples/change_expectations-6930c3c4.svg similarity index 86% rename from previews/PR37/examples/change_expectations-f0ebbb36.svg rename to previews/PR37/examples/change_expectations-6930c3c4.svg index 13285d4..071d626 100644 --- a/previews/PR37/examples/change_expectations-f0ebbb36.svg +++ b/previews/PR37/examples/change_expectations-6930c3c4.svg @@ -1,284 +1,284 @@ - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + - + - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + - + - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/previews/PR37/examples/change_expectations.html b/previews/PR37/examples/change_expectations.html index b8e07a7..d30e3c9 100644 --- a/previews/PR37/examples/change_expectations.html +++ b/previews/PR37/examples/change_expectations.html @@ -35,7 +35,7 @@ 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 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.

+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/previews/PR37/examples/get_parameters_and_initial_conditions.html b/previews/PR37/examples/get_parameters_and_initial_conditions.html index 56a9485..85b9758 100644 --- a/previews/PR37/examples/get_parameters_and_initial_conditions.html +++ b/previews/PR37/examples/get_parameters_and_initial_conditions.html @@ -31,4 +31,4 @@ ".jld2", init_conds, ) -end +end diff --git a/previews/PR37/examples/multithreading_speedup.html b/previews/PR37/examples/multithreading_speedup.html index 4da5467..5ee20fe 100644 --- a/previews/PR37/examples/multithreading_speedup.html +++ b/previews/PR37/examples/multithreading_speedup.html @@ -7,5 +7,5 @@ @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.139743 seconds (3.52 M allocations: 6.415 GiB, 17.71% gc time)
-  2.719459 seconds (3.41 M allocations: 6.146 GiB, 14.22% gc time)

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

+@time data = Bit.run_one_sim!(model; multi_threading = true);
  5.409088 seconds (3.52 M allocations: 6.415 GiB, 20.07% gc time)
+  2.581498 seconds (3.41 M allocations: 6.146 GiB, 8.52% gc time)

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

diff --git a/previews/PR37/examples/scenario_analysis_via_overload-ee533d2d.svg b/previews/PR37/examples/scenario_analysis_via_overload-1da6f893.svg similarity index 86% rename from previews/PR37/examples/scenario_analysis_via_overload-ee533d2d.svg rename to previews/PR37/examples/scenario_analysis_via_overload-1da6f893.svg index 2bdeab2..c501598 100644 --- a/previews/PR37/examples/scenario_analysis_via_overload-ee533d2d.svg +++ b/previews/PR37/examples/scenario_analysis_via_overload-1da6f893.svg @@ -1,46 +1,46 @@ - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/previews/PR37/examples/scenario_analysis_via_overload.html b/previews/PR37/examples/scenario_analysis_via_overload.html index b721efe..9eddc86 100644 --- a/previews/PR37/examples/scenario_analysis_via_overload.html +++ b/previews/PR37/examples/scenario_analysis_via_overload.html @@ -56,4 +56,4 @@ titlefont = 10, xlabel = "quarters", ylabel = "GDP", -)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.

+)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/previews/PR37/examples/scenario_analysis_via_shock-f8be1bf5.svg b/previews/PR37/examples/scenario_analysis_via_shock-9ded59bd.svg similarity index 86% rename from previews/PR37/examples/scenario_analysis_via_shock-f8be1bf5.svg rename to previews/PR37/examples/scenario_analysis_via_shock-9ded59bd.svg index e7f0a9f..fb1787e 100644 --- a/previews/PR37/examples/scenario_analysis_via_shock-f8be1bf5.svg +++ b/previews/PR37/examples/scenario_analysis_via_shock-9ded59bd.svg @@ -1,48 +1,48 @@ - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/previews/PR37/examples/scenario_analysis_via_shock.html b/previews/PR37/examples/scenario_analysis_via_shock.html index e12e2b5..a9aa2c3 100644 --- a/previews/PR37/examples/scenario_analysis_via_shock.html +++ b/previews/PR37/examples/scenario_analysis_via_shock.html @@ -50,4 +50,4 @@ titlefont = 10, xlabel = "quarters", ylabel = "GDP", -)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.

+)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/previews/PR37/index.html b/previews/PR37/index.html index 3c11371..3a09a65 100644 --- a/previews/PR37/index.html +++ b/previews/PR37/index.html @@ -147,17 +147,17 @@ [6e34b625] Bzip2_jll v1.0.8+2 [83423d85] Cairo_jll v1.18.2+1 [ee1fde0b] Dbus_jll v1.14.10+0 - [2702e6a9] EpollShim_jll v0.0.20230411+0 - [2e619515] Expat_jll v2.6.4+0 + [2702e6a9] EpollShim_jll v0.0.20230411+1 + [2e619515] Expat_jll v2.6.4+1 ⌅ [b22a6f82] FFMPEG_jll v4.4.4+1 [f5851436] FFTW_jll v3.3.10+1 [a3f928ae] Fontconfig_jll v2.13.96+0 - [d7e528f0] FreeType2_jll v2.13.3+0 + [d7e528f0] FreeType2_jll v2.13.3+1 [559328eb] FriBidi_jll v1.0.14+0 [0656b61e] GLFW_jll v3.4.0+1 [d2c73de3] GR_jll v0.73.8+0 [78b55507] Gettext_jll v0.21.0+0 - [f8c6e375] Git_jll v2.46.2+0 + [f8c6e375] Git_jll v2.47.1+0 [7746bdde] Glib_jll v2.82.2+0 [3b182d85] Graphite2_jll v1.3.14+1 ⌃ [0234f1f7] HDF5_jll v1.14.2+1 @@ -171,7 +171,7 @@ [dd4b983a] LZO_jll v2.10.2+1 ⌅ [e9f186c6] Libffi_jll v3.2.2+1 [d4300ac3] Libgcrypt_jll v1.11.0+0 - [7e76a0d4] Libglvnd_jll v1.6.0+0 + [7e76a0d4] Libglvnd_jll v1.7.0+0 [7add5ba3] Libgpg_error_jll v1.50.0+0 [94ce4f54] Libiconv_jll v1.17.0+1 [4b2f31a3] Libmount_jll v2.40.2+0 @@ -201,18 +201,18 @@ [ffd25f8a] XZ_jll v5.6.3+0 [f67eecfb] Xorg_libICE_jll v1.1.1+0 [c834827a] Xorg_libSM_jll v1.2.4+0 - [4f6342f7] Xorg_libX11_jll v1.8.6+0 + [4f6342f7] Xorg_libX11_jll v1.8.6+1 [0c0b7dd1] Xorg_libXau_jll v1.0.11+1 [935fb764] Xorg_libXcursor_jll v1.2.0+4 [a3789734] Xorg_libXdmcp_jll v1.1.4+1 - [1082639a] Xorg_libXext_jll v1.3.6+0 + [1082639a] Xorg_libXext_jll v1.3.6+1 [d091e8ba] Xorg_libXfixes_jll v5.0.3+4 [a51aa0fd] Xorg_libXi_jll v1.7.10+4 [d1454406] Xorg_libXinerama_jll v1.1.4+4 [ec84b674] Xorg_libXrandr_jll v1.5.2+4 [ea2f1a96] Xorg_libXrender_jll v0.9.11+0 [14d82f49] Xorg_libpthread_stubs_jll v0.1.1+1 - [c7cfdc94] Xorg_libxcb_jll v1.17.0+0 + [c7cfdc94] Xorg_libxcb_jll v1.17.0+1 [cc61e674] Xorg_libxkbfile_jll v1.1.2+0 [e920d4aa] Xorg_xcb_util_cursor_jll v0.1.4+0 [12413925] Xorg_xcb_util_image_jll v0.4.0+1 @@ -226,7 +226,7 @@ [3161d3a3] Zstd_jll v1.5.6+1 [35ca27e7] eudev_jll v3.2.9+0 [214eeab7] fzf_jll v0.56.3+0 - [1a1c6b14] gperf_jll v3.1.1+0 + [1a1c6b14] gperf_jll v3.1.1+1 [477f73a3] libaec_jll v1.1.2+0 [a4ae2306] libaom_jll v3.9.0+0 [0ac62f75] libass_jll v0.15.2+0 @@ -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.