|
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: 3840 (0xf00) Types: TextFile Names: »tplotsim«
└─⟦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⟧ └─⟦00964e8f7⟧ Bits:30007478 RC8000 Dump tape fra HCØ. └─⟦b2ec5d50f⟧ └─⟦this⟧ »csim/tplotsim« └─⟦this⟧ »tplotsim«
;ali time.90 lines.2500 (mode list.yes lookup tplotsim plotsim=set 160 scope day plotsim lookup rydlist if ok.yes mode 15.yes plotsim=algol blocks.yes finisb mode 15.no list.no) plotsim 1981-02-28 begin integer L,n,l,J,atno,Z,no,i,j,model,diagram,points,max,S,maxy, diag,mindiag,maxdiag,diags,maxi; real t,tau,lnN0,N0i,Ni,lnNi,delt,tmax,s0,maxval, brmin,nsmax; boolean list,survey,expcurve,first; array pname(1:3); algol list.off copy.alutproc; procedure plotdec(X,Y,curve); value curve; integer curve; array X,Y; begin own integer istep; boolean first; integer i,imin,imax; real t,Ni; first:=true; if istep=0 then begin istep:=-1; imin:=maxi; imax:=1; end; i:=imax; imax:=imin; imin:=i; istep:=-istep; for i:=imin step istep until imax do begin t:=X(i)/tau; Ni:=Y(i,curve)/maxval; if Ni>0 and Ni<=1.1 then begin Ni:=ln(Ni); if list then write(out,"nl",1,t,Ni); plotmove(t,Ni+maxy); if first then begin first:=false; pendown; end; end; end for; penup; end plotdec; algol list.off copy.ryproc; readbfp(<:finestruct:>,finestruct,false); readbfp(<:list:>,list,false); readbfp(<:survey:>,survey,true); readsfp(<:plotter:>,pname,<:houstona:>); setplotname(string inc(pname),0); readatsym(in,S,atno,Z); readstate(in,L,n,l,J); read(in,tau,no,tmax,model,delt,brmin,nsmax,diagram); <*tau is in ns*> readifp(<:min:>,mindiag,2); readifp(<:max:>,maxdiag,diagram); if maxdiag>diagram then maxdiag:=diagram; readifp(<:step:>,diags,2); readrfp(<:tmax:>,tmax,tmax); expcurve:=model>=16; delt:=delt/tau; s0:=sinh(delt)/delt; model:=model mod 16; if survey then begin writeatsym(out,S,atno,Z); write(out,"sp",2); writestate(out,L,n,l,J); write(out,"sp",2); write(out, "nl",1,<:tau = :>,tau, "nl",1,<:n*< :>,nsmax, "nl",1,<:b> :>,brmin,<:%:>, "nl",1,<:dt(slit)= :>,delt*tau, "nl",1,<:sinh = :>,s0, <*sinh(dt/tau)/(dt/tau) *> "nl",1,<:maxdiagram:>,diagram, "nl",1,<:tmax(ns)= :>,tmax, "nl",1,<:points = :>,no); end survey; begin array T(1:no),N(1:no,1:diagram); maxy:=7; max:=0; maxval:=0; i:=0; repeat i:=i+1; read(in,T(i)); for j:=1 step 1 until diagram do read(in,N(i,j)); if N(i,diagram)>maxval and abs N(i,diagram)<'2 then begin max:=i; maxval:=N(i,diagram); end; maxi:=i; until T(i)>=tmax or i=no; if survey then write(out,"nl",1,<:plotmax :>,maxi); outendcur(10); plotform(0,25,18); setmargin(0.4,plotyform-2*linediff); writeplot("ff",1); writeatsym(plotz,S,atno,Z); setposition(plotz,0,0); writeplot("sp",2); writestate(plotz,L,n,l,J); setposition(plotz,0,0); writeplot("sp",2,<:<14>t<15> = :>,<<ddd.ddd>,tau); writeplot("nl",1,case model+1 of( <:N0(measured):>,<:Selective:>, <:1/(n*)**3:> ,<:(2*l+1)/(n*)**5:>, <:1/(n*)**5:>, <:(3*l odd +1)/(n*)**3:>, <:plasmamodel:>,<:(2*l+1)/(n*)**2:>, <:(2*l+1)/(n*)**3:>,<:(2*l+1)/(n*)**4:>)); if diagram>0 then writeplot("sp",2,<:diagram :>,<<d>,diagram, <: n*< :>,<<dd.d>,nsmax, <: b> :>,<<dd.dd>,brmin,<:%:>); plotsubform(0,plotxform,0,plotyform-4,false); plotadmini(0,tmax,0,maxy,0); plotline(T(max)/tau,maxy,T(max)/tau+maxy,0); for diag:=1,mindiag step 1 until maxdiag do plotdec(T,N,diag); end T,N; plotclose; end; mode list.no 15.no ▶EOF◀