summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.gitignore1
-rw-r--r--epost.lpr18
-rw-r--r--epost.lps120
-rw-r--r--epostunit.pas61
-rw-r--r--input_pipe.epost34
5 files changed, 130 insertions, 104 deletions
diff --git a/.gitignore b/.gitignore
index b5720ed..1c69bdf 100644
--- a/.gitignore
+++ b/.gitignore
@@ -9,3 +9,4 @@ Ergebnisse
lib
epost
*~
+Log*
diff --git a/epost.lpr b/epost.lpr
index ef5f344..1fe66ac 100644
--- a/epost.lpr
+++ b/epost.lpr
@@ -182,7 +182,7 @@ begin
aufraeumen;
halt(1);
end;
- if wertes[i].berechneLiKo(syntaxtest,inf,maxthreads,@wertes) then
+ if wertes[i].berechneLiKo(syntaxtest,inf,maxthreads) then
continue;
aufraeumen;
halt(1);
@@ -234,7 +234,7 @@ begin
wertes[length(wertes)-1]:=tWerte.create;
k:=length(wertes)-1;
end;
- if wertes[k].berechneQuotient(syntaxtest,inf,maxthreads,i,j,@wertes) then
+ if wertes[k].berechneQuotient(syntaxtest,inf,maxthreads,i,j) then
continue;
aufraeumen;
halt(1);
@@ -372,16 +372,20 @@ begin
maxThreads:=strtoint(s);
continue;
end;
- if pos('maximale und minimale Dichten ermitteln',s)=1 then begin
- delete(s,1,length('maximale und minimale Dichten ermitteln'));
- while pos(' ',s)=1 do delete(s,1,1);
+ if pos('maximale und minimale Dichten bestimmen',s)=1 then begin
+ delete(s,1,length('maximale und minimale Dichten bestimmen'));
+ s:=trim(s);
b:=pos('(symmetrisch)',s)=1;
if b then begin
delete(s,1,length('(symmetrisch)'));
- while pos(' ',s)=1 do delete(s,1,1);
+ s:=trim(s);
end;
if s='' then i:=length(wertes)-1
- else i:=strtoint(s);
+ else findeWerte(s,@wertes,@Konturen,false);
+ if i<0 then begin
+ aufraeumen;
+ halt(1);
+ end;
wertes[i].ermittleMinMaxDichten(syntaxtest,maxThreads,b);
continue;
end;
diff --git a/epost.lps b/epost.lps
index d984674..9b20553 100644
--- a/epost.lps
+++ b/epost.lps
@@ -8,12 +8,11 @@
<Filename Value="epost.lpr"/>
<IsPartOfProject Value="True"/>
<UnitName Value="epost"/>
- <IsVisibleTab Value="True"/>
<EditorIndex Value="0"/>
<WindowIndex Value="0"/>
- <TopLine Value="53"/>
- <CursorPos X="2" Y="62"/>
- <FoldState Value=" T0iOVB011181]52[95[A4313]422]K]M2]AV"/>
+ <TopLine Value="58"/>
+ <CursorPos X="1" Y="190"/>
+ <FoldState Value=" T0iOVB011181]52[95[A4313]4222]K]4]A2"/>
<UsageCount Value="202"/>
<Loaded Value="True"/>
</Unit0>
@@ -30,11 +29,12 @@
<Filename Value="epostunit.pas"/>
<IsPartOfProject Value="True"/>
<UnitName Value="epostunit"/>
+ <IsVisibleTab Value="True"/>
<EditorIndex Value="2"/>
<WindowIndex Value="0"/>
- <TopLine Value="4326"/>
- <CursorPos X="1" Y="3908"/>
- <FoldState Value=" T3oH0C7 piajL06D]9XjO06511 pn0v30y4[B4k9nM0{w]AjRmf0}I4]AZoF0{#11[M4Wr00^[94blZ0~_0[r54s10{E5 piYlC067]V5jX0F1[{V5E0c[n4GkF068]IbjS0E[{H5k4086 pl1lN0b3]IPkT0B71]:iXmW044 pp3pL0L[T48jb052]Rdj70K T0j$Q0{1D"/>
+ <TopLine Value="3277"/>
+ <CursorPos X="66" Y="3302"/>
+ <FoldState Value=" T3oV0RB pick306D pjVkM0~B011 pn0tA0y41111]PRtK0}I4]AZoF0{#[M6Wr00^[94blZ0~_[u5k4s10{E418]OAoO0F]LiajE0c[g46k5068]IbjS0E[{A5k4086 pl1lN0b3]IPkT0B717]cXmW044 pp3pL0L[T48jb052]Rdj70K T0j$d0{13"/>
<UsageCount Value="201"/>
<Loaded Value="True"/>
</Unit2>
@@ -44,10 +44,10 @@
<UnitName Value="fileunit"/>
<EditorIndex Value="1"/>
<WindowIndex Value="0"/>
- <TopLine Value="63"/>
- <CursorPos X="14" Y="80"/>
- <FoldState Value=" T3R03113u"/>
- <UsageCount Value="198"/>
+ <TopLine Value="1"/>
+ <CursorPos X="1" Y="42"/>
+ <FoldState Value=" T3R032 plVle0H2t"/>
+ <UsageCount Value="200"/>
<Loaded Value="True"/>
</Unit3>
<Unit4>
@@ -56,10 +56,10 @@
<UnitName Value="werteunit"/>
<EditorIndex Value="3"/>
<WindowIndex Value="0"/>
- <TopLine Value="101"/>
+ <TopLine Value="137"/>
<CursorPos X="1" Y="194"/>
<FoldState Value=" T3iR059 pjCjb0S2 plgmX0A]9oLob034]R2jF0{o5]A7mL0*]SiekW0{12'"/>
- <UsageCount Value="182"/>
+ <UsageCount Value="184"/>
<Loaded Value="True"/>
</Unit4>
<Unit5>
@@ -71,7 +71,7 @@
<TopLine Value="1231"/>
<CursorPos X="84" Y="232"/>
<FoldState Value=" T3nX0ID pj1kA07B piajQ06G]9ZjY0N]IkWm10E3]95kR0T5]jYka04C]aYjN0F9]9fjX0610"/>
- <UsageCount Value="182"/>
+ <UsageCount Value="184"/>
<Loaded Value="True"/>
</Unit5>
<Unit6>
@@ -156,124 +156,124 @@
</General>
<JumpHistory Count="30" HistoryIndex="29">
<Position1>
- <Filename Value="typenunit.pas"/>
- <Caret Line="265" Column="1" TopLine="236"/>
+ <Filename Value="fileunit.pas"/>
+ <Caret Line="201" Column="81" TopLine="171"/>
</Position1>
<Position2>
- <Filename Value="typenunit.pas"/>
- <Caret Line="1211" Column="38" TopLine="1129"/>
+ <Filename Value="fileunit.pas"/>
+ <Caret Line="47" Column="19" TopLine="17"/>
</Position2>
<Position3>
- <Filename Value="typenunit.pas"/>
- <Caret Line="1230" Column="52" TopLine="1199"/>
+ <Filename Value="fileunit.pas"/>
+ <Caret Line="171" Column="35" TopLine="154"/>
</Position3>
<Position4>
- <Filename Value="typenunit.pas"/>
- <Caret Line="1214" Column="22" TopLine="1130"/>
+ <Filename Value="epostunit.pas"/>
+ <Caret Line="3547" Column="1" TopLine="3357"/>
</Position4>
<Position5>
- <Filename Value="werteunit.pas"/>
- <Caret Line="230" Column="1" TopLine="53"/>
+ <Filename Value="epostunit.pas"/>
+ <Caret Line="881" Column="1" TopLine="560"/>
</Position5>
<Position6>
- <Filename Value="werteunit.pas"/>
- <Caret Line="177" Column="31" TopLine="138"/>
+ <Filename Value="epostunit.pas"/>
+ <Caret Line="3260" Column="1" TopLine="3104"/>
</Position6>
<Position7>
- <Filename Value="werteunit.pas"/>
- <Caret Line="179" Column="30" TopLine="138"/>
+ <Filename Value="epostunit.pas"/>
+ <Caret Line="1" Column="1" TopLine="1"/>
</Position7>
<Position8>
- <Filename Value="werteunit.pas"/>
- <Caret Line="188" Column="19" TopLine="168"/>
+ <Filename Value="epostunit.pas"/>
+ <Caret Line="41" Column="15" TopLine="21"/>
</Position8>
<Position9>
- <Filename Value="werteunit.pas"/>
- <Caret Line="207" Column="31" TopLine="186"/>
+ <Filename Value="epostunit.pas"/>
+ <Caret Line="55" Column="66" TopLine="33"/>
</Position9>
<Position10>
- <Filename Value="werteunit.pas"/>
- <Caret Line="209" Column="30" TopLine="188"/>
+ <Filename Value="epostunit.pas"/>
+ <Caret Line="57" Column="70" TopLine="33"/>
</Position10>
<Position11>
<Filename Value="epostunit.pas"/>
- <Caret Line="3575" Column="18" TopLine="3556"/>
+ <Caret Line="334" Column="1" TopLine="310"/>
</Position11>
<Position12>
<Filename Value="epostunit.pas"/>
- <Caret Line="2181" Column="35" TopLine="2160"/>
+ <Caret Line="331" Column="15" TopLine="301"/>
</Position12>
<Position13>
<Filename Value="epostunit.pas"/>
- <Caret Line="2182" Column="21" TopLine="2164"/>
+ <Caret Line="1931" Column="102" TopLine="1564"/>
</Position13>
<Position14>
- <Filename Value="epostunit.pas"/>
- <Caret Line="2188" Column="23" TopLine="2164"/>
+ <Filename Value="epost.lpr"/>
+ <Caret Line="375" Column="1" TopLine="3"/>
</Position14>
<Position15>
- <Filename Value="epostunit.pas"/>
- <Caret Line="2204" Column="40" TopLine="2182"/>
+ <Filename Value="epost.lpr"/>
+ <Caret Line="185" Column="59" TopLine="143"/>
</Position15>
<Position16>
<Filename Value="epostunit.pas"/>
- <Caret Line="2246" Column="29" TopLine="2225"/>
+ <Caret Line="4879" Column="1" TopLine="4438"/>
</Position16>
<Position17>
<Filename Value="epostunit.pas"/>
- <Caret Line="2247" Column="33" TopLine="2226"/>
+ <Caret Line="1" Column="1" TopLine="1"/>
</Position17>
<Position18>
<Filename Value="epostunit.pas"/>
- <Caret Line="2257" Column="32" TopLine="2235"/>
+ <Caret Line="41" Column="15" TopLine="6"/>
</Position18>
<Position19>
<Filename Value="epostunit.pas"/>
- <Caret Line="2653" Column="22" TopLine="2505"/>
+ <Caret Line="55" Column="66" TopLine="35"/>
</Position19>
<Position20>
<Filename Value="epostunit.pas"/>
- <Caret Line="2680" Column="40" TopLine="2659"/>
+ <Caret Line="57" Column="70" TopLine="35"/>
</Position20>
<Position21>
<Filename Value="epostunit.pas"/>
- <Caret Line="2767" Column="32" TopLine="2745"/>
+ <Caret Line="109" Column="62" TopLine="75"/>
</Position21>
<Position22>
<Filename Value="epostunit.pas"/>
- <Caret Line="2776" Column="51" TopLine="2755"/>
+ <Caret Line="110" Column="65" TopLine="76"/>
</Position22>
<Position23>
<Filename Value="epostunit.pas"/>
- <Caret Line="2923" Column="133" TopLine="2902"/>
+ <Caret Line="172" Column="34" TopLine="168"/>
</Position23>
<Position24>
<Filename Value="epostunit.pas"/>
- <Caret Line="3572" Column="28" TopLine="3552"/>
+ <Caret Line="303" Column="49" TopLine="268"/>
</Position24>
<Position25>
<Filename Value="epostunit.pas"/>
- <Caret Line="4697" Column="28" TopLine="4676"/>
+ <Caret Line="1550" Column="46" TopLine="1529"/>
</Position25>
<Position26>
<Filename Value="epostunit.pas"/>
- <Caret Line="4780" Column="26" TopLine="4759"/>
+ <Caret Line="3343" Column="44" TopLine="3322"/>
</Position26>
<Position27>
- <Filename Value="typenunit.pas"/>
- <Caret Line="1229" Column="37" TopLine="1208"/>
+ <Filename Value="epostunit.pas"/>
+ <Caret Line="3292" Column="18" TopLine="3272"/>
</Position27>
<Position28>
- <Filename Value="fileunit.pas"/>
- <Caret Line="201" Column="81" TopLine="171"/>
+ <Filename Value="epostunit.pas"/>
+ <Caret Line="3298" Column="41" TopLine="3277"/>
</Position28>
<Position29>
- <Filename Value="fileunit.pas"/>
- <Caret Line="47" Column="19" TopLine="17"/>
+ <Filename Value="epostunit.pas"/>
+ <Caret Line="85" Column="1" TopLine="116"/>
</Position29>
<Position30>
- <Filename Value="fileunit.pas"/>
- <Caret Line="171" Column="35" TopLine="154"/>
+ <Filename Value="epostunit.pas"/>
+ <Caret Line="3298" Column="47" TopLine="3278"/>
</Position30>
</JumpHistory>
</ProjectSession>
diff --git a/epostunit.pas b/epostunit.pas
index 7f19d20..ef9a4e7 100644
--- a/epostunit.pas
+++ b/epostunit.pas
@@ -106,7 +106,8 @@ type
Genauigkeit: tGenauigkeit;
bezeichner: string;
Konturen: pTKonturenArray;
- constructor create(Kont: pTKonturenArray); overload;
+ wertes: pTWerteArray;
+ constructor create(Kont: pTKonturenArray; wert: pTWerteArray); overload;
constructor create(original: tWerte; xmin,xmax: longint); overload;
destructor destroy; override;
procedure warteAufBeendigungDesLeseThreads;
@@ -114,8 +115,8 @@ type
procedure kopiereVon(st: boolean; original: tWerte; xmin,xmax: longint); overload;
function ladeDateien(st: boolean; var f: tInputfile; pl: boolean): boolean;
function ladeAscii(st: boolean; datei: string): boolean;
- function berechneLiKo(st: boolean; var f: tInputfile; threads: longint; const wertes: pTWerteArray): boolean;
- function berechneQuotient(st: boolean; var f: tInputfile; threads, dividend, divisor: longint; const wertes: pTWerteArray): boolean;
+ function berechneLiKo(st: boolean; var f: tInputfile; threads: longint): boolean;
+ function berechneQuotient(st: boolean; var f: tInputfile; threads, dividend, divisor: longint): boolean;
function berechneKorrelation(st: boolean; var f: tInputfile; threads: longint; const quelle: tWerte): boolean;
procedure ermittleMinMaxDichten(st: boolean; threads: longint; symmetrisch: boolean); overload;
procedure ermittleMinMaxDichten(st: boolean; threads,xmin,xmax,tmin,tmax: longint; symmetrisch: boolean); overload;
@@ -165,15 +166,13 @@ type
procedure stExecute; virtual; abstract;
end;
tLiKoThread = class(tLogThread)
- wertes: pTWerteArray;
liKo: pTLiKo;
xMi,xMa,tMi,tMa,tOf,xOf: longint;
pW: tWerte;
- constructor create(lk: pTLiKo; ws: pTWerteArray; pWerte: tWerte; xMin,xMax,tMin,tMax,xOff,tOff: longint);
+ constructor create(lk: pTLiKo; pWerte: tWerte; xMin,xMax,tMin,tMax,xOff,tOff: longint);
procedure stExecute; override;
end;
tQuotientThread = class(tLogThread)
- wertes: pTWerteArray;
eps: extended;
xMi,xMa,tMi,tMa,tOf,xOf: longint;
dend,sor,quot: tWerte;
@@ -316,7 +315,7 @@ uses math;
// tWerte **********************************************************************
-constructor tWerte.create(Kont: pTKonturenArray);
+constructor tWerte.create(Kont: pTKonturenArray; wert: pTWerteArray);
var ps: pTExtrainfos;
begin
inherited create;
@@ -327,6 +326,7 @@ begin
sWerte:=tLLWerteSingle.create(ps);
eWerte:=tLLWerteDouble.create(ps);
Konturen:=Kont;
+ wertes:=wert;
bezeichner:='';
end;
@@ -356,6 +356,7 @@ begin
end{of case};
if original.bezeichner='' then bezeichner:=''
else bezeichner:=original.bezeichner+'''';
+ wertes:=original.wertes;
end;
destructor tWerte.destroy;
@@ -1418,7 +1419,7 @@ begin
result:=true;
end;
-function tWerte.berechneLiKo(st: boolean; var f: tInputfile; threads: longint; const wertes: pTWerteArray): boolean;
+function tWerte.berechneLiKo(st: boolean; var f: tInputfile; threads: longint): boolean;
var i,xmin,xmax,tmin,tmax: longint;
liKo: tLiKo;
s: string;
@@ -1546,7 +1547,7 @@ begin
Zeit:=now;
setlength(liKoThreads,threads);
for i:=0 to length(liKoThreads)-1 do
- liKoThreads[i]:=tLiKoThread.create(@liKo,wertes,self,round(i*_xsteps/threads),round((i+1)*_xsteps/threads-1),0,_tsiz-1,xmin,tmin);
+ liKoThreads[i]:=tLiKoThread.create(@liKo,self,round(i*_xsteps/threads),round((i+1)*_xsteps/threads-1),0,_tsiz-1,xmin,tmin);
repeat
sleep(100);
fertig:=true;
@@ -1559,7 +1560,7 @@ begin
result:=true;
end;
-function tWerte.berechneQuotient(st: boolean; var f: tInputfile; threads, dividend, divisor: longint; const wertes: pTWerteArray): boolean;
+function tWerte.berechneQuotient(st: boolean; var f: tInputfile; threads, dividend, divisor: longint): boolean;
var i,xmin,xmax,tmin,tmax: longint;
s: string;
fertig: boolean;
@@ -3282,6 +3283,29 @@ begin
else gibAus('Kenne Bezeichner '''+s+''' nicht als Eigenschaft einer Kontur!',3);
exit;
end;
+ if (pos('Wert[',s)=1) or (pos('Werte[',s)=1) or (pos('Wertes[',s)=1) then begin
+ delete(s,1,pos('[',s));
+ if pos('].',s)=0 then begin
+ gibAus('Syntaxfehler, '']'' fehlt!',3);
+ exit;
+ end;
+ i:=findeWerte(copy(s,1,pos('].',s)-1),wertes,Konturen,false);
+ if i<0 then begin
+ gibAus('Finde Werte '''+copy(s,1,pos('].',s)-1)+''' nicht!',3);
+ exit;
+ end;
+ delete(s,1,pos('].',s)+1);
+ if s='xmin' then result:=wertes^[i]._xstart
+ else if s='xmax' then result:=wertes^[i]._xstop
+ else if s='tmin' then result:=wertes^[i]._tstart
+ else if s='tmax' then result:=wertes^[i]._xstop
+ else if (s='wmin') or (s='minw') then result:=wertes^[i]._minw
+ else if (s='wmax') or (s='maxw') then result:=wertes^[i]._maxw
+ else if s='Breite' then result:=wertes^[i]._xstart-wertes^[i]._xstop
+ else if s='Hoehe' then result:=wertes^[i]._tstart-wertes^[i]._tstop
+ else gibAus('Kenne Bezeichner '''+s+''' nicht als Eigenschaft von Werten!',3);
+ exit;
+ end;
gibAus('Ich kenne den Bezeichner '''+s+''' nicht!',3);
end;
@@ -3339,11 +3363,10 @@ end;
// tLiKoThread *****************************************************************
-constructor tLiKoThread.create(lk: pTLiKo; ws: pTWerteArray; pWerte: tWerte; xMin,xMax,tMin,tMax,xOff,tOff: longint);
+constructor tLiKoThread.create(lk: pTLiKo; pWerte: tWerte; xMin,xMax,tMin,tMax,xOff,tOff: longint);
begin
inherited create;
liKo:=lk;
- wertes:=ws;
pW:=pWerte;
xMi:=xMin;
xMa:=xMax;
@@ -3561,35 +3584,25 @@ begin
exit;
end;
gibAus('Thread '+inttostr(nummer)+': Werte -> Bild ...',1);
- for j:=-oof to whoehe-1+uof do begin gibAus(inttostr(j)+' / '+inttostr(-oof)+' - '+inttostr(whoehe-1+uof),1);
+ for j:=-oof to whoehe-1+uof do
for i:=xpmi to xpma do
if (j>=0) and (j<whoehe) and (i>=0) and (i<gesBreite) then begin // innerer Pixel
- gibAus('^ '+inttostr(j)+' / '+inttostr(-oof)+' - '+inttostr(whoehe-1+uof)+' x '+inttostr(i)+' / '+inttostr(xpmi)+' - '+inttostr(xpma),1);
wert:=(werte[i-max(0,xpmi)+j*wbreite]/anzahlen[i-max(0,xpmi)+j*wbreite]-w._minW)/(w._maxW-w._minW);
- gibAus('b',1);
wert:=max(0,min(wert,1));
- gibAus('c',1);
for k:=0 to nb.count-1 do
nb[k].anwenden(wert);
- gibAus('d',1);
farben[i-xpmi+(j+oof)*breite]:=wertZuFarbe(wert,pal); // farben startet bei Index 0 + 0*breite
- gibAus('e',1);
end
else begin
- gibAus('v '+inttostr(j)+' / '+inttostr(-oof)+' - '+inttostr(whoehe-1+uof)+' x '+inttostr(i)+' / '+inttostr(xpmi)+' - '+inttostr(xpma),1);
farben[i-xpmi+(j+oof)*breite].rgbRed:=
$ff * byte((not rahmen) or
((not ((i=-1) and (j>=-1) and (j<=whoehe))) and // links
(not ((i=gesBreite) and (j>=-1) and (j<=whoehe))) and // rechts
(not ((j=-1) and (i>=-1) and (i<=gesBreite))) and // oben
(not ((j=whoehe) and (i>=-1) and (i<=gesBreite))))); // unten
- gibAus('b',1);
farben[i-xpmi+(j+oof)*breite].rgbGreen:=farben[i-xpmi+(j+oof)*breite].rgbRed;
- gibAus('c',1);
farben[i-xpmi+(j+oof)*breite].rgbBlue:=farben[i-xpmi+(j+oof)*breite].rgbRed;
- gibAus('d',1);
end;
- end;
gibAus('Thread '+inttostr(nummer)+': Beschriftung einfügen ...',1);
@@ -4919,7 +4932,7 @@ begin
end;
end;
setlength(pws^,length(pws^)+1);
- pws^[length(pws^)-1]:=tWerte.create(Kont);
+ pws^[length(pws^)-1]:=tWerte.create(Kont,pws);
pws^[length(pws^)-1].bezeichner:=s;
result:=length(pws^)-1;
end;
diff --git a/input_pipe.epost b/input_pipe.epost
index f045c40..bdfeac7 100644
--- a/input_pipe.epost
+++ b/input_pipe.epost
@@ -5,7 +5,7 @@
lasch warnen
parallel lesen
-Threadanzahl: 11
+Threadanzahl: 7
Palette
Name: erweiterter Regenbogen
@@ -23,9 +23,9 @@ Palette
Daten einlesen
Name: Kanal$KANAL
- Pipe: /usr/bin/sox /home_raid/erich/Dokumente/Musik/Singkreis/roh/chan_0$KANAL__short_test.flac -p
-# Pipe: /usr/bin/sox /home_raid/erich/Dokumente/Musik/Singkreis/roh/chan_0$KANAL.flac -p
-# tmin: 926.766418
+# Pipe: /usr/bin/sox /home_raid/erich/Dokumente/Musik/Singkreis/roh/chan_0$KANAL__short_test.flac -p
+ Pipe: /usr/bin/sox /home_raid/erich/Dokumente/Musik/Singkreis/roh/chan_0$KANAL.flac -p
+ tmin: 926.766418
tmax: 5532.577148
Ende
@@ -43,9 +43,11 @@ Verzerrung Analyse$KANAL_roh Analyse$KANAL
maximale und minimale Dichten bestimmen (symmetrisch)
Abbildung: (x ; 500 log(1 + 0.002 y))
Nachbearbeitung: Abs
- Nachbearbeitung: Log: 0.000001
+ Nachbearbeitung: Log: 0.0001
Ende
+maximale und minimale Dichten bestimmen
+
!Schleifenende
!Schleife: $KANAL: 1 2 3 4 5 6
@@ -57,9 +59,11 @@ lineares Bild Analyse$KANAL
# t-Vergrößerung: 0.05
# x-Vergrößerung: 1/8
# tmax: 5000
- maximale und minimale Dichten bestimmen
- Datei: Analyse_Kanal$KANAL.bmp
- Nachbearbeitung: Log: 0.000987
+# maximale und minimale Dichten bestimmen
+ Maximaldichte: max(Wertes[Summe1].maxw,max(Wertes[Summe2].maxw,Wertes[Summe3].maxw))
+ Minimaldichte: min(Wertes[Summe1].minw,min(Wertes[Summe2].minw,Wertes[Summe3].minw))
+ Datei: Ergebnisse/Analyse_Kanal$KANAL.bmp
+# Nachbearbeitung: Log: 0.000987
# Nachbearbeitung: Knick
# 0.5 0.2
# Nachbearbeitungsende
@@ -71,7 +75,7 @@ lineares Bild Analyse$KANAL
# Kontur: Plasmaoberfläche ROMOberfläche
Ende
-externer Befehl: /usr/bin/convert ./Analyse_Kanal$KANAL.bmp ./Analyse_Kanal$KANAL.png&
+externer Befehl: /usr/bin/convert ./Ergebnisse/Analyse_Kanal$KANAL.bmp ./Ergebnisse/Analyse_Kanal$KANAL.png&
!Schleifenende
@@ -93,13 +97,15 @@ Linearkombination Summe3
!Schleife: $I: 1 2 3
!Schleife: $J: 1 2 3
-? $I >= $J: !überspringe: 4
+? $I >= $J: !überspringe: 5
Linearkombination Quotient$I_$J
Summe$I 1
Summe$J -1
Ende
+maximale und minimale Dichten bestimmen (symmetrisch) Quotient$I_$J
+
!Schleifenende
!Schleifenende
@@ -112,8 +118,10 @@ lineares Bild Quotient$I
# t-Vergrößerung: 0.05
# x-Vergrößerung: 1/8
# tmax: 5000
- maximale und minimale Dichten bestimmen
- Datei: Analyse_Quotient$I.bmp
+# maximale und minimale Dichten bestimmen
+ Maximaldichte: max(Wertes[Quotient1_2].maxw,max(Wertes[Quotient1_3].maxw,Wertes[Quotient2_3].maxw))
+ Minimaldichte: min(Wertes[Quotient1_2].minw,min(Wertes[Quotient1_3].minw,Wertes[Quotient2_3].minw))
+ Datei: Ergebnisse/Analyse_Quotient$I.bmp
# Nachbearbeitung: Log: 0.000987
# Nachbearbeitung: Knick
# 0.5 0.2
@@ -125,7 +133,7 @@ lineares Bild Quotient$I
Rahmen
Ende
-externer Befehl: /usr/bin/convert ./Analyse_Quotient$I.bmp ./Analyse_Quotient$I.png&
+externer Befehl: /usr/bin/convert ./Ergebnisse/Analyse_Quotient$I.bmp ./Ergebnisse/Analyse_Quotient$I.png&
!Schleifenende