Back to home

Main loop

Firms: makeProduction Firms make production.
Office for statistics: conputeVariables (workers productivities, product diffusion indicator,... )
Firms: setWorkersWage Firms pay wage to workers. Productivities computed in the previous step can be used to set the wage.
Bank: updateConsumersAccounts Interest and ask for refund.
Consumers: payBackBankDebt In the previous steps banks can ask to reduce debt. Now, consumers pay back with their income or their positive bank account. Consumers disposableIncome is reduced according to the amount they pay back. If a consumers has not enough resources, banks take note of the unpaid amount and the consumer's disposable income is set to the subsistence level.
Bank: resetConsumersDemandedAndAllowedCredit code: demandedCredit=0;allowedCredit=0
Consumers: stepStudentState studens evolve their position.
Consumption
goods market
Consumers: stepDesiredConsumption compute the desired consumption. Consumers with a negative bank account or those with a positive bank account but who want to consume more than their bank account set the desired credit accordingly.
Bank: setAllowedConsumersCredit set maximum credit consumers can have
Consumers: adjustConsumptionAccordingToExtendedCredit Those consumers who are credit constrained revise their desired consumption. Those who have negative desired consumption activate the bailout procedure
Office for statistics: computeDesiredDemand Compute the desired demand for each type of product (the industry desired demand) and the aggregate desired demand
allocateDesiredDemand Each industry allocates desired demand to firms. Firms will use this figure to set production inputs for the next period
matchDemandAndSupply This mimic the good market functioning. Consumers who cannot find the desired product redirect their demand to other type of product. The desired demand of each consumer is thus revised and becomes effective demand.
computeDemand Compute the effective demand for each type of product (the industry desired demand) and the aggregate desired demand
allocateDemand Each industry allocates effective demand to firms. Firms will use this figure to set production inputs for the next period.
Consumers updateBankAccountAccordingToEffectiveConsumption Each consumers withraw what needed or deposits what saved.
Production
goods demand
Firms computeEconomicResultAndCapitalDepreciation compute cashOnHand as the difference of production an wages.
OfficeForStatistics performFirmsExit performConsumersExit
Banks removeExitedFirmsBankAccounts close the bank accounts of firm that exit
Banks updateFirmsAccounts interest and refund.
Firms payBackBankDebt firms refund debt.
Firms stepProductInnovationProcess Each firm knows if it can produce an improved product
Bank: resetFirmsDemandedAndAllowedCredit code: demandedCredit=0;allowedCredit=0
Firms setDesiredCredit Credit can be asked to increase production capital or to restore a negative cash flow
Banks setAllowedFirmsCredit Banks decide how many credit to allow to firms
Firms setPossibleInvestment adjust possible investment according to the allowed credit.
OfficeForStatistics performFirmsEntry In this model, the number of firm is constant. For each firm exit in the performFirmsExit() method, a new firm is created and added to the context. The program checks if an unemployed exists for each entering firm. If yes, The production capital of the new firm is positive and equal to the parameter in the context, else, the production capital is set to zero. The production capital of new firms is considered as demand for investments.
Labor
market
Firms jettisoningCurricula empty the list of curricula
OfficeForLabor jettisoningCurricula empty the list of curricula and vacancies
Firms laborForceDownwardAdjustment Account for retired workers and fire if needed. Fired workers set the isWorking flag to false.
Consumers sendJobApplications Unemployed consumers (those with isWorking=flalse) send curricula to firms and to office for labor
Firms laborForceUpwardAdjustment The execution of this action depends on the model parametrization. If this action is executed, firms hire new workers directly according to their needs. Some firms could not find all the desired workers and some workers could not find a job. Unsatisfied positions could be fulfilled if the following action is active in the simulation parametrization.
OfficeForStatistics activateOfficeForLabor The execution of this action depends on the model parametrization. If the previous action was performed, this action aims at fulfilling residual vacancies of the direct hiring process. Else, The office for labor allocate unemployed people to firms' vacancies.
Production
goods market
Firms adjustProductionCapitalAndBankAccount adjust production capital according to the allowed credit. Excess cashOnHand increase bank account. If firms cannot refund when asked by banks we have bad debt.
OfficeForStatistics computeInvestments Sum of investment of incumbent and new firms.
allocateInvestments The market for unused capital is activated. If unused capital exists, the demand for new capital is reduced by the unused capital. The remainder is considered as demand of newly produced goods.
OfficeForStatistics performConsumersTurnover performConsumersTurnover
OfficeForStatistics setupNewFirmsToComputeProductAttractiveness update product attractiveness

Back to home