We need a smoothing spline function in C# (natrual cubic spline with smoothing parameter). This is a very easy & fast project.
You are expected to deliver the function in a .dll package. In addition you need to provide a test function that creates some random data points and plots them with the smoothing spline. You can use Zedgraph if you need a free plotting plugin (very easy to use).
The code needs to be very fast as it will be ran about 2000 times per second.
Here are the signature for the function:
//Smoothing parameter is between 0 and 1.
double SmoothOnePoint(List allPoints, double smoothingParameter, double pointToEvaluate)
double SmoothSeveralPoints(List allPoints, double smoothingParameter, List pointsToEvaluate)
double SmoothTest(double smoothingParameter, int numberOfPoints)
Algorithm (in Matlab code) is in the attached file.
Matlab code is very straight-forward, it can be ported as-is.
(you can also use the same code to test).