DataMuseum.dk

Presents historical artifacts from the history of:

RC4000/8000/9000

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about RC4000/8000/9000

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - metrics - download

⟦4cd40db56⟧ TextFile

    Length: 4608 (0x1200)
    Types: TextFile
    Names: »beamsimtxt«

Derivation

└─⟦621cfb9a2⟧ Bits:30002817 RC8000 Dump tape fra HCØ.  Detaljer om "HC8000" projekt.
    └─⟦0364f57e3⟧ 
        └─⟦b050de23d⟧ »csim« 
└─⟦00964e8f7⟧ Bits:30007478 RC8000 Dump tape fra HCØ.
    └─⟦b2ec5d50f⟧ 
        └─⟦b050de23d⟧ »csim« 
            └─⟦this⟧ 

TextFile

;ali time.260 lines.7000
(

mode list.yes
lookup beamsimtxt
lkj=lookup rydstruct rydseg alutproc coreproc ryproc ionloop,
     statevar stateloop ryglobal 
if ok.no
contract from.crypr rydstruct rydseg alutproc coreproc ryproc,
     ionloop ryglobal statevar stateloop
lkj=lookup allstatel statevar2
if ok.no
contract from.crypr allstatel statevar2
lkj=lookup simcalc diagrampr
if ok.no
contract from.csim simcalc diagrampr

beamsim=set 480 disc3
scope day beamsim
lookup rydlist
if ok.yes
mode 15.yes
beamsim=algol connect.yes index.no ,
blocks.yes
mode list.no
finisb)
beamsim
1980-10-12
begin
  integer i,res,simstate,model,
   mindiagram,maxdiagram,maxdata,dtt,points;
integer array tail,ctail(1:10);
real dt,tmin,tmax,brmin,Bmin,beta,delt,MeV,slw,
     cascadefactor,tauf;
array output,name(1:3);
boolean dsurvey,printdiagram,diagram,
  readmodel,proc,generate;
integer array xpoints(1:25);
array xval,dxval(1:25);
algol list.off copy.rydstruct;
algol list.off copy.rydseg;
algol list.off copy.alutproc;
algol list.off copy.coreproc;
algol list.off copy.ryproc;
algol  copy.simcalc;
algol list.off copy.diagrampr;

algol list.off copy.ryglobal;

readbfp(<:datasurvey:>,dsurvey,false);
dtt:=maxinteger;
if -,readsfp(<:seq:>,name,<::>) then alarm(<:sequence missing:>);
readbfp(<:generate:>,generate,true);;
readbfp(<:diagram:>,diagram,false);
readbfp(<:proc:>,proc,false);
if proc then
begin
 diagram:=true;
end;
readbfp(<:print:>,printdiagram,false);
readifp(<:model:>,model,1);
readbfp(<:readmodel:>,readmodel,false);
readifp(<:mindiagram:>,mindiagram,1);
readifp(<:maxdiagram:>,maxdiagram,200);
readrfp(<:tauf:>,tauf,1);
readrfp(<:min:>,Bmin,5);
if Bmin>smallreal then Bmin:=10**(-Bmin);
readrfp(<:dt:>,dt,.025);
readrfp(<:tmin:>,tmin,0);
readrfp(<:tmax:>,tmax,20);
readrfp(<:cascf:>,cascadefactor,1);
readrfp(<:brmin:>,brmin,2'-3);
readifp(<:maxdata:>,maxdata,300);
simstate:=0;
beta:=0;

dxval(1):=dt;
xpoints(1):=points:=1;
xval(1):=2*dt+tmin;
i:=1;
repeat i:=i+1;
  dxval(i):=2*dxval(i-1);
  xval (i):=if i=2 then 1 else 2*xval(i-1);
  if tmax>xval(i) then points:=points+entier(((xval(i)-xval(i-1))/dxval(i-1))+1)
   else points:=points+entier((tmax-xval(i-1))/dxval(i))+1;
    xpoints(i):=points;
until i=25 or tmax<xval(i);
begin
  algol list.off copy.statevar;
  array bsname(1:3);
  bsname(1):=name(1);
  readatsym(in,S,atno,Z);
  Zmin:=Zmax:=Z;
  curchargestate:=findchargestate(bsname,S,atno,Z);
  finestruct:=chargestate(12)<0;
  readstate(in,L,n,l,J);
  if finestruct and J<0 then
  begin
  write(out,"nl",1,"*",2,<:J-value missing :>);
  writestate(out,L,n,l,J);
  end;
  if list or keystat then
  begin
    write(out,"nl",1,<:decay curve for :>,"nl",1);
    writeatsym(out,S,atno,Z);
    write(out,"nl",1);
    writestate(out,L,n,l,J);
    write(out,"nl",1,<:chargestate:>,curchargestate);
  end list or key;
if 2*parentul<parentsize or parentul>200 then
  writechargerec(out);
begin
integer array parterm(1:parentul),series(1:seriesul);
getstruct(bsname,parterm,0,chargestate(4),parentsize,chargesegdes(1));
pardes:=0;
simstate:=findstate(bsname,parterm,L,n,l,J);
if list or keystat then write(out,"nl",1,<:stateno :>,simstate);
if dsurvey or list or test then write(out,"nl",1,<:maxdiagram :>,maxdiagram);
end parterm;
packtext(output,<:c:>);
if readlsfp(output) then
  begin
  cleararray(tail);
  res:=lookuptail(output,tail);
  if res=3 then
    begin
    tail(1):=1;
    tail(2):=1;
    createentry(output,tail);
    res:=scopeuser(output);
    end;
  if res<>0 then alarm("*",3,<:left side :>,string inc(output),res);
end leftside;
end block for reading simstate;
MeV:=readr(<:E(MeV):>);
slw:=readr(<:slit(mm):>);
beta:=13.9*sqrt(MeV/atomicmass(atno));
delt:=slw/beta;
write(out,"nl",1,<:dt (slit) = :>,delt,<: ns:>,
          "nl",1,<:v         = :>,beta,<: mm/ns:>,
          "nl",1,<:Mass(amu)= :>,atomicmass(atno));

algol list.off copy.ionloop;
finestruct:=chargestate(12)=-1;
begin
  beamfoildecaycurve(bsname,parterm,simstate,tmax,dt);
end;
end end end ionloop;
end;
finisb
mode 10.no list.no
▶EOF◀