From 8a49c62a01ff3978b333070d0f96e70d14a4e174 Mon Sep 17 00:00:00 2001 From: Erich Eckner Date: Wed, 14 Oct 2015 16:14:06 +0200 Subject: Bugs aus Defizitentfernung entfernt --- Physikunit.pas | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/Physikunit.pas b/Physikunit.pas index e12f90e..254c8d4 100644 --- a/Physikunit.pas +++ b/Physikunit.pas @@ -942,7 +942,7 @@ begin dens:=0; for i:=0 to length(massen)-1 do dens:=dens+massen[i]/teilchen[i].eigenschaften[tsgMasse]; - gitter.prot.schreibe('Gesamtdefizit: '+floattostr(gesamtDefizit)+' (Anteil '+floattostr(gesamtDefizit/dens)+')',true); + gitter.prot.schreibe('Gesamtdefizit: '+floattostr(gesamtDefizit)+' (Anteil '+floattostr(gesamtDefizit/dens*dX*dP)+')',true); for i:=0 to length(massen)-1 do begin dens:=0; for j:=0 to aX-1 do @@ -1089,14 +1089,19 @@ begin defizit:=0; break; end - else if (impulsraum[i,false]+koo)^>0 then begin + else if (impulsraum[i,false]+koo)^>=0 then begin defizit:=defizit-(impulsraum[i,false]+koo)^; (impulsraum[i,false]+koo)^:=0; + end + else begin + defizit:=defizit-(impulsraum[i,false]+koo)^; + gesamtDefizit:=gesamtDefizit-(impulsraum[i,false]+koo)^; + (impulsraum[i,false]+koo)^:=0; end; end; if defizit>0 then begin - gitter.prot.schreibe('Kann Defizit der Teilchensorte '+inttostr(i+1)+' nicht ausgleichen, '+floattostr(defizit)+' bleibt übrig!'); + gitter.prot.schreibe('Kann Defizit der Teilchensorte '+inttostr(i+1)+' nicht ausgleichen, '+floattostr(defizit)+' bleibt übrig!',true); gitter.abbrechen; end; end; -- cgit v1.2.3-70-g09d2