|
|
DataMuseum.dkPresents historical artifacts from the history of: RC4000/8000/9000 |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about RC4000/8000/9000 Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - download
Length: 5376 (0x1500)
Types: TextFile
Names: »algrotfit«
└─⟦621cfb9a2⟧ Bits:30002817 RC8000 Dump tape fra HCØ. Detaljer om "HC8000" projekt.
└─⟦0364f57e3⟧
└─⟦7e928b248⟧ »algbib«
└─⟦this⟧
;gosav time.200 lines.3000
clear rottt
rottt=set 50
rottt=edit algrotfit0
l3,r/95/120/,r/(/(lookup svdecomp
if ok.no
(i extsvdecomp)
/,l3,g29/3-3-1975/29-9-1982/
l./array DR/,r/an(/dd,dr(1:m), an,v(/,l1,r/AO/sgm(1:l), AO/,
l1,r/nf(0:m)/no(1:Q)/,l8,r/1/l+1/,r/m/Q/,r/nf/no/,l2,i/
j:= 0;
for i:=1 step 1 until Q do begin
hb:= true; k:= l;
for k:= k+1 while k<=Q and hb do hb:= i<>no(k);
if hb then begin j:=j+1; no(j):= i end
end;
comment no(l+1:Q) contains indices of fixed constants whereas
no(1:l) contains indices of parameters to be fitted;
/,l7,r/nf(i)/no(Q-m+i)/
l./nf(0/,r/ nf(0):= 0;//,l./j0,k0/,r/k0/k0,l0/,l2,i/
integer array td(1:8);
/,l./goto Cor;/,l1,d1,i"
if linecount+l>56 then writepage;
linecount:= linecount+4+l;
write(res,nl,1,<:
Uncorrelated parameters, X = V*w*pm, with uncertainties::>,nl,2);
k0:= 0;
for i:=1 step 1 until l do begin
p:= sqrt(so)*sgm(i);
c:= y:= sum(v(i,j)*v(j,l+1)*
(if no(j)>3 then DR(no(j)) else Rot(no(j))),j,1,l);
if i<l0 then a:= real << -d.dd'-d> else begin
j:= entier(ln(abs c)/ln10);
k:= entier(ln(p/l)/ln10);
j:= j-k+1; j0:= 14;
if j<1 then begin j:= 2; y:= p end;
if j>k0 then k0:= j;
a:= format(j0,j,abs y,b);
end; lo(i):= sign(c); write(res,string a,abs c);
if i<l0 then write(res,<: undetermined:>,nl,1)
else write(res,string a,p,nl,1)
end;
if linecount+l>56 then writepage; linecount:= linecount+3;
write(res,nl,2,<:w, V =:>,nl,1);
j0:= k0+1;
for i:=1 step 1 until l do begin
j:= cif(no(i)); if j>j0 then j0:=j end;
j:= j0+4; i:= 72//j; j0:= 72//i;
a:= format(j0,k0,-0.9,b); k0:= i-1; k:= 1;
repwr2: K2:= if l>k+k0 then k+k0 else l;
if linecount+l>59 then writepage else writecr;
for j:=k step 1 until K2 do begin
c:= v(j,l+1); i:= cif(no(j));
write(res,string format(j0,i,c,b),c) end;
writecr; writecr;
for i:=1 step 1 until l do begin
for j:=k step 1 until K2 do
write(res,string a,v(i,j)*lo(i));
writecr;
end;
if K2<l then begin k:= K2+1; goto repwr2 end;
if m>0 then begin
if linecount+(m+3)//4>59 then writepage
else begin write(res,nl,2); linecount:= linecount+2 end;
write(res,<:Significance estimate for fixed constants::>);
writecr;
for j:=1 step 1 until m do begin
if j mod 4 = 1 then writecr;
write(res,<<ddddd>,no(l+j),<:::>,
<< -d.dddd'-d>, dr(j)/sqrt(dd(j)));
end end end;
write(res,nl,3); linecount:= linecount+3;
",l./sigma/,l-1,r/;/; linecount:= linecount+4;/,l./Q:= Q+1;/,l1,i/
for j:=1 step 1 until 8 do td(j):= 0;
for j:=1 step 1 until m do dr(j):= dd(j):= 0;
/,l./***excluded/,l-2,r/wr/begin
wr/,r/ else/;
end else/,i/
j:= entier(H+H);
j:= (if j<-4 then -4 else
if j=-4 then -3 else
if j= 3 then 2 else
if j> 3 then 3 else j)+5;
td(j):= td(j)+1;
/,l./nf(j/,r/nf(j/no(l+j/
l./nf(j/,l-1,d2,i/
for j:=1 step 1 until l do atot(lc,j):= ai(no(j));
atot(lc,l+1):= ai(Q);
for j:=1 step 1 until m do begin p:= ai(no(l+j));
dd(j):= dd(j)+p*p; dr(j):= dr(j)+p*dE end;
/,l./hb:= so/,i"
for j:=1 step 1 until m do dd(j):= dd(j)*s;
",l1,r";"; r1:= sqrt(s/(m1+m1));",l./Z:= ortho/,d5,l6,i"
array pm(1:l);
Z:= svdecomp(atot,v,sgm,pm,N1,l,l0);
for i:=l0 step 1 until l do
for j:=1 step 1 until l do col(i,j):= v(i,j)*sgm(i)/v(j,l+1);
for i:=1 step 1 until l do
for j:=i step 1 until l do
an(i,j):= sum(col(k,i)*col(k,j),k,l0,l);
",l1,r/k:= Q; //,l2,d1,i/
for k:=1 step 1 until l do begin
i:= no(k);
/,l1,r/an(i-j,l+1)/pm(k)/,r/ //,l1,r/ //,g1/i-j/k/,
r/ //,l7,d./end k0 end/,i/
end;
if cif(i)<=0 then cif(i):= 1;
end;
for k:=l+1 step 1 until Q do begin
i:= no(k); cif(i):= 0;
for j:=i step -1 until 1 do col(j,i):= 0;
for j:=i+1 step 1 until Q do col(i,j):= 0;
for i:=1 step 1 until l do
for j:=i step 1 until l do
col(no(i),no(j)):= an(i,j)*(if i=j then 1 else 2);
end k end end atot;
/,l./rms dev/,r/rms/Stand./,r/iation/./,
r/(s)/(s),<: +-:>,r1/,l./if closeres/,i"
if -,iterer and m1>0 then begin
linecount:= linecount+3; if linecount>57 then writepage;
writecr; writecr; write(res,sp,13,
<:-2 -1 -0.5 0 0.5 1 2:>,
nl,1,<:t-dist::>,<<dddd>,td(1));
for j:=2 step 1 until 8 do write(res,<<dddddddd>,td(j));
a:= 2; b:= 0; p:= 0.5;
for j:=8 step -1 until 6 do begin
y:= student(a,b,m1,'-4); p:= p-y;
b:= a; a:= a-(if j=8 then 1 else 0.5);
td(j):= td(9-j):= y*N1*10 end;
td(4):= td(5):= p*N1*10;
write(res,nl,1,<:theor.: :>,<<dd.d>,td(1)/10);
for j:=2 step 1 until 8 do write(res,<<dddddd.d>,td(j)/10);
end;
",f
i rottt
▶EOF◀