アットウィキロゴ

dsge2 pro

<?php
$time1 = microtime();
$beta = 0.95;
$a = 0.33;
$z1 = 1/ $beta - 1;
$ks = 0.5*pow($z1/$a,1/($a-1));
$h = 2 * $ks / 100;
for ( $n=1; $n<=100; $n++ ){
$k[$n] = $n * $h;
$lx[$n] = 0.5;
$cx[$n] = pow($k[$n] , $a) * pow($lx[$n] , 1 - $a);
}  
$t1 = 0;
do {
for ( $n=10; $n<=90; $n++ ){
$k1 = $k[$n] + pow($k[$n] , $a) * pow($lx[$n] ,1 - $a) - $cx[$n];
$n1 = $k1 / $h;
$n2 = floor($n1);
$n3 = $n2 + 1;
$c1 = $cx[$n2] + ($n1 - $n2) * ($cx[$n3] - $cx[$n2]);
$l1 = $lx[$n2] + ($n1 - $n2) * ($lx[$n3] - $lx[$n2]);
$r1 = $a * pow($k1 , $a - 1) * pow($l1,1 - $a);
$cp[$n] = $c1 / ($beta * (1 + $r1)) ;
$w1 = (1 - $a) * pow($k[$n] , $a) * pow($lx[$n] , -$a);
$lp[$n] = 1 - $cx[$n] / $w1;
}

$e = 0;
for ( $n=10; $n<=90; $n++ ){
$e = $e + pow($cx[$n] - $cp[$n],2) + pow($lx[$n] - $lp[$n],2);
}

for ( $n=10; $n<=90; $n++ ){
$cx[$n] = $cp[$n];
$lx[$n] = $lp[$n];
}

If ( $e < 0.001) {
$t1 = 1000;
}
$t1 = $t1 + 1;
}
while($t1 < 100);  

$t=0;
$kt[$t]=$k[30];
for ( $t=0; $t<=99; $t++ ){
$n1 = $kt[$t] / $h;
$n2 = floor($n1);
$n3 = $n2 + 1 ;
$ct[$t] = $cx[$n2] + ($n1 - $n2) * ($cx[$n3] - $cx[$n2]);
$lt[$t] = $lx[$n2] + ($n1 - $n2) * ($lx[$n3] - $lx[$n2]);
$kt[$t+1] = $kt[$t] + pow($kt[$t] , $a) * pow($lt[$t] ,1 - $a) - $ct[$t];
}
for ( $t=0; $t<=98; $t++ ){
print($ct[$t]);
print(",");
}
print($ct[99]);
?>
最終更新:2009年06月11日 06:49