From 788aadb9c788279cfd1a5412ae0574b63317c84f Mon Sep 17 00:00:00 2001 From: Charles <252065487+tobleromed@users.noreply.github.com> Date: Tue, 28 Jul 2026 22:29:45 -0700 Subject: [PATCH 1/3] Adopt upstream #242's golden-file checking, regenerate at documented defaults Our --check mode duplicated dsharlet's own open PR #242 ("Check stats for correctness"), down to the CheckStatistics method name - and his design is better in three ways, so take his instead of carrying a worse divergence: - Checking is unconditional. Ours was opt-in behind --check, which can be forgotten; a test run that does not assert is not a test. --updateGolden now regenerates, replacing --stats. - Statistics skip a warmup (the first half of the samples). The startup transient is large and sensitive to where buffer boundaries fell, and it was dominating the mean - it is what made the golden files hard to read. - Values are formatted G5. Rounding to five significant figures absorbs last-digit differences between platforms, so the files can be compared as text. That replaces our scale-normalized per-variable tolerance and the per-circuit loose-tolerance list it needed for Pro Co Rat. The golden files are regenerated at the documented defaults (48 kHz, the tool's own default) instead of the undocumented 44.1 kHz the committed ones were made at, so "run the tests" now means what it says with no remembered incantation, and CI no longer passes --sampleRate. Worth recording: #242's own regenerated files carry the same provenance quirk. Its Passive 1stOrder Lowpass RC peak is 0.44002, which is the 44.1 kHz grid value; at the 48 kHz default the boxcar-averaged peak is 0.44003, which is what this produces. So regenerating did not fix the mismatch for that PR either - the rate was simply never pinned down. Co-Authored-By: Claude Fable 5 --- .github/workflows/test.yml | 14 +-- Tests/Examples/Ibanez Tube Screamer TS-9.schx | 62 +++++----- Tests/Program.cs | 18 +-- Tests/Stats/59 Bassman Preamp+Tone Stack.csv | 46 +++---- Tests/Stats/59 Bassman Preamp.csv | 34 +++--- Tests/Stats/59 Bassman Tone Stack.csv | 18 +-- Tests/Stats/Active 1stOrder Highpass RC.csv | 16 +-- Tests/Stats/Active 1stOrder Lowpass RC.csv | 14 +-- Tests/Stats/Big Muff Pi.csv | 64 +++++----- Tests/Stats/Boss Super Overdrive SD-1.csv | 38 +++--- Tests/Stats/Bridge Rectifier.csv | 14 +-- .../Stats/Common Cathode Triode Amplifier.csv | 18 +-- .../Common Emitter Transistor Amplifier.csv | 16 +-- Tests/Stats/Diode Rectifier.csv | 10 +- Tests/Stats/Dunlop Cry Baby GCB-95.csv | 40 +++---- Tests/Stats/Fender 5e3.csv | 66 +++++----- Tests/Stats/Floating Diode Clipper.csv | 10 +- Tests/Stats/Floating Input.csv | 10 +- Tests/Stats/Floating Voltage Source.csv | 10 +- Tests/Stats/Half Rectifier.csv | 12 +- Tests/Stats/Ibanez Tube Screamer TS-9.csv | 34 +++--- Tests/Stats/JFET.csv | 14 +-- Tests/Stats/MXR Distortion +.csv | 28 ++--- Tests/Stats/MXR Phase 90.csv | 58 ++++----- Tests/Stats/Marshall Blues Breaker.csv | 56 ++++----- Tests/Stats/Marshall JCM2000 DSL Preamp.csv | 68 +++++------ Tests/Stats/Marshall JCM800 2203 Preamp.csv | 56 ++++----- .../Marshall JCM800 2203 preamp modded.csv | 68 +++++------ Tests/Stats/Op-Amp Inverting.csv | 12 +- Tests/Stats/Op-Amp Model.csv | 22 ++-- Tests/Stats/Op-Amp Non-Inverting.csv | 14 +-- Tests/Stats/Op-Amp Saturation.csv | 14 +-- Tests/Stats/Orange Rockerverb 50 Preamp.csv | 60 +++++----- Tests/Stats/Parallel capacitors 1.csv | 8 +- Tests/Stats/Parallel capacitors 2.csv | 8 +- Tests/Stats/Passive 1stOrder Highpass RC.csv | 8 +- Tests/Stats/Passive 1stOrder Lowpass RC.csv | 8 +- Tests/Stats/Passive 1stOrder Lowpass RL.csv | 8 +- Tests/Stats/Passive 2ndOrder Bandpass RLC.csv | 8 +- Tests/Stats/Passive 2ndOrder Lowpass RC.csv | 10 +- Tests/Stats/Passive 2ndOrder Lowpass RLC.csv | 10 +- Tests/Stats/Pro Co Rat.csv | 40 +++---- Tests/Stats/Rectifier.csv | 14 +-- Tests/Stats/SP3T.csv | 14 +-- Tests/Stats/SPDT.csv | 12 +- Tests/Stats/Subcircuit Tone Stack.csv | 10 +- Tests/Stats/Subcircuit Tone Stacks.csv | 14 +-- Tests/Stats/Subcircuit Trivial Two-Port.csv | 10 +- Tests/Stats/Subcircuit Trivial.csv | 8 +- Tests/Stats/Subcircuit Voltage Divider.csv | 10 +- Tests/Stats/Transformer.csv | 8 +- Tests/Stats/Wien Bridge Oscillator.csv | 20 ++-- Tests/Test.cs | 113 ++++++------------ 53 files changed, 664 insertions(+), 711 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 4bd1cc9a..fe0c0f5a 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -29,16 +29,15 @@ jobs: shell: pwsh working-directory: LiveSPICEVst run: dotnet publish -c Release --framework net8.0-windows /p:DebugType=None /p:UseSharedCompilation=false /p:UseRazorBuildServer=false - # --check asserts results against Tests/Stats/*.csv; --sampleRate 44100 because - # that is the configuration the committed baselines were generated with. + # Checking against Tests/Stats/*.csv is unconditional; --updateGolden regenerates. - name: Run circuit tests shell: pwsh working-directory: Tests - run: dotnet run -c Release --framework net6.0-windows test "Circuits\*.schx" --check --sampleRate 44100 + run: dotnet run -c Release --framework net6.0-windows test "Circuits\*.schx" - name: Run examples shell: pwsh working-directory: Tests - run: dotnet run -c Release --framework net6.0-windows test "Examples\*.schx" --check --sampleRate 44100 + run: dotnet run -c Release --framework net6.0-windows test "Examples\*.schx" test-macos: name: Test (macOS) @@ -56,14 +55,13 @@ jobs: # portable subset (Util, Audio, Circuit, ComputerAlgebra, Tests). - name: Build portable projects run: dotnet build LiveSPICE.Core.sln -c Release - # Same assertion as the Windows job: macOS reproduces the Windows-generated - # baselines to ~1e-12 (scale-normalized) at this configuration. + # Same unconditional assertion as the Windows job. - name: Run circuit tests working-directory: Tests - run: dotnet run -c Release --framework net8.0 --no-build test "Circuits/*.schx" --check --sampleRate 44100 + run: dotnet run -c Release --framework net8.0 --no-build test "Circuits/*.schx" - name: Run examples working-directory: Tests - run: dotnet run -c Release --framework net8.0 --no-build test "Examples/*.schx" --check --sampleRate 44100 + run: dotnet run -c Release --framework net8.0 --no-build test "Examples/*.schx" # The live audio path needs a device, which CI runners don't have. The offline render path # exercises schematic load, solve, codegen and the buffer loop without one. - name: List audio devices diff --git a/Tests/Examples/Ibanez Tube Screamer TS-9.schx b/Tests/Examples/Ibanez Tube Screamer TS-9.schx index 0256976b..484b9b59 100644 --- a/Tests/Examples/Ibanez Tube Screamer TS-9.schx +++ b/Tests/Examples/Ibanez Tube Screamer TS-9.schx @@ -1,23 +1,23 @@  - + - + - + - + - + - + @@ -25,20 +25,20 @@ - + - + - + - + - + @@ -46,10 +46,10 @@ - + - + @@ -57,57 +57,57 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -137,12 +137,12 @@ - + - + - + \ No newline at end of file diff --git a/Tests/Program.cs b/Tests/Program.cs index 235e8bc6..6d7b5cce 100644 --- a/Tests/Program.cs +++ b/Tests/Program.cs @@ -17,10 +17,9 @@ static async Task Main(string[] args) var rootCommand = new RootCommand().WithCommand("test", "Run tests", c => c .WithArgument("pattern", "Glob pattern for files to test") .WithOption(new[] { "--plot" }, "Plot results") - .WithOption(new[] { "--stats" }, "Write statistics") - .WithOption(new[] { "--check" }, "Check results against saved statistics (use --sampleRate 44100, the rate the baselines were generated at)") + .WithOption(new[] { "--updateGolden" }, "Overwrite the saved statistics instead of checking against them") .WithOption(new[] { "--samples" }, () => 4800, "Samples") - .WithHandler(CommandHandler.Create(Test))) + .WithHandler(CommandHandler.Create(Test))) .WithCommand("benchmark", "Run benchmarks", c => c .WithArgument("pattern", "Glob pattern for files to benchmark") .WithHandler(CommandHandler.Create(Benchmark))) @@ -34,7 +33,7 @@ static async Task Main(string[] args) private static int checkFailures = 0; - public static void Test(string pattern, bool plot, bool stats, bool check, int sampleRate, int samples, int oversample, int iterations) + public static void Test(string pattern, bool plot, bool updateGolden, int sampleRate, int samples, int oversample, int iterations) { var log = new ConsoleLog() { Verbosity = MessageType.Info }; var tester = new Test(); @@ -42,10 +41,9 @@ public static void Test(string pattern, bool plot, bool stats, bool check, int s foreach (var circuit in GetCircuits(pattern, log)) { var outputs = tester.Run(circuit, t => Harmonics(t, 0.5, 82, 2), sampleRate, samples, oversample, iterations); - if (check) - { - checkFailures += tester.CheckStatistics(circuit.Name, outputs, log); - } + // Checking is unconditional - skip the first half as warmup so the startup + // transient does not dominate the statistics. + checkFailures += tester.CheckStatistics(circuit.Name, outputs, samples / 2, updateGolden, log); #if PLOTTING if (plot) { @@ -57,10 +55,6 @@ public static void Test(string pattern, bool plot, bool stats, bool check, int s log.WriteLine(MessageType.Warning, "--plot is not supported on this platform (requires System.Drawing/WinForms); ignoring."); } #endif - if (stats) - { - tester.WriteStatistics(circuit.Name, outputs); - } } } diff --git a/Tests/Stats/59 Bassman Preamp+Tone Stack.csv b/Tests/Stats/59 Bassman Preamp+Tone Stack.csv index e1994b87..0f0769c0 100644 --- a/Tests/Stats/59 Bassman Preamp+Tone Stack.csv +++ b/Tests/Stats/59 Bassman Preamp+Tone Stack.csv @@ -1,23 +1,23 @@ -var, mean, min, max, rms -_v1[t], 180.0352482396041, 95.56989488628406, 279.74342643423984, 2.783859517197541 -_v2[t], 0.2675984641131151, -63.623168552738555, 79.56653267757052, 0.6405077271182598 -_v4[t], 180.57117614420966, 109.73893379763484, 259.71902657600987, 2.6863974609041987 -_v5[t], -0.1103161630596049, -15.426740481155429, 18.790176990589682, 0.13279752042456547 -_v6[t], 0.273089036832733, -63.96221163209455, 79.98853308684332, 0.6602074050350707 -_v7[t], -0.11990129305691978, -15.968913919133318, 18.983324159621596, 0.12817667167672345 -_v8[t], 0.27034375047289444, -63.79269009241656, 79.75263262213365, 0.6500952935732943 -_v11[t], 0.0014702956403830738, -0.4400236408798788, 0.44002371268155105, 0.003614017679866557 -_v13[t], 0.0014702956403830738, -0.4400236408798788, 0.44002371268155105, 0.003614017679866557 -_v14[t], 1.3630367534172851, 1.3618786978155015, 1.3637969941665073, 0.01967374242327925 -_v16[t], 158.80759544969365, 145.21216971801675, 172.31390061837132, 2.2948869116409005 -_v18[t], 325, 325, 325, 4.69097093716571 -_v19[t], -0.437489648110271, -14.678249587066247, 13.401903642952263, 0.11096316153725723 -_v20[t], -0.5974262154621535, -7.359187293533128, 4.363680938623097, 0.049211947250313984 -_v21[t], -1.0064021181817222, -7.38085479353312, 1.839428385141843, 0.04468253074261172 -_v22[t], 1.0970131454958665, 1.0747068401518486E-08, 1.9094966979155468, 0.018956089838064863 -_v24[t], 178.989951866974, 93.06143238783059, 280.51854333907477, 2.7771009138307208 -_v25[t], 325, 325, 325, 4.69097093716571 -_v26[t], 325, 325, 325, 4.69097093716571 -_v28[t], -0.5974262154621535, -7.359187293533128, 4.363680938623097, 0.049211947250313984 -GND[t], 0, 0, 0, 0 -_x1[t], -0.437489648110271, -14.678249587066247, 13.401903642952263, 0.11096316153725723 +var, mean, min, max +_v1[t], 184.36, 96.213, 279.47 +_v2[t], 2.0241, -63.517, 77.388 +_v4[t], 183.32, 112.37, 258.19 +_v5[t], 0.2757, -13.915, 18.542 +_v6[t], 2.0472, -63.856, 77.771 +_v7[t], 0.23142, -14.383, 18.786 +_v8[t], 2.0357, -63.687, 77.557 +_v11[t], 0.010264, -0.44003, 0.44003 +_v13[t], 0.010264, -0.44003, 0.44003 +_v14[t], 1.3629, 1.3619, 1.3635 +_v16[t], 158.54, 145.24, 172.31 +_v18[t], 325, 325, 325 +_v19[t], -1.0062, -14.678, 12.399 +_v20[t], -0.85753, -7.3593, 4.0959 +_v21[t], -1.2403, -7.381, 1.8238 +_v22[t], 1.0514, 1.075E-08, 1.9038 +_v24[t], 183.42, 93.667, 280.25 +_v25[t], 325, 325, 325 +_v26[t], 325, 325, 325 +_v28[t], -0.85753, -7.3593, 4.0959 +GND[t], 0, 0, 0 +_x1[t], -1.0062, -14.678, 12.399 diff --git a/Tests/Stats/59 Bassman Preamp.csv b/Tests/Stats/59 Bassman Preamp.csv index d0b7cbd2..4f046c88 100644 --- a/Tests/Stats/59 Bassman Preamp.csv +++ b/Tests/Stats/59 Bassman Preamp.csv @@ -1,17 +1,17 @@ -var, mean, min, max, rms -_v1[t], 182.20240211916783, 95.36189856778255, 284.4033343743095, 2.830269730971386 -_v4[t], 0.0014702956403830738, -0.4400236408798788, 0.44002371268155105, 0.003614017679866557 -_v6[t], 0.0014702956403830738, -0.4400236408798788, 0.44002371268155105, 0.003614017679866557 -_v7[t], 1.3630367544716637, 1.3618786998546792, 1.3637969942272612, 0.019673742438497076 -_v9[t], 158.80759574878704, 145.21216999205043, 172.31390126526406, 2.29488691596299 -_v11[t], 325, 325, 325, 4.69097093716571 -_v12[t], -0.43749818760868114, -14.678244342647883, 13.40189755001715, 0.11096317549230567 -_v13[t], -0.597430043532021, -7.35918467132394, 4.363679313131358, 0.049211965569382767 -_v14[t], -0.597430043532021, -7.35918467132394, 4.363679313131358, 0.049211965569382767 -_v15[t], -1.0064054692379056, -7.380852171323931, 1.8394282943039888, 0.04468255802585484 -_v16[t], 1.099566826337394, 1.6425727067507143E-08, 1.9094966644076459, 0.018967218088923758 -_v18[t], 181.30307397201355, 93.06143590576936, 285.1200309224404, 2.8244410656188577 -_v19[t], 325, 325, 325, 4.69097093716571 -_v20[t], 325, 325, 325, 4.69097093716571 -GND[t], 0, 0, 0, 0 -_x1[t], -0.43749818760868114, -14.678244342647883, 13.40189755001715, 0.11096317549230567 +var, mean, min, max +_v1[t], 186.78, 95.957, 284.4 +_v4[t], 0.010264, -0.44003, 0.44003 +_v6[t], 0.010264, -0.44003, 0.44003 +_v7[t], 1.3629, 1.3619, 1.3635 +_v9[t], 158.54, 145.24, 172.31 +_v11[t], 325, 325, 325 +_v12[t], -1.0062, -14.678, 12.399 +_v13[t], -0.85753, -7.3593, 4.0959 +_v14[t], -0.85753, -7.3593, 4.0959 +_v15[t], -1.2403, -7.381, 1.8238 +_v16[t], 1.0541, 1.6417E-08, 1.9038 +_v18[t], 185.95, 93.667, 285.12 +_v19[t], 325, 325, 325 +_v20[t], 325, 325, 325 +GND[t], 0, 0, 0 +_x1[t], -1.0062, -14.678, 12.399 diff --git a/Tests/Stats/59 Bassman Tone Stack.csv b/Tests/Stats/59 Bassman Tone Stack.csv index 22cc6ba3..6df8e7c5 100644 --- a/Tests/Stats/59 Bassman Tone Stack.csv +++ b/Tests/Stats/59 Bassman Tone Stack.csv @@ -1,9 +1,9 @@ -var, mean, min, max, rms -_v2[t], 0.0014702956403830738, -0.4400236408798788, 0.44002371268155105, 0.003614017679866557 -_v3[t], -0.0026497634426829414, -0.3117131983447524, 0.28870334638071043, 0.002413054450354762 -_v5[t], 0.004682197144256197, -0.30491771685490565, 0.3045659198692212, 0.0024525897158849184 -_v6[t], -0.0007648477854964096, -0.04956465507420667, 0.06209366575781037, 0.00045945856104125576 -_v7[t], -0.0026184596788803275, -0.31959318918351165, 0.2986719613077819, 0.0024753664952726325 -_v8[t], -0.0007185074881618131, -0.04477113746623971, 0.06017901731780708, 0.00044033748886681406 -_v9[t], -0.002634111560781629, -0.3156106577199359, 0.2936876538442461, 0.0024439085198385614 -GND[t], 0, 0, 0, 0 +var, mean, min, max +_v2[t], 0.010264, -0.44003, 0.44003 +_v3[t], 0.0057834, -0.28795, 0.2887 +_v5[t], 0.0052707, -0.30492, 0.27897 +_v6[t], 0.0012249, -0.048266, 0.062094 +_v7[t], 0.0059343, -0.29604, 0.29868 +_v8[t], 0.0011071, -0.04407, 0.060181 +_v9[t], 0.0058589, -0.29195, 0.29369 +GND[t], 0, 0, 0 diff --git a/Tests/Stats/Active 1stOrder Highpass RC.csv b/Tests/Stats/Active 1stOrder Highpass RC.csv index 4855b90a..09c25add 100644 --- a/Tests/Stats/Active 1stOrder Highpass RC.csv +++ b/Tests/Stats/Active 1stOrder Highpass RC.csv @@ -1,8 +1,8 @@ -var, mean, min, max, rms -_v2[t], 0.0014702956403830738, -0.4400236408798788, 0.44002371268155105, 0.003614017679866557 -_v4[t], 0.00031701855775254675, -0.03848584581020453, 0.02643187726729037, 0.00028976711633183996 -_v6[t], 0, 0, 0, 0 -_v7[t], -0.00031701855775254675, -0.02643187726729037, 0.03848584581020453, 0.00028976711633183996 -GND[t], 0, 0, 0, 0 -_x1[t], 2, 2, 2, 0.02886751345948129 -_x2[t], -2, -2, -2, 0.02886751345948129 +var, mean, min, max +_v2[t], 0.010264, -0.44003, 0.44003 +_v4[t], -8.6671E-05, -0.038486, 0.026432 +_v6[t], 0, 0, 0 +_v7[t], 8.6671E-05, -0.026432, 0.038486 +GND[t], 0, 0, 0 +_x1[t], 2, 2, 2 +_x2[t], -2, -2, -2 diff --git a/Tests/Stats/Active 1stOrder Lowpass RC.csv b/Tests/Stats/Active 1stOrder Lowpass RC.csv index af95093a..47e89b35 100644 --- a/Tests/Stats/Active 1stOrder Lowpass RC.csv +++ b/Tests/Stats/Active 1stOrder Lowpass RC.csv @@ -1,7 +1,7 @@ -var, mean, min, max, rms -_v2[t], 0.0014702956403830738, -0.4400236408798788, 0.44002371268155105, 0.003614017679866557 -_v4[t], -0.004710288513671943, -0.35169137384776095, 0.35471076062321527, 0.002872131899805403 -_v6[t], -4.207149575622404E-08, -6.455415341659972E-05, 3.568101539454469E-05, 3.1532386606018613E-07 -GND[t], 0, 0, 0, 0 -_x1[t], 1.9967600492024087, 1.8029985475451649, 2.2935887221623017, 0.028899903228478616 -_x2[t], -2.003239950797591, -2.197001452454835, -1.7064112778376985, 0.028993177207946814 +var, mean, min, max +_v2[t], 0.010264, -0.44003, 0.44003 +_v4[t], -0.0058083, -0.33573, 0.35471 +_v6[t], 6.8016E-07, -3.6743E-05, 3.5681E-05 +GND[t], 0, 0, 0 +_x1[t], 2.0045, 1.803, 2.2936 +_x2[t], -1.9955, -2.197, -1.7064 diff --git a/Tests/Stats/Big Muff Pi.csv b/Tests/Stats/Big Muff Pi.csv index 64a8de62..f9fab220 100644 --- a/Tests/Stats/Big Muff Pi.csv +++ b/Tests/Stats/Big Muff Pi.csv @@ -1,32 +1,32 @@ -var, mean, min, max, rms -_v1[t], 0.0014702956403830738, -0.4400236408798788, 0.44002371268155105, 0.003614017679866557 -_v4[t], 0.6023034532482988, 0.45919995393645613, 0.6858688806720006, 0.00874064365276868 -_v6[t], 0.02115371801863847, 7.34048781760751E-05, 0.05772315253182504, 0.00039849843595995575 -_v7[t], 6.764732701455551, 3.6767031054898345, 8.57707269244261, 0.10001329032261867 -_v8[t], 9, 9, 9, 0.1299038105676658 -_v10[t], -0.00113995657069569, -0.016652669754656853, 0.010442419393039748, 0.00010328267035153576 -_v11[t], -0.09670196691807596, -3.226436988530956, 1.7111847615355174, 0.021648388861898855 -_v12[t], -0.05813778510548001, -0.8492861574874995, 0.5325633890450271, 0.00526741618792831 -_v13[t], 0.6968552270196009, 0.2518498576340986, 0.9400962941172494, 0.010487610939843971 -_v15[t], 0.6931684976751624, 0.6701351221687472, 0.7091081851465596, 0.010007121050823499 -_v16[t], 0.07051580377743169, 0.05397150735564585, 0.08226103416716087, 0.0010286083818663227 -_v18[t], 4.23657303460491, 3.913831943183869, 4.757732900957775, 0.0613466280914798 -_v19[t], 4.327285616754444, 4.256362058939842, 4.393170760760027, 0.062460705316350215 -_v20[t], 9, 9, 9, 0.1299038105676658 -_v22[t], 0.6857614671825999, 0.665340162152899, 0.7080230574016698, 0.009899723966256926 -_v23[t], 0.06508621124555532, 0.050741137890123085, 0.08143252280556142, 0.0009482396377348344 -_v25[t], 4.31967192330898, 3.8478886843169433, 4.669445799321057, 0.0625642278422664 -_v26[t], 4.266126182314599, 4.201133595918485, 4.3174419211617305, 0.06157716479614946 -_v27[t], 9, 9, 9, 0.1299038105676658 -_v28[t], 0.6825047269924971, 0.12024646675730426, 1.2602298637658451, 0.010399948049779877 -_v30[t], 3.269338712429069, 2.9458364367558567, 3.508426991717488, 0.04730755370677994 -_v31[t], 0.5879563622902255, 0.3802386293043617, 0.9798159109668726, 0.008518242321895112 -_v33[t], 1.9237296612355617, 1.7854453129040901, 2.0256259817130573, 0.02780252331992859 -_v35[t], 1.6701023912901922, 1.531730998554626, 1.7721143127950074, 0.024147166724552856 -_v37[t], 1.0569936485042344, 0.9219802965961442, 1.1566160070519602, 0.015318515523573313 -_v38[t], 9, 9, 9, 0.1299038105676658 -_v39[t], 4.205428024394323, 3.819886994668019, 4.737290738226234, 0.06094449353893296 -_v40[t], -0.012100925960879663, -0.5012795456904169, 0.5434423436762175, 0.005395557001039743 -_v43[t], -0.006050462980440033, -0.25063977284520855, 0.2717211718381084, 0.00269777850051987 -_v44[t], -0.0006409220166669761, -0.14894059900774972, 0.08212686733891847, 0.0009329096552390818 -GND[t], 0, 0, 0, 0 +var, mean, min, max +_v1[t], 0.010264, -0.44003, 0.44003 +_v4[t], 0.60383, 0.45928, 0.68568 +_v6[t], 0.021828, 7.3646E-05, 0.057591 +_v7[t], 6.7092, 3.7012, 8.575 +_v8[t], 9, 9, 9 +_v10[t], -0.00089266, -0.013246, 0.010443 +_v11[t], -0.13593, -3.1619, 1.7059 +_v12[t], -0.045526, -0.67556, 0.53257 +_v13[t], 0.68325, 0.2519, 0.91228 +_v15[t], 0.69241, 0.67014, 0.70902 +_v16[t], 0.06997, 0.053971, 0.082197 +_v18[t], 4.2532, 3.9204, 4.7577 +_v19[t], 4.3278, 4.2614, 4.3895 +_v20[t], 9, 9, 9 +_v22[t], 0.68628, 0.66547, 0.70802 +_v23[t], 0.065466, 0.050827, 0.081431 +_v25[t], 4.3028, 3.8479, 4.6628 +_v26[t], 4.263, 4.2026, 4.3099 +_v27[t], 9, 9, 9 +_v28[t], 0.69, 0.12451, 1.2564 +_v30[t], 3.2582, 2.9458, 3.5035 +_v31[t], 0.58635, 0.41131, 0.98249 +_v33[t], 1.9189, 1.7854, 2.0235 +_v35[t], 1.6652, 1.5317, 1.7699 +_v37[t], 1.0522, 0.92198, 1.1544 +_v38[t], 9, 9, 9 +_v39[t], 4.2232, 3.8241, 4.7373 +_v40[t], 0.013586, -0.42565, 0.54345 +_v43[t], 0.006793, -0.21283, 0.27172 +_v44[t], 0.001263, -0.1482, 0.082127 +GND[t], 0, 0, 0 diff --git a/Tests/Stats/Boss Super Overdrive SD-1.csv b/Tests/Stats/Boss Super Overdrive SD-1.csv index 50c8a8a0..268f559e 100644 --- a/Tests/Stats/Boss Super Overdrive SD-1.csv +++ b/Tests/Stats/Boss Super Overdrive SD-1.csv @@ -1,19 +1,19 @@ -var, mean, min, max, rms -_v2[t], 4.5, 4.5, 4.5, 0.0649519052838329 -_v3[t], 4.495394108641322, 4.228532294890659, 4.886908800499205, 0.06494564326814059 -_v4[t], 4.849425382636042, 3.3289513609679955, 6.718383503670121, 0.07263521557221576 -_v6[t], 4.673951694007912, 3.9152964071517453, 5.608067265353597, 0.0681441589362524 -_v8[t], 0.00010685124869763957, -0.04498142930838511, 0.07900344742698351, 0.0001790944821799809 -_v10[t], 4.6761741093040206, 3.5670548426340933, 6.183170565434015, 0.06835092872802014 -_v12[t], 4.5, 4.5, 4.5, 0.0649519052838329 -_v14[t], 0.007119245462566666, -0.3751623269928427, 0.5683579413828735, 0.0036679821063877994 -_v15[t], 0.020930581659945657, -1.1029772413589574, 1.670972347665648, 0.010783867392780117 -_v16[t], 4.517313493335188, 4.175920236065652, 4.99088335307287, 0.06528199508552225 -_v17[t], 4.495394108641322, 4.228532294890659, 4.886908800499205, 0.06494564326814059 -_v18[t], 4.495595786851124, 4.233845887041099, 4.880318251615335, 0.06494636110508561 -_v19[t], 4.673951694007915, 3.9152964071517466, 5.608067265353599, 0.06814415893625243 -_v20[t], 4.673946697461645, 3.915297478019645, 5.608064802406627, 0.0681440606708466 -_v21[t], 0.0014702956403830668, -0.4400236408798789, 0.44002371268155105, 0.003614017679866557 -_v22[t], 0.0142384909251336, -0.7503246539856849, 1.136715882765747, 0.007335964212775599 -_v23[t], 4.672409745638672, 3.7854525645857007, 5.785070086206201, 0.06821661672018706 -GND[t], 0, 0, 0, 0 +var, mean, min, max +_v2[t], 4.5, 4.5, 4.5 +_v3[t], 4.5075, 4.2295, 4.8869 +_v4[t], 4.8423, 3.3297, 6.7184 +_v6[t], 4.6734, 3.9157, 5.6081 +_v8[t], -0.00032733, -0.041952, 0.03688 +_v10[t], 4.6661, 3.6626, 5.7449 +_v12[t], 4.5, 4.5, 4.5 +_v14[t], -0.004792, -0.37538, 0.38868 +_v15[t], -0.014088, -1.1036, 1.1427 +_v16[t], 4.5283, 4.1769, 4.9909 +_v17[t], 4.5075, 4.2295, 4.8869 +_v18[t], 4.5082, 4.2348, 4.8803 +_v19[t], 4.6734, 3.9157, 5.6081 +_v20[t], 4.6734, 3.9157, 5.6081 +_v21[t], 0.010264, -0.44003, 0.44003 +_v22[t], -0.009584, -0.75075, 0.77736 +_v23[t], 4.6749, 3.7863, 5.7851 +GND[t], 0, 0, 0 diff --git a/Tests/Stats/Bridge Rectifier.csv b/Tests/Stats/Bridge Rectifier.csv index aa6548ad..bf15684a 100644 --- a/Tests/Stats/Bridge Rectifier.csv +++ b/Tests/Stats/Bridge Rectifier.csv @@ -1,7 +1,7 @@ -var, mean, min, max, rms -_v1[t], 0.0014702956403830738, -0.4400236408798788, 0.44002371268155105, 0.003614017679866557 -_v2[t], 0.0014702956388291477, -0.4400236406798788, 0.44002371248155114, 0.0036140176776176475 -_v4[t], 0.08318771812528565, -0.017571280293489505, 0.4224523603863914, 0.0024162670287647126 -_v6[t], 0.1678457318894009, 0, 0.404881151894572, 0.0032260431496966466 -_v7[t], 0.08465801376411493, -0.01757128029348743, 0.4224524321880616, 0.0024281459459067306 -GND[t], 0, 0, 0, 0 +var, mean, min, max +_v1[t], 0.010264, -0.44003, 0.44003 +_v2[t], 0.010264, -0.44003, 0.44003 +_v4[t], 0.081345, -0.017571, 0.42246 +_v6[t], 0.17295, 5.9657E-06, 0.40488 +_v7[t], 0.091609, -0.017571, 0.42246 +GND[t], 0, 0, 0 diff --git a/Tests/Stats/Common Cathode Triode Amplifier.csv b/Tests/Stats/Common Cathode Triode Amplifier.csv index 8c9a367f..d708742f 100644 --- a/Tests/Stats/Common Cathode Triode Amplifier.csv +++ b/Tests/Stats/Common Cathode Triode Amplifier.csv @@ -1,9 +1,9 @@ -var, mean, min, max, rms -_v2[t], 0.0014702956403830738, -0.4400236408798788, 0.44002371268155105, 0.003614017679866557 -_v3[t], -0.08491095425872663, -0.5266830066950615, 0.3610121155761537, 0.003802356390948583 -_v5[t], -0.09050546326639063, -0.532331872176773, 0.35546011052667575, 0.0038293214119309513 -_v6[t], 1.7923367108101402, 1.7628766786349803, 1.8235287108579277, 0.025871036330121756 -_v8[t], 325, 325, 325, 4.69097093716571 -_v9[t], 205.76159307735887, 184.18788687047794, 225.93504969180594, 2.974703747018109 -_v10[t], 0.25798218693959496, -22.033943430872263, 19.59231869173293, 0.1661976763544019 -GND[t], 0, 0, 0, 0 +var, mean, min, max +_v2[t], 0.010264, -0.44003, 0.44003 +_v3[t], -0.073197, -0.51872, 0.36102 +_v5[t], -0.078813, -0.52437, 0.35546 +_v6[t], 1.7901, 1.7631, 1.8069 +_v8[t], 325, 325, 325 +_v9[t], 205.14, 184.19, 225.4 +_v10[t], -0.54547, -22.035, 18.357 +GND[t], 0, 0, 0 diff --git a/Tests/Stats/Common Emitter Transistor Amplifier.csv b/Tests/Stats/Common Emitter Transistor Amplifier.csv index a95f96e8..6bd67623 100644 --- a/Tests/Stats/Common Emitter Transistor Amplifier.csv +++ b/Tests/Stats/Common Emitter Transistor Amplifier.csv @@ -1,8 +1,8 @@ -var, mean, min, max, rms -_v1[t], 0.0014702956403830738, -0.4400236408798788, 0.44002371268155105, 0.003614017679866557 -_v3[t], 0.5099174259932071, 0.46655204904576003, 0.5495069784257538, 0.007370049558430907 -_v6[t], 5.212114079678679, 0.1715202236008309, 8.591071604462545, 0.08484636255244768 -_v7[t], 10, 10, 10, 0.14433756729740643 -_v9[t], 0.043548436780902394, -5.030359922452828, 3.454597373610454, 0.0392128306102249 -_v11[t], 0.010408329317821253, 0.0020002855859584693, 0.02300436561408549, 0.00017926074324457481 -GND[t], 0, 0, 0, 0 +var, mean, min, max +_v1[t], 0.010264, -0.44003, 0.44003 +_v3[t], 0.51056, 0.46655, 0.54951 +_v6[t], 5.1479, 0.17152, 8.5911 +_v7[t], 10, 10, 10 +_v9[t], -0.017813, -5.029, 3.4545 +_v11[t], 0.010567, 0.0020002, 0.023004 +GND[t], 0, 0, 0 diff --git a/Tests/Stats/Diode Rectifier.csv b/Tests/Stats/Diode Rectifier.csv index 67ffb6f8..dc9fe1ba 100644 --- a/Tests/Stats/Diode Rectifier.csv +++ b/Tests/Stats/Diode Rectifier.csv @@ -1,5 +1,5 @@ -var, mean, min, max, rms -_v1[t], 0.16784573205161693, 0, 0.40488115209457204, 0.003226043151824894 -_v4[t], 0.08465801384600018, -0.017571280293487437, 0.4224524323880616, 0.0024281459474616396 -_v5[t], 0.08318771820561713, -0.017571280293489512, 0.42245236058639135, 0.0024162670303047597 -GND[t], 0, 0, 0, 0 +var, mean, min, max +_v1[t], 0.17295, 5.9657E-06, 0.40488 +_v4[t], 0.091609, -0.017571, 0.42246 +_v5[t], 0.081345, -0.017571, 0.42246 +GND[t], 0, 0, 0 diff --git a/Tests/Stats/Dunlop Cry Baby GCB-95.csv b/Tests/Stats/Dunlop Cry Baby GCB-95.csv index edf6484c..7c7e73cf 100644 --- a/Tests/Stats/Dunlop Cry Baby GCB-95.csv +++ b/Tests/Stats/Dunlop Cry Baby GCB-95.csv @@ -1,20 +1,20 @@ -var, mean, min, max, rms -_v1[t], 0.0014702956403830738, -0.4400236408798788, 0.44002371268155105, 0.003614017679866557 -_v3[t], 3.800988295634169, 3.3842173212392126, 4.260266488993462, 0.05497406468233805 -_v7[t], 3.2781027869226347, 2.8647770831823527, 3.7338935396141024, 0.047442581147671734 -_v8[t], 8.67048351949694, 8.623566085801663, 8.712634079660173, 0.12514815645629024 -_v9[t], 9, 9, 9, 0.1299038105676658 -_v10[t], 3.280095676425664, 2.9119009296273988, 3.6734552564766485, 0.04744145819315746 -_v11[t], 0.6414118574888966, 0.6374078658150558, 0.6479237396325084, 0.009258056874601453 -_v13[t], 0.07265206174987626, 0.06969337424331369, 0.07751339080398888, 0.0010490029568609094 -_v14[t], 9, 9, 9, 0.1299038105676658 -_v15[t], 4.697006015675856, 4.485021693629563, 4.824768717203671, 0.06780601055601863 -_v16[t], 0.6426348520628121, 0.6401464083011842, 0.6460374138382802, 0.009275639006060734 -_v17[t], 0.6426311778870776, 0.6419227460778889, 0.643399716681272, 0.009275583936189562 -_v20[t], 4.015618316724239, 3.9533318563906774, 4.054012663883457, 0.057961533819695155 -_v21[t], 0.0013750669239068966, -0.20719923764626247, 0.1346823501382908, 0.0011944946934903584 -_v23[t], 0.00040788778737985484, -0.06143773504168748, 0.03968186020027242, 0.000353587911719096 -_v24[t], 9, 9, 9, 0.1299038105676658 -_v25[t], 8.658313419466053, 8.654360645023038, 8.664756799287176, 0.12497199451045674 -_v26[t], 3.4313659142415682, 3.369537880168844, 3.469479438759477, 0.04952874155568173 -GND[t], 0, 0, 0, 0 +var, mean, min, max +_v1[t], 0.010264, -0.44003, 0.44003 +_v3[t], 3.8171, 3.4076, 4.2603 +_v7[t], 3.2941, 2.888, 3.7339 +_v8[t], 8.6688, 8.6236, 8.7104 +_v9[t], 9, 9, 9 +_v10[t], 3.2922, 2.9355, 3.6735 +_v11[t], 0.64149, 0.63809, 0.6464 +_v13[t], 0.072707, 0.070192, 0.076367 +_v14[t], 9, 9, 9 +_v15[t], 4.6946, 4.5354, 4.8046 +_v16[t], 0.64262, 0.64183, 0.64341 +_v17[t], 0.64265, 0.64197, 0.6434 +_v20[t], 4.0149, 3.968, 4.047 +_v21[t], -0.000777, -0.15985, 0.10904 +_v23[t], -0.00023941, -0.047322, 0.032155 +_v24[t], 9, 9, 9 +_v25[t], 8.6584, 8.6552, 8.663 +_v26[t], 3.4307, 3.3841, 3.4625 +GND[t], 0, 0, 0 diff --git a/Tests/Stats/Fender 5e3.csv b/Tests/Stats/Fender 5e3.csv index ebf265e9..8facc066 100644 --- a/Tests/Stats/Fender 5e3.csv +++ b/Tests/Stats/Fender 5e3.csv @@ -1,33 +1,33 @@ -var, mean, min, max, rms -_v6[t], 1.205230315722039, -2.010597898906034, 8.878429914059343, 0.03862807888225851 -_v7[t], 3.688679573076858, -1.2676617328409003, 10.1548124593529, 0.07331595976148039 -_v9[t], 12.539834937345494, 0.01989609682256936, 18.749334437885903, 0.19475908983646137 -_v10[t], 361.7741837411276, 235.28622892251275, 652.9831999609155, 5.28280439126081 -_v11[t], 368.993272948071, 47.694989931038066, 496.6146548612652, 5.385019704940926 -_v12[t], 1.2052303157220388, -2.010597898906034, 8.878429914059344, 0.03862807888225851 -_v13[t], 3.6886795730768585, -1.2676617328409006, 10.154812459352904, 0.07331595976148042 -_v15[t], 367.616673843676, 242.17541979661047, 652.9746013822769, 5.362349927691869 -_v16[t], 372.3833261563241, 87.02539861772321, 497.8245802033896, 5.430437887060002 -_v17[t], -0.20724575272379728, -11.115180887251263, 24.606487076719716, 0.06743436844452337 -_v20[t], 3.638945656520996, -0.05392787489413303, 13.99760611274794, 0.06889684748016692 -_v21[t], 3.7459599883743793, -0.053927874888432835, 14.432327090043847, 0.07096751504699227 -_v22[t], 2.755549809060399, -6.654357842670952, 14.405963553812645, 0.07067979485555663 -_v23[t], 9.133022189779906, -1.4592051250622473, 27.85318748542833, 0.1816074489145615 -_v25[t], 367.5827035257722, 241.4996703189993, 652.9834104155765, 5.362176828036743 -_v26[t], 372.3893663174225, 56.675356491477594, 498.06384758501144, 5.430989567671866 -_v28[t], 0.0014702956403830738, -0.4400236408798788, 0.44002371268155105, 0.003614017679866557 -_v29[t], 1.4196310119510733, -7.789403987770904, 13.363870380394584, 0.062022886924468945 -_v30[t], 0.19433078021684247, 1.284612496307502E-10, 0.49384434397739196, 0.0035508964897259143 -_v32[t], -0.14396530212792294, -0.4489879949078139, 0.07690876126097736, 0.0028679878970007244 -_v34[t], 0.27416759582999467, -10.09899104838925, 21.2662146161645, 0.10829912476816557 -_v35[t], 0.12452524622804416, 5.4821695278773136E-05, 0.21605449662854997, 0.0019687620764389235 -_v37[t], -0.6106320380566198, -5.2465093479720215, 0.483095438696191, 0.019782552669566425 -_v38[t], -0.00019137475782225006, -0.0016270616415810775, 0.00015090397591173557, 6.186540715344783E-06 -_v39[t], 3.2663890689320678E-06, -0.001620845606185495, 0.0004920942133908862, 2.685644309857948E-06 -_v40[t], -0.6230012705630085, -3.0109125260893297, 0.35883159873123033, 0.01744539739714738 -_v41[t], -0.5981031267873835, -7.455980859820674, 1.1049018886428261, 0.020444973862084662 -_v42[t], 1.419652162988428, -9.38588261471507, 12.953375594966813, 0.07130672809346407 -GND[t], 0, 0, 0, 0 -B+1[t], 370, 370, 370, 5.340489990004039 -B+2[t], 136.32884365753574, 0.04573574962116582, 207.7496087971332, 2.138022413968932 -B+3[t], 14.023140333905557, -0.001760319142020485, 35.426867462379555, 0.2571061197179218 +var, mean, min, max +_v6[t], 1.5427, -1.8922, 8.8781 +_v7[t], 5.546, -0.61004, 9.2797 +_v9[t], 16.096, 13.183, 18.088 +_v10[t], 364.73, 269.74, 494.8 +_v11[t], 363.99, 236.84, 460.09 +_v12[t], 1.5427, -1.8922, 8.8781 +_v13[t], 5.546, -0.61004, 9.2797 +_v15[t], 372.74, 278.42, 497.31 +_v16[t], 367.26, 242.69, 461.58 +_v17[t], 0.23863, -7.9633, 11.071 +_v20[t], 4.5795, 0.24845, 13.997 +_v21[t], 4.7135, 0.24845, 14.432 +_v22[t], 4.0155, -2.9146, 14.406 +_v23[t], 14.4, 1.954, 23.566 +_v25[t], 372.73, 277.96, 497.35 +_v26[t], 367.25, 242.15, 461.78 +_v28[t], 0.010264, -0.44003, 0.44003 +_v29[t], 1.9773, -5.0956, 13.364 +_v30[t], 0.2884, 0.061102, 0.44462 +_v32[t], -0.12169, -0.44656, 0.076907 +_v34[t], 4.2152, -5.2014, 17.07 +_v35[t], 0.16008, 0.11953, 0.20082 +_v37[t], 0.11758, -0.56579, 0.42614 +_v38[t], 3.6793E-05, -0.00017599, 0.00013309 +_v39[t], 4.7304E-06, -0.00013067, 7.6828E-05 +_v40[t], 0.096777, -0.24345, 0.31176 +_v41[t], 0.11942, -0.64179, 0.99579 +_v42[t], 3.9427, -1.1809, 11.99 +GND[t], 0, 0, 0 +B+1[t], 370, 370, 370 +B+2[t], 177.21, 144.35, 201.95 +B+3[t], 20.752, 10.712, 31.47 diff --git a/Tests/Stats/Floating Diode Clipper.csv b/Tests/Stats/Floating Diode Clipper.csv index 469ca988..b12c623c 100644 --- a/Tests/Stats/Floating Diode Clipper.csv +++ b/Tests/Stats/Floating Diode Clipper.csv @@ -1,5 +1,5 @@ -var, mean, min, max, rms -_v1[t], 0.0014702956403830738, -0.4400236408798788, 0.44002371268155105, 0.003614017679866557 -_v3[t], 2.704674328274717E-08, -0.0027758040039946932, 0.0027758046543351275, 1.2105126466538717E-05 -_v4[t], 0.0014702689821920248, -0.4372481151371008, 0.43724826254167465, 0.0036053014506257914 -GND[t], 0, 0, 0, 0 +var, mean, min, max +_v1[t], 0.010264, -0.44003, 0.44003 +_v3[t], 4.1013E-05, -0.002776, 0.002776 +_v4[t], 0.010223, -0.43725, 0.43725 +GND[t], 0, 0, 0 diff --git a/Tests/Stats/Floating Input.csv b/Tests/Stats/Floating Input.csv index 2c864f42..9f923906 100644 --- a/Tests/Stats/Floating Input.csv +++ b/Tests/Stats/Floating Input.csv @@ -1,5 +1,5 @@ -var, mean, min, max, rms -_v2[t], 0.029370654816285303, -0.4999990687483864, 0.49999930175117924, 0.005147923964599114 -_v3[t], 0.019090337997395925, -0.36405047047221845, 0.4546573688071724, 0.0036629280158553793 -_v4[t], 0.02056063363777889, -0.588411390489811, 0.4555487702502243, 0.004148272020408912 -GND[t], 0, 0, 0, 0 +var, mean, min, max +_v2[t], -2.4305E-10, -0.5, 0.5 +_v3[t], -0.0034214, -0.36162, 0.43398 +_v4[t], 0.0068429, -0.58848, 0.39427 +GND[t], 0, 0, 0 diff --git a/Tests/Stats/Floating Voltage Source.csv b/Tests/Stats/Floating Voltage Source.csv index a27c31cf..ed1be032 100644 --- a/Tests/Stats/Floating Voltage Source.csv +++ b/Tests/Stats/Floating Voltage Source.csv @@ -1,5 +1,5 @@ -var, mean, min, max, rms -_v2[t], 0.0014702956403830738, -0.4400236408798788, 0.44002371268155105, 0.003614017679866557 -_v3[t], -0.00881002117862114, -0.44548707778951796, 0.3597148224859681, 0.002989488673842388 -_v4[t], 0.02056063363800837, -0.5884113904881904, 0.4555487702502242, 0.004148272020409549 -GND[t], 0, 0, 0, 0 +var, mean, min, max +_v2[t], 0.010264, -0.44003, 0.44003 +_v3[t], 0.0068429, -0.43368, 0.32245 +_v4[t], 0.0068429, -0.58848, 0.39427 +GND[t], 0, 0, 0 diff --git a/Tests/Stats/Half Rectifier.csv b/Tests/Stats/Half Rectifier.csv index 5c3f0289..ce628b90 100644 --- a/Tests/Stats/Half Rectifier.csv +++ b/Tests/Stats/Half Rectifier.csv @@ -1,6 +1,6 @@ -var, mean, min, max, rms -_v1[t], 0.0014702956403830738, -0.4400236408798788, 0.44002371268155105, 0.003614017679866557 -_v2[t], -0.005906657978487492, -0.4400236398798788, 0.40403119452347014, 0.0034741493724840945 -_v5[t], 0.7376953618870721, -1.0000000105758744E-07, 3.5992518158081044, 0.02022767089859138 -_v6[t], -0.059066579784874826, -4.400236398798787, 4.040311945234701, 0.034741493724840956 -GND[t], 0, 0, 0, 0 +var, mean, min, max +_v1[t], 0.010264, -0.44003, 0.44003 +_v2[t], 0.0022914, -0.44003, 0.40403 +_v5[t], 0.79729, -1E-07, 3.5993 +_v6[t], 0.022914, -4.4003, 4.0403 +GND[t], 0, 0, 0 diff --git a/Tests/Stats/Ibanez Tube Screamer TS-9.csv b/Tests/Stats/Ibanez Tube Screamer TS-9.csv index c5cbc534..af5499f6 100644 --- a/Tests/Stats/Ibanez Tube Screamer TS-9.csv +++ b/Tests/Stats/Ibanez Tube Screamer TS-9.csv @@ -1,17 +1,17 @@ -var, mean, min, max, rms -_v2[t], 0.0014702956403830738, -0.4400236408798788, 0.44002371268155105, 0.003614017679866557 -_v3[t], 4.5, 4.5, 4.5, 0.0649519052838329 -_v4[t], 4.494375148512331, 4.061898983120505, 4.954402101384812, 0.0649680974338107 -_v5[t], 4.494375148512331, 4.061898983120505, 4.954402101384812, 0.0649680974338107 -_v6[t], 4.476644282206077, 3.7570812155290625, 5.271010858105085, 0.06491105024195191 -_v8[t], 4.4787448907167295, 3.832801098168964, 5.191469560417362, 0.06487919205887209 -_v10[t], -3.0496862213385867E-06, -0.04916953099777244, 0.05051627110627721, 0.00028342063917846243 -_v12[t], 4.478731042368836, 3.8195364295662495, 5.2070142087188405, 0.06489763165369657 -_v14[t], 4.5, 4.5, 4.5, 0.0649519052838329 -_v16[t], -0.008281720905049045, -0.33807240699933655, 0.35697471955500437, 0.0028616877454339727 -_v17[t], -0.016563441810098896, -0.6761448139986745, 0.7139494391100061, 0.005723375490867945 -_v18[t], 4.48542193879334, 3.914762824426788, 5.107537202807062, 0.06490054166270261 -_v19[t], 4.495007026768179, 4.068608830440386, 4.946843862311621, 0.06497391456008048 -_v20[t], 4.4787448907167295, 3.832801098168964, 5.191469560417362, 0.06487919205887209 -_v21[t], 4.478745029200212, 3.832843876382682, 5.191418078446714, 0.06487913656091428 -GND[t], 0, 0, 0, 0 +var, mean, min, max +_v2[t], 0.010264, -0.44003, 0.44003 +_v3[t], 4.5, 4.5, 4.5 +_v4[t], 4.5105, 4.0871, 4.9544 +_v5[t], 4.5105, 4.0871, 4.9544 +_v6[t], 4.4972, 3.7819, 5.271 +_v8[t], 4.4996, 3.8554, 5.1915 +_v10[t], -0.00047585, -0.049175, 0.047754 +_v12[t], 4.4974, 3.8421, 5.207 +_v14[t], 4.5, 4.5, 4.5 +_v16[t], 0.0022076, -0.32324, 0.35698 +_v17[t], 0.0044152, -0.64649, 0.71396 +_v18[t], 4.5038, 3.9398, 5.1075 +_v19[t], 4.5103, 4.0939, 4.9469 +_v20[t], 4.4996, 3.8554, 5.1915 +_v21[t], 4.4996, 3.8555, 5.1914 +GND[t], 0, 0, 0 diff --git a/Tests/Stats/JFET.csv b/Tests/Stats/JFET.csv index 995cdc33..9b41f79c 100644 --- a/Tests/Stats/JFET.csv +++ b/Tests/Stats/JFET.csv @@ -1,7 +1,7 @@ -var, mean, min, max, rms -_v1[t], 1.175809817688605, 0.8321069768648174, 1.52458711519506, 0.017208208886852882 -_v2[t], 5.36602690652819, 4.415026447211471, 6.303632213917755, 0.07783968285207606 -_v3[t], 0.0014702956403830738, -0.4400236408798788, 0.44002371268155105, 0.003614017679866557 -_v5[t], 9, 9, 9, 0.1299038105676658 -_v6[t], -0.0026112100354453694, -0.955509360464441, 0.9331622149272862, 0.007760187264331274 -GND[t], 0, 0, 0, 0 +var, mean, min, max +_v1[t], 1.1828, 0.8321, 1.5246 +_v2[t], 5.347, 4.415, 6.3036 +_v3[t], 0.010264, -0.44003, 0.44003 +_v5[t], 9, 9, 9 +_v6[t], -0.021802, -0.9555, 0.93307 +GND[t], 0, 0, 0 diff --git a/Tests/Stats/MXR Distortion +.csv b/Tests/Stats/MXR Distortion +.csv index 251a7eb2..b0314d84 100644 --- a/Tests/Stats/MXR Distortion +.csv +++ b/Tests/Stats/MXR Distortion +.csv @@ -1,14 +1,14 @@ -var, mean, min, max, rms -_v2[t], 0.0014702956403830738, -0.4400236408798788, 0.44002371268155105, 0.003614017679866557 -_v4[t], 0.001525970116146634, -0.4359621664755663, 0.43612602483213736, 0.0035792522521095895 -_v5[t], 4.494422115088845, 4.065908220806217, 4.949809767644555, 0.06496690138203083 -_v6[t], 4.5, 4.5, 4.5, 0.0649519052838329 -_v7[t], 4.494401240419335, 4.065876240815535, 4.949798270754154, 0.06496660378726832 -_v8[t], 4.5000820506527095, 4.437669273034483, 4.561189564884071, 0.06495454233353704 -_v9[t], 4.473267949614086, 2.5550346239616557, 6.635228785225017, 0.06657780792714138 -_v10[t], 4.500181328066405, 4.438361214656045, 4.56066611900772, 0.06495593978436713 -_v12[t], -0.04949139526768127, -1.8032272723978378, 2.173165235960518, 0.016087640454052664 -_v13[t], -0.028381886418653, -0.21524300531600885, 0.2228186635743256, 0.0024279829353022284 -_v16[t], -0.028353504532234487, -0.21502776231069282, 0.22259584491075127, 0.002425554952366928 -_v19[t], 9, 9, 9, 0.1299038105676658 -GND[t], 0, 0, 0, 0 +var, mean, min, max +_v2[t], 0.010264, -0.44003, 0.44003 +_v4[t], 0.010161, -0.43597, 0.43556 +_v5[t], 4.5103, 4.0909, 4.9498 +_v6[t], 4.5, 4.5, 4.5 +_v7[t], 4.5103, 4.0909, 4.9498 +_v8[t], 4.4994, 4.4441, 4.5353 +_v9[t], 4.5509, 2.6789, 6.6321 +_v10[t], 4.4992, 4.4448, 4.5348 +_v12[t], 0.022329, -1.7298, 2.1412 +_v13[t], -0.019901, -0.21352, 0.22223 +_v16[t], -0.019881, -0.21331, 0.222 +_v19[t], 9, 9, 9 +GND[t], 0, 0, 0 diff --git a/Tests/Stats/MXR Phase 90.csv b/Tests/Stats/MXR Phase 90.csv index 040f4503..638486fe 100644 --- a/Tests/Stats/MXR Phase 90.csv +++ b/Tests/Stats/MXR Phase 90.csv @@ -1,29 +1,29 @@ -var, mean, min, max, rms -_v1[t], 0.0014702956403830738, -0.4400236408798788, 0.44002371268155105, 0.003614017679866557 -_v2[t], 0.001588215658678685, -0.43243304820202877, 0.432817920984122, 0.003546496383383113 -_v3[t], 7.210580180949388, 6.832791560495246, 7.659841224003741, 0.10412947972120655 -_v4[t], 7.210580180949388, 6.832791560495246, 7.659841224003741, 0.10412947972120655 -_v5[t], 7.213320415551783, 7.005977581171637, 7.51297998604697, 0.10413733367231227 -_v6[t], 7.213320415551783, 7.005977581171637, 7.51297998604697, 0.10413733367231227 -_v7[t], 7.216122421809293, 7.215007836625645, 7.217981283327469, 0.10415575637970799 -_v8[t], 3.6080260285489247, 3.6069820651191815, 3.6097929968141544, 0.05207737156017954 -_v9[t], 7.216060650154189, 6.794778258023848, 7.632265830174802, 0.10420653693139548 -_v10[t], 7.217806246429115, 6.919099578446959, 7.406420088320053, 0.10420190640042953 -_v11[t], 7.217806246429115, 6.919099578446959, 7.406420088320053, 0.10420190640042953 -_v12[t], 7.219551842704067, 6.772532136571326, 7.613387104005102, 0.10425665492285074 -_v13[t], 7.216834149614749, 7.003538693563313, 7.514811962113362, 0.10418791081130592 -_v14[t], 7.216834149614749, 7.003538693563313, 7.514811962113362, 0.10418791081130592 -_v15[t], 7.214116456525368, 6.850262200970532, 7.684907562656283, 0.10417845396187536 -_v16[t], 7.215694429689176, 6.924316628559966, 7.449498579694031, 0.10417136618901081 -_v17[t], 7.215694429689176, 6.924316628559966, 7.449498579694031, 0.10417136618901081 -_v18[t], 7.217272402852947, 6.733987485310412, 7.54571174615642, 0.10422345960532654 -_v20[t], 9, 9, 9, 0.1299038105676658 -_v22[t], 3.608059141354293, 3.6074752998669823, 3.609037820373011, 0.05207784836634914 -_v24[t], 3.608111043210071, 3.6081058300480437, 3.608114953702963, 0.05207859705159517 -_v25[t], 3.6080118093992506, 3.6068972219111113, 3.6098706721031, 0.05207716635749481 -_v26[t], 3.6080118093992506, 3.6068972219111113, 3.6098706721031, 0.05207716635749481 -_v27[t], -7.6974014428188635, -7.69851603752776, -7.695542576399922, 0.11110242063736386 -_v28[t], 6.5949832722014, 6.5909437016674115, 6.601199476226385, 0.09519039410382839 -_v29[t], 3.940106967323921, 3.5960717808274043, 4.279134646009024, 0.056934895419966325 -_v31[t], 0.0021560772184458506, -0.3255158970568499, 0.3411954765571642, 0.002663434636266905 -GND[t], 0, 0, 0, 0 +var, mean, min, max +_v1[t], 0.010264, -0.44003, 0.44003 +_v2[t], 0.01005, -0.43243, 0.4309 +_v3[t], 7.2261, 6.8484, 7.6599 +_v4[t], 7.2261, 6.8484, 7.6599 +_v5[t], 7.2195, 7.006, 7.5095 +_v6[t], 7.2195, 7.006, 7.5095 +_v7[t], 7.2161, 7.2151, 7.2177 +_v8[t], 3.608, 3.607, 3.6096 +_v9[t], 7.2128, 6.7948, 7.6132 +_v10[t], 7.2098, 6.922, 7.4064 +_v11[t], 7.2098, 6.922, 7.4064 +_v12[t], 7.2069, 6.7927, 7.6134 +_v13[t], 7.2142, 7.0036, 7.5109 +_v14[t], 7.2142, 7.0036, 7.5109 +_v15[t], 7.2215, 6.8503, 7.6616 +_v16[t], 7.2211, 6.9281, 7.4495 +_v17[t], 7.2211, 6.9281, 7.4495 +_v18[t], 7.2206, 6.7592, 7.5602 +_v20[t], 9, 9, 9 +_v22[t], 3.608, 3.6075, 3.6089 +_v24[t], 3.6081, 3.6081, 3.6081 +_v25[t], 3.608, 3.607, 3.6096 +_v26[t], 3.608, 3.607, 3.6096 +_v27[t], -7.6974, -7.6984, -7.6958 +_v28[t], 6.5951, 6.591, 6.6012 +_v29[t], 3.9299, 3.5962, 4.2625 +_v31[t], -0.0067856, -0.32084, 0.3351 +GND[t], 0, 0, 0 diff --git a/Tests/Stats/Marshall Blues Breaker.csv b/Tests/Stats/Marshall Blues Breaker.csv index c03dd777..9c027b74 100644 --- a/Tests/Stats/Marshall Blues Breaker.csv +++ b/Tests/Stats/Marshall Blues Breaker.csv @@ -1,28 +1,28 @@ -var, mean, min, max, rms -_v2[t], 4.5, 4.5, 4.5, 0.0649519052838329 -_v3[t], 4.49431571788226, 4.048548188894458, 4.973676123306206, 0.06497449410627189 -_v4[t], 4.49517293906243, 4.081575201441183, 4.9282594711125896, 0.06496970195131961 -_v5[t], 4.494375148517052, 4.061898983123856, 4.954402101389946, 0.06496809743387857 -_v6[t], 4.494375148517052, 4.061898983123856, 4.954402101389946, 0.06496809743387857 -_v7[t], 4.5, 4.5, 4.5, 0.0649519052838329 -_v8[t], 4.492703087308627, 3.996306497732077, 5.041606917410686, 0.06498124577832678 -_v9[t], 4.49815298039569, 4.298726104699638, 4.678171744717348, 0.06494098889493576 -_v10[t], 4.498637526728234, 4.417172371134374, 4.609806424320264, 0.0649371392006469 -_v11[t], 4.5, 4.5, 4.5, 0.0649519052838329 -_v12[t], 4.534243138133521, 4.09353784522452, 4.872106107211979, 0.06557256062155722 -_v13[t], 4.5, 4.5, 4.5, 0.0649519052838329 -_v14[t], 4.569714609649592, 3.738197434226548, 5.209829614891995, 0.06642444228088112 -_v15[t], 0.020735582004013552, -0.34221609823508803, 0.2998390036777381, 0.0033256919453092753 -_v17[t], 0.0014702956403830738, -0.4400236408798788, 0.44002371268155105, 0.003614017679866557 -_v19[t], 4.565193777000743, 3.7854480074019063, 5.165369352141338, 0.06627905636788448 -_v20[t], 4.5, 4.5, 4.5, 0.0649519052838329 -_v21[t], 4.56572909863977, 3.78259300287238, 5.1683125287639236, 0.06630219950255656 -_v22[t], 4.56139419551922, 3.8295815976637204, 5.124532811995102, 0.06618798164621384 -_v23[t], 4.530178708209516, 4.173109937668444, 4.804772456049865, 0.06547151224705162 -_v24[t], 4.56905035781463, 3.7457285570696834, 5.202791681956396, 0.06640310237266438 -_v25[t], 4.498771666617439, 4.448878256222491, 4.534382599531965, 0.06493493666887402 -_v26[t], 4.534243138133521, 4.09353784522452, 4.87210610721198, 0.06557256062155722 -_v27[t], 0.0014702956403830738, -0.4400236408798788, 0.44002371268155105, 0.003614017679866557 -_v30[t], 0.020735582004013552, -0.34221609823508803, 0.2998390036777381, 0.0033256919453092753 -GND[t], 0, 0, 0, 0 -Bypass[t], 0, 0, 0, 0 +var, mean, min, max +_v2[t], 4.5, 4.5, 4.5 +_v3[t], 4.5109, 4.0736, 4.9737 +_v4[t], 4.5099, 4.107, 4.9283 +_v5[t], 4.5105, 4.0871, 4.9544 +_v6[t], 4.5105, 4.0871, 4.9544 +_v7[t], 4.5, 4.5, 4.5 +_v8[t], 4.5109, 4.021, 5.0416 +_v9[t], 4.5034, 4.3178, 4.6525 +_v10[t], 4.5019, 4.4188, 4.6091 +_v11[t], 4.5, 4.5, 4.5 +_v12[t], 4.5188, 4.0944, 4.8698 +_v13[t], 4.5, 4.5, 4.5 +_v14[t], 4.54, 3.7395, 5.2062 +_v15[t], 0.004575, -0.34222, 0.29003 +_v17[t], 0.010264, -0.44003, 0.44003 +_v19[t], 4.5372, 3.7866, 5.1617 +_v20[t], 4.5, 4.5, 4.5 +_v21[t], 4.5376, 3.7838, 5.1648 +_v22[t], 4.5351, 3.8308, 5.1213 +_v23[t], 4.5174, 4.1738, 4.8035 +_v24[t], 4.5396, 3.747, 5.1992 +_v25[t], 4.4975, 4.4493, 4.5334 +_v26[t], 4.5188, 4.0944, 4.8698 +_v27[t], 0.010264, -0.44003, 0.44003 +_v30[t], 0.004575, -0.34222, 0.29003 +GND[t], 0, 0, 0 +Bypass[t], 0, 0, 0 diff --git a/Tests/Stats/Marshall JCM2000 DSL Preamp.csv b/Tests/Stats/Marshall JCM2000 DSL Preamp.csv index f4cd4923..043773b1 100644 --- a/Tests/Stats/Marshall JCM2000 DSL Preamp.csv +++ b/Tests/Stats/Marshall JCM2000 DSL Preamp.csv @@ -1,34 +1,34 @@ -var, mean, min, max, rms -_v2[t], 0.30524850127699693, -25.39795028919216, 18.46399973591966, 0.18363172500854197 -_v3[t], 0.06994931114423004, -5.9494995139363205, 4.319719816002443, 0.043064342665463745 -_v4[t], -2.083085719736259, -15.880133191359867, 13.36270729420435, 0.14498386341829841 -_v5[t], -2.324672204751201, -31.722548882719718, 43.655675010833555, 0.3293769129878059 -_v6[t], 2.240558239824258, 1.413675710047851, 2.834773735449738, 0.03288075175486791 -_v7[t], -19.07659737283961, -96.1598654892485, 11.603244340507796, 0.6313447466647117 -_v8[t], -18.18620116208471, -192.2820134784969, 69.71080364340172, 1.3781533004603146 -_v12[t], 0.0014702956403830738, -0.4400236408798788, 0.44002371268155105, 0.003614017679866557 -_v13[t], -0.003986717589978968, -0.44548064088203704, 0.4345665897849177, 0.0036144131617761904 -_v14[t], 181.96381602484396, 152.63544760797186, 209.66888680840714, 2.6366541349606774 -_v15[t], 1.7093784131055019, 1.6529945988905814, 1.7665422076037511, 0.024676362201440497 -_v16[t], 0.003350885153625288, -1.677721963113983, 1.193261970985087, 0.012052670414191028 -_v17[t], 390.51023013883594, 390.4913835358814, 390.5347087503302, 5.636529664682035 -_v18[t], 237.77277567512786, 202.27349697641324, 286.2052157072841, 3.4498445935636783 -_v19[t], 0.008657266724540246, -0.8242873518933306, 0.5445562680945719, 0.005868098055532779 -_v20[t], 362.2753797304518, 361.3961823202753, 362.95751551059254, 5.228998796981391 -_v21[t], 365.2612516046984, 364.2501711957428, 366.2598413774271, 5.272098006084266 -_v22[t], 279.01593191566354, 106.90785628629996, 357.3971254837986, 4.250815385894535 -_v23[t], 4.063041055624344, 0, 13.287086978357292, 0.09309443246986457 -_v24[t], 181.6879211906125, 104.09921422631616, 336.48606713554085, 2.8391628867649463 -_v25[t], 4.624432196122389, 0, 11.435558679507938, 0.08894267505445864 -_v26[t], 383.38491392814467, 382.23434234571545, 385.5647571911243, 5.5336992698493495 -_v29[t], 183.0887120309146, 116.31528669586648, 320.5553615074098, 2.748224687493436 -_v30[t], -5.2004146663576165, -103.93592039471062, 85.49029872530774, 0.7431527898488558 -_v32[t], -2.3689855243631266, -47.3165782365718, 38.9803227068476, 0.3353773963899279 -_v33[t], -0.551111891291013, -29.29930082395912, 17.067321671911202, 0.1752731779398719 -_v34[t], -0.3782377110556512, -30.11231011295024, 18.39181851272721, 0.16574320134614118 -_v35[t], -4.749324535967527, -94.7955505360499, 78.22705664345226, 0.6670815660765992 -_v36[t], -4.737971048726247, -94.63315647314363, 77.96064541369522, 0.6707547927798558 -_v37[t], 400, 400, 400, 5.773502691896257 -_v39[t], 0.3025036179629732, -25.317420168586835, 18.401392236375724, 0.18303121840617217 -_v40[t], 0, 0, 0, 0 -GND[t], 0, 0, 0, 0 +var, mean, min, max +_v2[t], -0.54128, -25.361, 18.314 +_v3[t], -0.10973, -5.9411, 4.2901 +_v4[t], -1.7906, -15.88, 13.305 +_v5[t], -1.6217, -31.723, 42.702 +_v6[t], 2.2172, 1.4137, 2.8276 +_v7[t], -20.435, -96.16, 10.727 +_v8[t], -21.567, -192.28, 67.981 +_v12[t], 0.010264, -0.44003, 0.44003 +_v13[t], 0.0048073, -0.44548, 0.43457 +_v14[t], 181.23, 152.64, 209.31 +_v15[t], 1.707, 1.653, 1.7444 +_v16[t], -0.04093, -1.6754, 1.1856 +_v17[t], 390.51, 390.5, 390.53 +_v18[t], 238.9, 202.4, 285.78 +_v19[t], -0.011141, -0.81493, 0.54457 +_v20[t], 361.99, 361.59, 362.42 +_v21[t], 364.89, 364.25, 365.39 +_v22[t], 275.56, 106.92, 356.83 +_v23[t], 4.2295, 0, 13.236 +_v24[t], 182.56, 104.13, 307.9 +_v25[t], 4.4791, 0, 10.524 +_v26[t], 382.77, 382.34, 383.35 +_v29[t], 182.31, 116.34, 283.09 +_v30[t], 1.851, -61.616, 85.494 +_v32[t], 0.82296, -28.049, 38.982 +_v33[t], 0.12021, -22.724, 17.072 +_v34[t], 0.055853, -25.018, 18.397 +_v35[t], 1.6055, -56.19, 78.231 +_v36[t], 1.6459, -56.098, 77.964 +_v37[t], 400, 400, 400 +_v39[t], -0.54667, -25.281, 18.251 +_v40[t], 0, 0, 0 +GND[t], 0, 0, 0 diff --git a/Tests/Stats/Marshall JCM800 2203 Preamp.csv b/Tests/Stats/Marshall JCM800 2203 Preamp.csv index 60fccc56..b9beefe5 100644 --- a/Tests/Stats/Marshall JCM800 2203 Preamp.csv +++ b/Tests/Stats/Marshall JCM800 2203 Preamp.csv @@ -1,28 +1,28 @@ -var, mean, min, max, rms -_v2[t], -2.437245087720493, -10.753639853749952, 2.2239658816536902, 0.07109109301072393 -_v3[t], -2.415329741609374, -21.191921889161744, 19.20473944917592, 0.1715491697626897 -_v5[t], 0.0014702956403830738, -0.4400236408798788, 0.44002371268155105, 0.003614017679866557 -_v6[t], -0.003986704359693485, -0.44548064087987965, 0.4345667126811906, 0.0036144134562250993 -_v7[t], 247.05005009555424, 231.7648604071528, 260.5565441193522, 3.5678005422638877 -_v8[t], 2.4927375483450334, 2.2516321304144284, 2.7279355304323403, 0.03603233517575363 -_v9[t], 0.018105162223043245, -3.127015237724744, 2.697454297163718, 0.02382664198774133 -_v10[t], 303.5179471829902, 283.5564699035738, 325.2324393760707, 4.384239477338736 -_v11[t], 3.5722962338175623, 1.0572314192644918, 5.787780231675516, 0.05510377554036288 -_v12[t], 0.9713735696672198, 2.0554387747484195E-14, 2.1633044080786688, 0.01937182318938566 -_v13[t], 210.050574968762, 91.49956010116158, 304.6981253946121, 3.289866333110308 -_v15[t], 218.7699877768179, 96.10823201249148, 303.8782372823425, 3.353198491670293 -_v16[t], 217.87066042776593, 116.40589381705347, 291.13854443393893, 3.2375693587111063 -_v17[t], 2.790187784713508, -88.78490794436392, 86.60047478253851, 0.7751358045181557 -_v19[t], 1.2416490261937037, -39.58010506359811, 38.52235850984198, 0.33892737609103885 -_v20[t], 0.420122460970169, -22.174683591772215, 28.43934273241234, 0.21835543174846792 -_v21[t], 0.30996532565095675, -23.594717203121636, 28.12402154618698, 0.2061373777553522 -_v22[t], 2.4868205766097566, -79.67102194382701, 77.1195488842899, 0.6681938098216033 -_v23[t], 2.4832980523874073, -79.16021012719622, 77.04471701968396, 0.6778547521820777 -_v24[t], 339.23701628091084, 339.2030217404474, 339.2962373283028, 4.8964645838315395 -_v25[t], 352.19950249093273, 351.913084452807, 352.4688621569848, 5.083562391420207 -_v26[t], 400, 400, 400, 5.773502691896257 -_v28[t], 0.16963908905788766, -15.117290212212218, 13.380694655430677, 0.1159068160566184 -_v29[t], 0.16942510010543665, -15.129799850524515, 13.389014342158138, 0.11599410347828666 -_v30[t], 0.012648162223060323, -3.1324722377247327, 2.691997297163741, 0.023825908287540068 -_v31[t], 0.10242102794032451, -9.886325899659834, 8.775844230414974, 0.07579084250881461 -GND[t], 0, 0, 0, 0 +var, mean, min, max +_v2[t], -2.3232, -10.749, 2.2222 +_v3[t], -2.0427, -21.183, 18.947 +_v5[t], 0.010264, -0.44003, 0.44003 +_v6[t], 0.0048073, -0.44548, 0.43457 +_v7[t], 246.7, 231.78, 260.54 +_v8[t], 2.4952, 2.2519, 2.7249 +_v9[t], -0.059139, -3.1271, 2.6574 +_v10[t], 304.11, 283.94, 325.23 +_v11[t], 3.5099, 1.0572, 5.7549 +_v12[t], 1.0023, 2.0887E-14, 2.1633 +_v13[t], 207.16, 91.682, 304.66 +_v15[t], 216.36, 98.487, 303.84 +_v16[t], 216.85, 124.63, 291.09 +_v17[t], -1.9642, -88.787, 65.879 +_v19[t], -0.86109, -39.583, 29.232 +_v20[t], -0.23978, -22.169, 25.859 +_v21[t], -0.15963, -23.597, 26.674 +_v22[t], -1.6954, -79.677, 58.37 +_v23[t], -1.7222, -79.166, 58.465 +_v24[t], 339.25, 339.23, 339.29 +_v25[t], 352.3, 352.17, 352.47 +_v26[t], 400, 400, 400 +_v28[t], -0.2649, -15.118, 13.16 +_v29[t], -0.2662, -15.13, 13.17 +_v30[t], -0.064596, -3.1325, 2.6519 +_v31[t], -0.18633, -9.8869, 8.6262 +GND[t], 0, 0, 0 diff --git a/Tests/Stats/Marshall JCM800 2203 preamp modded.csv b/Tests/Stats/Marshall JCM800 2203 preamp modded.csv index b8d9f826..bd469d96 100644 --- a/Tests/Stats/Marshall JCM800 2203 preamp modded.csv +++ b/Tests/Stats/Marshall JCM800 2203 preamp modded.csv @@ -1,34 +1,34 @@ -var, mean, min, max, rms -_v2[t], -0.9200941317899795, -5.31421255719962, 2.045476687948767, 0.04003674496951769 -_v3[t], -0.44329946181350827, -10.390762471112293, 11.883946764526891, 0.09908961087590842 -_v5[t], 0.0014702956403830738, -0.4400236408798788, 0.44002371268155105, 0.003614017679866557 -_v6[t], -0.00117796819649647, -0.4426718909123682, 0.43737536884783845, 0.0036139950837994275 -_v7[t], 150.7303439557579, 129.16815604622496, 170.5747580358631, 2.182116823608904 -_v8[t], 1.557607875556504, 1.396113150312185, 1.7126848397485892, 0.022519089239258352 -_v9[t], 242.44491314066883, 180.59254402423048, 312.52363248702414, 3.542685971178898 -_v10[t], 2.4904412189563554, 1.3447508879733467, 3.557750429632847, 0.037018072272215714 -_v11[t], 1.125927046415579, 0.052431733121912495, 2.0792332177829356, 0.01952984440860373 -_v12[t], 193.73317507044146, 95.23951885381648, 298.4944516511117, 3.049444751755755 -_v14[t], 200.3271556769334, 98.97806773760276, 297.63504911281353, 3.1002830440894087 -_v15[t], 200.0045289115226, 118.54555373686655, 275.25800930960816, 2.9831606048432264 -_v16[t], 1.5817534785581642, -75.12052880040623, 83.04074861524768, 0.7676312689183056 -_v18[t], 0.6990770560208065, -33.28635387761763, 36.90037950248469, 0.33493353143721777 -_v19[t], 0.16948722098910288, -20.04395287453995, 26.685654696455234, 0.2197147881705722 -_v20[t], 0.10384717145825276, -21.401676607990026, 26.927544309247335, 0.20784854785347928 -_v21[t], 1.3893240095303683, -66.3594920018373, 73.78597177744072, 0.658081373792024 -_v22[t], 1.398154112041613, -66.57270775523526, 73.80075900496938, 0.6698670628744355 -_v23[t], 335.17709171737243, 335.11721701336927, 335.24125712885956, 4.837864619780921 -_v24[t], 350.25282651235784, 349.9827497005359, 350.482832035854, 5.0554644320511075 -_v25[t], 400, 400, 400, 5.773502691896257 -_v27[t], 0.2514916469608655, -20.9197811112687, 18.735918406163997, 0.15959302348785118 -_v28[t], 0.022598948570490815, -2.2409962508903654, 1.9989212988652127, 0.01706210888020748 -_v29[t], 0.017141947165476852, -2.2464532508903656, 1.9934642877834587, 0.01706078479972157 -_v30[t], 277.53670160804427, 270.79952347154534, 283.7466500638617, 4.006241517580505 -_v31[t], -0.8958446063185431, -46.79871949423442, 59.57744084100227, 0.4673869251785599 -_v32[t], -0.44329946181350827, -10.390762471112293, 11.883946764526891, 0.09908961087590842 -_v33[t], 0.022598948570490815, -2.2409962508903654, 1.9989212988652127, 0.01706210888020748 -_v34[t], 0.022598948570490815, -2.2409962508903654, 1.9989212988652127, 0.01706210888020748 -_v35[t], -0.44329946181350827, -10.390762471112293, 11.883946764526891, 0.09908961087590842 -GND[t], 0, 0, 0, 0 -_x1[t], 0.2514916469608655, -20.9197811112687, 18.735918406163997, 0.15959302348785118 -_x2[t], -0.8958446063185431, -46.79871949423442, 59.57744084100227, 0.4673869251785599 +var, mean, min, max +_v2[t], -0.85005, -5.3142, 2.0455 +_v3[t], -0.20662, -10.391, 11.809 +_v5[t], 0.010264, -0.44003, 0.44003 +_v6[t], 0.0076161, -0.44267, 0.43738 +_v7[t], 150.27, 129.31, 170.57 +_v8[t], 1.5591, 1.3979, 1.7078 +_v9[t], 244.57, 182.24, 312.52 +_v10[t], 2.4562, 1.3447, 3.5113 +_v11[t], 1.1545, 0.052439, 2.0792 +_v12[t], 191.94, 95.348, 298.47 +_v14[t], 198.54, 99.167, 297.61 +_v15[t], 198.19, 119.1, 275.24 +_v16[t], -1.1478, -75.121, 76.196 +_v18[t], -0.4707, -33.287, 33.827 +_v19[t], 0.093721, -20.049, 26.545 +_v20[t], 0.15143, -21.406, 26.853 +_v21[t], -0.85261, -66.359, 67.583 +_v22[t], -0.94139, -66.573, 67.655 +_v23[t], 335.18, 335.13, 335.24 +_v24[t], 350.34, 350.21, 350.48 +_v25[t], 400, 400, 400 +_v27[t], -0.4465, -20.92, 18.04 +_v28[t], -0.052029, -2.241, 1.9246 +_v29[t], -0.057486, -2.2464, 1.9191 +_v30[t], 277.4, 270.85, 283.73 +_v31[t], 0.18007, -46.8, 59.182 +_v32[t], -0.20662, -10.391, 11.809 +_v33[t], -0.052029, -2.241, 1.9246 +_v34[t], -0.052029, -2.241, 1.9246 +_v35[t], -0.20662, -10.391, 11.809 +GND[t], 0, 0, 0 +_x1[t], -0.4465, -20.92, 18.04 +_x2[t], 0.18007, -46.8, 59.182 diff --git a/Tests/Stats/Op-Amp Inverting.csv b/Tests/Stats/Op-Amp Inverting.csv index 1cd08046..eadb74ae 100644 --- a/Tests/Stats/Op-Amp Inverting.csv +++ b/Tests/Stats/Op-Amp Inverting.csv @@ -1,6 +1,6 @@ -var, mean, min, max, rms -_v1[t], 0.0014702956403830738, -0.4400236408798788, 0.44002371268155105, 0.003614017679866557 -_v4[t], 0.14558205202580643, -0.0004242284357669761, 0.48750000349380346, 0.003118611093402585 -_v5[t], 1.5865844881308961, 0.9623616261068201, 4.400183400278602, 0.027953967160110147 -_v7[t], 9, 9, 9, 0.1299038105676658 -GND[t], 0, 0, 0, 0 +var, mean, min, max +_v1[t], 0.010264, -0.44003, 0.44003 +_v4[t], 0.15241, -0.00042423, 0.4875 +_v5[t], 1.5738, 0.96236, 4.4002 +_v7[t], 9, 9, 9 +GND[t], 0, 0, 0 diff --git a/Tests/Stats/Op-Amp Model.csv b/Tests/Stats/Op-Amp Model.csv index bac9f8c0..9a000404 100644 --- a/Tests/Stats/Op-Amp Model.csv +++ b/Tests/Stats/Op-Amp Model.csv @@ -1,11 +1,11 @@ -var, mean, min, max, rms -_v1[t], 0.09960178464949031, -14.026013394290455, 14.026013399944535, 0.16129334570277437 -_v2[t], 0.0009685144756582821, -0.1380477872135121, 0.1381406131087924, 0.0015814639738331508 -_v3[t], 0.0014702956403830768, -0.4400236408798788, 0.44002371268155105, 0.003614017679866557 -_v6[t], 0.09862521761806672, -13.888503761318232, 13.888503775955414, 0.15971203990486757 -_v8[t], -15, -15, -15, 0.21650635094610968 -_v9[t], -13, -13, -13, 0.18763883748662838 -_v10[t], 13, 13, 13, 0.18763883748662838 -_v11[t], 15, 15, 15, 0.21650635094610968 -_v13[t], 0.09960178464949031, -14.026013394290455, 14.026013399944535, 0.16129334570277437 -GND[t], 0, 0, 0, 0 +var, mean, min, max +_v1[t], 0.34175, -14.026, 14.026 +_v2[t], 0.0033442, -0.13799, 0.13809 +_v3[t], 0.010264, -0.44003, 0.44003 +_v6[t], 0.3384, -13.889, 13.889 +_v8[t], -15, -15, -15 +_v9[t], -13, -13, -13 +_v10[t], 13, 13, 13 +_v11[t], 15, 15, 15 +_v13[t], 0.34175, -14.026, 14.026 +GND[t], 0, 0, 0 diff --git a/Tests/Stats/Op-Amp Non-Inverting.csv b/Tests/Stats/Op-Amp Non-Inverting.csv index ae68b4df..659b2fa7 100644 --- a/Tests/Stats/Op-Amp Non-Inverting.csv +++ b/Tests/Stats/Op-Amp Non-Inverting.csv @@ -1,7 +1,7 @@ -var, mean, min, max, rms -_v1[t], 0.0014702956403830738, -0.4400236408798788, 0.44002371268155105, 0.003614017679866557 -_v3[t], 0.039518984075211844, 0.009047658119102277, 0.08098517590158366, 0.0007424265446437698 -_v5[t], 3.993219693248352, 0.9735741951035415, 8.110711157394078, 0.0750018535268259 -_v6[t], 0, 0, 0, 0 -_v7[t], 9, 9, 9, 0.1299038105676658 -GND[t], 0, 0, 0, 0 +var, mean, min, max +_v1[t], 0.010264, -0.44003, 0.44003 +_v3[t], 0.040275, 0.0091056, 0.080926 +_v5[t], 4.0691, 0.97357, 8.1107 +_v6[t], 0, 0, 0 +_v7[t], 9, 9, 9 +GND[t], 0, 0, 0 diff --git a/Tests/Stats/Op-Amp Saturation.csv b/Tests/Stats/Op-Amp Saturation.csv index ca89e11d..7e0c0bbc 100644 --- a/Tests/Stats/Op-Amp Saturation.csv +++ b/Tests/Stats/Op-Amp Saturation.csv @@ -1,7 +1,7 @@ -var, mean, min, max, rms -_v1[t], 0.0014702956403830738, -0.4400236408798788, 0.44002371268155105, 0.003614017679866557 -_v4[t], 0.00048061342903289007, -0.2960115911120359, 0.2960114830059521, 0.002161295125549502 -_v5[t], -0.099140458903916, -14.031195958687881, 14.031195952958699, 0.16070909870216094 -_v6[t], 15, 15, 15, 0.21650635094610968 -_v7[t], -15, -15, -15, 0.21650635094610968 -GND[t], 0, 0, 0, 0 +var, mean, min, max +_v1[t], 0.010264, -0.44003, 0.44003 +_v4[t], 0.0067678, -0.29601, 0.29601 +_v5[t], -0.34188, -14.031, 14.031 +_v6[t], 15, 15, 15 +_v7[t], -15, -15, -15 +GND[t], 0, 0, 0 diff --git a/Tests/Stats/Orange Rockerverb 50 Preamp.csv b/Tests/Stats/Orange Rockerverb 50 Preamp.csv index a9c301f1..b50c8ce8 100644 --- a/Tests/Stats/Orange Rockerverb 50 Preamp.csv +++ b/Tests/Stats/Orange Rockerverb 50 Preamp.csv @@ -1,30 +1,30 @@ -var, mean, min, max, rms -_v3[t], 0.0014702956403830738, -0.4400236408798788, 0.44002371268155105, 0.003614017679866557 -_v4[t], -0.003986707788483564, -0.44548064088030304, 0.4345666802939503, 0.003614413379561583 -_v5[t], 201.99032513003016, 174.91513732167834, 227.5531331656074, 2.923176791141817 -_v6[t], 1.8211249582617024, 1.7735425588267217, 1.8707071404504585, 0.026287909616418026 -_v7[t], 178.16901288038633, 119.46484340392325, 257.44777582160737, 2.6401903634291886 -_v8[t], 1.4428054524633849, 1.3332285818758636, 1.530217414896873, 0.020840384427766676 -_v9[t], 2.7024427129041246, 2.259512225415335, 2.9984076457048747, 0.03906759092428023 -_v10[t], 222.84396133402115, 95.4509262340031, 339.5383092535592, 3.5792523575422632 -_v11[t], 171.95026353762933, 95.77014442774448, 287.82872964118894, 2.695531279081767 -_v12[t], 172.63569825113743, 113.70580849553619, 263.8262188324756, 2.564171421082387 -_v13[t], -1.751968171937547, -67.91669277738062, 57.09839115713851, 0.6169131472878348 -_v14[t], -0.781943735708979, -30.26378486087426, 25.727059697261723, 0.2747035485654321 -_v15[t], -0.33278826061022665, -27.677645386774948, 16.40327375480423, 0.21468018842651834 -_v16[t], -0.20086548872014492, -28.97482640318323, 19.230674350598985, 0.19043855048256972 -_v17[t], -1.5712760571757267, -82.0507627967522, 52.24161255651184, 0.5644000287439611 -_v18[t], 323.04029859168526, 322.6980668339279, 323.2676570965546, 4.662685648201665 -_v19[t], 348.54056430443944, 347.6255299128406, 349.7381064126506, 5.030757473198864 -_v20[t], 400, 400, 400, 5.773502691896257 -_v22[t], -0.009035475181328353, -1.4165566048054057, 0.9453641119489746, 0.010307284912800557 -_v23[t], 0.0708172431575365, -8.537489696207329, 5.988506479593238, 0.06311446016333631 -_v24[t], 0.029518565367795957, -3.8442962995518446, 2.688974566972663, 0.028386428299363543 -_v25[t], -1.7208179591086117, -11.519561245686443, 2.9153749219306224, 0.0729008519605306 -_v26[t], -0.810208153535416, -53.4570218635587, 47.52543955246606, 0.4317535411427657 -_v27[t], -0.774542182400626, -31.67105312672795, 26.74845967273432, 0.2507965735201936 -_v28[t], 2.77679948193818, 0, 7.078878130477809, 0.056236968343443376 -_v29[t], -15.22227373392614, -167.6270751947294, 136.63567220720563, 1.5022153602983632 -_v30[t], -14.993056784556183, -53.45833969976877, 7.495655275934915, 0.3950560912494742 -_v31[t], -1.5637169260992672, -60.52756191036009, 51.45411939747323, 0.5494055853006701 -GND[t], 0, 0, 0, 0 +var, mean, min, max +_v3[t], 0.010264, -0.44003, 0.44003 +_v4[t], 0.0048073, -0.44548, 0.43457 +_v5[t], 201.21, 174.92, 226.81 +_v6[t], 1.8173, 1.7735, 1.8446 +_v7[t], 179.35, 119.5, 257.07 +_v8[t], 1.4391, 1.3332, 1.5272 +_v9[t], 2.7654, 2.5639, 2.9984 +_v10[t], 225.28, 95.451, 338.95 +_v11[t], 169, 95.811, 274.71 +_v12[t], 170.38, 113.76, 246.27 +_v13[t], -0.8285, -52.549, 57.12 +_v14[t], -0.37467, -23.387, 25.736 +_v15[t], -0.46993, -22.988, 16.413 +_v16[t], -0.4366, -25.657, 19.269 +_v17[t], -0.76383, -57.459, 52.259 +_v18[t], 322.95, 322.78, 323.14 +_v19[t], 348.12, 347.73, 348.52 +_v20[t], 400, 400, 400 +_v22[t], -0.03221, -1.4129, 0.94541 +_v23[t], -0.068884, -8.5154, 5.9889 +_v24[t], -0.037646, -3.8344, 2.6889 +_v25[t], -1.8133, -11.51, 2.9154 +_v26[t], -1.3635, -53.413, 47.526 +_v27[t], -1.0972, -31.645, 26.749 +_v28[t], 2.8468, 0, 6.7863 +_v29[t], -11.773, -167.61, 134.94 +_v30[t], -14.395, -53.452, 7.2542 +_v31[t], -0.74917, -46.775, 51.473 +GND[t], 0, 0, 0 diff --git a/Tests/Stats/Parallel capacitors 1.csv b/Tests/Stats/Parallel capacitors 1.csv index 41e57c2c..bd4b7c00 100644 --- a/Tests/Stats/Parallel capacitors 1.csv +++ b/Tests/Stats/Parallel capacitors 1.csv @@ -1,4 +1,4 @@ -var, mean, min, max, rms -_v1[t], 0.0014702956403830738, -0.4400236408798788, 0.44002371268155105, 0.003614017679866557 -_v2[t], -0.0006658163586711598, -0.05206039290466434, 0.07600747271228367, 0.0005706152953511789 -GND[t], 0, 0, 0, 0 +var, mean, min, max +_v1[t], 0.010264, -0.44003, 0.44003 +_v2[t], 0.00031279, -0.052061, 0.076008 +GND[t], 0, 0, 0 diff --git a/Tests/Stats/Parallel capacitors 2.csv b/Tests/Stats/Parallel capacitors 2.csv index 41e57c2c..bd4b7c00 100644 --- a/Tests/Stats/Parallel capacitors 2.csv +++ b/Tests/Stats/Parallel capacitors 2.csv @@ -1,4 +1,4 @@ -var, mean, min, max, rms -_v1[t], 0.0014702956403830738, -0.4400236408798788, 0.44002371268155105, 0.003614017679866557 -_v2[t], -0.0006658163586711598, -0.05206039290466434, 0.07600747271228367, 0.0005706152953511789 -GND[t], 0, 0, 0, 0 +var, mean, min, max +_v1[t], 0.010264, -0.44003, 0.44003 +_v2[t], 0.00031279, -0.052061, 0.076008 +GND[t], 0, 0, 0 diff --git a/Tests/Stats/Passive 1stOrder Highpass RC.csv b/Tests/Stats/Passive 1stOrder Highpass RC.csv index d29efeaf..4e6619f5 100644 --- a/Tests/Stats/Passive 1stOrder Highpass RC.csv +++ b/Tests/Stats/Passive 1stOrder Highpass RC.csv @@ -1,4 +1,4 @@ -var, mean, min, max, rms -_v1[t], 0.0014702956403830738, -0.4400236408798788, 0.44002371268155105, 0.003614017679866557 -_v2[t], -0.00031668293954877476, -0.026405730446757956, 0.038447696453685745, 0.000289480642235121 -GND[t], 0, 0, 0, 0 +var, mean, min, max +_v1[t], 0.010264, -0.44003, 0.44003 +_v2[t], 8.6513E-05, -0.026406, 0.038448 +GND[t], 0, 0, 0 diff --git a/Tests/Stats/Passive 1stOrder Lowpass RC.csv b/Tests/Stats/Passive 1stOrder Lowpass RC.csv index 434dcec1..ac535b3b 100644 --- a/Tests/Stats/Passive 1stOrder Lowpass RC.csv +++ b/Tests/Stats/Passive 1stOrder Lowpass RC.csv @@ -1,4 +1,4 @@ -var, mean, min, max, rms -_v1[t], 0.0014702956403830738, -0.4400236408798788, 0.44002371268155105, 0.003614017679866557 -_v2[t], 0.00471038189013016, -0.35476341533658295, 0.3517402861135234, 0.0028725270551549775 -GND[t], 0, 0, 0, 0 +var, mean, min, max +_v1[t], 0.010264, -0.44003, 0.44003 +_v2[t], 0.0058091, -0.35477, 0.33579 +GND[t], 0, 0, 0 diff --git a/Tests/Stats/Passive 1stOrder Lowpass RL.csv b/Tests/Stats/Passive 1stOrder Lowpass RL.csv index aca61fda..ac535b3b 100644 --- a/Tests/Stats/Passive 1stOrder Lowpass RL.csv +++ b/Tests/Stats/Passive 1stOrder Lowpass RL.csv @@ -1,4 +1,4 @@ -var, mean, min, max, rms -_v1[t], 0.0014702956403830738, -0.4400236408798788, 0.44002371268155105, 0.003614017679866557 -_v2[t], 0.004710381890130101, -0.35476341533658484, 0.3517402861135257, 0.0028725270551549923 -GND[t], 0, 0, 0, 0 +var, mean, min, max +_v1[t], 0.010264, -0.44003, 0.44003 +_v2[t], 0.0058091, -0.35477, 0.33579 +GND[t], 0, 0, 0 diff --git a/Tests/Stats/Passive 2ndOrder Bandpass RLC.csv b/Tests/Stats/Passive 2ndOrder Bandpass RLC.csv index d0aa4026..decdfab6 100644 --- a/Tests/Stats/Passive 2ndOrder Bandpass RLC.csv +++ b/Tests/Stats/Passive 2ndOrder Bandpass RLC.csv @@ -1,4 +1,4 @@ -var, mean, min, max, rms -_v2[t], 0.0014702956403830738, -0.4400236408798788, 0.44002371268155105, 0.003614017679866557 -_v3[t], -0.001769523947741425, -0.120477505829937, 0.17797378050394252, 0.001321410527181894 -GND[t], 0, 0, 0, 0 +var, mean, min, max +_v2[t], 0.010264, -0.44003, 0.44003 +_v3[t], 0.0016591, -0.12048, 0.17798 +GND[t], 0, 0, 0 diff --git a/Tests/Stats/Passive 2ndOrder Lowpass RC.csv b/Tests/Stats/Passive 2ndOrder Lowpass RC.csv index f6e6abe3..973f2a91 100644 --- a/Tests/Stats/Passive 2ndOrder Lowpass RC.csv +++ b/Tests/Stats/Passive 2ndOrder Lowpass RC.csv @@ -1,5 +1,5 @@ -var, mean, min, max, rms -_v1[t], 0.0014702956403830738, -0.4400236408798788, 0.44002371268155105, 0.003614017679866557 -_v2[t], 0.0056384090889129304, -0.26362013368918114, 0.26877215174199354, 0.0020668406117122294 -_v3[t], 0.007389921461748215, -0.2166627256637467, 0.22622839090117405, 0.0017099139375329005 -GND[t], 0, 0, 0, 0 +var, mean, min, max +_v1[t], 0.010264, -0.44003, 0.44003 +_v2[t], 0.0034119, -0.26362, 0.21739 +_v3[t], -0.00018657, -0.21666, 0.16702 +GND[t], 0, 0, 0 diff --git a/Tests/Stats/Passive 2ndOrder Lowpass RLC.csv b/Tests/Stats/Passive 2ndOrder Lowpass RLC.csv index 8e7ada8f..22fb2b12 100644 --- a/Tests/Stats/Passive 2ndOrder Lowpass RLC.csv +++ b/Tests/Stats/Passive 2ndOrder Lowpass RLC.csv @@ -1,5 +1,5 @@ -var, mean, min, max, rms -_v2[t], 0.0014702956403830738, -0.4400236408798788, 0.44002371268155105, 0.003614017679866557 -_v3[t], 0.0014872662710815458, -0.44055025526444785, 0.44114118491429744, 0.003613953468027995 -_v4[t], 0.00250433805823348, -0.23670771603343246, 0.246905073496495, 0.0019934654189614045 -GND[t], 0, 0, 0, 0 +var, mean, min, max +_v2[t], 0.010264, -0.44003, 0.44003 +_v3[t], 0.010224, -0.44055, 0.44108 +_v4[t], 0.016729, -0.23671, 0.20057 +GND[t], 0, 0, 0 diff --git a/Tests/Stats/Pro Co Rat.csv b/Tests/Stats/Pro Co Rat.csv index cc5f3c47..b3a3d091 100644 --- a/Tests/Stats/Pro Co Rat.csv +++ b/Tests/Stats/Pro Co Rat.csv @@ -1,20 +1,20 @@ -var, mean, min, max, rms -_v2[t], 4.546527707949493, 4.405510545487741, 4.697327959052986, 0.06562984474253432 -_v3[t], 4.721958574251374, 0.8303176484457249, 8.170926112965258, 0.08536564938450204 -_v4[t], 0.11479058138013486, -4.007932015107541, 3.8231911676123724, 0.051380530262459666 -_v5[t], 0.036380549622739955, -0.6266329883804418, 0.6241598186614753, 0.008910525316915814 -_v7[t], 4.546461147253379, 4.406962429479399, 4.695943479491579, 0.0656288583665936 -_v8[t], 4.543669308185517, 4.450374978525028, 4.655642348749932, 0.06558638029449472 -_v10[t], 0.036705730529781024, -0.6075767906359308, 0.6060987300030247, 0.008456415856172888 -_v11[t], 0.03672386724364518, -0.6065596296464579, 0.6051359043108061, 0.008443010151438625 -_v14[t], 0.006289822508024044, -0.7158090611472938, 0.6736297025154812, 0.008401180027993236 -_v15[t], 9, 9, 9, 0.1299038105676658 -_v18[t], 4.581425246845001, 4.072408713948308, 5.175771074557321, 0.06623413843630495 -_v19[t], 4.5814250329191815, 4.072397224071158, 5.175783276225697, 0.06623414140215145 -_v20[t], 4.5, 4.5, 4.5, 0.0649519052838329 -_v22[t], 0.0014702956403830738, -0.4400236408798788, 0.44002371268155105, 0.003614017679866557 -_v23[t], 2.2257950590063835, 1.6100852907994536, 2.7984543345466153, 0.03292101619892471 -_v25[t], 9, 9, 9, 0.1299038105676658 -_v26[t], 0.00401881644180731, -0.6276391069350129, 0.595309071675569, 0.007188207453832655 -_v28[t], 0.001080826206084781, -0.16879815352649666, 0.16010326789087986, 0.0019332067297361465 -GND[t], 0, 0, 0, 0 +var, mean, min, max +_v2[t], 4.5194, 4.4248, 4.5964 +_v3[t], 4.567, 0.84098, 8.1654 +_v4[t], 0.034164, -3.776, 3.7838 +_v5[t], 0.010749, -0.62351, 0.62363 +_v7[t], 4.5193, 4.4262, 4.595 +_v8[t], 4.519, 4.4699, 4.552 +_v10[t], 0.010603, -0.60597, 0.60574 +_v11[t], 0.010595, -0.60506, 0.60478 +_v14[t], 0.0054423, -0.65788, 0.66541 +_v15[t], 9, 9, 9 +_v18[t], 4.5429, 4.1012, 5.0048 +_v19[t], 4.5429, 4.1012, 5.0048 +_v20[t], 4.5, 4.5, 4.5 +_v22[t], 0.010264, -0.44003, 0.44003 +_v23[t], 2.225, 1.6583, 2.7913 +_v25[t], 9, 9, 9 +_v26[t], 0.0068574, -0.56908, 0.58537 +_v28[t], 0.0018442, -0.15305, 0.15743 +GND[t], 0, 0, 0 diff --git a/Tests/Stats/Rectifier.csv b/Tests/Stats/Rectifier.csv index 213ba2d0..dfd44b1e 100644 --- a/Tests/Stats/Rectifier.csv +++ b/Tests/Stats/Rectifier.csv @@ -1,7 +1,7 @@ -var, mean, min, max, rms -_v2[t], 0.0014702956403830738, -0.4400236408798788, 0.44002371268155105, 0.003614017679866557 -_v3[t], 0.48064498255388627, 0, 1.082487998176683, 0.008834682027183453 -_v5[t], 0.00147029563194124, -0.4400236398798788, 0.44002371168155113, 0.0036140176683955947 -_v6[t], -0.0036757390798531405, -1.1000592792038777, 1.1000590996996968, 0.009035044170989005 -_v8[t], 0.0036757390798531405, -1.1000590996996968, 1.1000592792038777, 0.009035044170989005 -GND[t], 0, 0, 0, 0 +var, mean, min, max +_v2[t], 0.010264, -0.44003, 0.44003 +_v3[t], 0.49367, 7.4444E-05, 1.0825 +_v5[t], 0.010264, -0.44003, 0.44003 +_v6[t], -0.025661, -1.1001, 1.1001 +_v8[t], 0.025661, -1.1001, 1.1001 +GND[t], 0, 0, 0 diff --git a/Tests/Stats/SP3T.csv b/Tests/Stats/SP3T.csv index a8f2c4ef..a3c09c41 100644 --- a/Tests/Stats/SP3T.csv +++ b/Tests/Stats/SP3T.csv @@ -1,7 +1,7 @@ -var, mean, min, max, rms -_v1[t], 0.0008114247637507801, -0.21971195551374204, 0.21970937411679992, 0.001803904698375901 -_v3[t], 0.0014702956403830738, -0.4400236408798788, 0.44002371268155105, 0.003614017679866557 -_v6[t], 0.0008114247637507801, -0.21971195551374204, 0.21970937411679992, 0.001803904698375901 -_v7[t], 0.0014702956403830738, -0.4400236408798788, 0.44002371268155105, 0.003614017679866557 -_v9[t], 0, 0, 0, 0 -GND[t], 0, 0, 0, 0 +var, mean, min, max +_v1[t], 0.0051169, -0.21971, 0.21971 +_v3[t], 0.010264, -0.44003, 0.44003 +_v6[t], 0.0051169, -0.21971, 0.21971 +_v7[t], 0.010264, -0.44003, 0.44003 +_v9[t], 0, 0, 0 +GND[t], 0, 0, 0 diff --git a/Tests/Stats/SPDT.csv b/Tests/Stats/SPDT.csv index 594987e6..8af9fa8a 100644 --- a/Tests/Stats/SPDT.csv +++ b/Tests/Stats/SPDT.csv @@ -1,6 +1,6 @@ -var, mean, min, max, rms -_v1[t], 0.0008114247637507801, -0.21971195551374204, 0.21970937411679992, 0.001803904698375901 -_v3[t], 0.0014702956403830738, -0.4400236408798788, 0.44002371268155105, 0.003614017679866557 -_v6[t], 0.0008114247637507801, -0.21971195551374204, 0.21970937411679992, 0.001803904698375901 -_v7[t], 0.0014702956403830738, -0.4400236408798788, 0.44002371268155105, 0.003614017679866557 -GND[t], 0, 0, 0, 0 +var, mean, min, max +_v1[t], 0.0051169, -0.21971, 0.21971 +_v3[t], 0.010264, -0.44003, 0.44003 +_v6[t], 0.0051169, -0.21971, 0.21971 +_v7[t], 0.010264, -0.44003, 0.44003 +GND[t], 0, 0, 0 diff --git a/Tests/Stats/Subcircuit Tone Stack.csv b/Tests/Stats/Subcircuit Tone Stack.csv index 96fa4610..720d2519 100644 --- a/Tests/Stats/Subcircuit Tone Stack.csv +++ b/Tests/Stats/Subcircuit Tone Stack.csv @@ -1,5 +1,5 @@ -var, mean, min, max, rms -_v1[t], 0.0014702956403830738, -0.4400236408798788, 0.44002371268155105, 0.003614017679866557 -_v3[t], 0, 0, 0, 0 -_v4[t], -0.002634111560781202, -0.31561065771993646, 0.2936876538442485, 0.002443908519838565 -GND[t], 0, 0, 0, 0 +var, mean, min, max +_v1[t], 0.010264, -0.44003, 0.44003 +_v3[t], 0, 0, 0 +_v4[t], 0.0058589, -0.29195, 0.29369 +GND[t], 0, 0, 0 diff --git a/Tests/Stats/Subcircuit Tone Stacks.csv b/Tests/Stats/Subcircuit Tone Stacks.csv index 0e847894..1eabf87f 100644 --- a/Tests/Stats/Subcircuit Tone Stacks.csv +++ b/Tests/Stats/Subcircuit Tone Stacks.csv @@ -1,7 +1,7 @@ -var, mean, min, max, rms -_v1[t], 0.0014702956403830738, -0.4400236408798788, 0.44002371268155105, 0.003614017679866557 -_v3[t], 0, 0, 0, 0 -_v4[t], -0.00028047792951928484, -0.08894512211303686, 0.06980237782575514, 0.0006407464630146428 -_v5[t], -0.0006400247928715678, -0.11971629036222915, 0.10581180720363444, 0.000900816889927169 -_v6[t], 0, 0, 0, 0 -GND[t], 0, 0, 0, 0 +var, mean, min, max +_v1[t], 0.010264, -0.44003, 0.44003 +_v3[t], 0, 0, 0 +_v4[t], 0.00096828, -0.076188, 0.069802 +_v5[t], 0.0011445, -0.11208, 0.10002 +_v6[t], 0, 0, 0 +GND[t], 0, 0, 0 diff --git a/Tests/Stats/Subcircuit Trivial Two-Port.csv b/Tests/Stats/Subcircuit Trivial Two-Port.csv index 60c0822e..40465948 100644 --- a/Tests/Stats/Subcircuit Trivial Two-Port.csv +++ b/Tests/Stats/Subcircuit Trivial Two-Port.csv @@ -1,5 +1,5 @@ -var, mean, min, max, rms -_v1[t], 0.0014702956403830738, -0.4400236408798788, 0.44002371268155105, 0.003614017679866557 -_v2[t], 0.0014702956403830738, -0.4400236408798788, 0.44002371268155105, 0.003614017679866557 -_v3[t], 0, 0, 0, 0 -GND[t], 0, 0, 0, 0 +var, mean, min, max +_v1[t], 0.010264, -0.44003, 0.44003 +_v2[t], 0.010264, -0.44003, 0.44003 +_v3[t], 0, 0, 0 +GND[t], 0, 0, 0 diff --git a/Tests/Stats/Subcircuit Trivial.csv b/Tests/Stats/Subcircuit Trivial.csv index 627d2374..872c19a8 100644 --- a/Tests/Stats/Subcircuit Trivial.csv +++ b/Tests/Stats/Subcircuit Trivial.csv @@ -1,4 +1,4 @@ -var, mean, min, max, rms -_v1[t], 0.0014702956403830738, -0.4400236408798788, 0.44002371268155105, 0.003614017679866557 -_v2[t], 0.0014702956403830738, -0.4400236408798788, 0.44002371268155105, 0.003614017679866557 -GND[t], 0, 0, 0, 0 +var, mean, min, max +_v1[t], 0.010264, -0.44003, 0.44003 +_v2[t], 0.010264, -0.44003, 0.44003 +GND[t], 0, 0, 0 diff --git a/Tests/Stats/Subcircuit Voltage Divider.csv b/Tests/Stats/Subcircuit Voltage Divider.csv index 4c2f0b7b..597b503e 100644 --- a/Tests/Stats/Subcircuit Voltage Divider.csv +++ b/Tests/Stats/Subcircuit Voltage Divider.csv @@ -1,5 +1,5 @@ -var, mean, min, max, rms -_v1[t], 0.0014702956403830738, -0.4400236408798788, 0.44002371268155105, 0.003614017679866557 -_v2[t], 0.0007351478201915369, -0.2200118204399394, 0.22001185634077552, 0.0018070088399332784 -_v3[t], 0, 0, 0, 0 -GND[t], 0, 0, 0, 0 +var, mean, min, max +_v1[t], 0.010264, -0.44003, 0.44003 +_v2[t], 0.0051322, -0.22001, 0.22001 +_v3[t], 0, 0, 0 +GND[t], 0, 0, 0 diff --git a/Tests/Stats/Transformer.csv b/Tests/Stats/Transformer.csv index 5d11282a..1fe4f926 100644 --- a/Tests/Stats/Transformer.csv +++ b/Tests/Stats/Transformer.csv @@ -1,4 +1,4 @@ -var, mean, min, max, rms -_v1[t], 0.0014702956403830827, -0.44002364087987883, 0.44002371268155116, 0.0036140176798665578 -_v3[t], 0.014702956403830876, -4.400236408798788, 4.400237126815512, 0.03614017679866557 -GND[t], 0, 0, 0, 0 +var, mean, min, max +_v1[t], 0.010264, -0.44003, 0.44003 +_v3[t], 0.10264, -4.4003, 4.4003 +GND[t], 0, 0, 0 diff --git a/Tests/Stats/Wien Bridge Oscillator.csv b/Tests/Stats/Wien Bridge Oscillator.csv index 35184572..6db1be6b 100644 --- a/Tests/Stats/Wien Bridge Oscillator.csv +++ b/Tests/Stats/Wien Bridge Oscillator.csv @@ -1,10 +1,10 @@ -var, mean, min, max, rms -_v1[t], 2.604166666666667E-05, 0, 0.125, 2.604166666666667E-05 -_v2[t], 0.001313698291940252, -2.759820442183166, 2.7586896060788364, 0.016188111179143136 -_v3[t], 0.006128380095462239, -6.2523581363402005, 6.249167932614951, 0.036207416568128675 -_v4[t], 0.0038795758482895624, -8.11419766761564, 8.113334108321272, 0.04863264823082547 -_v5[t], 0.001285421013464126, -2.6884511561180595, 2.6881332685615105, 0.016112560382445015 -_v6[t], 9, 9, 9, 0.1299038105676658 -_v7[t], -9, -9, -9, 0.1299038105676658 -_v8[t], 0.0012382496001259948, -2.589792398095379, 2.589486176137235, 0.015521273762905751 -GND[t], 0, 0, 0, 0 +var, mean, min, max +_v1[t], 0, 0, 0 +_v2[t], -0.0068192, -2.7603, 2.7602 +_v3[t], -0.016947, -6.253, 6.2533 +_v4[t], -0.020439, -8.1147, 8.1147 +_v5[t], -0.0067716, -2.6886, 2.6886 +_v6[t], 9, 9, 9 +_v7[t], -9, -9, -9 +_v8[t], -0.0065231, -2.5899, 2.5899 +GND[t], 0, 0, 0 diff --git a/Tests/Test.cs b/Tests/Test.cs index 71166731..824bd2ed 100644 --- a/Tests/Test.cs +++ b/Tests/Test.cs @@ -180,107 +180,68 @@ public void PlotAll(string Title, Dictionary> Outputs) p.Save(Path.Combine("Plots", Title + ".bmp")); } #endif - private static Dictionary ComputeStatistics(Dictionary> Outputs) + /// + /// Statistics over the steady-state portion of the run. Warmup samples are skipped so the + /// startup transient - which is large, and highly sensitive to exactly where the buffer + /// boundaries fell - does not dominate the mean. + /// + private static Dictionary ComputeStatistics(Dictionary> Outputs, int Warmup) { var stats = new Dictionary(); foreach (var i in Outputs) { - double mean = i.Value.Sum() / i.Value.Count; - double min = i.Value.Min(); - double max = i.Value.Max(); - double rms = Math.Sqrt(i.Value.Select(v => v * v).Sum()) / i.Value.Count; - stats[i.Key.ToString()] = new[] { mean, min, max, rms }; + double[] steadyState = i.Value.Skip(Warmup).ToArray(); + stats[i.Key.ToString()] = new[] { steadyState.Sum() / steadyState.Length, steadyState.Min(), steadyState.Max() }; } return stats; } - public void WriteStatistics(string Title, Dictionary> Outputs) - { - string cols = "{0}, {1}, {2}, {3}, {4}"; + // G5 is deliberate: rounding to five significant figures absorbs the last-digit + // differences between platforms and CPU architectures, which lets the baselines be + // compared as text instead of needing per-variable tolerances. + private const string StatsColumns = "{0}, {1:G5}, {2:G5}, {3:G5}"; + private static string StatsToString(Dictionary> Outputs, int Warmup) + { StringBuilder sb = new StringBuilder(); - sb.AppendLine(string.Format(CultureInfo.InvariantCulture, cols, "var", "mean", "min", "max", "rms")); - foreach (var i in ComputeStatistics(Outputs)) - sb.AppendLine(string.Format(CultureInfo.InvariantCulture, cols, i.Key, i.Value[0], i.Value[1], i.Value[2], i.Value[3])); - - string path = Path.Combine("Stats", Title + ".csv"); - System.IO.Directory.CreateDirectory("Stats"); - File.WriteAllText(path, sb.ToString()); + sb.AppendLine(string.Format(CultureInfo.InvariantCulture, StatsColumns, "var", "mean", "min", "max")); + foreach (var i in ComputeStatistics(Outputs, Warmup)) + sb.AppendLine(string.Format(CultureInfo.InvariantCulture, StatsColumns, i.Key, i.Value[0], i.Value[1], i.Value[2])); + return sb.ToString(); } - // Circuits whose solutions deterministically amplify platform floating-point - // differences (hard clipping recirculated through feedback), checked with a - // loose tolerance. Their results are run-to-run deterministic on any one - // platform, but the trajectory differs measurably across platforms. - private static readonly Dictionary looseTolerance = new Dictionary - { - { "Pro Co Rat", 1e-1 }, - }; - /// - /// Compare simulation statistics against the saved baseline in Stats/. - /// The committed baselines were generated at --sampleRate 44100 (defaults otherwise); - /// checks only make sense at the configuration that produced the baseline. - /// Deviations are normalized by each variable's signal scale, max(|min|, |max|), - /// because the mean of an AC signal is near zero and a plain relative error there - /// is meaningless. + /// Compare simulation statistics against the golden file in Stats/, or regenerate it. + /// Checking is unconditional: a test run that does not assert is not a test. /// - /// 0 if the circuit matches its baseline, 1 otherwise. - public int CheckStatistics(string Title, Dictionary> Outputs, ILog Log) + /// 0 if the circuit matches its golden file, 1 otherwise. + public int CheckStatistics(string Title, Dictionary> Outputs, int Warmup, bool Update, ILog Log) { + string stats = StatsToString(Outputs, Warmup); string path = Path.Combine("Stats", Title + ".csv"); - if (!File.Exists(path)) - { - Log.WriteLine(MessageType.Error, "CHECK FAIL {0}: no baseline at '{1}'", Title, path); - return 1; - } - var computed = ComputeStatistics(Outputs); - var baseline = new Dictionary(); - foreach (string line in File.ReadAllLines(path).Skip(1)) + if (Update) { - if (string.IsNullOrWhiteSpace(line)) continue; - string[] fields = line.Split(','); - baseline[fields[0].Trim()] = fields.Skip(1).Take(4) - .Select(x => double.Parse(x, CultureInfo.InvariantCulture)).ToArray(); + System.IO.Directory.CreateDirectory("Stats"); + File.WriteAllText(path, stats); + return 0; } - double tol = looseTolerance.TryGetValue(Title, out double loose) ? loose : 1e-6; - string[] statNames = { "mean", "min", "max", "rms" }; - int failures = 0; - double worst = 0; - string worstAt = ""; - foreach (var v in baseline) + if (!File.Exists(path)) { - if (!computed.TryGetValue(v.Key, out double[]? c)) - { - Log.WriteLine(MessageType.Error, "CHECK FAIL {0}: baseline variable {1} not produced", Title, v.Key); - failures++; - continue; - } - double scale = Math.Max(Math.Max(Math.Abs(v.Value[1]), Math.Abs(v.Value[2])), 1e-12); - for (int i = 0; i < 4; ++i) - { - double dev = Math.Abs(c[i] - v.Value[i]) / scale; - if (dev > worst) { worst = dev; worstAt = v.Key + "." + statNames[i]; } - // NaN deviation must fail, hence the negated comparison. - if (!(dev <= tol)) - { - Log.WriteLine(MessageType.Error, "CHECK FAIL {0}: {1}.{2} baseline={3} computed={4} deviation={5:G3}", - Title, v.Key, statNames[i], v.Value[i], c[i], dev); - failures++; - } - } + Log.WriteLine(MessageType.Error, "CHECK FAIL {0}: no golden file at '{1}'. Run with --updateGolden to create one.", Title, path); + return 1; } - foreach (string k in computed.Keys.Where(k => !baseline.ContainsKey(k))) + + string golden = File.ReadAllText(path); + if (golden.Replace("\r\n", "\n") == stats.Replace("\r\n", "\n")) { - Log.WriteLine(MessageType.Error, "CHECK FAIL {0}: variable {1} missing from baseline", Title, k); - failures++; + Log.WriteLine(MessageType.Info, "CHECK OK {0}", Title); + return 0; } - if (failures == 0) - Log.WriteLine(MessageType.Info, "CHECK OK {0} (max deviation {1:G3} at {2})", Title, worst, worstAt); - return failures > 0 ? 1 : 0; + Log.WriteLine(MessageType.Error, "CHECK FAIL {0}:\n got:\n{1}\n expected:\n{2}", Title, stats, golden); + return 1; } } } \ No newline at end of file From 08f8ffb05269a8b1299fa467d1d2dd5e22052a46 Mon Sep 17 00:00:00 2001 From: Charles <252065487+tobleromed@users.noreply.github.com> Date: Tue, 28 Jul 2026 22:34:23 -0700 Subject: [PATCH 2/3] Snap negligible statistics to zero so the golden files are platform-stable Windows CI caught the one case G5 rounding does not absorb: Floating Input's _v2[t] mean is a cancellation residual around -2.4e-10 on a signal of amplitude 0.5, so five significant figures of it is pure floating-point noise - -2.4347E-10 on Windows against -2.4305E-10 on macOS, differing in every digit while both mean zero. Statistics smaller than 1e-6 of the variable's own range now print as 0. Five golden files change; the other 44 are untouched. Notable: Pro Co Rat now agrees across platforms without any special handling. It previously needed a per-circuit loose tolerance because macOS and Windows diverged by ~4e-2, but that difference lived almost entirely in the startup transient - skipping the warmup removed it. The tolerance machinery was compensating for a statistic that should not have included the transient in the first place. Co-Authored-By: Claude Fable 5 --- Tests/Stats/59 Bassman Preamp+Tone Stack.csv | 2 +- Tests/Stats/59 Bassman Preamp.csv | 2 +- Tests/Stats/Floating Input.csv | 2 +- Tests/Stats/Half Rectifier.csv | 2 +- Tests/Stats/Marshall JCM800 2203 Preamp.csv | 2 +- Tests/Test.cs | 17 ++++++++++++++++- 6 files changed, 21 insertions(+), 6 deletions(-) diff --git a/Tests/Stats/59 Bassman Preamp+Tone Stack.csv b/Tests/Stats/59 Bassman Preamp+Tone Stack.csv index 0f0769c0..efd4b557 100644 --- a/Tests/Stats/59 Bassman Preamp+Tone Stack.csv +++ b/Tests/Stats/59 Bassman Preamp+Tone Stack.csv @@ -14,7 +14,7 @@ _v18[t], 325, 325, 325 _v19[t], -1.0062, -14.678, 12.399 _v20[t], -0.85753, -7.3593, 4.0959 _v21[t], -1.2403, -7.381, 1.8238 -_v22[t], 1.0514, 1.075E-08, 1.9038 +_v22[t], 1.0514, 0, 1.9038 _v24[t], 183.42, 93.667, 280.25 _v25[t], 325, 325, 325 _v26[t], 325, 325, 325 diff --git a/Tests/Stats/59 Bassman Preamp.csv b/Tests/Stats/59 Bassman Preamp.csv index 4f046c88..dc7744cc 100644 --- a/Tests/Stats/59 Bassman Preamp.csv +++ b/Tests/Stats/59 Bassman Preamp.csv @@ -9,7 +9,7 @@ _v12[t], -1.0062, -14.678, 12.399 _v13[t], -0.85753, -7.3593, 4.0959 _v14[t], -0.85753, -7.3593, 4.0959 _v15[t], -1.2403, -7.381, 1.8238 -_v16[t], 1.0541, 1.6417E-08, 1.9038 +_v16[t], 1.0541, 0, 1.9038 _v18[t], 185.95, 93.667, 285.12 _v19[t], 325, 325, 325 _v20[t], 325, 325, 325 diff --git a/Tests/Stats/Floating Input.csv b/Tests/Stats/Floating Input.csv index 9f923906..26468073 100644 --- a/Tests/Stats/Floating Input.csv +++ b/Tests/Stats/Floating Input.csv @@ -1,5 +1,5 @@ var, mean, min, max -_v2[t], -2.4305E-10, -0.5, 0.5 +_v2[t], 0, -0.5, 0.5 _v3[t], -0.0034214, -0.36162, 0.43398 _v4[t], 0.0068429, -0.58848, 0.39427 GND[t], 0, 0, 0 diff --git a/Tests/Stats/Half Rectifier.csv b/Tests/Stats/Half Rectifier.csv index ce628b90..335af1a0 100644 --- a/Tests/Stats/Half Rectifier.csv +++ b/Tests/Stats/Half Rectifier.csv @@ -1,6 +1,6 @@ var, mean, min, max _v1[t], 0.010264, -0.44003, 0.44003 _v2[t], 0.0022914, -0.44003, 0.40403 -_v5[t], 0.79729, -1E-07, 3.5993 +_v5[t], 0.79729, 0, 3.5993 _v6[t], 0.022914, -4.4003, 4.0403 GND[t], 0, 0, 0 diff --git a/Tests/Stats/Marshall JCM800 2203 Preamp.csv b/Tests/Stats/Marshall JCM800 2203 Preamp.csv index b9beefe5..b35a0f79 100644 --- a/Tests/Stats/Marshall JCM800 2203 Preamp.csv +++ b/Tests/Stats/Marshall JCM800 2203 Preamp.csv @@ -8,7 +8,7 @@ _v8[t], 2.4952, 2.2519, 2.7249 _v9[t], -0.059139, -3.1271, 2.6574 _v10[t], 304.11, 283.94, 325.23 _v11[t], 3.5099, 1.0572, 5.7549 -_v12[t], 1.0023, 2.0887E-14, 2.1633 +_v12[t], 1.0023, 0, 2.1633 _v13[t], 207.16, 91.682, 304.66 _v15[t], 216.36, 98.487, 303.84 _v16[t], 216.85, 124.63, 291.09 diff --git a/Tests/Test.cs b/Tests/Test.cs index 824bd2ed..f376c860 100644 --- a/Tests/Test.cs +++ b/Tests/Test.cs @@ -201,12 +201,27 @@ private static Dictionary ComputeStatistics(Dictionary + /// Snap statistics that are negligible against the variable's own range to zero. The mean + /// of a symmetric signal is a cancellation residual near zero, and printing five + /// significant figures of it just publishes floating-point noise: a floating node whose + /// true mean is zero otherwise differs between platforms in every digit. + /// + private static double Denoise(double Value, double Scale) + { + return Math.Abs(Value) < Scale * 1e-6 ? 0.0 : Value; + } + private static string StatsToString(Dictionary> Outputs, int Warmup) { StringBuilder sb = new StringBuilder(); sb.AppendLine(string.Format(CultureInfo.InvariantCulture, StatsColumns, "var", "mean", "min", "max")); foreach (var i in ComputeStatistics(Outputs, Warmup)) - sb.AppendLine(string.Format(CultureInfo.InvariantCulture, StatsColumns, i.Key, i.Value[0], i.Value[1], i.Value[2])); + { + double scale = Math.Max(Math.Abs(i.Value[1]), Math.Abs(i.Value[2])); + sb.AppendLine(string.Format(CultureInfo.InvariantCulture, StatsColumns, + i.Key, Denoise(i.Value[0], scale), Denoise(i.Value[1], scale), Denoise(i.Value[2], scale))); + } return sb.ToString(); } From ecdf9fd61de6fc6db72879a5177d4517858a4d3a Mon Sep 17 00:00:00 2001 From: Charles <252065487+tobleromed@users.noreply.github.com> Date: Tue, 28 Jul 2026 22:39:32 -0700 Subject: [PATCH 3/3] Round the mean to the signal envelope, not to its own magnitude Windows CI found a second platform disagreement after the first fix: Pro Co Rat's _v28[t] mean printed 0.0018443 there against 0.0018442 here, every other value in all 49 circuits matching exactly. That is the general shape of the problem, not a one-off. min and max are order-of-scale quantities, so G5 of them is ~1e-5 relative - well above the drift between platforms, which is why 48 circuits agreed. The mean is a cancellation residual near zero, so G5 of its own magnitude resolves far below the precision it actually carries, and prints noise. The mean is now quantized to 1e-4 of the variable's envelope. A real regression moves it by orders of magnitude more than that, so this keeps ample resolution to catch one; it just stops asserting on digits that were never meaningful. This replaces the previous absolute snap-to-zero, which only handled the case where the residual was near zero rather than merely small. Co-Authored-By: Claude Fable 5 --- Tests/Stats/59 Bassman Preamp+Tone Stack.csv | 34 ++++++------ Tests/Stats/59 Bassman Preamp.csv | 24 ++++----- Tests/Stats/59 Bassman Tone Stack.csv | 14 ++--- Tests/Stats/Active 1stOrder Highpass RC.csv | 6 +-- Tests/Stats/Active 1stOrder Lowpass RC.csv | 8 +-- Tests/Stats/Big Muff Pi.csv | 44 +++++++-------- Tests/Stats/Boss Super Overdrive SD-1.csv | 28 +++++----- Tests/Stats/Bridge Rectifier.csv | 10 ++-- .../Stats/Common Cathode Triode Amplifier.csv | 8 +-- .../Common Emitter Transistor Amplifier.csv | 10 ++-- Tests/Stats/Diode Rectifier.csv | 6 +-- Tests/Stats/Dunlop Cry Baby GCB-95.csv | 24 ++++----- Tests/Stats/Fender 5e3.csv | 50 ++++++++--------- Tests/Stats/Floating Diode Clipper.csv | 6 +-- Tests/Stats/Floating Input.csv | 6 +-- Tests/Stats/Floating Voltage Source.csv | 6 +-- Tests/Stats/Half Rectifier.csv | 8 +-- Tests/Stats/Ibanez Tube Screamer TS-9.csv | 18 +++---- Tests/Stats/JFET.csv | 6 +-- Tests/Stats/MXR Distortion +.csv | 16 +++--- Tests/Stats/MXR Phase 90.csv | 42 +++++++-------- Tests/Stats/Marshall Blues Breaker.csv | 32 +++++------ Tests/Stats/Marshall JCM2000 DSL Preamp.csv | 54 +++++++++---------- Tests/Stats/Marshall JCM800 2203 Preamp.csv | 44 +++++++-------- .../Marshall JCM800 2203 preamp modded.csv | 54 +++++++++---------- Tests/Stats/Op-Amp Inverting.csv | 6 +-- Tests/Stats/Op-Amp Model.csv | 10 ++-- Tests/Stats/Op-Amp Non-Inverting.csv | 4 +- Tests/Stats/Op-Amp Saturation.csv | 6 +-- Tests/Stats/Orange Rockerverb 50 Preamp.csv | 42 +++++++-------- Tests/Stats/Parallel capacitors 1.csv | 4 +- Tests/Stats/Parallel capacitors 2.csv | 4 +- Tests/Stats/Passive 1stOrder Highpass RC.csv | 4 +- Tests/Stats/Passive 1stOrder Lowpass RC.csv | 4 +- Tests/Stats/Passive 1stOrder Lowpass RL.csv | 4 +- Tests/Stats/Passive 2ndOrder Bandpass RLC.csv | 4 +- Tests/Stats/Passive 2ndOrder Lowpass RC.csv | 6 +-- Tests/Stats/Passive 2ndOrder Lowpass RLC.csv | 6 +-- Tests/Stats/Pro Co Rat.csv | 24 ++++----- Tests/Stats/Rectifier.csv | 10 ++-- Tests/Stats/SP3T.csv | 8 +-- Tests/Stats/SPDT.csv | 8 +-- Tests/Stats/Subcircuit Tone Stack.csv | 4 +- Tests/Stats/Subcircuit Tone Stacks.csv | 6 +-- Tests/Stats/Subcircuit Trivial Two-Port.csv | 4 +- Tests/Stats/Subcircuit Trivial.csv | 4 +- Tests/Stats/Subcircuit Voltage Divider.csv | 4 +- Tests/Stats/Transformer.csv | 4 +- Tests/Stats/Wien Bridge Oscillator.csv | 10 ++-- Tests/Test.cs | 23 +++++--- 50 files changed, 390 insertions(+), 381 deletions(-) diff --git a/Tests/Stats/59 Bassman Preamp+Tone Stack.csv b/Tests/Stats/59 Bassman Preamp+Tone Stack.csv index efd4b557..f4afdccb 100644 --- a/Tests/Stats/59 Bassman Preamp+Tone Stack.csv +++ b/Tests/Stats/59 Bassman Preamp+Tone Stack.csv @@ -1,23 +1,23 @@ var, mean, min, max -_v1[t], 184.36, 96.213, 279.47 -_v2[t], 2.0241, -63.517, 77.388 +_v1[t], 184.37, 96.213, 279.47 +_v2[t], 2.0276, -63.517, 77.388 _v4[t], 183.32, 112.37, 258.19 -_v5[t], 0.2757, -13.915, 18.542 -_v6[t], 2.0472, -63.856, 77.771 -_v7[t], 0.23142, -14.383, 18.786 -_v8[t], 2.0357, -63.687, 77.557 -_v11[t], 0.010264, -0.44003, 0.44003 -_v13[t], 0.010264, -0.44003, 0.44003 -_v14[t], 1.3629, 1.3619, 1.3635 -_v16[t], 158.54, 145.24, 172.31 +_v5[t], 0.27628, -13.915, 18.542 +_v6[t], 2.0454, -63.856, 77.771 +_v7[t], 0.23107, -14.383, 18.786 +_v8[t], 2.032, -63.687, 77.557 +_v11[t], 0.010253, -0.44003, 0.44003 +_v13[t], 0.010253, -0.44003, 0.44003 +_v14[t], 1.363, 1.3619, 1.3635 +_v16[t], 158.55, 145.24, 172.31 _v18[t], 325, 325, 325 -_v19[t], -1.0062, -14.678, 12.399 -_v20[t], -0.85753, -7.3593, 4.0959 -_v21[t], -1.2403, -7.381, 1.8238 -_v22[t], 1.0514, 0, 1.9038 -_v24[t], 183.42, 93.667, 280.25 +_v19[t], -1.0055, -14.678, 12.399 +_v20[t], -0.85736, -7.3593, 4.0959 +_v21[t], -1.24, -7.381, 1.8238 +_v22[t], 1.0514, 1.075E-08, 1.9038 +_v24[t], 183.43, 93.667, 280.25 _v25[t], 325, 325, 325 _v26[t], 325, 325, 325 -_v28[t], -0.85753, -7.3593, 4.0959 +_v28[t], -0.85736, -7.3593, 4.0959 GND[t], 0, 0, 0 -_x1[t], -1.0062, -14.678, 12.399 +_x1[t], -1.0055, -14.678, 12.399 diff --git a/Tests/Stats/59 Bassman Preamp.csv b/Tests/Stats/59 Bassman Preamp.csv index dc7744cc..71d71529 100644 --- a/Tests/Stats/59 Bassman Preamp.csv +++ b/Tests/Stats/59 Bassman Preamp.csv @@ -1,17 +1,17 @@ var, mean, min, max -_v1[t], 186.78, 95.957, 284.4 -_v4[t], 0.010264, -0.44003, 0.44003 -_v6[t], 0.010264, -0.44003, 0.44003 -_v7[t], 1.3629, 1.3619, 1.3635 -_v9[t], 158.54, 145.24, 172.31 +_v1[t], 186.77, 95.957, 284.4 +_v4[t], 0.010253, -0.44003, 0.44003 +_v6[t], 0.010253, -0.44003, 0.44003 +_v7[t], 1.363, 1.3619, 1.3635 +_v9[t], 158.55, 145.24, 172.31 _v11[t], 325, 325, 325 -_v12[t], -1.0062, -14.678, 12.399 -_v13[t], -0.85753, -7.3593, 4.0959 -_v14[t], -0.85753, -7.3593, 4.0959 -_v15[t], -1.2403, -7.381, 1.8238 -_v16[t], 1.0541, 0, 1.9038 -_v18[t], 185.95, 93.667, 285.12 +_v12[t], -1.0069, -14.678, 12.399 +_v13[t], -0.85736, -7.3593, 4.0959 +_v14[t], -0.85736, -7.3593, 4.0959 +_v15[t], -1.24, -7.381, 1.8238 +_v16[t], 1.0541, 1.6417E-08, 1.9038 +_v18[t], 185.96, 93.667, 285.12 _v19[t], 325, 325, 325 _v20[t], 325, 325, 325 GND[t], 0, 0, 0 -_x1[t], -1.0062, -14.678, 12.399 +_x1[t], -1.0069, -14.678, 12.399 diff --git a/Tests/Stats/59 Bassman Tone Stack.csv b/Tests/Stats/59 Bassman Tone Stack.csv index 6df8e7c5..5f065695 100644 --- a/Tests/Stats/59 Bassman Tone Stack.csv +++ b/Tests/Stats/59 Bassman Tone Stack.csv @@ -1,9 +1,9 @@ var, mean, min, max -_v2[t], 0.010264, -0.44003, 0.44003 -_v3[t], 0.0057834, -0.28795, 0.2887 -_v5[t], 0.0052707, -0.30492, 0.27897 -_v6[t], 0.0012249, -0.048266, 0.062094 -_v7[t], 0.0059343, -0.29604, 0.29868 -_v8[t], 0.0011071, -0.04407, 0.060181 -_v9[t], 0.0058589, -0.29195, 0.29369 +_v2[t], 0.010253, -0.44003, 0.44003 +_v3[t], 0.005774, -0.28795, 0.2887 +_v5[t], 0.0052751, -0.30492, 0.27897 +_v6[t], 0.0012233, -0.048266, 0.062094 +_v7[t], 0.0059437, -0.29604, 0.29868 +_v8[t], 0.0011073, -0.04407, 0.060181 +_v9[t], 0.0058444, -0.29195, 0.29369 GND[t], 0, 0, 0 diff --git a/Tests/Stats/Active 1stOrder Highpass RC.csv b/Tests/Stats/Active 1stOrder Highpass RC.csv index 09c25add..bbf8b61c 100644 --- a/Tests/Stats/Active 1stOrder Highpass RC.csv +++ b/Tests/Stats/Active 1stOrder Highpass RC.csv @@ -1,8 +1,8 @@ var, mean, min, max -_v2[t], 0.010264, -0.44003, 0.44003 -_v4[t], -8.6671E-05, -0.038486, 0.026432 +_v2[t], 0.010253, -0.44003, 0.44003 +_v4[t], -8.8518E-05, -0.038486, 0.026432 _v6[t], 0, 0, 0 -_v7[t], 8.6671E-05, -0.026432, 0.038486 +_v7[t], 8.8518E-05, -0.026432, 0.038486 GND[t], 0, 0, 0 _x1[t], 2, 2, 2 _x2[t], -2, -2, -2 diff --git a/Tests/Stats/Active 1stOrder Lowpass RC.csv b/Tests/Stats/Active 1stOrder Lowpass RC.csv index 47e89b35..a83a23da 100644 --- a/Tests/Stats/Active 1stOrder Lowpass RC.csv +++ b/Tests/Stats/Active 1stOrder Lowpass RC.csv @@ -1,7 +1,7 @@ var, mean, min, max -_v2[t], 0.010264, -0.44003, 0.44003 -_v4[t], -0.0058083, -0.33573, 0.35471 -_v6[t], 6.8016E-07, -3.6743E-05, 3.5681E-05 +_v2[t], 0.010253, -0.44003, 0.44003 +_v4[t], -0.0058173, -0.33573, 0.35471 +_v6[t], 6.7975E-07, -3.6743E-05, 3.5681E-05 GND[t], 0, 0, 0 -_x1[t], 2.0045, 1.803, 2.2936 +_x1[t], 2.0044, 1.803, 2.2936 _x2[t], -1.9955, -2.197, -1.7064 diff --git a/Tests/Stats/Big Muff Pi.csv b/Tests/Stats/Big Muff Pi.csv index f9fab220..c998eed4 100644 --- a/Tests/Stats/Big Muff Pi.csv +++ b/Tests/Stats/Big Muff Pi.csv @@ -1,32 +1,32 @@ var, mean, min, max -_v1[t], 0.010264, -0.44003, 0.44003 -_v4[t], 0.60383, 0.45928, 0.68568 -_v6[t], 0.021828, 7.3646E-05, 0.057591 -_v7[t], 6.7092, 3.7012, 8.575 +_v1[t], 0.010253, -0.44003, 0.44003 +_v4[t], 0.60381, 0.45928, 0.68568 +_v6[t], 0.021827, 7.3646E-05, 0.057591 +_v7[t], 6.709, 3.7012, 8.575 _v8[t], 9, 9, 9 -_v10[t], -0.00089266, -0.013246, 0.010443 -_v11[t], -0.13593, -3.1619, 1.7059 -_v12[t], -0.045526, -0.67556, 0.53257 -_v13[t], 0.68325, 0.2519, 0.91228 -_v15[t], 0.69241, 0.67014, 0.70902 -_v16[t], 0.06997, 0.053971, 0.082197 -_v18[t], 4.2532, 3.9204, 4.7577 -_v19[t], 4.3278, 4.2614, 4.3895 +_v10[t], -0.0008928, -0.013246, 0.010443 +_v11[t], -0.13596, -3.1619, 1.7059 +_v12[t], -0.045533, -0.67556, 0.53257 +_v13[t], 0.6833, 0.2519, 0.91228 +_v15[t], 0.69243, 0.67014, 0.70902 +_v16[t], 0.069966, 0.053971, 0.082197 +_v18[t], 4.2534, 3.9204, 4.7577 +_v19[t], 4.3276, 4.2614, 4.3895 _v20[t], 9, 9, 9 -_v22[t], 0.68628, 0.66547, 0.70802 -_v23[t], 0.065466, 0.050827, 0.081431 +_v22[t], 0.68629, 0.66547, 0.70802 +_v23[t], 0.065463, 0.050827, 0.081431 _v25[t], 4.3028, 3.8479, 4.6628 -_v26[t], 4.263, 4.2026, 4.3099 +_v26[t], 4.2629, 4.2026, 4.3099 _v27[t], 9, 9, 9 -_v28[t], 0.69, 0.12451, 1.2564 -_v30[t], 3.2582, 2.9458, 3.5035 +_v28[t], 0.69003, 0.12451, 1.2564 +_v30[t], 3.2583, 2.9458, 3.5035 _v31[t], 0.58635, 0.41131, 0.98249 _v33[t], 1.9189, 1.7854, 2.0235 -_v35[t], 1.6652, 1.5317, 1.7699 -_v37[t], 1.0522, 0.92198, 1.1544 +_v35[t], 1.6653, 1.5317, 1.7699 +_v37[t], 1.0523, 0.92198, 1.1544 _v38[t], 9, 9, 9 -_v39[t], 4.2232, 3.8241, 4.7373 +_v39[t], 4.2233, 3.8241, 4.7373 _v40[t], 0.013586, -0.42565, 0.54345 -_v43[t], 0.006793, -0.21283, 0.27172 -_v44[t], 0.001263, -0.1482, 0.082127 +_v43[t], 0.0067931, -0.21283, 0.27172 +_v44[t], 0.0012597, -0.1482, 0.082127 GND[t], 0, 0, 0 diff --git a/Tests/Stats/Boss Super Overdrive SD-1.csv b/Tests/Stats/Boss Super Overdrive SD-1.csv index 268f559e..e7bdaccf 100644 --- a/Tests/Stats/Boss Super Overdrive SD-1.csv +++ b/Tests/Stats/Boss Super Overdrive SD-1.csv @@ -1,19 +1,19 @@ var, mean, min, max _v2[t], 4.5, 4.5, 4.5 -_v3[t], 4.5075, 4.2295, 4.8869 -_v4[t], 4.8423, 3.3297, 6.7184 -_v6[t], 4.6734, 3.9157, 5.6081 -_v8[t], -0.00032733, -0.041952, 0.03688 -_v10[t], 4.6661, 3.6626, 5.7449 +_v3[t], 4.5077, 4.2295, 4.8869 +_v4[t], 4.8426, 3.3297, 6.7184 +_v6[t], 4.6732, 3.9157, 5.6081 +_v8[t], -0.00032722, -0.041952, 0.03688 +_v10[t], 4.666, 3.6626, 5.7449 _v12[t], 4.5, 4.5, 4.5 -_v14[t], -0.004792, -0.37538, 0.38868 -_v15[t], -0.014088, -1.1036, 1.1427 -_v16[t], 4.5283, 4.1769, 4.9909 -_v17[t], 4.5075, 4.2295, 4.8869 -_v18[t], 4.5082, 4.2348, 4.8803 -_v19[t], 4.6734, 3.9157, 5.6081 -_v20[t], 4.6734, 3.9157, 5.6081 -_v21[t], 0.010264, -0.44003, 0.44003 -_v22[t], -0.009584, -0.75075, 0.77736 +_v14[t], -0.0047808, -0.37538, 0.38868 +_v15[t], -0.014055, -1.1036, 1.1427 +_v16[t], 4.5282, 4.1769, 4.9909 +_v17[t], 4.5077, 4.2295, 4.8869 +_v18[t], 4.508, 4.2348, 4.8803 +_v19[t], 4.6732, 3.9157, 5.6081 +_v20[t], 4.6732, 3.9157, 5.6081 +_v21[t], 0.010253, -0.44003, 0.44003 +_v22[t], -0.0095615, -0.75075, 0.77736 _v23[t], 4.6749, 3.7863, 5.7851 GND[t], 0, 0, 0 diff --git a/Tests/Stats/Bridge Rectifier.csv b/Tests/Stats/Bridge Rectifier.csv index bf15684a..b86b040a 100644 --- a/Tests/Stats/Bridge Rectifier.csv +++ b/Tests/Stats/Bridge Rectifier.csv @@ -1,7 +1,7 @@ var, mean, min, max -_v1[t], 0.010264, -0.44003, 0.44003 -_v2[t], 0.010264, -0.44003, 0.44003 -_v4[t], 0.081345, -0.017571, 0.42246 -_v6[t], 0.17295, 5.9657E-06, 0.40488 -_v7[t], 0.091609, -0.017571, 0.42246 +_v1[t], 0.010253, -0.44003, 0.44003 +_v2[t], 0.010253, -0.44003, 0.44003 +_v4[t], 0.081365, -0.017571, 0.42246 +_v6[t], 0.17297, 5.9657E-06, 0.40488 +_v7[t], 0.091588, -0.017571, 0.42246 GND[t], 0, 0, 0 diff --git a/Tests/Stats/Common Cathode Triode Amplifier.csv b/Tests/Stats/Common Cathode Triode Amplifier.csv index d708742f..495705ac 100644 --- a/Tests/Stats/Common Cathode Triode Amplifier.csv +++ b/Tests/Stats/Common Cathode Triode Amplifier.csv @@ -1,9 +1,9 @@ var, mean, min, max -_v2[t], 0.010264, -0.44003, 0.44003 -_v3[t], -0.073197, -0.51872, 0.36102 +_v2[t], 0.010253, -0.44003, 0.44003 +_v3[t], -0.073191, -0.51872, 0.36102 _v5[t], -0.078813, -0.52437, 0.35546 -_v6[t], 1.7901, 1.7631, 1.8069 +_v6[t], 1.7902, 1.7631, 1.8069 _v8[t], 325, 325, 325 _v9[t], 205.14, 184.19, 225.4 -_v10[t], -0.54547, -22.035, 18.357 +_v10[t], -0.54646, -22.035, 18.357 GND[t], 0, 0, 0 diff --git a/Tests/Stats/Common Emitter Transistor Amplifier.csv b/Tests/Stats/Common Emitter Transistor Amplifier.csv index 6bd67623..1473ece4 100644 --- a/Tests/Stats/Common Emitter Transistor Amplifier.csv +++ b/Tests/Stats/Common Emitter Transistor Amplifier.csv @@ -1,8 +1,8 @@ var, mean, min, max -_v1[t], 0.010264, -0.44003, 0.44003 -_v3[t], 0.51056, 0.46655, 0.54951 -_v6[t], 5.1479, 0.17152, 8.5911 +_v1[t], 0.010253, -0.44003, 0.44003 +_v3[t], 0.51055, 0.46655, 0.54951 +_v6[t], 5.1478, 0.17152, 8.5911 _v7[t], 10, 10, 10 -_v9[t], -0.017813, -5.029, 3.4545 -_v11[t], 0.010567, 0.0020002, 0.023004 +_v9[t], -0.017602, -5.029, 3.4545 +_v11[t], 0.010568, 0.0020002, 0.023004 GND[t], 0, 0, 0 diff --git a/Tests/Stats/Diode Rectifier.csv b/Tests/Stats/Diode Rectifier.csv index dc9fe1ba..baad1cd3 100644 --- a/Tests/Stats/Diode Rectifier.csv +++ b/Tests/Stats/Diode Rectifier.csv @@ -1,5 +1,5 @@ var, mean, min, max -_v1[t], 0.17295, 5.9657E-06, 0.40488 -_v4[t], 0.091609, -0.017571, 0.42246 -_v5[t], 0.081345, -0.017571, 0.42246 +_v1[t], 0.17297, 5.9657E-06, 0.40488 +_v4[t], 0.091588, -0.017571, 0.42246 +_v5[t], 0.081365, -0.017571, 0.42246 GND[t], 0, 0, 0 diff --git a/Tests/Stats/Dunlop Cry Baby GCB-95.csv b/Tests/Stats/Dunlop Cry Baby GCB-95.csv index 7c7e73cf..7b7b439b 100644 --- a/Tests/Stats/Dunlop Cry Baby GCB-95.csv +++ b/Tests/Stats/Dunlop Cry Baby GCB-95.csv @@ -1,20 +1,20 @@ var, mean, min, max -_v1[t], 0.010264, -0.44003, 0.44003 -_v3[t], 3.8171, 3.4076, 4.2603 -_v7[t], 3.2941, 2.888, 3.7339 -_v8[t], 8.6688, 8.6236, 8.7104 +_v1[t], 0.010253, -0.44003, 0.44003 +_v3[t], 3.8172, 3.4076, 4.2603 +_v7[t], 3.294, 2.888, 3.7339 +_v8[t], 8.6685, 8.6236, 8.7104 _v9[t], 9, 9, 9 _v10[t], 3.2922, 2.9355, 3.6735 _v11[t], 0.64149, 0.63809, 0.6464 -_v13[t], 0.072707, 0.070192, 0.076367 +_v13[t], 0.072709, 0.070192, 0.076367 _v14[t], 9, 9, 9 _v15[t], 4.6946, 4.5354, 4.8046 -_v16[t], 0.64262, 0.64183, 0.64341 -_v17[t], 0.64265, 0.64197, 0.6434 -_v20[t], 4.0149, 3.968, 4.047 -_v21[t], -0.000777, -0.15985, 0.10904 -_v23[t], -0.00023941, -0.047322, 0.032155 +_v16[t], 0.64264, 0.64183, 0.64341 +_v17[t], 0.64263, 0.64197, 0.6434 +_v20[t], 4.015, 3.968, 4.047 +_v21[t], -0.00078326, -0.15985, 0.10904 +_v23[t], -0.00024134, -0.047322, 0.032155 _v24[t], 9, 9, 9 -_v25[t], 8.6584, 8.6552, 8.663 -_v26[t], 3.4307, 3.3841, 3.4625 +_v25[t], 8.6587, 8.6552, 8.663 +_v26[t], 3.4306, 3.3841, 3.4625 GND[t], 0, 0, 0 diff --git a/Tests/Stats/Fender 5e3.csv b/Tests/Stats/Fender 5e3.csv index 8facc066..4aaf37f8 100644 --- a/Tests/Stats/Fender 5e3.csv +++ b/Tests/Stats/Fender 5e3.csv @@ -1,33 +1,33 @@ var, mean, min, max -_v6[t], 1.5427, -1.8922, 8.8781 -_v7[t], 5.546, -0.61004, 9.2797 -_v9[t], 16.096, 13.183, 18.088 -_v10[t], 364.73, 269.74, 494.8 -_v11[t], 363.99, 236.84, 460.09 -_v12[t], 1.5427, -1.8922, 8.8781 -_v13[t], 5.546, -0.61004, 9.2797 +_v6[t], 1.543, -1.8922, 8.8781 +_v7[t], 5.5456, -0.61004, 9.2797 +_v9[t], 16.097, 13.183, 18.088 +_v10[t], 364.72, 269.74, 494.8 +_v11[t], 363.98, 236.84, 460.09 +_v12[t], 1.543, -1.8922, 8.8781 +_v13[t], 5.5456, -0.61004, 9.2797 _v15[t], 372.74, 278.42, 497.31 -_v16[t], 367.26, 242.69, 461.58 -_v17[t], 0.23863, -7.9633, 11.071 -_v20[t], 4.5795, 0.24845, 13.997 +_v16[t], 367.28, 242.69, 461.58 +_v17[t], 0.23913, -7.9633, 11.071 +_v20[t], 4.5799, 0.24845, 13.997 _v21[t], 4.7135, 0.24845, 14.432 -_v22[t], 4.0155, -2.9146, 14.406 -_v23[t], 14.4, 1.954, 23.566 -_v25[t], 372.73, 277.96, 497.35 -_v26[t], 367.25, 242.15, 461.78 -_v28[t], 0.010264, -0.44003, 0.44003 -_v29[t], 1.9773, -5.0956, 13.364 -_v30[t], 0.2884, 0.061102, 0.44462 +_v22[t], 4.0149, -2.9146, 14.406 +_v23[t], 14.401, 1.954, 23.566 +_v25[t], 372.71, 277.96, 497.35 +_v26[t], 367.26, 242.15, 461.78 +_v28[t], 0.010253, -0.44003, 0.44003 +_v29[t], 1.9778, -5.0956, 13.364 +_v30[t], 0.28838, 0.061102, 0.44462 _v32[t], -0.12169, -0.44656, 0.076907 -_v34[t], 4.2152, -5.2014, 17.07 -_v35[t], 0.16008, 0.11953, 0.20082 -_v37[t], 0.11758, -0.56579, 0.42614 -_v38[t], 3.6793E-05, -0.00017599, 0.00013309 +_v34[t], 4.2146, -5.2014, 17.07 +_v35[t], 0.16009, 0.11953, 0.20082 +_v37[t], 0.11757, -0.56579, 0.42614 +_v38[t], 3.68E-05, -0.00017599, 0.00013309 _v39[t], 4.7304E-06, -0.00013067, 7.6828E-05 -_v40[t], 0.096777, -0.24345, 0.31176 -_v41[t], 0.11942, -0.64179, 0.99579 -_v42[t], 3.9427, -1.1809, 11.99 +_v40[t], 0.09677, -0.24345, 0.31176 +_v41[t], 0.11939, -0.64179, 0.99579 +_v42[t], 3.9423, -1.1809, 11.99 GND[t], 0, 0, 0 B+1[t], 370, 370, 370 B+2[t], 177.21, 144.35, 201.95 -B+3[t], 20.752, 10.712, 31.47 +B+3[t], 20.751, 10.712, 31.47 diff --git a/Tests/Stats/Floating Diode Clipper.csv b/Tests/Stats/Floating Diode Clipper.csv index b12c623c..b75d64cb 100644 --- a/Tests/Stats/Floating Diode Clipper.csv +++ b/Tests/Stats/Floating Diode Clipper.csv @@ -1,5 +1,5 @@ var, mean, min, max -_v1[t], 0.010264, -0.44003, 0.44003 -_v3[t], 4.1013E-05, -0.002776, 0.002776 -_v4[t], 0.010223, -0.43725, 0.43725 +_v1[t], 0.010253, -0.44003, 0.44003 +_v3[t], 4.1085E-05, -0.002776, 0.002776 +_v4[t], 0.010232, -0.43725, 0.43725 GND[t], 0, 0, 0 diff --git a/Tests/Stats/Floating Input.csv b/Tests/Stats/Floating Input.csv index 26468073..216948d9 100644 --- a/Tests/Stats/Floating Input.csv +++ b/Tests/Stats/Floating Input.csv @@ -1,5 +1,5 @@ var, mean, min, max -_v2[t], 0, -0.5, 0.5 -_v3[t], -0.0034214, -0.36162, 0.43398 -_v4[t], 0.0068429, -0.58848, 0.39427 +_v2[t], -0, -0.5, 0.5 +_v3[t], -0.0034284, -0.36162, 0.43398 +_v4[t], 0.0068264, -0.58848, 0.39427 GND[t], 0, 0, 0 diff --git a/Tests/Stats/Floating Voltage Source.csv b/Tests/Stats/Floating Voltage Source.csv index ed1be032..e2374261 100644 --- a/Tests/Stats/Floating Voltage Source.csv +++ b/Tests/Stats/Floating Voltage Source.csv @@ -1,5 +1,5 @@ var, mean, min, max -_v2[t], 0.010264, -0.44003, 0.44003 -_v3[t], 0.0068429, -0.43368, 0.32245 -_v4[t], 0.0068429, -0.58848, 0.39427 +_v2[t], 0.010253, -0.44003, 0.44003 +_v3[t], 0.0068521, -0.43368, 0.32245 +_v4[t], 0.0068264, -0.58848, 0.39427 GND[t], 0, 0, 0 diff --git a/Tests/Stats/Half Rectifier.csv b/Tests/Stats/Half Rectifier.csv index 335af1a0..7a4e4716 100644 --- a/Tests/Stats/Half Rectifier.csv +++ b/Tests/Stats/Half Rectifier.csv @@ -1,6 +1,6 @@ var, mean, min, max -_v1[t], 0.010264, -0.44003, 0.44003 -_v2[t], 0.0022914, -0.44003, 0.40403 -_v5[t], 0.79729, 0, 3.5993 -_v6[t], 0.022914, -4.4003, 4.0403 +_v1[t], 0.010253, -0.44003, 0.44003 +_v2[t], 0.0022881, -0.44003, 0.40403 +_v5[t], 0.79724, -1E-07, 3.5993 +_v6[t], 0.022881, -4.4003, 4.0403 GND[t], 0, 0, 0 diff --git a/Tests/Stats/Ibanez Tube Screamer TS-9.csv b/Tests/Stats/Ibanez Tube Screamer TS-9.csv index af5499f6..66383754 100644 --- a/Tests/Stats/Ibanez Tube Screamer TS-9.csv +++ b/Tests/Stats/Ibanez Tube Screamer TS-9.csv @@ -1,17 +1,17 @@ var, mean, min, max -_v2[t], 0.010264, -0.44003, 0.44003 +_v2[t], 0.010253, -0.44003, 0.44003 _v3[t], 4.5, 4.5, 4.5 _v4[t], 4.5105, 4.0871, 4.9544 _v5[t], 4.5105, 4.0871, 4.9544 _v6[t], 4.4972, 3.7819, 5.271 -_v8[t], 4.4996, 3.8554, 5.1915 -_v10[t], -0.00047585, -0.049175, 0.047754 -_v12[t], 4.4974, 3.8421, 5.207 +_v8[t], 4.4995, 3.8554, 5.1915 +_v10[t], -0.000477, -0.049175, 0.047754 +_v12[t], 4.4973, 3.8421, 5.207 _v14[t], 4.5, 4.5, 4.5 -_v16[t], 0.0022076, -0.32324, 0.35698 -_v17[t], 0.0044152, -0.64649, 0.71396 +_v16[t], 0.0022133, -0.32324, 0.35698 +_v17[t], 0.0044265, -0.64649, 0.71396 _v18[t], 4.5038, 3.9398, 5.1075 -_v19[t], 4.5103, 4.0939, 4.9469 -_v20[t], 4.4996, 3.8554, 5.1915 -_v21[t], 4.4996, 3.8555, 5.1914 +_v19[t], 4.5105, 4.0939, 4.9469 +_v20[t], 4.4995, 3.8554, 5.1915 +_v21[t], 4.4994, 3.8555, 5.1914 GND[t], 0, 0, 0 diff --git a/Tests/Stats/JFET.csv b/Tests/Stats/JFET.csv index 9b41f79c..981f3130 100644 --- a/Tests/Stats/JFET.csv +++ b/Tests/Stats/JFET.csv @@ -1,7 +1,7 @@ var, mean, min, max _v1[t], 1.1828, 0.8321, 1.5246 -_v2[t], 5.347, 4.415, 6.3036 -_v3[t], 0.010264, -0.44003, 0.44003 +_v2[t], 5.3467, 4.415, 6.3036 +_v3[t], 0.010253, -0.44003, 0.44003 _v5[t], 9, 9, 9 -_v6[t], -0.021802, -0.9555, 0.93307 +_v6[t], -0.021785, -0.9555, 0.93307 GND[t], 0, 0, 0 diff --git a/Tests/Stats/MXR Distortion +.csv b/Tests/Stats/MXR Distortion +.csv index b0314d84..012abd69 100644 --- a/Tests/Stats/MXR Distortion +.csv +++ b/Tests/Stats/MXR Distortion +.csv @@ -1,14 +1,14 @@ var, mean, min, max -_v2[t], 0.010264, -0.44003, 0.44003 -_v4[t], 0.010161, -0.43597, 0.43556 +_v2[t], 0.010253, -0.44003, 0.44003 +_v4[t], 0.010158, -0.43597, 0.43556 _v5[t], 4.5103, 4.0909, 4.9498 _v6[t], 4.5, 4.5, 4.5 _v7[t], 4.5103, 4.0909, 4.9498 -_v8[t], 4.4994, 4.4441, 4.5353 -_v9[t], 4.5509, 2.6789, 6.6321 -_v10[t], 4.4992, 4.4448, 4.5348 -_v12[t], 0.022329, -1.7298, 2.1412 -_v13[t], -0.019901, -0.21352, 0.22223 -_v16[t], -0.019881, -0.21331, 0.222 +_v8[t], 4.4995, 4.4441, 4.5353 +_v9[t], 4.551, 2.6789, 6.6321 +_v10[t], 4.499, 4.4448, 4.5348 +_v12[t], 0.022268, -1.7298, 2.1412 +_v13[t], -0.019911, -0.21352, 0.22223 +_v16[t], -0.019891, -0.21331, 0.222 _v19[t], 9, 9, 9 GND[t], 0, 0, 0 diff --git a/Tests/Stats/MXR Phase 90.csv b/Tests/Stats/MXR Phase 90.csv index 638486fe..86e7af18 100644 --- a/Tests/Stats/MXR Phase 90.csv +++ b/Tests/Stats/MXR Phase 90.csv @@ -1,29 +1,29 @@ var, mean, min, max -_v1[t], 0.010264, -0.44003, 0.44003 -_v2[t], 0.01005, -0.43243, 0.4309 -_v3[t], 7.2261, 6.8484, 7.6599 -_v4[t], 7.2261, 6.8484, 7.6599 -_v5[t], 7.2195, 7.006, 7.5095 -_v6[t], 7.2195, 7.006, 7.5095 -_v7[t], 7.2161, 7.2151, 7.2177 -_v8[t], 3.608, 3.607, 3.6096 +_v1[t], 0.010253, -0.44003, 0.44003 +_v2[t], 0.010032, -0.43243, 0.4309 +_v3[t], 7.2263, 6.8484, 7.6599 +_v4[t], 7.2263, 6.8484, 7.6599 +_v5[t], 7.2197, 7.006, 7.5095 +_v6[t], 7.2197, 7.006, 7.5095 +_v7[t], 7.2162, 7.2151, 7.2177 +_v8[t], 3.6082, 3.607, 3.6096 _v9[t], 7.2128, 6.7948, 7.6132 -_v10[t], 7.2098, 6.922, 7.4064 -_v11[t], 7.2098, 6.922, 7.4064 +_v10[t], 7.2102, 6.922, 7.4064 +_v11[t], 7.2102, 6.922, 7.4064 _v12[t], 7.2069, 6.7927, 7.6134 _v13[t], 7.2142, 7.0036, 7.5109 _v14[t], 7.2142, 7.0036, 7.5109 -_v15[t], 7.2215, 6.8503, 7.6616 -_v16[t], 7.2211, 6.9281, 7.4495 -_v17[t], 7.2211, 6.9281, 7.4495 -_v18[t], 7.2206, 6.7592, 7.5602 +_v15[t], 7.2218, 6.8503, 7.6616 +_v16[t], 7.2208, 6.9281, 7.4495 +_v17[t], 7.2208, 6.9281, 7.4495 +_v18[t], 7.2208, 6.7592, 7.5602 _v20[t], 9, 9, 9 -_v22[t], 3.608, 3.6075, 3.6089 +_v22[t], 3.6082, 3.6075, 3.6089 _v24[t], 3.6081, 3.6081, 3.6081 -_v25[t], 3.608, 3.607, 3.6096 -_v26[t], 3.608, 3.607, 3.6096 -_v27[t], -7.6974, -7.6984, -7.6958 -_v28[t], 6.5951, 6.591, 6.6012 -_v29[t], 3.9299, 3.5962, 4.2625 -_v31[t], -0.0067856, -0.32084, 0.3351 +_v25[t], 3.6081, 3.607, 3.6096 +_v26[t], 3.6081, 3.607, 3.6096 +_v27[t], -7.6977, -7.6984, -7.6958 +_v28[t], 6.5953, 6.591, 6.6012 +_v29[t], 3.93, 3.5962, 4.2625 +_v31[t], -0.006769, -0.32084, 0.3351 GND[t], 0, 0, 0 diff --git a/Tests/Stats/Marshall Blues Breaker.csv b/Tests/Stats/Marshall Blues Breaker.csv index 9c027b74..f8d64a6f 100644 --- a/Tests/Stats/Marshall Blues Breaker.csv +++ b/Tests/Stats/Marshall Blues Breaker.csv @@ -1,28 +1,28 @@ var, mean, min, max _v2[t], 4.5, 4.5, 4.5 -_v3[t], 4.5109, 4.0736, 4.9737 +_v3[t], 4.5111, 4.0736, 4.9737 _v4[t], 4.5099, 4.107, 4.9283 _v5[t], 4.5105, 4.0871, 4.9544 _v6[t], 4.5105, 4.0871, 4.9544 _v7[t], 4.5, 4.5, 4.5 -_v8[t], 4.5109, 4.021, 5.0416 -_v9[t], 4.5034, 4.3178, 4.6525 -_v10[t], 4.5019, 4.4188, 4.6091 +_v8[t], 4.5107, 4.021, 5.0416 +_v9[t], 4.5032, 4.3178, 4.6525 +_v10[t], 4.5017, 4.4188, 4.6091 _v11[t], 4.5, 4.5, 4.5 -_v12[t], 4.5188, 4.0944, 4.8698 +_v12[t], 4.5187, 4.0944, 4.8698 _v13[t], 4.5, 4.5, 4.5 -_v14[t], 4.54, 3.7395, 5.2062 -_v15[t], 0.004575, -0.34222, 0.29003 -_v17[t], 0.010264, -0.44003, 0.44003 +_v14[t], 4.5398, 3.7395, 5.2062 +_v15[t], 0.0045857, -0.34222, 0.29003 +_v17[t], 0.010253, -0.44003, 0.44003 _v19[t], 4.5372, 3.7866, 5.1617 _v20[t], 4.5, 4.5, 4.5 -_v21[t], 4.5376, 3.7838, 5.1648 -_v22[t], 4.5351, 3.8308, 5.1213 -_v23[t], 4.5174, 4.1738, 4.8035 -_v24[t], 4.5396, 3.747, 5.1992 -_v25[t], 4.4975, 4.4493, 4.5334 -_v26[t], 4.5188, 4.0944, 4.8698 -_v27[t], 0.010264, -0.44003, 0.44003 -_v30[t], 0.004575, -0.34222, 0.29003 +_v21[t], 4.5378, 3.7838, 5.1648 +_v22[t], 4.5349, 3.8308, 5.1213 +_v23[t], 4.5172, 4.1738, 4.8035 +_v24[t], 4.5394, 3.747, 5.1992 +_v25[t], 4.4976, 4.4493, 4.5334 +_v26[t], 4.5187, 4.0944, 4.8698 +_v27[t], 0.010253, -0.44003, 0.44003 +_v30[t], 0.0045857, -0.34222, 0.29003 GND[t], 0, 0, 0 Bypass[t], 0, 0, 0 diff --git a/Tests/Stats/Marshall JCM2000 DSL Preamp.csv b/Tests/Stats/Marshall JCM2000 DSL Preamp.csv index 043773b1..a1fda3a5 100644 --- a/Tests/Stats/Marshall JCM2000 DSL Preamp.csv +++ b/Tests/Stats/Marshall JCM2000 DSL Preamp.csv @@ -1,34 +1,34 @@ var, mean, min, max -_v2[t], -0.54128, -25.361, 18.314 -_v3[t], -0.10973, -5.9411, 4.2901 -_v4[t], -1.7906, -15.88, 13.305 -_v5[t], -1.6217, -31.723, 42.702 -_v6[t], 2.2172, 1.4137, 2.8276 -_v7[t], -20.435, -96.16, 10.727 -_v8[t], -21.567, -192.28, 67.981 -_v12[t], 0.010264, -0.44003, 0.44003 -_v13[t], 0.0048073, -0.44548, 0.43457 -_v14[t], 181.23, 152.64, 209.31 -_v15[t], 1.707, 1.653, 1.7444 -_v16[t], -0.04093, -1.6754, 1.1856 -_v17[t], 390.51, 390.5, 390.53 -_v18[t], 238.9, 202.4, 285.78 -_v19[t], -0.011141, -0.81493, 0.54457 +_v2[t], -0.54019, -25.361, 18.314 +_v3[t], -0.10991, -5.9411, 4.2901 +_v4[t], -1.7913, -15.88, 13.305 +_v5[t], -1.6227, -31.723, 42.702 +_v6[t], 2.2171, 1.4137, 2.8276 +_v7[t], -20.434, -96.16, 10.727 +_v8[t], -21.574, -192.28, 67.981 +_v12[t], 0.010253, -0.44003, 0.44003 +_v13[t], 0.0048112, -0.44548, 0.43457 +_v14[t], 181.22, 152.64, 209.31 +_v15[t], 1.7071, 1.653, 1.7444 +_v16[t], -0.04088, -1.6754, 1.1856 +_v17[t], 390.5, 390.5, 390.53 +_v18[t], 238.91, 202.4, 285.78 +_v19[t], -0.011165, -0.81493, 0.54457 _v20[t], 361.99, 361.59, 362.42 -_v21[t], 364.89, 364.25, 365.39 -_v22[t], 275.56, 106.92, 356.83 -_v23[t], 4.2295, 0, 13.236 -_v24[t], 182.56, 104.13, 307.9 +_v21[t], 364.88, 364.25, 365.39 +_v22[t], 275.58, 106.92, 356.83 +_v23[t], 4.2301, 0, 13.236 +_v24[t], 182.55, 104.13, 307.9 _v25[t], 4.4791, 0, 10.524 -_v26[t], 382.77, 382.34, 383.35 +_v26[t], 382.78, 382.34, 383.35 _v29[t], 182.31, 116.34, 283.09 -_v30[t], 1.851, -61.616, 85.494 -_v32[t], 0.82296, -28.049, 38.982 -_v33[t], 0.12021, -22.724, 17.072 -_v34[t], 0.055853, -25.018, 18.397 -_v35[t], 1.6055, -56.19, 78.231 -_v36[t], 1.6459, -56.098, 77.964 +_v30[t], 1.8552, -61.616, 85.494 +_v32[t], 0.82252, -28.049, 38.982 +_v33[t], 0.12044, -22.724, 17.072 +_v34[t], 0.05504, -25.018, 18.397 +_v35[t], 1.6037, -56.19, 78.231 +_v36[t], 1.645, -56.098, 77.964 _v37[t], 400, 400, 400 -_v39[t], -0.54667, -25.281, 18.251 +_v39[t], -0.54606, -25.281, 18.251 _v40[t], 0, 0, 0 GND[t], 0, 0, 0 diff --git a/Tests/Stats/Marshall JCM800 2203 Preamp.csv b/Tests/Stats/Marshall JCM800 2203 Preamp.csv index b35a0f79..e53bf984 100644 --- a/Tests/Stats/Marshall JCM800 2203 Preamp.csv +++ b/Tests/Stats/Marshall JCM800 2203 Preamp.csv @@ -1,28 +1,28 @@ var, mean, min, max -_v2[t], -2.3232, -10.749, 2.2222 -_v3[t], -2.0427, -21.183, 18.947 -_v5[t], 0.010264, -0.44003, 0.44003 -_v6[t], 0.0048073, -0.44548, 0.43457 -_v7[t], 246.7, 231.78, 260.54 +_v2[t], -2.323, -10.749, 2.2222 +_v3[t], -2.0421, -21.183, 18.947 +_v5[t], 0.010253, -0.44003, 0.44003 +_v6[t], 0.0048112, -0.44548, 0.43457 +_v7[t], 246.71, 231.78, 260.54 _v8[t], 2.4952, 2.2519, 2.7249 -_v9[t], -0.059139, -3.1271, 2.6574 -_v10[t], 304.11, 283.94, 325.23 +_v9[t], -0.059101, -3.1271, 2.6574 +_v10[t], 304.13, 283.94, 325.23 _v11[t], 3.5099, 1.0572, 5.7549 -_v12[t], 1.0023, 0, 2.1633 -_v13[t], 207.16, 91.682, 304.66 +_v12[t], 1.0023, 2.0887E-14, 2.1633 +_v13[t], 207.17, 91.682, 304.66 _v15[t], 216.36, 98.487, 303.84 -_v16[t], 216.85, 124.63, 291.09 -_v17[t], -1.9642, -88.787, 65.879 -_v19[t], -0.86109, -39.583, 29.232 -_v20[t], -0.23978, -22.169, 25.859 -_v21[t], -0.15963, -23.597, 26.674 -_v22[t], -1.6954, -79.677, 58.37 -_v23[t], -1.7222, -79.166, 58.465 -_v24[t], 339.25, 339.23, 339.29 -_v25[t], 352.3, 352.17, 352.47 +_v16[t], 216.86, 124.63, 291.09 +_v17[t], -1.9622, -88.787, 65.879 +_v19[t], -0.86291, -39.583, 29.232 +_v20[t], -0.24049, -22.169, 25.859 +_v21[t], -0.16005, -23.597, 26.674 +_v22[t], -1.6971, -79.677, 58.37 +_v23[t], -1.7258, -79.166, 58.465 +_v24[t], 339.26, 339.23, 339.29 +_v25[t], 352.29, 352.17, 352.47 _v26[t], 400, 400, 400 -_v28[t], -0.2649, -15.118, 13.16 -_v29[t], -0.2662, -15.13, 13.17 -_v30[t], -0.064596, -3.1325, 2.6519 -_v31[t], -0.18633, -9.8869, 8.6262 +_v28[t], -0.26456, -15.118, 13.16 +_v29[t], -0.26628, -15.13, 13.17 +_v30[t], -0.06453, -3.1325, 2.6519 +_v31[t], -0.18587, -9.8869, 8.6262 GND[t], 0, 0, 0 diff --git a/Tests/Stats/Marshall JCM800 2203 preamp modded.csv b/Tests/Stats/Marshall JCM800 2203 preamp modded.csv index bd469d96..303e11e1 100644 --- a/Tests/Stats/Marshall JCM800 2203 preamp modded.csv +++ b/Tests/Stats/Marshall JCM800 2203 preamp modded.csv @@ -1,34 +1,34 @@ var, mean, min, max -_v2[t], -0.85005, -5.3142, 2.0455 -_v3[t], -0.20662, -10.391, 11.809 -_v5[t], 0.010264, -0.44003, 0.44003 -_v6[t], 0.0076161, -0.44267, 0.43738 +_v2[t], -0.85027, -5.3142, 2.0455 +_v3[t], -0.20665, -10.391, 11.809 +_v5[t], 0.010253, -0.44003, 0.44003 +_v6[t], 0.007614, -0.44267, 0.43738 _v7[t], 150.27, 129.31, 170.57 -_v8[t], 1.5591, 1.3979, 1.7078 -_v9[t], 244.57, 182.24, 312.52 +_v8[t], 1.559, 1.3979, 1.7078 +_v9[t], 244.58, 182.24, 312.52 _v10[t], 2.4562, 1.3447, 3.5113 -_v11[t], 1.1545, 0.052439, 2.0792 +_v11[t], 1.1546, 0.052439, 2.0792 _v12[t], 191.94, 95.348, 298.47 -_v14[t], 198.54, 99.167, 297.61 -_v15[t], 198.19, 119.1, 275.24 -_v16[t], -1.1478, -75.121, 76.196 -_v18[t], -0.4707, -33.287, 33.827 -_v19[t], 0.093721, -20.049, 26.545 -_v20[t], 0.15143, -21.406, 26.853 -_v21[t], -0.85261, -66.359, 67.583 -_v22[t], -0.94139, -66.573, 67.655 -_v23[t], 335.18, 335.13, 335.24 +_v14[t], 198.53, 99.167, 297.61 +_v15[t], 198.2, 119.1, 275.24 +_v16[t], -1.1506, -75.121, 76.196 +_v18[t], -0.4702, -33.287, 33.827 +_v19[t], 0.092906, -20.049, 26.545 +_v20[t], 0.15038, -21.406, 26.853 +_v21[t], -0.85155, -66.359, 67.583 +_v22[t], -0.9404, -66.573, 67.655 +_v23[t], 335.17, 335.13, 335.24 _v24[t], 350.34, 350.21, 350.48 _v25[t], 400, 400, 400 -_v27[t], -0.4465, -20.92, 18.04 -_v28[t], -0.052029, -2.241, 1.9246 -_v29[t], -0.057486, -2.2464, 1.9191 -_v30[t], 277.4, 270.85, 283.73 -_v31[t], 0.18007, -46.8, 59.182 -_v32[t], -0.20662, -10.391, 11.809 -_v33[t], -0.052029, -2.241, 1.9246 -_v34[t], -0.052029, -2.241, 1.9246 -_v35[t], -0.20662, -10.391, 11.809 +_v27[t], -0.44559, -20.92, 18.04 +_v28[t], -0.051991, -2.241, 1.9246 +_v29[t], -0.057509, -2.2464, 1.9191 +_v30[t], 277.41, 270.85, 283.73 +_v31[t], 0.17754, -46.8, 59.182 +_v32[t], -0.20665, -10.391, 11.809 +_v33[t], -0.051991, -2.241, 1.9246 +_v34[t], -0.051991, -2.241, 1.9246 +_v35[t], -0.20665, -10.391, 11.809 GND[t], 0, 0, 0 -_x1[t], -0.4465, -20.92, 18.04 -_x2[t], 0.18007, -46.8, 59.182 +_x1[t], -0.44559, -20.92, 18.04 +_x2[t], 0.17754, -46.8, 59.182 diff --git a/Tests/Stats/Op-Amp Inverting.csv b/Tests/Stats/Op-Amp Inverting.csv index eadb74ae..955aa08d 100644 --- a/Tests/Stats/Op-Amp Inverting.csv +++ b/Tests/Stats/Op-Amp Inverting.csv @@ -1,6 +1,6 @@ var, mean, min, max -_v1[t], 0.010264, -0.44003, 0.44003 -_v4[t], 0.15241, -0.00042423, 0.4875 -_v5[t], 1.5738, 0.96236, 4.4002 +_v1[t], 0.010253, -0.44003, 0.44003 +_v4[t], 0.15239, -0.00042423, 0.4875 +_v5[t], 1.574, 0.96236, 4.4002 _v7[t], 9, 9, 9 GND[t], 0, 0, 0 diff --git a/Tests/Stats/Op-Amp Model.csv b/Tests/Stats/Op-Amp Model.csv index 9a000404..412897c0 100644 --- a/Tests/Stats/Op-Amp Model.csv +++ b/Tests/Stats/Op-Amp Model.csv @@ -1,11 +1,11 @@ var, mean, min, max -_v1[t], 0.34175, -14.026, 14.026 -_v2[t], 0.0033442, -0.13799, 0.13809 -_v3[t], 0.010264, -0.44003, 0.44003 -_v6[t], 0.3384, -13.889, 13.889 +_v1[t], 0.34223, -14.026, 14.026 +_v2[t], 0.0033418, -0.13799, 0.13809 +_v3[t], 0.010253, -0.44003, 0.44003 +_v6[t], 0.33888, -13.889, 13.889 _v8[t], -15, -15, -15 _v9[t], -13, -13, -13 _v10[t], 13, 13, 13 _v11[t], 15, 15, 15 -_v13[t], 0.34175, -14.026, 14.026 +_v13[t], 0.34223, -14.026, 14.026 GND[t], 0, 0, 0 diff --git a/Tests/Stats/Op-Amp Non-Inverting.csv b/Tests/Stats/Op-Amp Non-Inverting.csv index 659b2fa7..8c1e2570 100644 --- a/Tests/Stats/Op-Amp Non-Inverting.csv +++ b/Tests/Stats/Op-Amp Non-Inverting.csv @@ -1,6 +1,6 @@ var, mean, min, max -_v1[t], 0.010264, -0.44003, 0.44003 -_v3[t], 0.040275, 0.0091056, 0.080926 +_v1[t], 0.010253, -0.44003, 0.44003 +_v3[t], 0.040277, 0.0091056, 0.080926 _v5[t], 4.0691, 0.97357, 8.1107 _v6[t], 0, 0, 0 _v7[t], 9, 9, 9 diff --git a/Tests/Stats/Op-Amp Saturation.csv b/Tests/Stats/Op-Amp Saturation.csv index 7e0c0bbc..a5517bc6 100644 --- a/Tests/Stats/Op-Amp Saturation.csv +++ b/Tests/Stats/Op-Amp Saturation.csv @@ -1,7 +1,7 @@ var, mean, min, max -_v1[t], 0.010264, -0.44003, 0.44003 -_v4[t], 0.0067678, -0.29601, 0.29601 -_v5[t], -0.34188, -14.031, 14.031 +_v1[t], 0.010253, -0.44003, 0.44003 +_v4[t], 0.0067787, -0.29601, 0.29601 +_v5[t], -0.34236, -14.031, 14.031 _v6[t], 15, 15, 15 _v7[t], -15, -15, -15 GND[t], 0, 0, 0 diff --git a/Tests/Stats/Orange Rockerverb 50 Preamp.csv b/Tests/Stats/Orange Rockerverb 50 Preamp.csv index b50c8ce8..bf68d106 100644 --- a/Tests/Stats/Orange Rockerverb 50 Preamp.csv +++ b/Tests/Stats/Orange Rockerverb 50 Preamp.csv @@ -1,30 +1,30 @@ var, mean, min, max -_v3[t], 0.010264, -0.44003, 0.44003 -_v4[t], 0.0048073, -0.44548, 0.43457 -_v5[t], 201.21, 174.92, 226.81 +_v3[t], 0.010253, -0.44003, 0.44003 +_v4[t], 0.0048112, -0.44548, 0.43457 +_v5[t], 201.2, 174.92, 226.81 _v6[t], 1.8173, 1.7735, 1.8446 -_v7[t], 179.35, 119.5, 257.07 +_v7[t], 179.36, 119.5, 257.07 _v8[t], 1.4391, 1.3332, 1.5272 _v9[t], 2.7654, 2.5639, 2.9984 -_v10[t], 225.28, 95.451, 338.95 +_v10[t], 225.26, 95.451, 338.95 _v11[t], 169, 95.811, 274.71 -_v12[t], 170.38, 113.76, 246.27 -_v13[t], -0.8285, -52.549, 57.12 -_v14[t], -0.37467, -23.387, 25.736 -_v15[t], -0.46993, -22.988, 16.413 -_v16[t], -0.4366, -25.657, 19.269 -_v17[t], -0.76383, -57.459, 52.259 +_v12[t], 170.4, 113.76, 246.27 +_v13[t], -0.82825, -52.549, 57.12 +_v14[t], -0.37575, -23.387, 25.736 +_v15[t], -0.46896, -22.988, 16.413 +_v16[t], -0.43617, -25.657, 19.269 +_v17[t], -0.7642, -57.459, 52.259 _v18[t], 322.95, 322.78, 323.14 -_v19[t], 348.12, 347.73, 348.52 +_v19[t], 348.1, 347.73, 348.52 _v20[t], 400, 400, 400 -_v22[t], -0.03221, -1.4129, 0.94541 -_v23[t], -0.068884, -8.5154, 5.9889 -_v24[t], -0.037646, -3.8344, 2.6889 -_v25[t], -1.8133, -11.51, 2.9154 -_v26[t], -1.3635, -53.413, 47.526 -_v27[t], -1.0972, -31.645, 26.749 -_v28[t], 2.8468, 0, 6.7863 -_v29[t], -11.773, -167.61, 134.94 +_v22[t], -0.032215, -1.4129, 0.94541 +_v23[t], -0.068975, -8.5154, 5.9889 +_v24[t], -0.037577, -3.8344, 2.6889 +_v25[t], -1.8129, -11.51, 2.9154 +_v26[t], -1.362, -53.413, 47.526 +_v27[t], -1.0981, -31.645, 26.749 +_v28[t], 2.8469, 0, 6.7863 +_v29[t], -11.766, -167.61, 134.94 _v30[t], -14.395, -53.452, 7.2542 -_v31[t], -0.74917, -46.775, 51.473 +_v31[t], -0.7515, -46.775, 51.473 GND[t], 0, 0, 0 diff --git a/Tests/Stats/Parallel capacitors 1.csv b/Tests/Stats/Parallel capacitors 1.csv index bd4b7c00..f5f6e04e 100644 --- a/Tests/Stats/Parallel capacitors 1.csv +++ b/Tests/Stats/Parallel capacitors 1.csv @@ -1,4 +1,4 @@ var, mean, min, max -_v1[t], 0.010264, -0.44003, 0.44003 -_v2[t], 0.00031279, -0.052061, 0.076008 +_v1[t], 0.010253, -0.44003, 0.44003 +_v2[t], 0.00031163, -0.052061, 0.076008 GND[t], 0, 0, 0 diff --git a/Tests/Stats/Parallel capacitors 2.csv b/Tests/Stats/Parallel capacitors 2.csv index bd4b7c00..f5f6e04e 100644 --- a/Tests/Stats/Parallel capacitors 2.csv +++ b/Tests/Stats/Parallel capacitors 2.csv @@ -1,4 +1,4 @@ var, mean, min, max -_v1[t], 0.010264, -0.44003, 0.44003 -_v2[t], 0.00031279, -0.052061, 0.076008 +_v1[t], 0.010253, -0.44003, 0.44003 +_v2[t], 0.00031163, -0.052061, 0.076008 GND[t], 0, 0, 0 diff --git a/Tests/Stats/Passive 1stOrder Highpass RC.csv b/Tests/Stats/Passive 1stOrder Highpass RC.csv index 4e6619f5..6488ae50 100644 --- a/Tests/Stats/Passive 1stOrder Highpass RC.csv +++ b/Tests/Stats/Passive 1stOrder Highpass RC.csv @@ -1,4 +1,4 @@ var, mean, min, max -_v1[t], 0.010264, -0.44003, 0.44003 -_v2[t], 8.6513E-05, -0.026406, 0.038448 +_v1[t], 0.010253, -0.44003, 0.44003 +_v2[t], 8.843E-05, -0.026406, 0.038448 GND[t], 0, 0, 0 diff --git a/Tests/Stats/Passive 1stOrder Lowpass RC.csv b/Tests/Stats/Passive 1stOrder Lowpass RC.csv index ac535b3b..9313652d 100644 --- a/Tests/Stats/Passive 1stOrder Lowpass RC.csv +++ b/Tests/Stats/Passive 1stOrder Lowpass RC.csv @@ -1,4 +1,4 @@ var, mean, min, max -_v1[t], 0.010264, -0.44003, 0.44003 -_v2[t], 0.0058091, -0.35477, 0.33579 +_v1[t], 0.010253, -0.44003, 0.44003 +_v2[t], 0.0058182, -0.35477, 0.33579 GND[t], 0, 0, 0 diff --git a/Tests/Stats/Passive 1stOrder Lowpass RL.csv b/Tests/Stats/Passive 1stOrder Lowpass RL.csv index ac535b3b..9313652d 100644 --- a/Tests/Stats/Passive 1stOrder Lowpass RL.csv +++ b/Tests/Stats/Passive 1stOrder Lowpass RL.csv @@ -1,4 +1,4 @@ var, mean, min, max -_v1[t], 0.010264, -0.44003, 0.44003 -_v2[t], 0.0058091, -0.35477, 0.33579 +_v1[t], 0.010253, -0.44003, 0.44003 +_v2[t], 0.0058182, -0.35477, 0.33579 GND[t], 0, 0, 0 diff --git a/Tests/Stats/Passive 2ndOrder Bandpass RLC.csv b/Tests/Stats/Passive 2ndOrder Bandpass RLC.csv index decdfab6..e7c3c678 100644 --- a/Tests/Stats/Passive 2ndOrder Bandpass RLC.csv +++ b/Tests/Stats/Passive 2ndOrder Bandpass RLC.csv @@ -1,4 +1,4 @@ var, mean, min, max -_v2[t], 0.010264, -0.44003, 0.44003 -_v3[t], 0.0016591, -0.12048, 0.17798 +_v2[t], 0.010253, -0.44003, 0.44003 +_v3[t], 0.0016552, -0.12048, 0.17798 GND[t], 0, 0, 0 diff --git a/Tests/Stats/Passive 2ndOrder Lowpass RC.csv b/Tests/Stats/Passive 2ndOrder Lowpass RC.csv index 973f2a91..48ebda01 100644 --- a/Tests/Stats/Passive 2ndOrder Lowpass RC.csv +++ b/Tests/Stats/Passive 2ndOrder Lowpass RC.csv @@ -1,5 +1,5 @@ var, mean, min, max -_v1[t], 0.010264, -0.44003, 0.44003 -_v2[t], 0.0034119, -0.26362, 0.21739 -_v3[t], -0.00018657, -0.21666, 0.16702 +_v1[t], 0.010253, -0.44003, 0.44003 +_v2[t], 0.0034007, -0.26362, 0.21739 +_v3[t], -0.000195, -0.21666, 0.16702 GND[t], 0, 0, 0 diff --git a/Tests/Stats/Passive 2ndOrder Lowpass RLC.csv b/Tests/Stats/Passive 2ndOrder Lowpass RLC.csv index 22fb2b12..07e18e94 100644 --- a/Tests/Stats/Passive 2ndOrder Lowpass RLC.csv +++ b/Tests/Stats/Passive 2ndOrder Lowpass RLC.csv @@ -1,5 +1,5 @@ var, mean, min, max -_v2[t], 0.010264, -0.44003, 0.44003 -_v3[t], 0.010224, -0.44055, 0.44108 -_v4[t], 0.016729, -0.23671, 0.20057 +_v2[t], 0.010253, -0.44003, 0.44003 +_v3[t], 0.010233, -0.44055, 0.44108 +_v4[t], 0.016735, -0.23671, 0.20057 GND[t], 0, 0, 0 diff --git a/Tests/Stats/Pro Co Rat.csv b/Tests/Stats/Pro Co Rat.csv index b3a3d091..ef43250d 100644 --- a/Tests/Stats/Pro Co Rat.csv +++ b/Tests/Stats/Pro Co Rat.csv @@ -1,20 +1,20 @@ var, mean, min, max -_v2[t], 4.5194, 4.4248, 4.5964 -_v3[t], 4.567, 0.84098, 8.1654 -_v4[t], 0.034164, -3.776, 3.7838 -_v5[t], 0.010749, -0.62351, 0.62363 -_v7[t], 4.5193, 4.4262, 4.595 -_v8[t], 4.519, 4.4699, 4.552 -_v10[t], 0.010603, -0.60597, 0.60574 -_v11[t], 0.010595, -0.60506, 0.60478 -_v14[t], 0.0054423, -0.65788, 0.66541 +_v2[t], 4.5192, 4.4248, 4.5964 +_v3[t], 4.5669, 0.84098, 8.1654 +_v4[t], 0.034054, -3.776, 3.7838 +_v5[t], 0.010726, -0.62351, 0.62363 +_v7[t], 4.5192, 4.4262, 4.595 +_v8[t], 4.5188, 4.4699, 4.552 +_v10[t], 0.010605, -0.60597, 0.60574 +_v11[t], 0.010588, -0.60506, 0.60478 +_v14[t], 0.0054564, -0.65788, 0.66541 _v15[t], 9, 9, 9 _v18[t], 4.5429, 4.1012, 5.0048 _v19[t], 4.5429, 4.1012, 5.0048 _v20[t], 4.5, 4.5, 4.5 -_v22[t], 0.010264, -0.44003, 0.44003 +_v22[t], 0.010253, -0.44003, 0.44003 _v23[t], 2.225, 1.6583, 2.7913 _v25[t], 9, 9, 9 -_v26[t], 0.0068574, -0.56908, 0.58537 -_v28[t], 0.0018442, -0.15305, 0.15743 +_v26[t], 0.0068489, -0.56908, 0.58537 +_v28[t], 0.0018419, -0.15305, 0.15743 GND[t], 0, 0, 0 diff --git a/Tests/Stats/Rectifier.csv b/Tests/Stats/Rectifier.csv index dfd44b1e..7359b7ad 100644 --- a/Tests/Stats/Rectifier.csv +++ b/Tests/Stats/Rectifier.csv @@ -1,7 +1,7 @@ var, mean, min, max -_v2[t], 0.010264, -0.44003, 0.44003 -_v3[t], 0.49367, 7.4444E-05, 1.0825 -_v5[t], 0.010264, -0.44003, 0.44003 -_v6[t], -0.025661, -1.1001, 1.1001 -_v8[t], 0.025661, -1.1001, 1.1001 +_v2[t], 0.010253, -0.44003, 0.44003 +_v3[t], 0.49362, 7.4444E-05, 1.0825 +_v5[t], 0.010253, -0.44003, 0.44003 +_v6[t], -0.025632, -1.1001, 1.1001 +_v8[t], 0.025632, -1.1001, 1.1001 GND[t], 0, 0, 0 diff --git a/Tests/Stats/SP3T.csv b/Tests/Stats/SP3T.csv index a3c09c41..ef23dccd 100644 --- a/Tests/Stats/SP3T.csv +++ b/Tests/Stats/SP3T.csv @@ -1,7 +1,7 @@ var, mean, min, max -_v1[t], 0.0051169, -0.21971, 0.21971 -_v3[t], 0.010264, -0.44003, 0.44003 -_v6[t], 0.0051169, -0.21971, 0.21971 -_v7[t], 0.010264, -0.44003, 0.44003 +_v1[t], 0.0051193, -0.21971, 0.21971 +_v3[t], 0.010253, -0.44003, 0.44003 +_v6[t], 0.0051193, -0.21971, 0.21971 +_v7[t], 0.010253, -0.44003, 0.44003 _v9[t], 0, 0, 0 GND[t], 0, 0, 0 diff --git a/Tests/Stats/SPDT.csv b/Tests/Stats/SPDT.csv index 8af9fa8a..33cf5080 100644 --- a/Tests/Stats/SPDT.csv +++ b/Tests/Stats/SPDT.csv @@ -1,6 +1,6 @@ var, mean, min, max -_v1[t], 0.0051169, -0.21971, 0.21971 -_v3[t], 0.010264, -0.44003, 0.44003 -_v6[t], 0.0051169, -0.21971, 0.21971 -_v7[t], 0.010264, -0.44003, 0.44003 +_v1[t], 0.0051193, -0.21971, 0.21971 +_v3[t], 0.010253, -0.44003, 0.44003 +_v6[t], 0.0051193, -0.21971, 0.21971 +_v7[t], 0.010253, -0.44003, 0.44003 GND[t], 0, 0, 0 diff --git a/Tests/Stats/Subcircuit Tone Stack.csv b/Tests/Stats/Subcircuit Tone Stack.csv index 720d2519..6c240c4b 100644 --- a/Tests/Stats/Subcircuit Tone Stack.csv +++ b/Tests/Stats/Subcircuit Tone Stack.csv @@ -1,5 +1,5 @@ var, mean, min, max -_v1[t], 0.010264, -0.44003, 0.44003 +_v1[t], 0.010253, -0.44003, 0.44003 _v3[t], 0, 0, 0 -_v4[t], 0.0058589, -0.29195, 0.29369 +_v4[t], 0.0058444, -0.29195, 0.29369 GND[t], 0, 0, 0 diff --git a/Tests/Stats/Subcircuit Tone Stacks.csv b/Tests/Stats/Subcircuit Tone Stacks.csv index 1eabf87f..f0302fbf 100644 --- a/Tests/Stats/Subcircuit Tone Stacks.csv +++ b/Tests/Stats/Subcircuit Tone Stacks.csv @@ -1,7 +1,7 @@ var, mean, min, max -_v1[t], 0.010264, -0.44003, 0.44003 +_v1[t], 0.010253, -0.44003, 0.44003 _v3[t], 0, 0, 0 -_v4[t], 0.00096828, -0.076188, 0.069802 -_v5[t], 0.0011445, -0.11208, 0.10002 +_v4[t], 0.00096759, -0.076188, 0.069802 +_v5[t], 0.0011432, -0.11208, 0.10002 _v6[t], 0, 0, 0 GND[t], 0, 0, 0 diff --git a/Tests/Stats/Subcircuit Trivial Two-Port.csv b/Tests/Stats/Subcircuit Trivial Two-Port.csv index 40465948..a3933a81 100644 --- a/Tests/Stats/Subcircuit Trivial Two-Port.csv +++ b/Tests/Stats/Subcircuit Trivial Two-Port.csv @@ -1,5 +1,5 @@ var, mean, min, max -_v1[t], 0.010264, -0.44003, 0.44003 -_v2[t], 0.010264, -0.44003, 0.44003 +_v1[t], 0.010253, -0.44003, 0.44003 +_v2[t], 0.010253, -0.44003, 0.44003 _v3[t], 0, 0, 0 GND[t], 0, 0, 0 diff --git a/Tests/Stats/Subcircuit Trivial.csv b/Tests/Stats/Subcircuit Trivial.csv index 872c19a8..b57b0c25 100644 --- a/Tests/Stats/Subcircuit Trivial.csv +++ b/Tests/Stats/Subcircuit Trivial.csv @@ -1,4 +1,4 @@ var, mean, min, max -_v1[t], 0.010264, -0.44003, 0.44003 -_v2[t], 0.010264, -0.44003, 0.44003 +_v1[t], 0.010253, -0.44003, 0.44003 +_v2[t], 0.010253, -0.44003, 0.44003 GND[t], 0, 0, 0 diff --git a/Tests/Stats/Subcircuit Voltage Divider.csv b/Tests/Stats/Subcircuit Voltage Divider.csv index 597b503e..aeb36930 100644 --- a/Tests/Stats/Subcircuit Voltage Divider.csv +++ b/Tests/Stats/Subcircuit Voltage Divider.csv @@ -1,5 +1,5 @@ var, mean, min, max -_v1[t], 0.010264, -0.44003, 0.44003 -_v2[t], 0.0051322, -0.22001, 0.22001 +_v1[t], 0.010253, -0.44003, 0.44003 +_v2[t], 0.0051263, -0.22001, 0.22001 _v3[t], 0, 0, 0 GND[t], 0, 0, 0 diff --git a/Tests/Stats/Transformer.csv b/Tests/Stats/Transformer.csv index 1fe4f926..7e8dc7af 100644 --- a/Tests/Stats/Transformer.csv +++ b/Tests/Stats/Transformer.csv @@ -1,4 +1,4 @@ var, mean, min, max -_v1[t], 0.010264, -0.44003, 0.44003 -_v3[t], 0.10264, -4.4003, 4.4003 +_v1[t], 0.010253, -0.44003, 0.44003 +_v3[t], 0.10253, -4.4003, 4.4003 GND[t], 0, 0, 0 diff --git a/Tests/Stats/Wien Bridge Oscillator.csv b/Tests/Stats/Wien Bridge Oscillator.csv index 6db1be6b..c542605b 100644 --- a/Tests/Stats/Wien Bridge Oscillator.csv +++ b/Tests/Stats/Wien Bridge Oscillator.csv @@ -1,10 +1,10 @@ var, mean, min, max _v1[t], 0, 0, 0 -_v2[t], -0.0068192, -2.7603, 2.7602 -_v3[t], -0.016947, -6.253, 6.2533 -_v4[t], -0.020439, -8.1147, 8.1147 -_v5[t], -0.0067716, -2.6886, 2.6886 +_v2[t], -0.0069008, -2.7603, 2.7602 +_v3[t], -0.016884, -6.253, 6.2533 +_v4[t], -0.020287, -8.1147, 8.1147 +_v5[t], -0.0067215, -2.6886, 2.6886 _v6[t], 9, 9, 9 _v7[t], -9, -9, -9 -_v8[t], -0.0065231, -2.5899, 2.5899 +_v8[t], -0.0064748, -2.5899, 2.5899 GND[t], 0, 0, 0 diff --git a/Tests/Test.cs b/Tests/Test.cs index f376c860..72d55d72 100644 --- a/Tests/Test.cs +++ b/Tests/Test.cs @@ -202,14 +202,23 @@ private static Dictionary ComputeStatistics(Dictionary - /// Snap statistics that are negligible against the variable's own range to zero. The mean - /// of a symmetric signal is a cancellation residual near zero, and printing five - /// significant figures of it just publishes floating-point noise: a floating node whose - /// true mean is zero otherwise differs between platforms in every digit. + /// Round the mean to a precision set by the signal's own envelope rather than by its own + /// magnitude. + /// + /// min and max are order-of-scale quantities, so five significant figures of them is about + /// 1e-5 relative - comfortably above the last-digit drift between platforms. The mean is + /// not: for an AC signal it is a cancellation residual near zero, so five significant + /// figures of it resolves far below the precision it actually carries, and publishes + /// floating-point noise. Quantizing to 1e-4 of the envelope keeps ample resolution to + /// catch a real regression - which moves the mean by orders of magnitude more - while + /// being immune to a platform disagreeing in the last digit. /// - private static double Denoise(double Value, double Scale) + private static double QuantizeMean(double Mean, double Scale) { - return Math.Abs(Value) < Scale * 1e-6 ? 0.0 : Value; + if (Scale <= 0) + return 0.0; + double step = Scale * 1e-4; + return Math.Round(Mean / step) * step; } private static string StatsToString(Dictionary> Outputs, int Warmup) @@ -220,7 +229,7 @@ private static string StatsToString(Dictionary> Outputs { double scale = Math.Max(Math.Abs(i.Value[1]), Math.Abs(i.Value[2])); sb.AppendLine(string.Format(CultureInfo.InvariantCulture, StatsColumns, - i.Key, Denoise(i.Value[0], scale), Denoise(i.Value[1], scale), Denoise(i.Value[2], scale))); + i.Key, QuantizeMean(i.Value[0], scale), i.Value[1], i.Value[2])); } return sb.ToString(); }