normalization of methods

This commit is contained in:
Miha Kralj
2026-02-10 21:33:16 -08:00
parent 915d7a007b
commit 6d6259a47d
527 changed files with 10525 additions and 2123 deletions
+3 -3
View File
@@ -230,7 +230,7 @@ public class RaeTests
iterativeResults.Add(raeIterative.Update(actual[i], predicted[i]).Value);
}
var batchResults = Rae.Calculate(actual, predicted, Period);
var batchResults = Rae.Batch(actual, predicted, Period);
Assert.Equal(iterativeResults.Count, batchResults.Count);
for (int i = 0; i < iterativeResults.Count; i++)
@@ -271,7 +271,7 @@ public class RaeTests
double[] predictedArr = predictedSeries.Values.ToArray();
double[] output = new double[100];
var tseriesResult = Rae.Calculate(actualSeries, predictedSeries, Period);
var tseriesResult = Rae.Batch(actualSeries, predictedSeries, Period);
Rae.Batch(actualArr.AsSpan(), predictedArr.AsSpan(), output.AsSpan(), Period);
for (int i = 0; i < 100; i++)
@@ -292,7 +292,7 @@ public class RaeTests
}
// 1. Batch Mode (static method)
var batchSeries = Rae.Calculate(actualSeries, predictedSeries, Period);
var batchSeries = Rae.Batch(actualSeries, predictedSeries, Period);
double expected = batchSeries.Last.Value;
// 2. Span Mode
+9 -2
View File
@@ -159,7 +159,7 @@ public sealed class Rae : AbstractBase
public override TSeries Update(TSeries source)
{
throw new NotSupportedException("RAE requires two inputs. Use Calculate(actualSeries, predictedSeries, period).");
throw new NotSupportedException("RAE requires two inputs. Use Batch(actualSeries, predictedSeries, period).");
}
public override void Prime(ReadOnlySpan<double> source, TimeSpan? step = null)
@@ -177,7 +177,7 @@ public sealed class Rae : AbstractBase
Last = default;
}
public static TSeries Calculate(TSeries actual, TSeries predicted, int period)
public static TSeries Batch(TSeries actual, TSeries predicted, int period)
{
if (actual.Count != predicted.Count)
{
@@ -355,4 +355,11 @@ public sealed class Rae : AbstractBase
}
}
}
public static (TSeries Results, Rae Indicator) Calculate(TSeries actual, TSeries predicted, int period)
{
var indicator = new Rae(period);
TSeries results = Batch(actual, predicted, period);
return (results, indicator);
}
}