アットウィキロゴ

dsfer

package dsge;
 
 
class pro{ 
 
double maxc,minc,maxk,mink;   
double lt[]=new double[101]; 
double uc,w1,a,beta,h,ks,k1,ls,c1,r1,l1; 
int cc1,cc2;   
double th[]=new double[11]; 
double k[]=new double[101]; 
double cx[][]=new double[11][101]; 
double cxs[][]=new double[11][101]; 
double lx[][]=new double[11][101]; 
double lxs[][]=new double[11][101]; 
double n1; 
int t,m,n,mx,n2,n3;   
double ep;         
 
public static void main(String [] args) { 
        pro f=new pro(); 
 
    } 
 
pro(){ 
 
for (m=1;m<11;m++){ 
th[m]=0.95+0.01*m; 
} 
a=0.33; 
beta=0.95; 
ls=(1-a)/(2-a); 
ks=ls*Math.pow((1 / beta - 1) / a , 1 / (a - 1)); 
h=2*ks/100; 
for (n=1;n<101;n++){ 
k[n]=n*h; 
for (m=1;m<11;m++){ 
lx[m][n]=ls; 
cx[m][n]=th[m]*Math.pow(k[n],a)*Math.pow(lx[m][n],1-a); 
} 
} 
t=0; 
while(t<100){ 
for (m=1;m<11;m++){ 
for (n=10;n<91;n++){ 
k1=k[n]+th[m]*Math.pow(k[n],a)*Math.pow(lx[m][n],1-a)-cx[m][n]; 
n1=k1/h; 
n2=(int)n1; 
n3=n2+1; 
uc=0; 
for (mx=1;mx<11;mx++){ 
c1=cx[mx][n2]+(n1-n2)*(cx[mx][n3]-cx[mx][n2]); 
l1=lx[mx][n2]+(n1-n2)*(lx[mx][n3]-lx[mx][n2]); 
r1=th[mx]*a*Math.pow(k1,a-1)*Math.pow(l1,1-a); 
uc=uc+(beta*(1+r1))/c1; 
} 
uc=0.1*uc; 
cxs[m][n]=1/uc; 
w1=th[m]*(1-a)*Math.pow(k[n],a)*Math.pow(lx[m][n],-a); 
lxs[m][n]=1-cx[m][n]/w1; 
} 
} 
ep=0; 
for (m=1;m<11;m++){ 
for (n=10;n<91;n++){ 
ep=ep+Math.pow(cx[m][n]-cxs[m][n],2)+Math.pow(lx[m][n]-lxs[m][n],2); 
} 
} 
for (m=1;m<11;m++){ 
for (n=10;n<91;n++){ 
cx[m][n]=cxs[m][n]; 
lx[m][n]=lxs[m][n]; 
} 
} 
if (ep<0.0001)t=1000; 
t=t+1; 
} 
 
 
} 
 
 
}
最終更新:2013年08月31日 17:18