Initial data commit
This commit is contained in:
parent
72d218235f
commit
f23f22d71c
199087 changed files with 3378941 additions and 0 deletions
|
|
@ -0,0 +1,23 @@
|
|||
rnormal()={
|
||||
my(u1=random(1.),u2=random(1.);
|
||||
sqrt(-2*log(u1))*cos(2*Pi*u1)
|
||||
\\ Could easily be extended with a second normal at very little cost.
|
||||
};
|
||||
mean(v)={
|
||||
sum(i=1,#v,v[i])/#v
|
||||
};
|
||||
stdev(v,mu="")={
|
||||
if(mu=="",mu=mean(v));
|
||||
sqrt(sum(i=1,#v,(v[i]-mu)^2))/#v
|
||||
};
|
||||
histogram(v,bins=16,low=0,high=1)={
|
||||
my(u=vector(bins),width=(high-low)/bins);
|
||||
for(i=1,#v,u[(v[i]-low)\width+1]++);
|
||||
u
|
||||
};
|
||||
show(n)={
|
||||
my(v=vector(n,i,rnormal()),m=mean(v),s=stdev(v,m),h,sz=ceil(n/300));
|
||||
h=histogram(v,,vecmin(v)-.1,vecmax(v)+.1);
|
||||
for(i=1,#h,for(j=1,h[i]\sz,print1("#"));print());
|
||||
};
|
||||
show(10^4)
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
rreal()={
|
||||
my(pr=32*ceil(default(realprecision)*log(10)/log(4294967296))); \\ Current precision
|
||||
random(2^pr)*1.>>pr
|
||||
};
|
||||
|
|
@ -0,0 +1,14 @@
|
|||
GEN
|
||||
rnormal(long prec)
|
||||
{
|
||||
pari_sp ltop = avma;
|
||||
GEN u1, u2, left, right, ret;
|
||||
u1 = randomr(prec);
|
||||
u2 = randomr(prec);
|
||||
left = sqrtr_abs(shiftr(mplog(u1), 1));
|
||||
right = mpcos(mulrr(shiftr(mppi(prec), 1), u2));
|
||||
|
||||
ret = mulrr(left, right);
|
||||
ret = gerepileupto(ltop, ret);
|
||||
return ret;
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue