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

⟦7e5eca138⟧ TextFile

    Length: 2304 (0x900)
    Types: TextFile
    Names: »rammulx«

Derivation

└─⟦00964e8f7⟧ Bits:30007478 RC8000 Dump tape fra HCØ.
    └─⟦b2ec5d50f⟧ 
        └─⟦this⟧ »rammulx« 

TextFile

clear user rammul
rammul=set 1 disc5
scope user rammul
rammul=algol
\f


RAMAN ANALYSE                                                      MUL

external procedure rammul(navn1,navn2,ver,T,n,max);
long array navn1,navn2; integer ver,n; real T,max; 


begin
  integer i,j,k,t,tmin,u,q,umax,b,segm;
  real npf,gsnit,sum,a,c,p,bmin,A,B; integer array tm(1:10);
boolean nl;
  zone zm, sp(128,1,stderror);

  nl:=false add 10; max:=0; umax:=-100000; c:=1.4387987/T;

  open(sp,4,navn1,0); inrec(sp,128);
  segm:=sp(1); t:=sp(2); bmin:=sp(11); b:=sp(30);
  p:=sp(40); if p<0 then p:=10;

  open(zm,4,navn2,0); outrec(zm,128);
  for j:=1 step 1 until 128 do zm(j):=sp(j);

  for j:=1 step 1 until 10 do tm(j):=0; tm(1):=segm;
  changetail(navn2,tm);

  if b=-1 and ver<>2 then 
  write(out,<:*spektret er ikke korrigeret for baggrund:>,nl,1);

  setposition(sp,0,2); setposition(zm,0,2);
  for k:=0 step 1 until segm-3 do
  begin
    inrec(sp,128); outrec(zm,128);
    for j:=1 step 1 until 128 do
    begin
      u:=k*128+j;
      if u<t then 
      begin
        if ver=1 then zm(j):=sp(j)*(bmin+u/p)*(1-exp(-c*(bmin+u/p)));
        if ver=2 then zm(j):=sp(j);
        if ver=3 then zm(j):=ln(
        if sp(j)<0.00000001 and sp(j)>-0.00000001
        then 0.000001 else abs(sp(j)));
        if ver=4 then zm(j):=exp(sp(j));
        if ver=5 then zm(j):=sp(j)*(bmin+u/p)**n;

        if zm(j)>max then begin max:=zm(j); umax:=u; end;
    
      end;
    end j;
  end k;
write(out,nl,1,<:max=:>,<< ddd ddd ddd>,max,
<:  max freq.=:>,<< dddd>,umax/10+bmin,<: cm-1:>);
setposition(zm,0,0); swoprec(zm,128); zm(6):=max; zm(7):=umax;
close(sp,true); close(zm,true); slut: end; end
\f


▶EOF◀