アットウィキロゴ

html dsge01

<html>
<head>
<meta charset="utf-8">
<title>HTML5 DSGE 01:労働供給非弾力的</title>
<script src="https://www.google.com/jsapi"></script>
<script src="jquery.js"></script>
<script src="dsge.js"></script> 
<script src="line.js"></script> 
</head>
<body onload="sample()">
<div id="memo" style="width: 500px; height: 500px;">計算中</div>
</body>
</html>
 
 
var a,beta,h;
k = new Array(101);
cx = new Array(101);
c = new Array(101);
 
function sample(){
 
a=0.33;
beta=0.95;
 
faststep();
 
dsge();
 
path();
 
line();
 
}
 
function faststep(){
 
var ks;
 
ks=Math.pow((1/ beta - 1)/a ,1/(a - 1)); 
h=2*ks/100;
 
for(s=1;s<101;s++){
k[s]=s*h;
}
 
for(s=1;s<101;s++){
cx[s]=f(k[s]);
}
 
}
 
function dsge(){
 
cxs = new Array(101);
var mode;
var n1;
var uc,c1,k1,r1;
var ep; 
var s;
 
mode=0;
 
while(mode<100){
 
for(s=10;s<91;s++){
k1=k[s]+f(k[s])-cx[s];
n1=k1/h;
c1=con(n1);
r1=a*Math.pow(k1,a-1);
uc=(beta*(1+r1))/c1;
cxs[s]=1/uc;
}
 
ep=0;
for(s=10;s<91;s++){
ep=ep+(cx[s]-cxs[s])*(cx[s]-cxs[s]);
}
 
for(s=10;s<91;s++){
cx[s]=cxs[s];
}
 
if(ep<0.0001)mode=1000;
 
mode=mode+1;
}
 
}
 
function path(){
 
var t;
var k1,c1; 
var n1;
 
k1=k[40];
 
for(t=1;t<101;t++){
n1=k1/h;
c1=con(n1);
k1=k1+Math.pow(k1,a)-c1;
c[t]=c1;
}
 
}
 
function con(n1){
var c1;
var n2,n3;
n2=Math.floor(n1);
n3=n2+1;
c1=cx[n2]+(n1-n2)*(cx[n3]-cx[n2]);
return c1;
}
 
 
function f(k1){
var f1;
f1=Math.pow(k1,a);
return f1;
}
 
 
 
 
google.load("visualization", "1", {packages:["corechart"]});
 
function line() {
 
var data = new google.visualization.DataTable();
data.addColumn('string', '期間');
data.addColumn('number', '消費');
 
data.addRows(100);
 
var str;
 
for(s=1;s<101;s++){
str=""+s+"期";
data.setCell(s-1, 0, str);
data.setCell(s-1, 1, c[s]); 
}
 
 var options = {
          title: '消費の移行経路'
        };
 
var chart = new google.visualization.LineChart(document.getElementById('memo'));
chart.draw(data, options);
      }
最終更新:2013年12月26日 18:57