From 775e1c775b919eba3660f1eb0f31d384fe4a290c Mon Sep 17 00:00:00 2001 From: Erich Eckner Date: Wed, 30 Sep 2015 15:03:59 +0200 Subject: arrayBereichsüberwachung prüft nun auch impulsRaum MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Physikunit.pas | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/Physikunit.pas b/Physikunit.pas index 9966c3b..24e3140 100644 --- a/Physikunit.pas +++ b/Physikunit.pas @@ -626,8 +626,9 @@ begin setlength(impulsraum,length(teilchen)); for i:=0 to length(impulsraum)-1 do for abl:=false to true do begin - fftw_getmem(impulsraum[i,abl],aX*aP*sizeof(double)); + fftw_getmem(impulsraum[i,abl],(aX*aP+1)*sizeof(double)); fillchar(impulsraum[i,abl]^,aX*aP*sizeof(double),#0); + (impulsraum[i,abl]+aX*aP)^:=pi; end; fillchar(massen,sizeof(massen),#0); @@ -750,6 +751,7 @@ end; procedure tFelder.pruefeArrayEnden(fehler: string); var i,j: longint; + abl: boolean; begin if (abs(lFftTmp^.re-pi)>1e-10) or (abs(lFftTmp^.im-sqr(pi))>1e-10) then begin gitter.prot.schreibe(fehler); @@ -765,6 +767,14 @@ begin gitter.prot.destroyall; halt(1); end; + for i:=0 to length(impulsRaum)-1 do + for abl:=false to true do + if abs((impulsRaum[i,abl]+aP*aX)^-pi)>1e-10 then begin + gitter.prot.schreibe(fehler); + gitter.prot.schreibe(floattostr((impulsRaum[i,abl]+aP*aX)^)+' vs. '+floattostr(pi)); + gitter.prot.destroyall; + halt(1); + end; end; procedure tFelder.berechneAbleitungen; -- cgit v1.2.3-54-g00ecf