diff --git a/graph-gallery.html b/graph-gallery.html index bb1f183..c8c0a5d 100644 --- a/graph-gallery.html +++ b/graph-gallery.html @@ -112,7 +112,7 @@
@@ -193,7 +193,7 @@
+ 2023-8-31 +
+Summary: This blogpost introduces the concept of function approximation by using knots spaced according to Chebyshev.
+This post is inspired by M. Scroggs blog post and shows how to perform function approximation in F#.
+Lets start by generating data in a two dimensional space. The aim is to interpolate the data using a single polynomial. Why in certain cases this is a sensible thing to do will be discussed later. We'll need FSharp.Stats for all the data handling and Plotly.NET for visualization.
+ +#r "nuget: Plotly.NET.Interactive, 4.2.1"
+#r "nuget: FSharp.Stats, 0.5.0"
+//#r "nuget: FSharp.Stats, 0.5.1"
+
We define a short data sample, that should be interpolated using polynomials, and visualize it using a scatter plot.
+ +open Plotly.NET
+open FSharp.Stats
+open FSharp.Stats.Interpolation
+
+let xs = [|0. .. 0.2 .. 3.|]
+let ys = [|5.;5.5;6.;6.1;4.;1.;0.7;0.3;0.5;0.9;5.;9.;9.;8.;6.5;5.;|]
+
+Chart.Point(xs,ys,Name="raw")
+|> Chart.withTemplate ChartTemplates.lightMirrored
+
Your task is to approximate a function that interpolate these data points to get predictions of the regions between the knots. The simplest and most common way to solve this problem is to just connect the points by straight line segments. This linear segments can be predicted using linear splines from FSharp.Stats.Interpolation:
+ +// Get linear spline coefficients that completely describe the curve.
+// In the case of linear splines, these coefficients consist of the x values, their intercepts and segment slopes
+let linearCoefficients = Interpolation.interpolate(xs,ys,InterpolationMethod.LinearSpline)
+
+// by using Interpolation.predict(coef) x you can predict any point on the curve
+let yAt2_19 = Interpolation.predict(linearCoefficients) 2.19
+
+
+let chebyChart = Chart.Line(xs,ys,Name="raw_nodes",ShowMarkers=true)
+
+[
+chebyChart
+Chart.Point([2.19,yAt2_19],Name="prediction")
+]
+|> Chart.combine
+|> Chart.withTemplate ChartTemplates.lightMirrored
+
The drawback of this strategy is the discontinuouity of the function. At each knot, the function value is defined, but its slope and curvature isn't. Additionally the segments are not influenced by neighbouring segments. While integration is possible in principle, there is no single function that enables its calculation. You have to sum up the individual segment areas individually.
+A solution is to use interpolationg polynomials. Polynomials are easy to define and differentiation as well as integration is straight forward. Any data can be interpolated by a single function with a degree of #points-1. With the example data the polynomial has the form of: +$$f(x) = ax^{15} + bx^{14} + cx^{13} + ... + dx^2 + ex + g$$
+ +let coef = Interpolation.interpolate(xs,ys,InterpolationMethod.Polynomial)
+
+match coef with
+| InterpolationCoefficients.PolynomialCoef x -> x.C0_CX.Length
+
+//coef.GetPolynomialCoef() //available from 0.5.1
+
16
As proved in the cell above, there are n coefficients defining a polynomial of degree n-1. To check the resulting polynomial curve, the function is plotted with a small step size to investigate the regions between the knots in detail
+ +// by using Interpolation.predict(coef) x you can predict any point on the curve
+let interpolationChart =
+ [0. .. 0.005 .. 3.] |> List.map (fun x -> x,Interpolation.predict(coef) x) |> Chart.Line |> Chart.withTraceInfo "interpol_polynomial"
+
+[
+Chart.Point(xs,ys,Name="raw")
+interpolationChart
+Chart.Point([2.19,Interpolation.predict(coef) 2.19],Name="prediction")
+]
+|> Chart.combine
+|> Chart.withTemplate ChartTemplates.lightMirrored
+
As seen above the resulting interpolating function is worse than the connecting straights. A common problem of polynomial interpolation is Runge's phenomenon, also called Runge's spikes. The only constraints the function must satisfy is to pass through the knots. Obviously between the knots the prediction is quite bad, because it wasn't optimised to be smooth (as in e.g. cubic spline interpolation).
+This overfitting gets more extreme the nearer it is to the outmost segments. Thereby the interpolation function is rendered useless for predicting internal points or calculating slopes/integrals. Imagine you should calculate the integral of the range [0,0.2], which obviously should be approximately 1.05 (xRange=0.2, yRange=5.25), but definetely greater than 0.
+ +Interpolation.getIntegralBetween(coef,0.,0.2) // available from version 0.5.1
+
-10.429018827227397
Because of the spikes, the integral is totally unintuitive and its likely, that the result is wrong. It would be detrimental if this function approximation is used to investigate signal properties.
+A clever way of reducing the occurence of these wiggles is to use an x value spacing accrding to Chebyshev. Thereby the x values are not sorted equally spaced like it is common for such interpolation tasks. Instead, they are expanded in the signal center and compressed to the outward knots. This is achieved by streching the x values to a semicircle and from there projecting the x values back to a linear axis. In the picture seen below (from M.Scroggs), x values are equally spaced onto a semicircle and subsequently back projected to the linear x axis. Thereby the desired spacing is achieved.
+ +Mathematically the transformation it is defined within the interval [a,b] as:
+In FSharp.Stats this can be done as follows. The spacing of the x values is visualized as scatter plot.
+ +// new x values are determined in the x axis range of the data. These should reduce overshooting behaviour.
+// since the original data consisted of 16 points, 16 nodes are initialized within the original interval
+let xs_cheby =
+ Interpolation.Approximation.chebyshevNodes (Interval.CreateClosed<float>(0.,3.)) 16
+
+[
+Chart.Point(x=xs, y=Array.init xs_cheby.Length (fun _ -> 0.), Name="Original knots")
+Chart.Point(x=xs_cheby, y=Array.init xs_cheby.Length (fun _ -> 1.), Name="Chebyshev knots")
+]
+|> Chart.combine
+|> Chart.withTemplate ChartTemplates.lightMirrored
+
Of course the corresponding y values are missing. Here linear spline are used to predict the new function values at the chebyshev knots (Note: Alternatively, you could predict them by using cubic interpolating splines).
+ +// to get the corresponding y values to the xs_cheby a linear spline is generated that approximates the new y values
+let ys_cheby =
+ let ls = Interpolation.LinearSpline.interpolate xs ys
+ xs_cheby |> Vector.map (Interpolation.LinearSpline.predict ls)
+
+[
+ chebyChart
+ Chart.Line(xs_cheby,ys_cheby,Name="transformed signal",ShowMarkers=true)
+]
+|> Chart.combine
+
With the new data, a simple polynomial interpolation is performed as before. Of course these procedures can be achieved directly by calling Interpolation.Approximation.approxWithPolynomialFromValues
.
// again polynomial interpolation coefficients are determined, but here with the x and y data that correspond to the chebyshev spacing
+let coeffs_cheby = Interpolation.Polynomial.interpolate xs_cheby ys_cheby
+
+
+// Note: the upper panels can be summarized by the following function:
+// returns the polynomical coefficients that approximate the given data
+let polynomialCoefficients = Interpolation.Approximation.approxWithPolynomialFromValues(xData=xs,yData=ys,n=16,spacing=Interpolation.Approximation.Spacing.Chebyshev)
+
+polynomialCoefficients
+
{ C0_CX =\n vector [|5.019201925; -0.7533214741; 88.83097648; -931.9524978; 5021.556986;\n -16205.09493; 34581.04672; -51920.40174; 56337.21571; -44418.89323;\n 25289.04892; -10235.17511; 2861.178305; -523.8910412; 56.45234065;\n -2.711273142|] }
C0_CX |
|
InternalValues | [ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ] | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Values | [ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ] | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
OpsData |
|
Value |
|
16
16
FSharp.Stats.Instances+FloatNumerics@116
vector [5.019201925;-0.7533214741;88.83097648;-931.9524978;5021.556986;-16205.09493;34581.04672;-51920.40174;56337.21571;-44418.89323;25289.04892;-10235.17511;2861.178305;-523.8910412;56.45234065;-2.711273142]
Capacity | 209 |
MaxCapacity | 2147483647 |
Length | 209 |
[ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ]
[ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ]
[ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ]
InternalValues | [ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ] | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Values | [ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ] | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
OpsData |
|
Value |
|
16
16
FSharp.Stats.Instances+FloatNumerics@116
rowvec [5.019201925;-0.7533214741;88.83097648;-931.9524978;5021.556986;-16205.09493;34581.04672;-51920.40174;56337.21571;-44418.89323;25289.04892;-10235.17511;2861.178305;-523.8910412;56.45234065;-2.711273142]
Capacity | 209 |
MaxCapacity | 2147483647 |
Length | 209 |
[ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ]
[ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ]
[ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ]
InternalValues | [ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ] | ||||||||||||||||||||||||||||||||||||||||||||||||||||
Values | [ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ] | ||||||||||||||||||||||||||||||||||||||||||||||||||||
OpsData |
|
Value |
|
16
16
FSharp.Stats.Instances+FloatNumerics@116
vector [5.019201925;-0.7533214741;88.83097648;-931.9524978;5021.556986;-16205.09493;34581.04672;-51920.40174;56337.21571;-44418.89323;25289.04892;-10235.17511;2861.178305;-523.8910412;56.45234065;-2.711273142]
Capacity | 209 |
MaxCapacity | 2147483647 |
Length | 209 |
[ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ]
[ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ]
[ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ]
InternalValues | [ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ] | ||||||||||||||||||||||
Values | [ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ] | ||||||||||||||||||||||
OpsData |
|
Value | FSharp.Stats.Instances+FloatNumerics@116 |
16
16
FSharp.Stats.Instances+FloatNumerics@116
rowvec [5.019201925;-0.7533214741;88.83097648;-931.9524978;5021.556986;-16205.09493;34581.04672;-51920.40174;56337.21571;-44418.89323;25289.04892;-10235.17511;2861.178305;-523.8910412;56.45234065;-2.711273142]
Capacity | 209 |
MaxCapacity | 2147483647 |
Length | 209 |
[ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ]
[ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ]
[ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ]
InternalValues | [ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ] |
Values | [ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ] |
OpsData | Some(FSharp.Stats.Instances+FloatNumerics@116) |
Length | 16 |
NumRows | 16 |
ElementOps | FSharp.Stats.Instances+FloatNumerics@116 |
DebugDisplay | vector [5.019201925;-0.7533214741;88.83097648;-931.9524978;5021.556986;-16205.09493;34581.04672;-51920.40174;56337.21571;-44418.89323;25289.04892;-10235.17511;2861.178305;-523.8910412;56.45234065;-2.711273142] |
StructuredDisplayAsArray | [ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ] |
Details | [ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ] |
Transpose | [ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ] |
(values) | [ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ] |
[ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ]
[ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ]
[ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ]
[ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ]
FSharp.Stats.InterpolationModule+Polynomial+get_Predict@51
this |
|
C0_CX |
|
InternalValues | [ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ] | ||||||||||||||||||||||||||||||||||||||||||||||||||||
Values | [ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ] | ||||||||||||||||||||||||||||||||||||||||||||||||||||
OpsData |
|
Value |
|
16
16
FSharp.Stats.Instances+FloatNumerics@116
vector [5.019201925;-0.7533214741;88.83097648;-931.9524978;5021.556986;-16205.09493;34581.04672;-51920.40174;56337.21571;-44418.89323;25289.04892;-10235.17511;2861.178305;-523.8910412;56.45234065;-2.711273142]
Capacity | 209 |
MaxCapacity | 2147483647 |
Length | 209 |
[ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ]
[ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ]
[ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ]
InternalValues | [ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ] | ||||||||||||||||||||||
Values | [ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ] | ||||||||||||||||||||||
OpsData |
|
Value | FSharp.Stats.Instances+FloatNumerics@116 |
16
16
FSharp.Stats.Instances+FloatNumerics@116
rowvec [5.019201925;-0.7533214741;88.83097648;-931.9524978;5021.556986;-16205.09493;34581.04672;-51920.40174;56337.21571;-44418.89323;25289.04892;-10235.17511;2861.178305;-523.8910412;56.45234065;-2.711273142]
Capacity | 209 |
MaxCapacity | 2147483647 |
Length | 209 |
[ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ]
[ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ]
[ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ]
InternalValues | [ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ] |
Values | [ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ] |
OpsData | Some(FSharp.Stats.Instances+FloatNumerics@116) |
Length | 16 |
NumRows | 16 |
ElementOps | FSharp.Stats.Instances+FloatNumerics@116 |
DebugDisplay | vector [5.019201925;-0.7533214741;88.83097648;-931.9524978;5021.556986;-16205.09493;34581.04672;-51920.40174;56337.21571;-44418.89323;25289.04892;-10235.17511;2861.178305;-523.8910412;56.45234065;-2.711273142] |
StructuredDisplayAsArray | [ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ] |
Details | [ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ] |
Transpose | [ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ] |
(values) | [ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ] |
[ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ]
[ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ]
FSharp.Stats.InterpolationModule+Polynomial+get_Predict@51
this |
|
C0_CX |
|
InternalValues | [ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ] |
Values | [ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ] |
OpsData | Some(FSharp.Stats.Instances+FloatNumerics@116) |
Length | 16 |
NumRows | 16 |
ElementOps | FSharp.Stats.Instances+FloatNumerics@116 |
DebugDisplay | vector [5.019201925;-0.7533214741;88.83097648;-931.9524978;5021.556986;-16205.09493;34581.04672;-51920.40174;56337.21571;-44418.89323;25289.04892;-10235.17511;2861.178305;-523.8910412;56.45234065;-2.711273142] |
StructuredDisplayAsArray | [ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ] |
Details | [ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ] |
Transpose | [ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ] |
(values) | [ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ] |
FSharp.Stats.InterpolationModule+Polynomial+get_Predict@51
this | { C0_CX = + vector [|5.019201925; -0.7533214741; 88.83097648; -931.9524978; 5021.556986; + -16205.09493; 34581.04672; -51920.40174; 56337.21571; -44418.89323; + 25289.04892; -10235.17511; 2861.178305; -523.8910412; 56.45234065; + -2.711273142|] } |
Using the determined polynomial coefficients, the standard approach for fitting can be used to plot the signal together with the function approximation. The chebyshev spacing of the x-nodes drastically reduces the overfitting in the outer areas of the signal.
+ +// function using the cheby_coefficients to get y values of given x value
+let interpolating_cheby x = Interpolation.Polynomial.predict coeffs_cheby x
+
+let interpolChart_cheby =
+ let ys_interpol_cheby =
+ vector [|0. .. 0.01 .. 3.|]
+ |> Seq.map (fun x -> x,interpolating_cheby x)
+
+ Chart.Line(ys_interpol_cheby,Name="interpol_cheby")
+ |> Chart.withTemplate ChartTemplates.lightMirrored
+ |> Chart.withXAxisStyle "xs"
+ |> Chart.withYAxisStyle "ys"
+
+
+[
+chebyChart
+interpolationChart
+Chart.Line(xs_cheby,ys_cheby,ShowMarkers=true,Name="cheby_nodes") |> Chart.withTemplate ChartTemplates.lightMirrored|> Chart.withXAxisStyle "xs"|> Chart.withYAxisStyle "ys"
+interpolChart_cheby
+]
+|> Chart.combine
+|> Chart.withXAxisStyle "xs"
+|> Chart.withTitle(Title.init("Chebyshev spacing for function interpolation",X=0.5))
+|> Chart.withSize(800.,500.)
+|> Chart.withYAxisStyle "ys"
+|> Chart.withTemplate ChartTemplates.lightMirrored
+
Now we can again approximate the integral of the function between [0,0.2]. The result now should be much closer at the expected value of 1.05.
+ +coeffs_cheby.GetIntegralBetween 0. 0.2 // available from version 0.5.1
+
1.0508141233095727
Instead of starting from data points you can also transform any function you like to easy-to-use polynomials. This comes handy when investigating function properties with complex functions that cannot be differentiated easily. As seen below, a function with y +axial symmetry is approximated. While an even number of knots very well approximates the tails, an uneven number precisely predicts the center point. The simple interpolation with equally spaced points nicely depicts a drastic overshoot (Runge's phenomenon).
+ +// this example is the Runge function and is inspired by the wonderful blog post of Matthew Scroggs (https://www.mscroggs.co.uk/blog/57)
+let myFunctionToSimplify (x: float) =
+ 1. / (1. + 25. * x * x)
+
+// using 20 knots that are spaced according to chebyshev
+let myFunctionAsPolynomial_C20 = Interpolation.Approximation.approxWithPolynomial(myFunctionToSimplify,Interval.CreateClosed<float>(-1.,1.), 200, spacing=Interpolation.Approximation.Spacing.Chebyshev)
+// using 25 knots that are spaced according to chebyshev
+let myFunctionAsPolynomial_C25 = Interpolation.Approximation.approxWithPolynomial(myFunctionToSimplify,Interval.CreateClosed<float>(-1.,1.), 25, spacing=Interpolation.Approximation.Spacing.Chebyshev)
+// using 20 knots that are equally spaced
+let myFunctionAsPolynomial_E20 = Interpolation.Approximation.approxWithPolynomial(myFunctionToSimplify,Interval.CreateClosed<float>(-1.,1.), 20, spacing=Interpolation.Approximation.Spacing.Equally)
+
+[
+[-1. .. 0.01 .. 1.] |> List.map (fun x -> x,myFunctionToSimplify x) |> Chart.Line |> Chart.withTraceInfo("original function")
+[-1. .. 0.01 .. 1.] |> List.map (fun x -> x,myFunctionAsPolynomial_E20.Predict x) |> Chart.Line |> Chart.withTraceInfo("approximation(equally) k=20")
+[-1. .. 0.01 .. 1.] |> List.map (fun x -> x,myFunctionAsPolynomial_C20.Predict x) |> Chart.Line |> Chart.withTraceInfo("approximation(Chebyshev) k=20")
+[-1. .. 0.01 .. 1.] |> List.map (fun x -> x,myFunctionAsPolynomial_C25.Predict x) |> Chart.Line |> Chart.withTraceInfo("approximation(Chebyshev) k=25")
+]
+|> Chart.combine
+|> Chart.withTemplate ChartTemplates.lightMirrored
+|> Chart.withTitle(Title.init("Approximated Runges function",X=0.5))
+|> Chart.withSize(800.,500.)
+
16
-10.429018827227397
{ C0_CX =\\n vector [|5.019201925; -0.7533214741; 88.83097648; -931.9524978; 5021.556986;\\n -16205.09493; 34581.04672; -51920.40174; 56337.21571; -44418.89323;\\n 25289.04892; -10235.17511; 2861.178305; -523.8910412; 56.45234065;\\n -2.711273142|] }
C0_CX |
|
InternalValues | [ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ] | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Values | [ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ] | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
OpsData |
|
Value |
|
16
16
FSharp.Stats.Instances+FloatNumerics@116
vector [5.019201925;-0.7533214741;88.83097648;-931.9524978;5021.556986;-16205.09493;34581.04672;-51920.40174;56337.21571;-44418.89323;25289.04892;-10235.17511;2861.178305;-523.8910412;56.45234065;-2.711273142]
Capacity | 209 |
MaxCapacity | 2147483647 |
Length | 209 |
[ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ]
[ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ]
[ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ]
InternalValues | [ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ] | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Values | [ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ] | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
OpsData |
|
Value |
|
16
16
FSharp.Stats.Instances+FloatNumerics@116
rowvec [5.019201925;-0.7533214741;88.83097648;-931.9524978;5021.556986;-16205.09493;34581.04672;-51920.40174;56337.21571;-44418.89323;25289.04892;-10235.17511;2861.178305;-523.8910412;56.45234065;-2.711273142]
Capacity | 209 |
MaxCapacity | 2147483647 |
Length | 209 |
[ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ]
[ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ]
[ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ]
InternalValues | [ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ] | ||||||||||||||||||||||||||||||||||||||||||||||||||||
Values | [ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ] | ||||||||||||||||||||||||||||||||||||||||||||||||||||
OpsData |
|
Value |
|
16
16
FSharp.Stats.Instances+FloatNumerics@116
vector [5.019201925;-0.7533214741;88.83097648;-931.9524978;5021.556986;-16205.09493;34581.04672;-51920.40174;56337.21571;-44418.89323;25289.04892;-10235.17511;2861.178305;-523.8910412;56.45234065;-2.711273142]
Capacity | 209 |
MaxCapacity | 2147483647 |
Length | 209 |
[ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ]
[ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ]
[ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ]
InternalValues | [ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ] | ||||||||||||||||||||||
Values | [ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ] | ||||||||||||||||||||||
OpsData |
|
Value | FSharp.Stats.Instances+FloatNumerics@116 |
16
16
FSharp.Stats.Instances+FloatNumerics@116
rowvec [5.019201925;-0.7533214741;88.83097648;-931.9524978;5021.556986;-16205.09493;34581.04672;-51920.40174;56337.21571;-44418.89323;25289.04892;-10235.17511;2861.178305;-523.8910412;56.45234065;-2.711273142]
Capacity | 209 |
MaxCapacity | 2147483647 |
Length | 209 |
[ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ]
[ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ]
[ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ]
InternalValues | [ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ] |
Values | [ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ] |
OpsData | Some(FSharp.Stats.Instances+FloatNumerics@116) |
Length | 16 |
NumRows | 16 |
ElementOps | FSharp.Stats.Instances+FloatNumerics@116 |
DebugDisplay | vector [5.019201925;-0.7533214741;88.83097648;-931.9524978;5021.556986;-16205.09493;34581.04672;-51920.40174;56337.21571;-44418.89323;25289.04892;-10235.17511;2861.178305;-523.8910412;56.45234065;-2.711273142] |
StructuredDisplayAsArray | [ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ] |
Details | [ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ] |
Transpose | [ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ] |
(values) | [ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ] |
[ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ]
[ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ]
[ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ]
[ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ]
FSharp.Stats.InterpolationModule+Polynomial+get_Predict@51
this |
|
C0_CX |
|
InternalValues | [ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ] | ||||||||||||||||||||||||||||||||||||||||||||||||||||
Values | [ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ] | ||||||||||||||||||||||||||||||||||||||||||||||||||||
OpsData |
|
Value |
|
16
16
FSharp.Stats.Instances+FloatNumerics@116
vector [5.019201925;-0.7533214741;88.83097648;-931.9524978;5021.556986;-16205.09493;34581.04672;-51920.40174;56337.21571;-44418.89323;25289.04892;-10235.17511;2861.178305;-523.8910412;56.45234065;-2.711273142]
Capacity | 209 |
MaxCapacity | 2147483647 |
Length | 209 |
[ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ]
[ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ]
[ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ]
InternalValues | [ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ] | ||||||||||||||||||||||
Values | [ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ] | ||||||||||||||||||||||
OpsData |
|
Value | FSharp.Stats.Instances+FloatNumerics@116 |
16
16
FSharp.Stats.Instances+FloatNumerics@116
rowvec [5.019201925;-0.7533214741;88.83097648;-931.9524978;5021.556986;-16205.09493;34581.04672;-51920.40174;56337.21571;-44418.89323;25289.04892;-10235.17511;2861.178305;-523.8910412;56.45234065;-2.711273142]
Capacity | 209 |
MaxCapacity | 2147483647 |
Length | 209 |
[ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ]
[ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ]
[ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ]
InternalValues | [ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ] |
Values | [ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ] |
OpsData | Some(FSharp.Stats.Instances+FloatNumerics@116) |
Length | 16 |
NumRows | 16 |
ElementOps | FSharp.Stats.Instances+FloatNumerics@116 |
DebugDisplay | vector [5.019201925;-0.7533214741;88.83097648;-931.9524978;5021.556986;-16205.09493;34581.04672;-51920.40174;56337.21571;-44418.89323;25289.04892;-10235.17511;2861.178305;-523.8910412;56.45234065;-2.711273142] |
StructuredDisplayAsArray | [ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ] |
Details | [ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ] |
Transpose | [ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ] |
(values) | [ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ] |
[ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ]
[ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ]
FSharp.Stats.InterpolationModule+Polynomial+get_Predict@51
this |
|
C0_CX |
|
InternalValues | [ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ] |
Values | [ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ] |
OpsData | Some(FSharp.Stats.Instances+FloatNumerics@116) |
Length | 16 |
NumRows | 16 |
ElementOps | FSharp.Stats.Instances+FloatNumerics@116 |
DebugDisplay | vector [5.019201925;-0.7533214741;88.83097648;-931.9524978;5021.556986;-16205.09493;34581.04672;-51920.40174;56337.21571;-44418.89323;25289.04892;-10235.17511;2861.178305;-523.8910412;56.45234065;-2.711273142] |
StructuredDisplayAsArray | [ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ] |
Details | [ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ] |
Transpose | [ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ] |
(values) | [ 5.019201924823986, -0.7533214741322293, 88.83097647738644, -931.9524977725528, 5021.556985929983, -16205.094934904337, 34581.04671553936, -51920.40174004338, 56337.215710140226, -44418.8932327272, 25289.048919873298, -10235.175112455037, 2861.17830460304, -523.8910411644107, 56.452340646091066, -2.7112731416610663 ] |
FSharp.Stats.InterpolationModule+Polynomial+get_Predict@51
this | { C0_CX =\n", + " vector [|5.019201925; -0.7533214741; 88.83097648; -931.9524978; 5021.556986;\n", + " -16205.09493; 34581.04672; -51920.40174; 56337.21571; -44418.89323;\n", + " 25289.04892; -10235.17511; 2861.178305; -523.8910412; 56.45234065;\n", + " -2.711273142|] } |
1.0508141233095727