From a2341f4c1846fda951ca668f7cc21e43fb867dcf Mon Sep 17 00:00:00 2001 From: JoePfeiffer Date: Sun, 9 Jan 2022 14:02:03 -0700 Subject: [PATCH] Add logging for easier debugging later Dump interpolation parameters so I can create a good unittest --- .../barrowman/SymmetricComponentCalc.java | 19 ++++++++++++++++-- swing/resources/datafiles/presets/system.ser | Bin 386370 -> 386370 bytes 2 files changed, 17 insertions(+), 2 deletions(-) diff --git a/core/src/net/sf/openrocket/aerodynamics/barrowman/SymmetricComponentCalc.java b/core/src/net/sf/openrocket/aerodynamics/barrowman/SymmetricComponentCalc.java index 8d2634959..b5965b2ee 100644 --- a/core/src/net/sf/openrocket/aerodynamics/barrowman/SymmetricComponentCalc.java +++ b/core/src/net/sf/openrocket/aerodynamics/barrowman/SymmetricComponentCalc.java @@ -18,7 +18,8 @@ import net.sf.openrocket.util.MathUtil; import net.sf.openrocket.util.PolyInterpolator; import net.sf.openrocket.util.Transformation; - +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; /** * Calculates the aerodynamic properties of a SymmetricComponent. @@ -32,6 +33,8 @@ import net.sf.openrocket.util.Transformation; */ public class SymmetricComponentCalc extends RocketComponentCalc { + private final static Logger log = LoggerFactory.getLogger(SymmetricComponentCalc.class); + public static final double BODY_LIFT_K = 1.1; private final double length; @@ -375,7 +378,16 @@ public class SymmetricComponentCalc extends RocketComponentCalc { interpolator.addPoint(m, stag * Math.pow(int1.getValue(m) / stag, log4)); } } - + + // dump transonic/supersonic knots, in a format easily imported into python + String vel = "vel = [ "; + String cd = "cd = [ "; + for (double m : interpolator.getXPoints()) { + vel = vel + m + ", "; + cd = cd + interpolator.getValue(m) + ", "; + } + log.debug(vel + "]"); + log.debug(cd + "]"); /* * Now the transonic/supersonic region is ok. We still need to interpolate @@ -391,6 +403,9 @@ public class SymmetricComponentCalc extends RocketComponentCalc { double cdMach0 = 0.8 * pow2(sinphi); double minDeriv = (interpolator.getValue(min + 0.01) - minValue) / 0.01; + + log.debug("cdMach0 = " + cdMach0); + log.debug("minDeriv = " + minDeriv); // These should not occur, but might cause havoc for the interpolation if ((cdMach0 >= minValue - 0.01) || (minDeriv <= 0.01)) { diff --git a/swing/resources/datafiles/presets/system.ser b/swing/resources/datafiles/presets/system.ser index 33648114cadcbbf9a13720ed07e6b336e8074da7..28a7bbe93ec9cd910cf486a957c905b7296d84c6 100644 GIT binary patch delta 381 zcmX?fO8n3%@ePyLOpaT7d~(2AzR8ohKz>0ki^}BF$JYay?fIA(nJ!iX1?w(e29nv~DwE4DZ3411F9V%5`9GMvdgUUJz5FUj+u6CSDwAhl1Nv#Q z_w@@vfm$mj)#;tZjM9@048(m;psirtg4gij;sPQF9fo9 zO~3GrMR@uIcNXEvGmj=S3Qzuf^a@bwK_*bDppKDmvexk$Aip4&MP>5ouds0DBvSR$RP?SbPFUjePJ@PC9BQ>#ikV^3ss#5>AZdZJWz3CD^LdH zRi=y8K*73;mw{wF{AY4fVC2n|6diK{+fh#9NF&%ml>D NK+Ljz;w{#VTmT8Fpm6{I