Feature Proposals autocorrelation, transfer function and autoregressive model


(Tobias Glaubach) #1

Hi,
over the last years I have written code for some features I could not find in the MathNet Library at the time. I think migrating them to MathNet would be a nice way of sharing.

The features I have written and tested are:

  • an autocorrelation function similar to pythons numpy function numpy.correlate
  • a class for working with LTI transfer functions similar to MATLABs tf and Scipys TransferFunction class (this feature depends on my own implementation of polynominal operations though, maybe I would need to migrate that to use MathNet polynominals).
  • a class for estimating and working with a LTI autoregressive model (AR-Model).

which features (if any) would be helpful to implement?

Tobi


(Tobias Glaubach) #2

just to make sure, my post is understood the right way: If you (the MathNet board members and users) think it’s a good Idea to have these features I would implement them in a branch send a pull request.


(Christoph Rüegg) #3

Hi Tobi

Great, thanks!

The autocorrelation function would fit very well to the Correlation class. I’d certainly accept a pull request on that.

I do have some background, albeit rusted, on LTI systems, so I’m also interested in your work here. I think it could also fit well into the scope of Numerics and is an area I’d like to expand into, so I’d certainly also accept a pull request here. But I suspect this area could also be interesting to work on in Symbolics.

Thanks,
Christoph


(Tobias Glaubach) #4

Ok, superb,
I will start implementing the features. I will implement the correlation function as a static method in the “Correlation” class and open a new Namespace for the LTI classes. Maybe “MathNet.Numerics.SystemModels” ?