Code development platform for open source projects from the European Union institutions :large_blue_circle: EU Login authentication by SMS will be completely phased out by mid-2025. To see alternatives please check here

Skip to content
Snippets Groups Projects
Commit 574e4c9f authored by Markus Quaritsch's avatar Markus Quaritsch
Browse files

adding testcase for new EM powermap interpolation method: calculate losses and...

adding testcase for new EM powermap interpolation method: calculate losses and compute virtual torque loss for delaunay map. expected efficiency for the whole map is within a very small range around given efficiency
parent 3d6fd1f2
No related branches found
No related tags found
No related merge requests found
using System;
using System.Collections.Generic;
using System.Data;
using System.IO;
using System.Linq;
......@@ -33,16 +34,28 @@ namespace TUGraz.VectoCore.InputData.Reader.ComponentData {
data.Columns[1].ColumnName = Fields.Torque;
data.Columns[2].ColumnName = Fields.PowerElectrical;
}
var entries = (from DataRow row in data.Rows select CreateEntry(row)).ToList();
var speeds = entries.Select(x => x.MotorSpeed).Distinct().Where(x => x.IsGreater(0)).ToList();
var minSpeed = speeds.OrderBy(x => x).First();
var torques = entries.Where(x => x.MotorSpeed.IsEqual(minSpeed)).ToList();
var delaunayMap = new DelaunayMap("ElectricMotorEfficiencyMap Mechanical to Electric");
var retVal = new EfficiencyMapNew(delaunayMap);
foreach (DataRow row in data.Rows) {
foreach (var entry in torques) {
delaunayMap.AddPoint(-entry.Torque.Value() * count,
0, retVal.GetDelaunayZValue(entry));
}
foreach (var entry in entries.Where(x => x.MotorSpeed.IsGreater(0)).OrderBy(x => x.MotorSpeed)
.ThenBy(x => x.Torque)) {
try {
var entry = CreateEntry(row);
delaunayMap.AddPoint(-entry.Torque.Value() * count,
entry.MotorSpeed.Value(),
retVal.GetDelaunayZValue(entry) * count);
} catch (Exception e) {
throw new VectoException($"EfficiencyMap - Line {data.Rows.IndexOf(row)}: {e.Message}", e);
throw new VectoException($"EfficiencyMap - Entry {entry}: {e.Message}", e);
}
}
......
......@@ -12,7 +12,7 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Data.ElectricMotor
public class EfficiencyMapNew : EfficiencyMap
{
private static readonly PerSecond speedOffset = 0.01.RPMtoRad();
protected internal EfficiencyMapNew(DelaunayMap efficiencyMapMech2El) : base(efficiencyMapMech2El) { }
public override EfficiencyResult LookupElectricPower(PerSecond angularSpeed, NewtonMeter torque, bool allowExtrapolation = false)
......@@ -22,12 +22,12 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Data.ElectricMotor
result.Speed = angularSpeed;
var value = _efficiencyMapMech2El.Interpolate(torque, angularSpeed);
if (!value.IsNaN()) {
result.ElectricalPower = value.SI<NewtonMeter>() * (angularSpeed + speedOffset) + angularSpeed * torque;
result.ElectricalPower = value.SI<NewtonMeter>() * (angularSpeed) + angularSpeed * torque;
return result;
}
if (allowExtrapolation) {
value = _efficiencyMapMech2El.Extrapolate(torque, angularSpeed);
result.ElectricalPower = value.SI<NewtonMeter>() * (angularSpeed + speedOffset) + angularSpeed * torque;
result.ElectricalPower = value.SI<NewtonMeter>() * (angularSpeed) + angularSpeed * torque;
result.Extrapolated = true;
return result;
}
......@@ -36,8 +36,11 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Data.ElectricMotor
public double GetDelaunayZValue(Entry entry)
{
if (entry.MotorSpeed.IsEqual(0)) {
throw new VectoException("Electric motor speed has to be greater than 0");
}
return - ((entry.PowerElectrical - entry.MotorSpeed * entry.Torque) /
(entry.MotorSpeed + EfficiencyMapNew.speedOffset)).Value();
(entry.MotorSpeed)).Value();
}
}
......@@ -108,6 +111,11 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Data.ElectricMotor
public readonly PerSecond MotorSpeed;
public readonly NewtonMeter Torque;
public readonly Watt PowerElectrical;
public override string ToString()
{
return $"{MotorSpeed.AsRPM} / {Torque} / {PowerElectrical}";
}
}
public class EfficiencyResult
......
using System;
using System.Collections.Generic;
using System.Data;
using System.IO;
using System.Linq;
......@@ -71,53 +72,17 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponentData {
}
[TestCase(@"E:\QUAM\Downloads\VECTO-1437_E2_EM-inv_Interpolation\VECTO_model\vem_P_inverter_DC_90.vemo")]
public void TestInterpolationMethod_Proposal(string filename)
{
var speedOffset = 0.01.RPMtoRad();
var tbl = VectoCSVFile.Read(filename);
var delaunayMap = new DelaunayMap("ElectricMotorEfficiencyMap Test");
foreach (DataRow row in tbl.Rows) {
var entry = new EfficiencyMap.Entry(
speed: row.ParseDouble("n").RPMtoRad(),
torque: row.ParseDouble("T").SI<NewtonMeter>(),
powerElectrical: row.ParseDouble("P_el").SI(Unit.SI.Kilo.Watt).Cast<Watt>());
delaunayMap.AddPoint(-entry.Torque.Value(),
(entry.MotorSpeed).Value(),
-((entry.PowerElectrical - entry.MotorSpeed * entry.Torque) / (entry.MotorSpeed + speedOffset)).Value());
}
delaunayMap.Triangulate();
var emMap = new EfficiencyMap(delaunayMap);
for (var n = 10.RPMtoRad(); n < 4000.RPMtoRad(); n += 10.RPMtoRad()) {
for (var tq = -2800.SI<NewtonMeter>(); tq <= 2800.SI<NewtonMeter>(); tq += 100.SI<NewtonMeter>()) {
if (tq.IsEqual(0)) {
continue;
}
try {
var pwr = emMap.LookupElectricPower(n, tq);
if (pwr.ElectricalPower == null) {
continue;
}
Console.WriteLine($"{pwr.Speed.AsRPM}, {pwr.Torque.Value()}, {((pwr.ElectricalPower.Value() * (pwr.Speed + speedOffset).Value()).SI<Watt>() + pwr.Speed * pwr.Torque).Value()}, {pwr.Extrapolated}, {(n * tq).Value()}");
} catch (Exception e) {
Console.WriteLine(e.Message);
}
}
}
}
[TestCase(@"E:\QUAM\Downloads\VECTO-1437_E2_EM-inv_Interpolation\VECTO_model\vem_P_inverter_DC_90.vemo")]
public void TestInterpolationMethod_Proposal2(string filename)
[TestCase(@"TestData\Components\ElectricMotor\vem_P_inverter_DC_90_fine.vemo", 0.8999, 0.9001),
TestCase(@"TestData\Components\ElectricMotor\vem_P_inverter_DC_90_coarse.vemo", 0.8999, 0.9001),
TestCase(@"TestData\Components\ElectricMotor\vem_P_inverter_DC_std.vemo", 0, 1)]
public void TestInterpolationMethod_Proposal2(string filename, double etaMin, double etaMax)
{
EfficiencyMap emMap;
using (var fs = File.OpenRead(filename)) {
emMap = ElectricMotorMapReaderNew.Create(fs, 1);
}
var efficiencies = new List<double>();
for (var n = 10.RPMtoRad(); n < 4000.RPMtoRad(); n += 10.RPMtoRad()) {
for (var tq = -2800.SI<NewtonMeter>(); tq <= 2800.SI<NewtonMeter>(); tq += 100.SI<NewtonMeter>()) {
if (tq.IsEqual(0)) {
......@@ -129,21 +94,31 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponentData {
continue;
}
Console.WriteLine($"{pwr.Speed.AsRPM}, {pwr.Torque.Value()}, {pwr.ElectricalPower.Value()}, {pwr.Extrapolated}, {(n * tq).Value()}");
var efficiency = tq < 0
? pwr.Speed * pwr.Torque / pwr.ElectricalPower
: pwr.ElectricalPower / (pwr.Speed * pwr.Torque);
// set efficiencies close to 0 to exactly 0 because later assertion uses sharp bounds without tolerance
efficiencies.Add(efficiency.IsEqual(0) ? 0.0 : efficiency);
} catch (Exception e) {
Console.WriteLine(e.Message);
}
}
}
Assert.IsTrue(efficiencies.All(x => x.IsBetween(etaMin, etaMax)), $"{efficiencies.Min()} - {efficiencies.Max()}");
}
[TestCase(@"E:\QUAM\Downloads\VECTO-1437_E2_EM-inv_Interpolation\VECTO_model\vem_P_inverter_DC_90.vemo")]
public void TestInterpolationMethod_Current(string filename)
[TestCase(@"TestData\Components\ElectricMotor\vem_P_inverter_DC_90_fine.vemo", 0.8999, 0.9001),
TestCase(@"TestData\Components\ElectricMotor\vem_P_inverter_DC_90_coarse.vemo", 0.8999, 0.9001),
TestCase(@"TestData\Components\ElectricMotor\vem_P_inverter_DC_std.vemo", 0, 1)]
public void TestInterpolationMethod_Current(string filename, double etaMin, double etaMax)
{
EfficiencyMap emMap;
using (var fs = File.OpenRead(filename)) {
emMap = ElectricMotorMapReader.Create(fs, 1);
}
var efficiencies = new List<double>();
for (var n = 10.RPMtoRad(); n < 4000.RPMtoRad(); n += 10.RPMtoRad()) {
for (var tq = -2800.SI<NewtonMeter>(); tq <= 2800.SI<NewtonMeter>(); tq += 100.SI<NewtonMeter>()) {
if (tq.IsEqual(0)) {
......@@ -155,11 +130,17 @@ namespace TUGraz.VectoCore.Tests.Models.SimulationComponentData {
continue;
}
Console.WriteLine($"{pwr.Speed.AsRPM}, {pwr.Torque.Value()}, {pwr.ElectricalPower.Value()}, {pwr.Extrapolated}, {(n * tq).Value()}");
var efficiency = tq < 0
? pwr.Speed * pwr.Torque / pwr.ElectricalPower
: pwr.ElectricalPower / (pwr.Speed * pwr.Torque);
// set efficiencies close to 0 to exactly 0 because later assertion uses sharp bounds without tolerance
efficiencies.Add(efficiency.IsEqual(0) ? 0.0 : efficiency);
} catch (Exception e) {
Console.WriteLine(e.Message);
}
}
}
Assert.IsTrue(efficiencies.All(x => x.IsBetween(etaMin, etaMax)), $"{efficiencies.Min()} - {efficiencies.Max()}");
}
}
}
\ No newline at end of file
n [rpm] , T [Nm] , P_el [kW]
0 , -2800 , 0.000
0 , -2400 , 0.000
0 , -2000 , 0.000
0 , -1600 , 0.000
0 , -1200 , 0.000
0 , -800 , 0.000
0 , -400 , 0.000
0 , 0 , 0.000
0 , 400 , 0.000
0 , 800 , 0.000
0 , 1200 , 0.000
0 , 1600 , 0.000
0 , 2000 , 0.000
0 , 2400 , 0.000
0 , 2800 , 0.000
400 , -2800 , -105.558
400 , -2400 , -90.478
400 , -2000 , -75.398
400 , -1600 , -60.319
400 , -1200 , -45.239
400 , -800 , -30.159
400 , -400 , -15.080
400 , 0 , 0.000
400 , 400 , 18.617
400 , 800 , 37.234
400 , 1200 , 55.851
400 , 1600 , 74.467
400 , 2000 , 93.084
400 , 2400 , 111.701
400 , 2800 , 130.318
800 , -2800 , -211.115
800 , -2400 , -180.956
800 , -2000 , -150.796
800 , -1600 , -120.637
800 , -1200 , -90.478
800 , -800 , -60.319
800 , -400 , -30.159
800 , 0 , 0.000
800 , 400 , 37.234
800 , 800 , 74.467
800 , 1200 , 111.701
800 , 1600 , 148.935
800 , 2000 , 186.168
800 , 2400 , 223.402
800 , 2800 , 260.636
1200 , -2800 , -316.673
1200 , -2400 , -271.434
1200 , -2000 , -226.195
1200 , -1600 , -180.956
1200 , -1200 , -135.717
1200 , -800 , -90.478
1200 , -400 , -45.239
1200 , 0 , 0.000
1200 , 400 , 55.851
1200 , 800 , 111.701
1200 , 1200 , 167.552
1200 , 1600 , 223.402
1200 , 2000 , 279.253
1200 , 2400 , 335.103
1200 , 2800 , 390.954
1600 , -2800 , -422.230
1600 , -2400 , -361.911
1600 , -2000 , -301.593
1600 , -1600 , -241.274
1600 , -1200 , -180.956
1600 , -800 , -120.637
1600 , -400 , -60.319
1600 , 0 , 0.000
1600 , 400 , 74.467
1600 , 800 , 148.935
1600 , 1200 , 223.402
1600 , 1600 , 297.870
1600 , 2000 , 372.337
1600 , 2400 , 446.804
1600 , 2800 , 521.272
2000 , -2800 , -527.788
2000 , -2400 , -452.389
2000 , -2000 , -376.991
2000 , -1600 , -301.593
2000 , -1200 , -226.195
2000 , -800 , -150.796
2000 , -400 , -75.398
2000 , 0 , 0.000
2000 , 400 , 93.084
2000 , 800 , 186.168
2000 , 1200 , 279.253
2000 , 1600 , 372.337
2000 , 2000 , 465.421
2000 , 2400 , 558.505
2000 , 2800 , 651.590
2400 , -2800 , -633.345
2400 , -2400 , -542.867
2400 , -2000 , -452.389
2400 , -1600 , -361.911
2400 , -1200 , -271.434
2400 , -800 , -180.956
2400 , -400 , -90.478
2400 , 0 , 0.000
2400 , 400 , 111.701
2400 , 800 , 223.402
2400 , 1200 , 335.103
2400 , 1600 , 446.804
2400 , 2000 , 558.505
2400 , 2400 , 670.206
2400 , 2800 , 781.908
2800 , -2800 , -738.903
2800 , -2400 , -633.345
2800 , -2000 , -527.788
2800 , -1600 , -422.230
2800 , -1200 , -316.673
2800 , -800 , -211.115
2800 , -400 , -105.558
2800 , 0 , 0.000
2800 , 400 , 130.318
2800 , 800 , 260.636
2800 , 1200 , 390.954
2800 , 1600 , 521.272
2800 , 2000 , 651.590
2800 , 2400 , 781.908
2800 , 2800 , 912.225
3200 , -2800 , -844.460
3200 , -2400 , -723.823
3200 , -2000 , -603.186
3200 , -1600 , -482.549
3200 , -1200 , -361.911
3200 , -800 , -241.274
3200 , -400 , -120.637
3200 , 0 , 0.000
3200 , 400 , 148.935
3200 , 800 , 297.870
3200 , 1200 , 446.804
3200 , 1600 , 595.739
3200 , 2000 , 744.674
3200 , 2400 , 893.609
3200 , 2800 , 1042.543
3600 , -2800 , -950.018
3600 , -2400 , -814.301
3600 , -2000 , -678.584
3600 , -1600 , -542.867
3600 , -1200 , -407.150
3600 , -800 , -271.434
3600 , -400 , -135.717
3600 , 0 , 0.000
3600 , 400 , 167.552
3600 , 800 , 335.103
3600 , 1200 , 502.655
3600 , 1600 , 670.206
3600 , 2000 , 837.758
3600 , 2400 , 1005.310
3600 , 2800 , 1172.861
4000 , -2800 , -1055.575
4000 , -2400 , -904.779
4000 , -2000 , -753.982
4000 , -1600 , -603.186
4000 , -1200 , -452.389
4000 , -800 , -301.593
4000 , -400 , -150.796
4000 , 0 , 0.000
4000 , 400 , 186.168
4000 , 800 , 372.337
4000 , 1200 , 558.505
4000 , 1600 , 744.674
4000 , 2000 , 930.842
4000 , 2400 , 1117.011
4000 , 2800 , 1303.179
n [rpm] , T [Nm] , P_el [kW]
0 , -2800 , 0.000
0 , -2400 , 0.000
0 , -2000 , 0.000
0 , -1600 , 0.000
0 , -1200 , 0.000
0 , -800 , 0.000
0 , -400 , 0.000
0 , 0 , 0.000
0 , 400 , 0.000
0 , 800 , 0.000
0 , 1200 , 0.000
0 , 1600 , 0.000
0 , 2000 , 0.000
0 , 2400 , 0.000
0 , 2800 , 0.000
400 , -2800 , -105.558
400 , -2400 , -90.478
400 , -2000 , -75.398
400 , -1600 , -60.319
400 , -1200 , -45.239
400 , -800 , -30.159
400 , -400 , -15.080
400 , 0 , 0.000
400 , 400 , 18.617
400 , 800 , 37.234
400 , 1200 , 55.851
400 , 1600 , 74.467
400 , 2000 , 93.084
400 , 2400 , 111.701
400 , 2800 , 130.318
800 , -2800 , -211.115
800 , -2400 , -180.956
800 , -2000 , -150.796
800 , -1600 , -120.637
800 , -1200 , -90.478
800 , -800 , -60.319
800 , -400 , -30.159
800 , 0 , 0.000
800 , 400 , 37.234
800 , 800 , 74.467
800 , 1200 , 111.701
800 , 1600 , 148.935
800 , 2000 , 186.168
800 , 2400 , 223.402
800 , 2800 , 260.636
1200 , -2800 , -316.673
1200 , -2400 , -271.434
1200 , -2000 , -226.195
1200 , -1600 , -180.956
1200 , -1200 , -135.717
1200 , -800 , -90.478
1200 , -400 , -45.239
1200 , 0 , 0.000
1200 , 400 , 55.851
1200 , 800 , 111.701
1200 , 1200 , 167.552
1200 , 1600 , 223.402
1200 , 2000 , 279.253
1200 , 2400 , 335.103
1200 , 2800 , 390.954
1600 , -2800 , -422.230
1600 , -2400 , -361.911
1600 , -2000 , -301.593
1600 , -1600 , -241.274
1600 , -1200 , -180.956
1600 , -800 , -120.637
1600 , -400 , -60.319
1600 , 0 , 0.000
1600 , 400 , 74.467
1600 , 800 , 148.935
1600 , 1200 , 223.402
1600 , 1600 , 297.870
1600 , 2000 , 372.337
1600 , 2400 , 446.804
1600 , 2800 , 521.272
2000 , -2800 , -527.788
2000 , -2400 , -452.389
2000 , -2000 , -376.991
2000 , -1600 , -301.593
2000 , -1200 , -226.195
2000 , -800 , -150.796
2000 , -400 , -75.398
2000 , 0 , 0.000
2000 , 400 , 93.084
2000 , 800 , 186.168
2000 , 1200 , 279.253
2000 , 1600 , 372.337
2000 , 2000 , 465.421
2000 , 2400 , 558.505
2000 , 2800 , 651.590
2400 , -2800 , -633.345
2400 , -2400 , -542.867
2400 , -2000 , -452.389
2400 , -1600 , -361.911
2400 , -1200 , -271.434
2400 , -800 , -180.956
2400 , -400 , -90.478
2400 , 0 , 0.000
2400 , 400 , 111.701
2400 , 800 , 223.402
2400 , 1200 , 335.103
2400 , 1600 , 446.804
2400 , 2000 , 558.505
2400 , 2400 , 670.206
2400 , 2800 , 781.908
2800 , -2800 , -738.903
2800 , -2400 , -633.345
2800 , -2000 , -527.788
2800 , -1600 , -422.230
2800 , -1200 , -316.673
2800 , -800 , -211.115
2800 , -400 , -105.558
2800 , 0 , 0.000
2800 , 400 , 130.318
2800 , 800 , 260.636
2800 , 1200 , 390.954
2800 , 1600 , 521.272
2800 , 2000 , 651.590
2800 , 2400 , 781.908
2800 , 2800 , 912.225
3200 , -2800 , -844.460
3200 , -2400 , -723.823
3200 , -2000 , -603.186
3200 , -1600 , -482.549
3200 , -1200 , -361.911
3200 , -800 , -241.274
3200 , -400 , -120.637
3200 , 0 , 0.000
3200 , 400 , 148.935
3200 , 800 , 297.870
3200 , 1200 , 446.804
3200 , 1600 , 595.739
3200 , 2000 , 744.674
3200 , 2400 , 893.609
3200 , 2800 , 1042.543
3600 , -2800 , -950.018
3600 , -2400 , -814.301
3600 , -2000 , -678.584
3600 , -1600 , -542.867
3600 , -1200 , -407.150
3600 , -800 , -271.434
3600 , -400 , -135.717
3600 , 0 , 0.000
3600 , 400 , 167.552
3600 , 800 , 335.103
3600 , 1200 , 502.655
3600 , 1600 , 670.206
3600 , 2000 , 837.758
3600 , 2400 , 1005.310
3600 , 2800 , 1172.861
4000 , -2800 , -1055.575
4000 , -2400 , -904.779
4000 , -2000 , -753.982
4000 , -1600 , -603.186
4000 , -1200 , -452.389
4000 , -800 , -301.593
4000 , -400 , -150.796
4000 , 0 , 0.000
4000 , 400 , 186.168
4000 , 800 , 372.337
4000 , 1200 , 558.505
4000 , 1600 , 744.674
4000 , 2000 , 930.842
4000 , 2400 , 1117.011
4000 , 2800 , 1303.179
n [rpm] , T [Nm] , P_el [kW]
0, -1050, 0.000
0, -998, 0.000
0, -945, 0.000
0, -893, 0.000
0, -840, 0.000
0, -788, 0.000
0, -735, 0.000
0, -683, 0.000
0, -630, -0.069
0, -578, -0.171
0, -525, -0.253
0, -473, -0.316
0, -420, -0.358
0, -367, -0.381
0, -315, -0.383
0, -262, -0.366
0, -210, -0.328
0, -157, -0.271
0, -105, -0.194
0, -52, -0.097
0, -11, -0.005
0, 11, 0.082
0, 52, 0.331
0, 105, 0.662
0, 157, 1.015
0, 210, 1.389
0, 262, 1.785
0, 315, 2.202
0, 367, 2.641
0, 420, 3.102
0, 473, 3.584
0, 525, 4.088
0, 578, 4.614
0, 630, 5.161
0, 683, 5.730
0, 735, 6.320
0, 788, 6.932
0, 840, 7.566
0, 893, 8.221
0, 945, 8.898
0, 998, 9.597
0, 1050, 10.317
25, -1050, 0.000
25, -998, 0.000
25, -945, 0.000
25, -893, 0.000
25, -840, 0.000
25, -788, 0.000
25, -735, -0.050
25, -683, -0.124
25, -630, -0.186
25, -578, -0.236
25, -525, -0.274
25, -473, -0.300
25, -420, -0.314
25, -367, -0.315
25, -315, -0.305
25, -262, -0.282
25, -210, -0.247
25, -157, -0.200
25, -105, -0.141
25, -52, -0.070
25, -11, -0.004
25, 11, 0.054
25, 52, 0.216
25, 105, 0.430
25, 157, 0.658
25, 210, 0.899
25, 262, 1.153
25, 315, 1.420
25, 367, 1.700
25, 420, 1.993
25, 473, 2.299
25, 525, 2.619
25, 578, 2.952
25, 630, 3.298
25, 683, 3.657
25, 735, 4.029
25, 788, 4.414
25, 840, 4.813
25, 893, 5.224
25, 945, 5.649
25, 998, 6.087
25, 1050, 6.538
255, -1050, -23.221
255, -998, -22.176
255, -945, -21.119
255, -893, -20.048
255, -840, -18.964
255, -788, -17.867
255, -735, -16.757
255, -683, -15.634
255, -630, -14.498
255, -578, -13.349
255, -525, -12.187
255, -473, -11.012
255, -420, -9.824
255, -367, -8.622
255, -315, -7.408
255, -262, -6.181
255, -210, -4.941
255, -157, -3.687
255, -105, -2.421
255, -52, -1.141
255, -11, -0.108
255, 11, 0.466
255, 52, 1.678
255, 105, 3.207
255, 157, 4.749
255, 210, 6.306
255, 262, 7.877
255, 315, 9.462
255, 367, 11.061
255, 420, 12.674
255, 473, 14.302
255, 525, 15.943
255, 578, 17.599
255, 630, 19.269
255, 683, 20.953
255, 735, 22.651
255, 788, 24.363
255, 840, 26.090
255, 893, 27.830
255, 945, 29.585
255, 998, 31.354
255, 1050, 33.137
509, -1050, -49.393
509, -998, -47.054
509, -945, -44.700
509, -893, -42.329
509, -840, -39.944
509, -788, -37.542
509, -735, -35.125
509, -683, -32.693
509, -630, -30.245
509, -578, -27.781
509, -525, -25.302
509, -473, -22.807
509, -420, -20.297
509, -367, -17.771
509, -315, -15.229
509, -262, -12.672
509, -210, -10.099
509, -157, -7.510
509, -105, -4.906
509, -52, -2.287
509, -11, -0.180
509, 11, 0.971
509, 52, 3.352
509, 105, 6.343
509, 157, 9.351
509, 210, 12.375
509, 262, 15.417
509, 315, 18.476
509, 367, 21.551
509, 420, 24.643
509, 473, 27.753
509, 525, 30.879
509, 578, 34.022
509, 630, 37.182
509, 683, 40.359
509, 735, 43.553
509, 788, 46.764
509, 840, 49.992
509, 893, 53.236
509, 945, 56.498
509, 998, 59.776
509, 1050, 63.072
764, -1050, -75.177
764, -998, -71.575
764, -945, -67.954
764, -893, -64.312
764, -840, -60.651
764, -788, -56.971
764, -735, -53.270
764, -683, -49.550
764, -630, -45.810
764, -578, -42.050
764, -525, -38.271
764, -473, -34.471
764, -420, -30.652
764, -367, -26.814
764, -315, -22.955
764, -262, -19.077
764, -210, -15.179
764, -157, -11.261
764, -105, -7.323
764, -52, -3.366
764, -11, -0.186
764, 11, 1.548
764, 52, 5.098
764, 105, 9.554
764, 157, 14.031
764, 210, 18.530
764, 262, 23.050
764, 315, 27.592
764, 367, 32.155
764, 420, 36.740
764, 473, 41.346
764, 525, 45.974
764, 578, 50.623
764, 630, 55.293
764, 683, 59.985
764, 735, 64.698
764, 788, 69.433
764, 840, 74.189
764, 893, 78.966
764, 945, 83.766
764, 998, 88.586
764, 1050, 93.428
1019, -1050, -100.553
1019, -998, -95.720
1019, -945, -90.862
1019, -893, -85.978
1019, -840, -81.068
1019, -788, -76.133
1019, -735, -71.172
1019, -683, -66.186
1019, -630, -61.174
1019, -578, -56.137
1019, -525, -51.074
1019, -473, -45.985
1019, -420, -40.872
1019, -367, -35.732
1019, -315, -30.567
1019, -262, -25.377
1019, -210, -20.161
1019, -157, -14.919
1019, -105, -9.652
1019, -52, -4.359
1019, -11, -0.107
1019, 11, 2.218
1019, 52, 6.937
1019, 105, 12.860
1019, 157, 18.812
1019, 210, 24.791
1019, 262, 30.798
1019, 315, 36.833
1019, 367, 42.895
1019, 420, 48.985
1019, 473, 55.103
1019, 525, 61.248
1019, 578, 67.421
1019, 630, 73.622
1019, 683, 79.850
1019, 735, 86.107
1019, 788, 92.391
1019, 840, 98.702
1019, 893, 105.042
1019, 945, 111.409
1019, 998, 117.804
1019, 1050, 124.226
1273, -1050, -125.503
1273, -998, -119.470
1273, -945, -113.404
1273, -893, -107.305
1273, -840, -101.174
1273, -788, -95.009
1273, -735, -88.812
1273, -683, -82.581
1273, -630, -76.318
1273, -578, -70.021
1273, -525, -63.692
1273, -473, -57.330
1273, -420, -50.935
1273, -367, -44.507
1273, -315, -38.046
1273, -262, -31.552
1273, -210, -25.025
1273, -157, -18.466
1273, -105, -11.873
1273, -52, -5.247
1273, -11, 0.000
1273, 11, 3.000
1273, 52, 8.890
1273, 105, 16.284
1273, 157, 23.714
1273, 210, 31.179
1273, 262, 38.680
1273, 315, 46.217
1273, 367, 53.790
1273, 420, 61.399
1273, 473, 69.043
1273, 525, 76.723
1273, 578, 84.439
1273, 630, 92.190
1273, 683, 99.977
1273, 735, 107.800
1273, 788, 115.659
1273, 840, 123.553
1273, 893, 131.483
1273, 945, 139.449
1273, 998, 147.450
1273, 1050, 155.488
1528, -1050, -150.006
1528, -998, -142.805
1528, -945, -135.561
1528, -893, -128.276
1528, -840, -120.949
1528, -788, -113.580
1528, -735, -106.169
1528, -683, -98.716
1528, -630, -91.222
1528, -578, -83.685
1528, -525, -76.106
1528, -473, -68.486
1528, -420, -60.823
1528, -367, -53.119
1528, -315, -45.372
1528, -262, -37.584
1528, -210, -29.753
1528, -157, -21.881
1528, -105, -13.967
1528, -52, -6.011
1528, -11, 0.000
1528, 11, 3.917
1528, 52, 10.978
1528, 105, 19.845
1528, 157, 28.757
1528, 210, 37.715
1528, 262, 46.719
1528, 315, 55.768
1528, 367, 64.863
1528, 420, 74.003
1528, 473, 83.188
1528, 525, 92.420
1528, 578, 101.696
1528, 630, 111.018
1528, 683, 120.386
1528, 735, 129.799
1528, 788, 139.258
1528, 840, 148.762
1528, 893, 158.311
1528, 945, 167.906
1528, 998, 177.547
1528, 1050, 187.233
1783, -1050, -174.044
1783, -998, -165.705
1783, -945, -157.315
1783, -893, -148.871
1783, -840, -140.375
1783, -788, -131.827
1783, -735, -123.226
1783, -683, -114.572
1783, -630, -105.866
1783, -578, -97.108
1783, -525, -88.296
1783, -473, -79.433
1783, -420, -70.516
1783, -367, -61.548
1783, -315, -52.526
1783, -262, -43.452
1783, -210, -34.326
1783, -157, -25.147
1783, -105, -15.915
1783, -52, -6.631
1783, -11, 0.000
1783, 11, 4.988
1783, 52, 13.222
1783, 105, 23.564
1783, 157, 33.964
1783, 210, 44.421
1783, 262, 54.935
1783, 315, 65.505
1783, 367, 76.133
1783, 420, 86.818
1783, 473, 97.560
1783, 525, 108.359
1783, 578, 119.215
1783, 630, 130.128
1783, 683, 141.098
1783, 735, 152.125
1783, 788, 163.209
1783, 840, 174.350
1783, 893, 185.548
1783, 945, 196.803
1783, 998, 208.115
1783, 1050, 219.484
2037, -1050, -197.596
2037, -998, -188.153
2037, -945, -178.644
2037, -893, -169.071
2037, -840, -159.433
2037, -788, -149.730
2037, -735, -139.962
2037, -683, -130.130
2037, -630, -120.233
2037, -578, -110.271
2037, -525, -100.244
2037, -473, -90.152
2037, -420, -79.996
2037, -367, -69.775
2037, -315, -59.489
2037, -262, -49.138
2037, -210, -38.723
2037, -157, -28.243
2037, -105, -17.698
2037, -52, -7.088
2037, -11, 0.000
2037, 11, 6.237
2037, 52, 15.643
2037, 105, 27.464
2037, 157, 39.355
2037, 210, 51.316
2037, 262, 63.348
2037, 315, 75.450
2037, 367, 87.623
2037, 420, 99.865
2037, 473, 112.179
2037, 525, 124.562
2037, 578, 137.015
2037, 630, 149.539
2037, 683, 162.133
2037, 735, 174.798
2037, 788, 187.533
2037, 840, 200.338
2037, 893, 213.213
2037, 945, 226.159
2037, 998, 239.175
2037, 1050, 252.261
2292, -1050, -220.645
2292, -998, -210.127
2292, -945, -199.531
2292, -893, -188.856
2292, -840, -178.102
2292, -788, -167.270
2292, -735, -156.359
2292, -683, -145.369
2292, -630, -134.301
2292, -578, -123.154
2292, -525, -111.929
2292, -473, -100.625
2292, -420, -89.242
2292, -367, -77.781
2292, -315, -66.241
2292, -262, -54.622
2292, -210, -42.925
2292, -157, -31.149
2292, -105, -19.295
2292, -52, -7.362
2292, -11, 0.000
2292, 11, 7.682
2292, 52, 18.262
2292, 105, 31.564
2292, 157, 44.951
2292, 210, 58.423
2292, 262, 71.981
2292, 315, 85.624
2292, 367, 99.352
2292, 420, 113.166
2292, 473, 127.065
2292, 525, 141.049
2292, 578, 155.119
2292, 630, 169.274
2292, 683, 183.514
2292, 735, 197.840
2292, 788, 212.251
2292, 840, 226.747
2292, 893, 241.328
2292, 945, 255.995
2292, 998, 270.747
2292, 1050, 285.585
2546, -1050, -243.170
2546, -998, -231.610
2546, -945, -219.955
2546, -893, -208.206
2546, -840, -196.364
2546, -788, -184.427
2546, -735, -172.396
2546, -683, -160.271
2546, -630, -148.052
2546, -578, -135.739
2546, -525, -123.332
2546, -473, -110.831
2546, -420, -98.236
2546, -367, -85.546
2546, -315, -72.763
2546, -262, -59.885
2546, -210, -46.914
2546, -157, -33.848
2546, -105, -20.688
2546, -52, -7.434
2546, -11, 0.000
2546, 11, 9.345
2546, 52, 21.100
2546, 105, 35.885
2546, 157, 50.773
2546, 210, 65.762
2546, 262, 80.854
2546, 315, 96.047
2546, 367, 111.343
2546, 420, 126.741
2546, 473, 142.241
2546, 525, 157.843
2546, 578, 173.547
2546, 630, 189.353
2546, 683, 205.261
2546, 735, 221.271
2546, 788, 237.384
2546, 840, 253.598
2546, 893, 269.915
2546, 945, 286.334
2546, 998, 302.854
2546, 1050, 319.477
2801, -1050, -265.152
2801, -998, -252.580
2801, -945, -239.898
2801, -893, -227.104
2801, -840, -214.199
2801, -788, -201.182
2801, -735, -188.055
2801, -683, -174.817
2801, -630, -161.467
2801, -578, -148.006
2801, -525, -134.434
2801, -473, -120.751
2801, -420, -106.957
2801, -367, -93.052
2801, -315, -79.035
2801, -262, -64.908
2801, -210, -50.669
2801, -157, -36.319
2801, -105, -21.858
2801, -52, -7.285
2801, -11, 0.000
2801, 11, 11.248
2801, 52, 24.178
2801, 105, 40.449
2801, 157, 56.842
2801, 210, 73.354
2801, 262, 89.987
2801, 315, 106.741
2801, 367, 123.616
2801, 420, 140.611
2801, 473, 157.726
2801, 525, 174.963
2801, 578, 192.320
2801, 630, 209.797
2801, 683, 227.395
2801, 735, 245.114
2801, 788, 262.953
2801, 840, 280.913
2801, 893, 298.993
2801, 945, 317.195
2801, 998, 335.516
2801, 1050, 353.959
3056, -1050, -286.571
3056, -998, -273.020
3056, -945, -259.339
3056, -893, -245.528
3056, -840, -231.587
3056, -788, -217.517
3056, -735, -203.316
3056, -683, -188.986
3056, -630, -174.526
3056, -578, -159.936
3056, -525, -145.216
3056, -473, -130.367
3056, -420, -115.387
3056, -367, -100.278
3056, -315, -85.039
3056, -262, -69.670
3056, -210, -54.171
3056, -157, -38.543
3056, -105, -22.784
3056, -52, -6.896
3056, -11, 0.000
3056, 11, 13.411
3056, 52, 27.517
3056, 105, 45.277
3056, 157, 63.178
3056, 210, 81.220
3056, 262, 99.403
3056, 315, 117.727
3056, 367, 136.191
3056, 420, 154.797
3056, 473, 173.543
3056, 525, 192.430
3056, 578, 211.458
3056, 630, 230.627
3056, 683, 249.937
3056, 735, 269.388
3056, 788, 288.979
3056, 840, 308.712
3056, 893, 328.585
3056, 945, 348.599
3056, 998, 368.754
3056, 1050, 389.050
3310, -1050, -307.409
3310, -998, -292.910
3310, -945, -278.260
3310, -893, -263.460
3310, -840, -248.510
3310, -788, -233.410
3310, -735, -218.160
3310, -683, -202.760
3310, -630, -187.210
3310, -578, -171.509
3310, -525, -155.658
3310, -473, -139.658
3310, -420, -123.507
3310, -367, -107.206
3310, -315, -90.754
3310, -262, -74.153
3310, -210, -57.402
3310, -157, -40.500
3310, -105, -23.448
3310, -52, -6.247
3310, -11, 0.000
3310, 11, 15.855
3310, 52, 31.139
3310, 105, 50.390
3310, 157, 69.805
3310, 210, 89.382
3310, 262, 109.122
3310, 315, 129.025
3310, 367, 149.091
3310, 420, 169.320
3310, 473, 189.712
3310, 525, 210.267
3310, 578, 230.984
3310, 630, 251.865
3310, 683, 272.908
3310, 735, 294.114
3310, 788, 315.484
3310, 840, 337.016
3310, 893, 358.711
3310, 945, 380.568
3310, 998, 402.589
3310, 1050, 424.773
3565, -1050, -327.646
3565, -998, -312.230
3565, -945, -296.641
3565, -893, -280.881
3565, -840, -264.949
3565, -788, -248.844
3565, -735, -232.568
3565, -683, -216.119
3565, -630, -199.499
3565, -578, -182.706
3565, -525, -165.741
3565, -473, -148.605
3565, -420, -131.296
3565, -367, -113.815
3565, -315, -96.162
3565, -262, -78.338
3565, -210, -60.341
3565, -157, -42.172
3565, -105, -23.831
3565, -52, -5.318
3565, -11, 0.000
3565, 11, 18.601
3565, 52, 35.063
3565, 105, 55.808
3565, 157, 76.741
3565, 210, 97.859
3565, 262, 119.165
3565, 315, 140.657
3565, 367, 162.336
3565, 420, 184.202
3565, 473, 206.254
3565, 525, 228.493
3565, 578, 250.918
3565, 630, 273.530
3565, 683, 296.329
3565, 735, 319.315
3565, 788, 342.487
3565, 840, 365.846
3565, 893, 389.391
3565, 945, 413.123
3565, 998, 437.042
3565, 1050, 461.148
3820, -1050, -347.263
3820, -998, -330.961
3820, -945, -314.464
3820, -893, -297.771
3820, -840, -280.883
3820, -788, -263.799
3820, -735, -246.519
3820, -683, -229.044
3820, -630, -211.374
3820, -578, -193.507
3820, -525, -175.446
3820, -473, -157.189
3820, -420, -138.736
3820, -367, -120.087
3820, -315, -101.244
3820, -262, -82.204
3820, -210, -62.969
3820, -157, -43.539
3820, -105, -23.912
3820, -52, -4.091
3820, -11, 0.000
3820, 11, 21.670
3820, 52, 39.311
3820, 105, 61.553
3820, 157, 84.008
3820, 210, 106.674
3820, 262, 129.553
3820, 315, 152.644
3820, 367, 175.947
3820, 420, 199.462
3820, 473, 223.190
3820, 525, 247.129
3820, 578, 271.281
3820, 630, 295.645
3820, 683, 320.221
3820, 735, 345.010
3820, 788, 370.010
3820, 840, 395.223
3820, 893, 420.648
3820, 945, 446.285
3820, 998, 472.134
3820, 1050, 498.196
4074, -1050, -366.239
4074, -998, -349.084
4074, -945, -331.708
4074, -893, -314.111
4074, -840, -296.293
4074, -788, -278.255
4074, -735, -259.995
4074, -683, -241.516
4074, -630, -222.815
4074, -578, -203.894
4074, -525, -184.752
4074, -473, -165.390
4074, -420, -145.807
4074, -367, -126.003
4074, -315, -105.978
4074, -262, -85.733
4074, -210, -65.267
4074, -157, -44.581
4074, -105, -23.673
4074, -52, -2.546
4074, -11, 0.000
4074, 11, 25.084
4074, 52, 43.905
4074, 105, 67.646
4074, 157, 91.627
4074, 210, 115.847
4074, 262, 140.307
4074, 315, 165.006
4074, 367, 189.945
4074, 420, 215.123
4074, 473, 240.540
4074, 525, 266.197
4074, 578, 292.094
4074, 630, 318.230
4074, 683, 344.605
4074, 735, 371.220
4074, 788, 398.075
4074, 840, 425.168
4074, 893, 452.502
4074, 945, 480.074
4074, 998, 507.886
4074, 1050, 535.938
4329, -1050, -384.557
4329, -998, -366.579
4329, -945, -348.354
4329, -893, -329.881
4329, -840, -311.160
4329, -788, -292.192
4329, -735, -272.977
4329, -683, -253.514
4329, -630, -233.804
4329, -578, -213.847
4329, -525, -193.642
4329, -473, -173.190
4329, -420, -152.490
4329, -367, -131.542
4329, -315, -110.348
4329, -262, -88.906
4329, -210, -67.216
4329, -157, -45.279
4329, -105, -23.095
4329, -52, -0.663
4329, -11, 0.000
4329, 11, 28.863
4329, 52, 48.864
4329, 105, 74.107
4329, 157, 99.619
4329, 210, 125.399
4329, 262, 151.448
4329, 315, 177.765
4329, 367, 204.351
4329, 420, 231.205
4329, 473, 258.327
4329, 525, 285.718
4329, 578, 313.378
4329, 630, 341.306
4329, 683, 369.503
4329, 735, 397.968
4329, 788, 426.701
4329, 840, 455.703
4329, 893, 484.973
4329, 945, 514.512
4329, 998, 544.320
4329, 1050, 574.396
4584, -1050, -402.196
4584, -998, -383.427
4584, -945, -364.382
4584, -893, -345.062
4584, -840, -325.465
4584, -788, -305.593
4584, -735, -285.445
4584, -683, -265.021
4584, -630, -244.321
4584, -578, -223.346
4584, -525, -202.095
4584, -473, -180.568
4584, -420, -158.765
4584, -367, -136.687
4584, -315, -114.332
4584, -262, -91.702
4584, -210, -68.796
4584, -157, -45.614
4584, -105, -22.157
4584, -52, 0.000
4584, -11, 0.000
4584, 11, 33.028
4584, 52, 54.210
4584, 105, 80.958
4584, 157, 108.005
4584, 210, 135.351
4584, 262, 162.997
4584, 315, 190.942
4584, 367, 219.186
4584, 420, 247.729
4584, 473, 276.571
4584, 525, 305.713
4584, 578, 335.154
4584, 630, 364.894
4584, 683, 394.934
4584, 735, 425.272
4584, 788, 455.910
4584, 840, 486.848
4584, 893, 518.084
4584, 945, 549.620
4584, 998, 581.455
4584, 1050, 613.589
4838, -1050, -419.138
4838, -998, -399.609
4838, -945, -379.775
4838, -893, -359.634
4838, -840, -339.189
4838, -788, -318.437
4838, -735, -297.379
4838, -683, -276.016
4838, -630, -254.347
4838, -578, -232.372
4838, -525, -210.092
4838, -473, -187.506
4838, -420, -164.614
4838, -367, -141.416
4838, -315, -117.912
4838, -262, -94.103
4838, -210, -69.988
4838, -157, -45.567
4838, -105, -20.841
4838, -52, 0.000
4838, -11, 0.000
4838, 11, 37.600
4838, 52, 59.965
4838, 105, 88.220
4838, 157, 116.806
4838, 210, 145.725
4838, 262, 174.975
4838, 315, 204.557
4838, 367, 234.471
4838, 420, 264.716
4838, 473, 295.293
4838, 525, 326.202
4838, 578, 357.443
4838, 630, 389.016
4838, 683, 420.920
4838, 735, 453.156
4838, 788, 485.724
4838, 840, 518.624
4838, 893, 551.855
4838, 945, 585.418
4838, 998, 619.313
4838, 1050, 653.540
5093, -1050, -435.362
5093, -998, -415.105
5093, -945, -394.511
5093, -893, -373.580
5093, -840, -352.311
5093, -788, -330.705
5093, -735, -308.761
5093, -683, -286.480
5093, -630, -263.862
5093, -578, -240.907
5093, -525, -217.614
5093, -473, -193.984
5093, -420, -170.016
5093, -367, -145.711
5093, -315, -121.069
5093, -262, -96.089
5093, -210, -70.772
5093, -157, -45.118
5093, -105, -19.126
5093, -52, 0.000
5093, -11, 0.000
5093, 11, 42.600
5093, 52, 66.149
5093, 105, 95.913
5093, 157, 126.044
5093, 210, 156.540
5093, 262, 187.403
5093, 315, 218.632
5093, 367, 250.227
5093, 420, 282.187
5093, 473, 314.514
5093, 525, 347.207
5093, 578, 380.266
5093, 630, 413.691
5093, 683, 447.482
5093, 735, 481.639
5093, 788, 516.163
5093, 840, 551.052
5093, 893, 586.307
5093, 945, 621.928
5093, 998, 657.915
5093, 1050, 694.269
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment