diff options
-rw-r--r-- | Physikunit.pas | 11 |
1 files 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; |