These applications are based on an 'open economic system' (the Netherlands). By using this program, the student can learn the operation of economic mechanisms in a very active way. He or she will get a feedback on the decisions that he or she makes based on his hypotheses about the operation of the economic system, enabling him to perfect his mental model based on (almost) concrete experience. The model is built by prof. Miltenburg (EUR). It is a product of Enschede UT in cooporation with the Rotterdam University (EUR). The University of Moskou and prof. Miltenburg has used our versions there in the period 1993 - 1996.
In dit voorbeeld is de economie zien van een klein land met een open martkeconomie. Bijvoorbeeld Nederland. U bent een tweede kamerlid, minister of hoge ambtenaar en kunt uzelf, hier, op uw in- zichten tr- ainen. Test uw gedachten en hypotheses over de macroeconomie van uw land. Kloppen zij met de werkelijkheid?
Het model bestaat uit circa 60 variabelen en een tiental interventiemogelijkheden. Vijf belangrijke variabelen worden grafisch weergegeven in de tijd. U ziet ook vijf interventie-mogelijkheden; ieder voor jaar 1, jaar 2, jaar 3 en jaar 4 van de regeer-periode. Als u die interventies allemaal op nul laat staan noemen we dat 'het ongewijzigd beleid'. Dan "grijpt" u dus niet in in de economie van uw land. Dat mag. Maar probeer maar eens wat andere waarden. U ziet steeds andere waarden en merkt zelf het verschil.
Er worden dan vijf variabelen vier jaar in de tijd 'ge-monitor-d'. U ziet de 'procentuele groei van het nationaal inkomen', de 'procentuele inflatie', de 'ontwikkeling van de reele loonvoet', de 'werkloosheid' en het 'saldo op de betalingsbalans'.
De doelvariabelen (hier ook wel de uitgangsvariabelen genoemd) zijn:
waarbij de rente onder een minimaal niveau kan komen of de rente stijgt tot woekerhoogte. Zie hiervoor ook het losse, bijgeleverde instructieboekje van Van Miltenburg. U kunt nu zelf met de instumentvariabelen van deze applicatie experimenteren met de Nederlandse economie.
De instumentvariabelen (hier ook wel de ingangsvariabelen of soms ook wel parameters genoemd) zijn:
Let op: U kunt er strafpunten voor krijgen.
We geven u een paar ideeen:
Experiment 2: 'financieringstekort' op -1.2 Als u in jaar 2 de parameter 'financieringstekort' op -1.2 zet dan ziet u voor de groei van het bruto nationaal product de reeks: in jaar 1: 4.22; in jaar 2: 4.73; in jaar 3: -1.21 en in jaar 4: 0.48 [in procenten]. De groei is in jaar 2 het hoogst en neemt daarna dan af (en is negatief).
Experiment 3: 'financieringstekort' op +1.5 : Als u in ale jaren de parameters van 'financieringstekort' op +1.5 zet dan ziet u voor de groei van het bruto nationaal product de reeks: in jaar 1: 1.51; in jaar 2: 3.46; in jaar 3: 2.77 en in jaar 4: 1.22 [in procenten]. De groei neemt dan, anders dan in experiment 2, niet meteen toe; maar is op het eind ook anders (positief).
|
Hier kan je intervenieren in de instumentvariabelen: p1. "Tekort" in jaar 1 in jaar 2 in jaar 3 in jaar 4 p2. "Loon" in jaar 1 in jaar 2 in jaar 3 in jaar 4 p3. "Lasten" in jaar 1 in jaar 2 in jaar 3 in jaar 4 p4. "Koopkracht" in jaar 1 in jaar 2 in jaar 3 in jaar 4 p5. "Devaluatie" in jaar 1 in jaar 2 in jaar 3 in jaar 4 |
Tijd (t): . De tijd loopt van jaar 1 tot jaar 4.
|
[jaar 1]: |
[jaar 2]: |
[jaar 3]: |
[jaar 4]: |
![]() |
[jaar 1]: |
[jaar 2]: |
[jaar 3]: |
[jaar 4]: |
Je ziet - bij 'ongewijzigd beleid' - dat dit precies de waarden zijn van de doelvariabelen in jaar 4 die je ook in figuur 2, 3 en 4 ziet bij Groei: 0.6, Inflatie: -1.7, Loonvoet: 3.8 en Werkloosheid: -7.6
Andere educatieve applicatie:
www.rikmin.nl/Macroeconomie versie 1.2x (2007)
Enschede, 1 juli 1999 (met MacTHESIS); update jan. 2004 (met JavaTHESIS); update: 31 maart 2026 (met JavaScript en AI).
v2:
v3:
v4:
v5:
v6:
v7:
v8:
v9:
v10:
v11:
v12:
#myAnimation1 { width: 15px; height: 5px; position: absolute; background-color: blue; // temperatuur } #myAnimation2 { width: 15px; height: 5px; position: absolute; background-color: red; // algen (F) } #myAnimation3 { width: 15px; height: 5px;tijdseen position: absolute; background-color: yellow; // xxxx / xxx } #myAnimation4 { width: 15px; height: 5px; position: absolute; background-color: green; // xxxx }
import java.applet.*;
import java.awt.Graphics;
import java.awt.*;
import java.lang.System;
import java.lang.*;
import java.net.*;
import SimLib.*;
public class Economie extends thesisApplet
{
boolean useBackgroundImage = true;
BaseGraphView graphViewer;
YGraph Graph1,Graph2,Graph3,Graph4,Graph5; // 5 (No) grafieken (output)
TextField Text1,Text2,Text3,Text4,Text5,Text6; // 6 (Nt) tellertjes
Label Label1,Label2,Label3,Label4,Label5,Label6; // 6 (Nt) tellertjes
NumberChooser Input1,Input2,Input3,Input4,Input5,Input6,Input7,Input8,
Input9,Input10,Input11,Input12,Input13,Input14,Input15,Input16,
Input17,Input18,Input19,Input20; // 20 (Ni) scrollbars (input)
int j,jjj,i;
double t,dt,Tmin,Tmax,K1,K2,H1,H2,H3,H4,H5,H6,A,B,C,F,G,y1,y2,y3,y4,y5,k;
double x1 [] = new double[6];
double x2 [] = new double[6];
double x3 [] = new double[6];
double x4 [] = new double[6];
double x5 [] = new double[6];
double x6 [] = new double[6];
double x7 [] = new double[6];
double x8 [] = new double[6];
double x9 [] = new double[6];
double x10 [] = new double[6];
double x11 [] = new double[6];
double x12 [] = new double[6];
double x13 [] = new double[6];
double x14 [] = new double[6];
double x15 [] = new double[6];
double x16 [] = new double[6];
double x17 [] = new double[6];
double x18 [] = new double[6];
double x19 [] = new double[6];
double x20 [] = new double[6];
double x21 [] = new double[6];
double x22 [] = new double[6];
double x23 [] = new double[6];
double x24 [] = new double[6];
double x25 [] = new double[6];
double x26 [] = new double[6];
double x27 [] = new double[6];
double x28 [] = new double[6];
double x29 [] = new double[6];
double x30 [] = new double[6];
double x31 [] = new double[6];
double x32 [] = new double[6];
double x33 [] = new double[6];
double x34 [] = new double[6];
double x35 [] = new double[6];
double x36 [] = new double[6];
double x37 [] = new double[6];
double x38 [] = new double[6];
double x39 [] = new double[6];
double x40 [] = new double[6];
double x41 [] = new double[6];
double x42 [] = new double[6];
double x43 [] = new double[6];
double x44 [] = new double[6];
double x45 [] = new double[6];
double x46 [] = new double[6];
double x47 [] = new double[6];
double x48 [] = new double[6];
double x49 [] = new double[6];
double x50 [] = new double[6];
double x51 [] = new double[6];
double x52 [] = new double[6];
double e1 [] = new double[8];
double e2 [] = new double[8];
double e3 [] = new double[8];
double e4 [] = new double[8];
double e5 [] = new double[8];
double e6 [] = new double[8];
double e7 [] = new double[8];
double e8 [] = new double[8];
double e9 [] = new double[8];
double e10 [] = new double[8];
double e11 [] = new double[8];
double e12 [] = new double[8];
double e13 [] = new double[8];
double e14 [] = new double[8];
double e15 [] = new double[8];
double e16 [] = new double[8];
double e17 [] = new double[8];
double e18 [] = new double[8];
double e19 [] = new double[8];
double e20 [] = new double[8];
double e21 [] = new double[8];
double e22 [] = new double[8];
double e23 [] = new double[8];
double e24 [] = new double[8];
double e25 [] = new double[8];
double e26 [] = new double[8];
double e27 [] = new double[8];
double e28 [] = new double[8];
double e29 [] = new double[8];
double e30 [] = new double[8];
double e31 [] = new double[8];
double e32 [] = new double[8];
double e33 [] = new double[8];
double e34 [] = new double[8];
double e35 [] = new double[8];
double e36 [] = new double[8];
double e37 [] = new double[8];
double e38 [] = new double[8];
double e39 [] = new double[8];
double e40 [] = new double[8];
double e41 [] = new double[8];
double e42 [] = new double[8];
double e43 [] = new double[8];
double e44 [] = new double[8];
double e45 [] = new double[8];
double e46 [] = new double[8];
double e47 [] = new double[8];
double e48 [] = new double[8];
double e49 [] = new double[8];
double e50 [] = new double[8];
double e51 [] = new double[8];
double e52 [] = new double[8];
double m1 [] = new double[6];
double m2 [] = new double[6];
double m3 [] = new double[6];
double m4 [] = new double[6];
double m5 [] = new double[6];
public void readParameters()
{
String useBackgroundImageString = getParameter("useBackgroundImage");
if (useBackgroundImageString != null)
{useBackgroundImageString.trim();
useBackgroundImage = useBackgroundImageString.equalsIgnoreCase("true");
}
}
public void setupGraphs(Container screenView)
{
initModel();
screenView.setLayout(new BorderLayout());
if (useBackgroundImage)
{ graphViewer = new ImageGraphView((thesisApplet)this,Tmin,Tmax);}
else
{ graphViewer = new ArrayGraphView((thesisApplet)this,Tmin,Tmax);}
screenView.add("Center", graphViewer);
Panel temp_panel1 = new Panel();
temp_panel1.setLayout(new GridLayout(5,1,6,0)); // lay out
temp_panel1.add(Input1 = new NumberChooser("Tekort","[%Nat.Y]",0.0,0.0,1.0));
temp_panel1.add(Input2 = new NumberChooser("m1","[xx]",0.0,0.0,1.0));
temp_panel1.add(Input3 = new NumberChooser("m1","[xx]",0.0,0.0,1.0));
temp_panel1.add(Input4 = new NumberChooser("m1","[xx]",0.0,0.0,1.0));
temp_panel1.add(Input5 = new NumberChooser("Loon","[%-en]",0.0,0.0,1.0));
temp_panel1.add(Input6 = new NumberChooser("m2","[xx]",0.0,0.0,1.0));
temp_panel1.add(Input7 = new NumberChooser("m2","[xx]",0.0,0.0,1.0));
temp_panel1.add(Input8 = new NumberChooser("m2","[xx]",0.0,0.0,1.0));
temp_panel1.add(Input9 = new NumberChooser("Lasten","[% Y]",0.0,0.0,1.0));
temp_panel1.add(Input10 = new NumberChooser("m3","[xx]",0.0,0.0,1.0));
temp_panel1.add(Input11 = new NumberChooser("m3","[xx]",0.0,0.0,1.0));
temp_panel1.add(Input12 = new NumberChooser("m3","[xx]",0.0,0.0,1.0));
temp_panel1.add(Input13 = new NumberChooser("Koopkracht","[% Y]",0.0,0.0,1.0));
temp_panel1.add(Input14 = new NumberChooser("m4","[xx]",0.0,0.0,1.0));
temp_panel1.add(Input15 = new NumberChooser("m4","[xx]",0.0,0.0,1.0));
temp_panel1.add(Input16 = new NumberChooser("m4","[xx]",0.0,0.0,1.0));
temp_panel1.add(Input17 = new NumberChooser("Defaluatie","[%]",0.0,0.0,1.0));
temp_panel1.add(Input18 = new NumberChooser("m5","[xx]",0.0,0.0,1.0));
temp_panel1.add(Input19 = new NumberChooser("m5","[xx]",1.0,0.0,1.0));
temp_panel1.add(Input20 = new NumberChooser("m5","[xx]",0.0,0.0,1.0));
screenView.add("West", temp_panel1);
Graph1 = new YGraph("y1",Color.red,-8.0,8.0); // attributes graph 1
Graph2 = new YGraph("y2",Color.green,-8.0,8.0); // attributes graph 2
Graph3 = new YGraph("y3",Color.orange,-8.0,8.0); // attributes graph 3
Graph4 = new YGraph("y4",Color.blue,-8.0,8.0); // attributes graph 4
Graph5 = new YGraph("y5",Color.yellow,-8.0,8.0); // attributes graph 5
Panel temp_panel2 = new Panel();
temp_panel2.setLayout(new GridLayout(8,1));
temp_panel2.add(Label1 = new Label("Groei: ")); // teller 1
temp_panel2.add(Text1 = new TextField(" "));
Text1.setEditable(false);
Text1.setForeground(Color.red);
Text1.setBackground(Color.black);
temp_panel2.add(Label2 = new Label("Inflatie")); // teller 2
temp_panel2.add(Text2 = new TextField(" "));
Text2.setEditable(false);
Text2.setForeground(Color.green);
Text2.setBackground(Color.black);
temp_panel2.add(Label3 = new Label("Loonvoet")); // teller 3
temp_panel2.add(Text3 = new TextField(" "));
Text3.setEditable(false);
Text3.setForeground(Color.orange);
Text3.setBackground(Color.black);
temp_panel2.add(Label4 = new Label("Werkloosh. ")); // teller 4
temp_panel2.add(Text4 = new TextField(" "));
Text4.setEditable(false);
Text4.setForeground(Color.blue);
Text4.setBackground(Color.black);
temp_panel2.add(Label5 = new Label("Werkloosh. ")); // teller 5
temp_panel2.add(Text5 = new TextField(" "));
Text5.setEditable(false);
Text5.setForeground(Color.yellow);
Text5.setBackground(Color.black);
temp_panel2.add(Label6 = new Label("Jaar: ")); // teller 6
temp_panel2.add(Text6 = new TextField(" "));
Text6.setEditable(false);
Text6.setForeground(Color.white);
Text6.setBackground(Color.black);
screenView.add("East", temp_panel2);
Input1.setColor(Color.black); // color definition scrollbars
Input2.setColor(Color.black);
Input3.setColor(Color.black);
Input4.setColor(Color.black);
Input5.setColor(Color.red);
Input6.setColor(Color.red);
Input7.setColor(Color.red);
Input8.setColor(Color.red);
Input9.setColor(Color.blue);
Input10.setColor(Color.blue);
Input11.setColor(Color.blue);
Input12.setColor(Color.blue);
Input13.setColor(Color.red);
Input14.setColor(Color.red);
Input15.setColor(Color.red);
Input16.setColor(Color.red);
Input17.setColor(Color.black);
Input18.setColor(Color.black);
Input19.setColor(Color.black);
Input20.setColor(Color.black);
graphViewer.addYGraph(Graph1); // definition graph 1
graphViewer.addYGraph(Graph2); // definition graph 2
graphViewer.addYGraph(Graph3); // definition graph 3
graphViewer.addYGraph(Graph4); // definition graph 4
graphViewer.addYGraph(Graph5); // definition graph 5
}
public void initModel()
{
k = 0.0;
y1=0.0;
y2=0.0;
y3=0.0;
y4=0.0;
y5=0.0;
x1[1]=1.169;x1[2]=1.461; x1[3]=1.827;x1[4]=2.283;x1[5]=2.854;
x2[1]= 7.805;x2[2]= 8.195; x2[3]= 8.605;x2[4]= 9.035;x2[5]= 9.487;
x3[1]= 37.879;x3[2]= 41.667; x3[3]= 45.834;x3[4]= 49.5;x3[5]= 52.0;
x4[1]= 1.106;x4[2]= 1.178; x4[3]= 1.2;x4[4]= 1.3;x4[5]= 1.32;
x5[1]= 12.95;x5[2]= 14.893; x5[3]= 17.126;x5[4]= 19.695;x5[5]= 22.65;
x6[1]= 5.21;x6[2]= 6.773; x6[3]= 8.805;x6[4]= 11.446;x6[5]= 14.88;
x7[1]= 1.288;x7[2]= 1.393; x7[3]= 1.488;x7[4]= 1.6;x7[5]= 1.72;
x8[1]= 3.57; x8[2]= 3.891; x8[3]= 4.242;x8[4]= 4.623; x8[5]= 5.039;
x9[1]= 0.52; x9[2]= 0.598; x9[3]= 0.688;x9[4]= 0.791; x9[5]= 0.909;
x10[1]= 0.55; x10[2]= 0.578; x10[3]= 0.606;x10[4]= 0.637; x10[5]= 0.669;
x11[1]= 5.63; x11[2]= 5.771; x11[3]= 5.915;x11[4]= 6.063; x11[5]= 6.214;
x12[1]= 0.0; x12[2]= 0.0; x12[3]= 0.0;x12[4]= 0.0; x12[5]= 0.0;
x13[1]= 0.0; x13[2]= 0.0; x13[3]= 0.0;x13[4]= 0.0; x13[5]= 0.0;
x14[1]= 0.0; x14[2]= 0.0; x14[3]= 0.0;x14[4]= 0.0; x14[5]= 0.0;
x15[1]= 2.22; x15[2]= 2.314; x15[3]= 2.426;x15[4]= 2.547; x15[5]= 2.674;
x16[1]= 0.0; x16[2]= 0.0; x16[3]= 0.0;x16[4]= 0.0; x16[5]= 0.0;
x17[1]= 6.66; x17[2]= 5.91; x17[3]= 8.729;x17[4]= 10.038; x17[5]= 11.543;
x18[1]= 1.045; x18[2]= 0.852; x18[3]= 1.152;x18[4]= 1.21; x18[5]= 1.27;
x19[1]= 7.53; x19[2]= 7.41; x19[3]= 7.291;x19[4]= 7.174; x19[5]= 7.06;
x20[1]= 1.147; x20[2]= 1.222; x20[3]= 1.37;x20[4]= 1.47; x20[5]= 1.58;
x21[1]= 7.79; x21[2]= 8.764;x21[3]= 9.859;x21[4]= 11.092;x21[5]= 17.5;
x22[1]= 4.99; x22[2]= 5.988;x22[3]= 12.186;x22[4]= 18.623;x22[5]= 20.347;
x23[1]= 15.73; x23[2]= 15.989; x23[3]= 20.803; x23[4]= 23.923; x23[5]= 27.512;
x24[1]= 3.48; x24[2]= 4.002; x24[3]= 4.602; x24[4]= 5.293; x24[5]= 6.087;
x25[1]= -0.33; x25[2]= -0.429; x25[3]= -0.558; x25[4]= -0.725; x25[5]= -0.943;
x26[1]= -0.06; x26[2]= -0.06; x26[3]= -0.06; x26[4]= -0.06; x26[5]= -0.06;
x27[1]= -0.01; x27[2]= -0.01; x27[3]= -0.01; x27[4]= -0.01; x27[5]= -0.01;
x28[1]= 9.97; x28[2]= 11.166; x28[3]= 12.506; x28[4]= 14.007;x28[5]= 15.6880;
x29[1]= 0.83; x29[2]= 0.913; x29[3]= 1.004;x29[4]= 1.105; x29[5]= 1.21500;
x30[1]= -0.38;x30[2]= -0.38; x30[3]= -0.38;x30[4]= -0.38; x30[5]= -0.38;
x31[1]= 8.33;x31[2]= 20.0; x31[3]= 27.466;x31[4]= 32.4; x31[5]= 37.5;
x32[1]= 0.45;x32[2]= 0.455; x32[3]= 0.459;x32[4]= 0.464; x32[5]= 0.468;
x33[1]= 0.65;x33[2]= 0.728; x33[3]= -4.2;x33[4]= 0.913; x33[5]= 1.023;
x34[1]= 0.0; x34[2]= 0.0; x34[3]= 0.0; x34[4]= 0.0; x34[5]= 0.0;
x35[1]= 4.43;x35[2]= 4.829; x35[3]= 5.263;x35[4]= 5.737; x35[5]= 6.253;
x36[1]= 0.12;x36[2]= 0.126; x36[3]= 0.132;x36[4]= 0.139; x36[5]= 0.146;
x37[1]= 2.822; x37[2]= 3.17; x37[3]= -7.2; x37[4]= -1.2; x37[5]= 0.22;
x38[1]= 0.55; x38[2]= 0.66; x38[3]= 10.792; x38[4]= 2.95; x38[5]= 7.5;
x39[1]= 0.15;x39[2]= 0.172;x39[3]= -1.5;x39[4]= -1.5; x39[5]= -1.5;
x40[1]= 2.25;x40[2]= 2.306;x40[3]= 2.364;x40[4]= 2.423; x40[5]= 2.484;
x41[1]= 0.35;x41[2]= 0.353;x41[3]= 0.357;x41[4]= 0.361; x41[5]= 0.364;
x42[1]= 5.5; x42[2]= 7.5;x42[3]= 6.1;x42[4]= 6.3; x42[5]= 6.7;
x43[1]= 0.0; x43[2]= 0.0;x43[3]= 0.0;x43[4]= 0.0; x43[5]= 0.0;
x44[1]= 1.9; x44[2]= 1.9;x44[3]= 3.1;x44[4]= 2.5; x44[5]= 2.5;
x45[1]= 1.13;x45[2]= 1.278;x45[3]= 1.417;x45[4]= 1.588; x45[5]= 1.778;
x46[1]= 1.147; x46[2]= 1.247; x46[3]= 1.35;x46[4]= 1.46; x46[5]= 1.6;
x47[1]= 2.0; x47[2]= 2.03; x47[3]= 2.06;x47[4]= 2.091; x47[5]= 2.123;
x48[1]= 1.133; x48[2]= 1.144;x48[3]= 3.2;x48[4]= 4.2; x48[5]= 4.8;
x49[1]= 0.5; x49[2]= 0.507; x49[3]= 0.515;x49[4]= 0.523; x49[5]= 0.531;
x50[1]= 0.004; x50[2]= 0.004;x50[3]= 0.004;x50[4]= 0.004; x50[5]= 0.004;
x51[1]= 0.0; x51[2]= 0.0;x51[3]= 0.0;x51[4]= 0.0; x51[5]= 0.0;
x52[1]= 0.0; x52[2]= 0.0;x52[3]= 0.0;x52[4]= 0.0; x52[5]= 0.001;
e1[1]= 6.382; e1[2]= 6.366; e1[3]= 6.76;
e2[1]= 34.99; e2[2]= 40.07; e2[3]= 44.29;
e3[1]= 49.701; e3[2]= 59.11; e3[3]= 66.94;
e4[1]= 3.43; e4[2]= 3.81; e4[3]= 3.98;
e5[1]= 1.193; e5[2]= 1.287; e5[3]= 1.391;
e6[1]= 45.0; e6[2]= 48.32; e6[3]= 49.76;
e7[1]= 59.485; e7[2]= 66.67; e7[3]= 74.14;
e8[1]= 1.201; e8[2]= 1.3; e8[3]= 1.454;
e9[1]= 39.31; e9[2]= 39.86; e9[3]= 40.31;
e10[1]= 49.264; e10[2]= 60.36; e10[3]= 67.22;
e11[1]= 50.752; e11[2]= 57.767; e11[3]= 65.569;
e12[1]= 2.553; e12[2]= 2.669; e12[3]= 2.893;
e13[1]= 0.863; e13[2]= 1.689; e13[3]= 2.602;
e14[1]= 0.795; e14[2]= 0.634; e14[3]= -0.292;
e15[1]= 2.69; e15[2]= 3.127; e15[3]= 4.002;
e16[1]= 2.57; e16[2]= 1.3; e16[3]= 2.12;
e17[1]= 38.78; e17[2]= 44.69; e17[3]= 47.27;
e18[1]= 68.0; e18[2]= 72.85; e18[3]= 76.44;
e19[1]= 0.036; e19[2]= 0.018; e19[3]= 0.029;
e20[1]= 35.793; e20[2]= 39.538; e20[3]= 43.234;
e21[1]= 120.0; e21[2]= 125.954; e21[3]= 132.252;
e22[1]= 0.075; e22[2]= 0.082; e22[3]= 0.076;
e23[1]= 5.162; e23[2]= 5.305; e23[3]= 5.8;
e24[1]= 40.83; e24[2]= 41.26; e24[3]= 41.33;
e25[1]= 47.07; e25[2]= 47.49; e25[3]= 47.84;
e26[1]= 1.345; e26[2]= 1.405; e26[3]= 1.409;
e27[1]= 1.387; e27[2]= 1.493; e27[3]= 1.658;
e28[1]= 1.247; e28[2]= 1.378; e28[3]= 1.449;
e29[1]= 1.417; e29[2]= 1.544; e29[3]= 1.754;
e30[1]= 1.409; e30[2]= 1.513; e30[3]= 1.714;
e31[1]= 67.92; e31[2]= 72.49; e31[3]= 75.91;
e32[1]= 91.571; e32[2]= 103.91; e32[3]= 114.88;
e33[1]= 9.766; e33[2]= 11.71; e33[3]= 14.05;
e34[1]= 57.532; e34[2]= 65.397; e34[3]= 75.139;
e35[1]= 6.78; e35[2]= 7.63; e35[3]= 9.57;
e36[1]= 17.45; e36[2]= 17.6; e36[3]= 24.211;
e37[1]= 7.57; e37[2]= 8.0; e37[3]= 9.24;
e38[1]= 27.97; e38[2]= 29.52; e38[3]= 31.44;
e39[1]= 2.187; e39[2]= 2.27; e39[3]= 2.43;
e40[1]= 13.35; e40[2]= 14.35; e40[3]= 15.43;
e41[1]= 102.85; e41[2]= 113.241; e41[3]= 119.416;
e42[1]= 67.668; e42[2]= 72.224; e42[3]= 75.607;
e43[1]= 0.66; e43[2]= 0.56; e43[3]= 0.69;
e44[1]= 1.354; e44[2]= 1.552; e44[3]= 1.712;
e45[1]= 1.904; e45[2]= 1.96; e45[3]= 1.19;
e46[1]= 2.1; e46[2]= 2.0; e46[3]= 1.1;
e47[1]= 1.322; e47[2]= 1.38; e47[3]= 1.49;
e48[1]= 2.046; e48[2]= 2.147; e48[3]= 2.236;
e49[1]= 0.345; e49[2]= 0.343; e49[3]= 0.332;
e50[1]= 2.143; e50[2]= 2.342; e50[3]= 2.703;
e51[1]= 5.58; e51[2]= 5.67; e51[3]= 5.82;
e52[1]= 1.024; e52[2]= 1.125; e52[3]= 1.163;
for (jjj=4; jjj<8; jjj++)
{
e1[jjj]= 0.0;
e2[jjj]= 0.0;
e3[jjj]= 0.0;
e4[jjj]= 0.0;
e5[jjj]= 0.0;
e6[jjj]= 0.0;
e7[jjj]= 0.0;
e8[jjj]= 0.0;
e9[jjj]= 0.0;
e10[jjj]= 0.0;
e11[jjj]= 0.0;
e12[jjj]= 0.0;
e13[jjj]= 0.0;
e14[jjj]= 0.0;
e15[jjj]= 0.0;
e16[jjj]= 0.0;
e17[jjj]= 0.0;
e18[jjj]= 0.0;
e19[jjj]= 0.0;
e20[jjj]= 0.0;
e21[jjj]= 0.0;
e22[jjj]= 0.0;
e23[jjj]= 0.0;
e24[jjj]= 0.0;
e25[jjj]= 0.0;
e26[jjj]= 0.0;
e27[jjj]= 0.0;
e28[jjj]= 0.0;
e29[jjj]= 0.0;
e30[jjj]= 0.0;
e31[jjj]= 0.0;
e32[jjj]= 0.0;
e33[jjj]= 0.0;
e34[jjj]= 0.0;
e35[jjj]= 0.0;
e36[jjj]= 0.0;
e37[jjj]= 0.0;
e38[jjj]= 0.0;
e39[jjj]= 0.0;
e40[jjj]= 0.0;
e41[jjj]= 0.0;
e42[jjj]= 0.0;
e43[jjj]= 0.0;
e44[jjj]= 0.0;
e45[jjj]= 0.0;
e46[jjj]= 0.0;
e47[jjj]= 0.0;
e48[jjj]= 0.0;
e49[jjj]= 0.0;
e50[jjj]= 0.0;
e51[jjj]= 0.0;
e52[jjj]= 0.0;
}
m1[1]= 0.0; m1[2]= 0.0; m1[3]= 0.0; m1[4]= 0.0; m1[5]= 0.0;
m2[1]= 0.0; m2[2]= 0.0; m2[3]= 0.0; m2[4]= 0.0; m2[5]= 0.0;
m3[1]= 0.0; m3[2]= 0.0; m3[3]= 0.0; m3[4]= 0.0; m3[5]= 0.0;
m4[1]= 0.0; m4[2]= 0.0; m4[3]= 0.0; m4[4]= 0.0; m4[5]= 0.0;
m5[1]= 0.0; m5[2]= 0.0; m5[3]= 0.0; m5[4]= 0.0; m5[5]= 0.0;
H1 = e44[4];
H2 = e27[4];
H3 = e41[4];
H4 = e7[4];
H5 = e48[4];
H6 = e43[4];
dt = 1.0;
t = 0.0;
Tmin = 0.0;
Tmax = 4.0;
}
public void initInput()
{
Input1.setValue(m1[1]); // redductie fin. tekort
Input2.setValue(m1[2]);
Input3.setValue(m1[3]);
Input4.setValue(m1[4]);
Input5.setValue(m2[1]); // loonmatiging
Input6.setValue(m2[2]);
Input7.setValue(m2[3]);
Input8.setValue(m2[4]);
Input9.setValue(m3[1]); // lastenverlichting bedrijfsleven
Input10.setValue(m3[2]);
Input11.setValue(m3[3]);
Input12.setValue(m3[4]);
Input13.setValue(m4[1]); // loonsverandering
Input14.setValue(m4[2]);
Input15.setValue(m4[3]);
Input16.setValue(m4[4]);
Input17.setValue(m5[1]); // devaluatie/revaluatie
Input18.setValue(m5[2]);
Input19.setValue(m5[3]);
Input20.setValue(m5[4]);
}
public void initGraph()
{
graphViewer.initGraph();
}
public boolean stepModel()
{
m1[1] = Input1.getValue(); // redductie fin. tekort
m1[2] = Input2.getValue();
m1[3] = Input3.getValue();
m1[4] = Input4.getValue();
m2[1] = Input5.getValue();
m2[2] = Input6.getValue();
m2[3] = Input7.getValue();
m2[4] = Input8.getValue();
m3[1] = Input9.getValue();
m3[2] = Input10.getValue();
m3[3] = Input11.getValue();
m3[4] = Input12.getValue();
m4[1] = Input13.getValue();
m4[2] = Input14.getValue();
m4[3] = Input15.getValue();
m4[4] = Input16.getValue();
m5[1] = Input17.getValue();
m5[2] = Input18.getValue();
m5[3] = Input19.getValue();
m5[4] = Input20.getValue();
t = t + dt;
i = (int) t;
j = i + 3;
x23[j-2] = x23[j-2] - 0.5 * m1[j-3] * e21[j-1] / 100;
A = (0.1 * m1[j-3] * e21[j-1] / 100) / e30[j-1];
x18[j-2] = x18[j-2] - A;
x17[j-2] = x17[j-2] - 0.4 * m1[j-3] * e21[j-1] / 100;
x4[j-2] = x4[j-2] + m5[j-3] * x4[j-2] / 100;
x20[j-2] = x20[j-2] + m5[j-3] * x20[j-2] / 100;
x46[j-2] = x46[j-2] + m5[j-3] * x46[j-2] / 100;
x45[j-2] = x45[j-2] + m5[j-3] * x45[j-2] / 100;
x7[j-2] = x7[j-2] + m5[j-3] * x7[j-2] / 100;
x15[j-2] = x15[j-2] + m5[j-3] * x15[j-2] / 100;
e44[j] = 1.9;
e27[j] = 1.7;
e41[j] = 117.2;
e7[j] = 78.5;
e43[j] = 1.4;
e48[j] = 1.7;
for (int kkk=1; kkk<20; kkk++)
{
e18[j] = e18[j-1] + e52[j-1] * x41[j-2] + 0.275 * e40[j-1];
e18[j] = e18[j] - e52[j-1] * e18[j-1] / 16.5 + x42[j-2];
e40[j] = 0.167 * e41[j-1] + 8.519999e-02 / (e19[j-1] + 0.08);
e40[j] = e40[j] + (0.5 * m3[j-3] * e21[j-1] / 100) / e30[j-1];
e40[j] = e40[j] - 0.5 * (e22[j-1] - e22[j-2]) * e40[j-1];
e40[j] = e40[j] + 0.1 * e36[j-1] / e30[j-1] + x1[j-2] - 2.905;
if ( x50[j-2] >= 0.03 ) { x50[j-2] = 0.03;}
if ( x50[j-2] <= - 0.025 ) { x50[j-2] = - 0.025;}
if ( e40[j] <= 0 ) { e40[j] = 0;}
A = e20[j-1] / e21[j-1];
e40[j] = e40[j] + 27.5 * A - 11.825;
e1[j] = x2[j-2] - 13.75 * e22[j-1];
e2[j] = 1.019 * x3[j-2] + 0.165 * e23[j-1] + 0.63 * e16[j-1];
e2[j] = e2[j] + m5[j-3] * e2[j-1] / 100 - 0.25;
if (e2[j] <= 0) { e2[j] = 0; }
e3[j] = e2[j] * x4[j-2] + x5[j-2] + x6[j-2] + x38[j-2];
e50[j] = e44[j-1] * e50[j-1] / e44[j-2];
e51[j] = x23[j-2] / e50[j];
e25[j] = e25[j-1] - 0.5 * (e43[j] - e43[j-2]) + x44[j-2];
e9[j] = e25[j] - x19[j-2];
A = e41[j] / e41[j-1] - e41[j-1] / e41[j-2];
e46[j] = 0.331 * (e41[j] - e41[j-1]) - 9.97 * A + x43[j-2];
e46[j] = e46[j] - 0.249;
if (e46[j] <= 0) {e46[j] = 0;}
e17[j] = 0.455 * e41[j] + 0.842 * e46[j] - 0.832 * x11[j-2];
e17[j] = e17[j] + x12[j-2] - 3.519;
e17[j] = e17[j] - 0.4 * m5[j-3] * e17[j-1] / 100;
if (e17[j] <= 0 ) { e17[j] = 0; }
e10[j] = e17[j] * x20[j-2] + x21[j-2] + x22[j-2] + x39[j-2];
e13[j] = e3[j] - e10[j] - x37[j-2];
e14[j] = - 0.595 * e13[j] + 24.7 * e43[j] / e9[j];
e14[j] = e14[j] - 14.072 * e20[j-1] / e21[j-1] + 5.9;
e14[j] = e14[j] + x33[j-2] + 0.1 * x31[j-2];
e45[j] = e46[j] - x43[j-2];
e14[j] = e14[j] + 0.5 * (m3[j-3] * e21[j-1] / 100);
e14[j] = e14[j] + 0.5 * (m4[j-3] * e21[j-1] / 100);
e4[j] = x17[j-2] / e27[j];
A = e44[j] / e44[j-1] + e44[j-1] / e44[j-2];
B = e48[j] / e48[j-1] + e48[j-1] / e48[j-2];
B = B - x45[j-2] / x45[j-3];
e26[j] = (0.25 * (A - B - 1) - 0.95 * e19[j-1] + 1.015) * e26[j-1];
e47[j] = 0.92 * e26[j] + 0.08 * x15[j-2];
A = (e47[j] - e47[j-1]) / e47[j-1];
if (A >= 0.15) { e47[j] = 1.15 * e47[j-1]; }
A = e47[j] / e47[j-1] + e47[j-1] / e47[j-2];
A = A + e47[j-2] / e47[j-3] - 3;
B = e48[j] / e48[j-1] + e48[j-1] / e48[j-2] - 2;
F = 0.4 * (e15[j-1] - e15[j-2]) / 100;
G = - m2[j-3] / 100;
C = (1 + 0.22*A + 0.4*B - 0.045*(e43[j]+e43[j-1]) + 0.12+F+G);
e44[j] = e44[j-1] * C;
e6[j] = e7[j] / e47[j];
e31[j] = e7[j] / e47[j] + e4[j] + e40[j] + e1[j];
e31[j] = e31[j] + x18[j-2] + e46[j] + e2[j];
e31[j] = e31[j] + x8[j-2] - e17[j] - x9[j-2] - x10[j-2];
if (e31[j] <= 0) { e31[j] = 0;}
e19[j] = (e18[j] - e31[j]) / e18[j-1];
A = e44[j] / e44[j-1] - 0.5 * e48[j] / e48[j-1];
A = A - 0.5 * e48[j-1] / e48[j-2];
B = x46[j-2] / x46[j-3] - 1;
C = e19[j] + e19[j-1];
F = (1 + 0.5 * A + 0.3 * B - 0.013 * x16[j-2] - 0.437 * C + 0.012);
e27[j] = e27[j-1] * F;
F = (1 + 0.25 * A + 0.3 * (x45[j-2]/x45[j-3] - 1) - 1.25 * e19[j]);
e28[j] = e28[j-1] * F;
e29[j] = e29[j-1] * (1 + 0.5 * A + 0.3 * B - 0.475 * C + 0.032);
A = e44[j] / e44[j-1] + e44[j-1] / e44[j-2];
B = 0.5 * e48[j] / e48[j-1] + e48[j-1] / e48[j-2];
B = B + 0.5 * e48[j-2] / e48[j-3];
F = (1 + 0.3 * (A - B) + 0.3 * (x46[j-2] / x46[j-3] - 1) - 0.5 * C);
e30[j] = e30[j-1] * F;
e41[j] = e31[j] - e46[j] - x8[j-2] + e17[j];
e41[j] = e41[j] + x9[j-2] + x10[j-2];
e42[j] = e31[j] - x13[j-2];
A = e42[j] / e42[j-1] - 1;
B = e42[j-1] / e42[j-2] - 1;
C = e18[j] / e18[j-1] - 1;
e24[j] = (0.304 * A + 0.158 * B + 0.5 * C - 0.025) * e24[j-1];
e24[j] = e24[j] + e24[j-1];
e34[j] = ((e24[j] - x19[j-2]) * e44[j]) + x23[j-2];
e34[j] = e34[j] + x24[j-2] + x25[j-2] + x26[j-2];
e35[j] = e35[j-1] + 0.199 * (e34[j] - e34[j-1]);
e35[j] = e35[j] + 3.5 * e35[j-1] / e34[j-1];
e35[j] = e35[j] + x48[j-2] - 0.377;
e11[j] = e34[j] - e35[j] + (m4[j-3] * e21[j-1] / 100);
e5[j] = 0.65 * e28[j] + 0.35 * x7[j-2];
e8[j] = 0.7 * e47[j] + 0.1 * x45[j-2] + 0.2 * e5[j];
e21[j] = e7[j] + x17[j-2] + x23[j-2] + e40[j] * e5[j];
e21[j] = e21[j] + x18[j-2] * e30[j];
e21[j] = e21[j] + e1[j] * e29[j] + e46[j] * e8[j] + e3[j];
e21[j] = e21[j] - e10[j] - x38[j-2];
e21[j] = e21[j] + x39[j-2];
if ((e21[j] / e21[j-1] - 1) >= 0.2 ) {e21[j] = 1.2 * e21[j-1];}
if (e49[j-1] <= 0.3) { e49[j-1] = 0.305;}
if (e21[j] <= 100) { e21[j] = 100;}
A = e21[j] - e21[j-1];
B = e19[j] - e19[j-1];
e12[j] = 0.185 * A - 6.6 * B - 29 * x50[j-2] + x32[j-2];
e32[j] = e7[j] + x17[j-2] + e40[j] * e5[j];
e32[j] = e32[j] + e1[j] * e29[j] + e46[j] * e8[j];
e32[j] = e32[j] + x18[j-2] * e30[j];
e33[j] = e33[j-1] + 0.11 * (e32[j] - e32[j-1]) + x47[j-2];
e38[j] = e21[j] - x23[j-2] - e33[j];
e38[j] = e38[j] - (e24[j] - x19[j-2]) * e44[j] - x28[j-2];
e38[j] = e38[j] - x29[j-2] - x30[j-2];
if (e38[j] <= 15) { e38[j] = 15;}
e37[j] = e37[j-1] + 0.4 * (e38[j] - e38[j-1]) + x49[j-2];
e36[j] = e38[j] - e37[j] + 0.5 * m3[j-3] * e21[j-1] / 100;
A = e36[j] + e36[j-1];
B = e47[j] / e47[j-1] - 1;
e7[j] = e11[j] + 0.125 * A + 4.4 * B + 3.06;
e7[j] = e7[j] + 1.72 - 43 * e22[j-1];
if (e7[j] <= 0 ) { e7[j] = 0;}
e48[j] = e42[j] / (e24[j] - x19[j-2]);
e43[j] = e25[j] - e24[j] - e51[j];
if (e43[j] <= 0.25) { e43[j] = 0.25;}
e16[j] = e18[j] - e31[j];
e20[j] = e20[j-1] + e12[j] + e13[j] + e14[j];
e49[j] = e20[j] / e21[j];
A = - e33[j] - e35[j] - e37[j] - x30[j-2] - x29[j-2];
e15[j] = x17[j-2] + x23[j-2] + x18[j-2] * e30[j];
e15[j] = e15[j] + x35[j-2] + x31[j-2];
e15[j] = e15[j] + A;
e15[j] = e15[j] * 100 / e21[j];
e15[j] = e15[j] + 0.5 * m3[j-3];
e15[j] = e15[j] + 0.5 * m4[j-3];
A = e40[j] / e40[j-1] + e40[j-1] / e40[j-2] - 2;
e22[j] = 0.0025 / (e49[j-1] - 0.3) - 0.15 * A + 0.03;
e22[j] = e22[j] + 0.5 * (e15[j] - e15[j-1]) / 100;
if (e22[j] >= 0.16) {e22[j] = 0.16;}
if (e22[j] <= 0.02) {e22[j] = 0.02;}
A = (e44[j] / e48[j]) / (e44[j-1] / e48[j-1]);
e39[j] = e39[j-1] * A;
e23[j] = e23[j-1] + (x40[j-2] - e39[j]) / e39[j];
e52[j] = e44[j] / e47[j];
}
y1 = ((e21[j] / e21[j-1] - 1) - (e47[j] / e47[j-1] - 1)) * 100;
y2 = (e47[j] / e47[j-1] - 1) * 100;
y3 = (e52[j] / e52[j-1] - 1) * 100;
y4 = e43[j] * 100 / e9[j];
y5 = (e3[j] - e10[j]) * 100 / e21[j];
Graph1.newValue(y1); // assigment of the graphs
Graph2.newValue(y2);
Graph3.newValue(y3);
Graph4.newValue(y4);
Graph5.newValue(y5);
Text1.setText(Double.toString(y1)); // assignment of the counters
Text2.setText(Double.toString(y2));
Text3.setText(Double.toString(y3));
Text4.setText(Double.toString(y4));
Text5.setText(Double.toString(y5));
Text6.setText(Double.toString(t));
graphViewer.newTValue(t);
return t