Ich habe eine Exception error
(überraschend) während der Durchführung einiger paralleler statistischer Tests mit Math.Net Numerics
erlebt, und ich würde gerne die Begründung kennen.MATH.NET Numerics Stable Distributionen. Ausnahme vom Typ 'System.NotSupportedException'
using MathNet.Numerics.Distributions;
....
var stable = new Stable(1.7, -0.7, 0.0087, 0.9103);
double b = stable.Density(3.2);
double a = stable.Density(5.1);
Console.WriteLine(b);
Console.WriteLine(a);
Fehler: Eine nicht behandelte Ausnahme des Typs System.NotSupportedException
aufgetreten in MathNet.Numerics.dll
Ich erwartete b = 2.2484e-06
zu bekommen, a = 4.3977e-07
.
Ps: Andere klassische Distributionen wie Gamma
Arbeit ohne Problem (zB Probability Distributions), Urteil aus de facto jede Installation Problem mit dem Paket
Best,
EDIT: Aus Github repository Ich habe hinzugefügt Stable.cs in meinem Projekt, das alle Eigenschaften und Methoden enthält.
Faktisch funktionieren die Eigenschaften gut. Siehe Abbildung unten von Program.cs:
Stable st = new Stable(1.7, -0.7, 0.0087, 0.9103); // correct instantiation
Console.WriteLine(string.Format(" Characteristic exponent: {0}\n
Skewness: {1}\n Scale: {2}\n Location: {3}" ,st.Alpha, st.Beta,
st.Scale,st.Location));
Allerdings gibt es nichts unlogisch, so weit es mich betrifft, in der Density
Methode auf dem object
basierend Aufruf: st.Density(3.2)
, die zurückkehren soll:
PDF(_alpha, _beta, _scale, _location, x);
So ist es verlockend, ein method definition
Problem zu beenden, es sei denn, Menschen widersprechen diese Meinung mit gültigen Abbildung.
Darüber hinaus auf besondere Werte des stable parameters
(z _alpha = 2.0
usw.) die definierte PDF
kehrt 0
(komisch)
siehe den bearbeiteten Thread '@ rexilion'. –