var k=new Array();
var cx=new Array();
var cxs=new Array();
var cp=new Array();
var cps=new Array();
var a,beta;
var h;
function sample(){
faststep();
mode=0;
while(mode<50){
for(s=10;s<91;s++){
c1=con(s);
k1=k[s]+Math.pow(k[s],a)-c1;
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.001)mode=1000;
mode=mode+1;
}
k1=k[40];
var t;
var n1,k1,c1;
for(t=1;t<101;t++){
n1=k1/h;
c1=con(n1);
k1=k1+Math.pow(k1,a)-c1;
cp[t]=c1;
}
var maxc,minc;
maxc=0;
for(s=1;s<101;s++){
if(cp[s]>maxc)maxc=cp[s];
}
minc=9999;
for(s=1;s<101;s++){
if(cp[s]<minc)minc=cp[s];
}
for(s=1;s<101;s++){
cps[s]=500*(cp[s]-minc)/(maxc-minc);
}
paint();
}
function con(n1){
var n2,n3,c1;
n2=Math.floor(n1);
n3=n2+1;
c1=cx[n2]+(n1-n2)*(cx[n3]-cx[n2]);
return c1;
}
function faststep(){
a=0.33;
beta=0.95;
var ks;
var s;
ks=Math.pow((1/ this.beta - 1)/this.a ,1/(this.a - 1));
h=2*ks/100;
for(s=1;s<101;s++){
k[s]=s*h;
}
for(s=1;s<101;s++){
cx[s]=Math.pow(k[s],a);
}
}
function paint(){
var sub=new svgpaint();
str="<svg width=\"700\" height=\"700\">";
str=str+sub.line(0,0,0,500,2,"black");
str=str+sub.line(0,500,500,500,2,"black");
var s;
for(s=1;s<100;s++){
str=str+sub.line(5*s,500-cps[s],5*s+5,500-cps[s+1],2,"blue");
}
str=str+"</svg>";
$("#memo").html(str);
}
最終更新:2015年12月04日 14:36