Math.NET Numerics

Welcome to our official feedback forum. Do you have an idea? Do you recognize a good idea when you see one? We want to hear from you!

I suggest you ...

You've used all your votes and won't be able to post a new idea, but you can still search and comment on existing ideas.

There are two ways to get more votes:

  • When an admin closes an idea you've voted on, you'll get your votes back from that idea.
  • You can remove your votes from an open idea you support.
  • To see ideas you have already voted on, select the "My feedback" filter and select "My open ideas".
(thinking…)

Enter your idea and we'll search to see if someone has already suggested it.

If a similar idea already exists, you can support and comment on it.

If it doesn't exist, you can post your idea so others can support it.

Enter your idea and we'll search to see if someone has already suggested it.

  1. 12 votes
    Vote
    Sign in
    (thinking…)
    Password icon
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    1 comment  ·  Flag idea as inappropriate…  ·  Admin →
  2. Performance increase using structs instead of classes?

    Hi,
    First, congratulations for this ongoing work! I came to Math.Net after attempting to create my own libraries, so here is an idea which my be of a help.

    The idea would be to use Structs to define matrices instead of Classes to improve performance.

    As mentioned above, I did a check with a homemade matrix class and another one being a matrix struct, and for matrices up to 5000X5000 structs are circa 10 times faster for matrix multiplication.

    I compared Math.Net with MKL against matlab and it appears to be circa 2 times slower for such matrix sizes. This…

    21 votes
    Vote
    Sign in
    (thinking…)
    Password icon
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  3. PCG Random support

    Implement support for the PCG random routine as specified here:
    PCG, A Family of Better Random Number Generators
    http://www.pcg-random.org/

    6 votes
    Vote
    Sign in
    (thinking…)
    Password icon
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  4. Histogram should allow custom bucket definition

    The existing constructors of the Histogram function allow for a defined number of buckets or a defined number of buckets with a lower and upper bound. It is also useful to specifically define the buckets. For example, I need to do a histogram of a double[] array in increments of 0.5.

    1 vote
    Vote
    Sign in
    (thinking…)
    Password icon
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  5. Vector Autoregression

    I am a finance professional who is currently using python to run vector autogression. I would prefer to implement in a .NET stack.

    The python library is called statstools and there is a similar package in R called VAR.

    https://github.com/statsmodels/statsmodels/blob/master/docs/source/vector_ar.rst#id5

    I am happy to get involved in adding this feature but may need support.

    1 vote
    Vote
    Sign in
    (thinking…)
    Password icon
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  6. estimate

    I love the Estimate function on some of the distributions in the statistical namespace. Chould we try to expand it to be included in IDistribution or IContinuousDistribution and all distributions. I have the code for some more.

    1 vote
    Vote
    Sign in
    (thinking…)
    Password icon
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    planned  ·  0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  7. Fix a dimensionality bug in the SparseMatrix solve method

    I am using the solve method on a DenseMatrix and two vectors. When I try to use the same method but with a SparseMatrix, I get a dimensionality error saying that all vectors must be the same dimensions.

    I believe the method asserts that the input vector is of the same length as the matrix's number of columns, and probably should check against the matrix's number of rows.

    2 votes
    Vote
    Sign in
    (thinking…)
    Password icon
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  8. Introduce support for homogeneous coordinates

    The usage of homogeneous coordinates is quite natural.in drawing software, so support for vector manipulations using homogeneous coordinates would be intersting.

    4 votes
    Vote
    Sign in
    (thinking…)
    Password icon
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  9. 1 vote
    Vote
    Sign in
    (thinking…)
    Password icon
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  10. Implement the Gumbel ContinuousDistribution

    Implement the Gumbel ContinuousDistribution

    2 votes
    Vote
    Sign in
    (thinking…)
    Password icon
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  11. Implement 2D FFT

    Extend the FFT class to allow for 2d array. Use MKL to accelerate this.

    11 votes
    Vote
    Sign in
    (thinking…)
    Password icon
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    started  ·  1 comment  ·  Flag idea as inappropriate…  ·  Admin →
  12. add a distributed multidimensional array type (or at least matrix)

    Languages like Fortran 2008, Julia & Spark framework have a distributed array type. This allows to describe distributed algorithms in a natural way close to the underlying mathematics instead in a convoluted way (map reduce like Hadoop). I'd like to have the same in .NET.

    3 votes
    Vote
    Sign in
    (thinking…)
    Password icon
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  13. implement a machine learning library

    For modern datascience we need machine learning. Hence for .NET a modern machine learning library would be very welcome, especially one with a good F# interface. It should contain the most used standard algorithms & models like

    - clustering: k-means, spectral clustering, kernel k-means, gaussian mixture, ...
    - classification & regression: (regularized) generalized linear models , neural networks (classic & deep learning), kernel models (SVM, kernel logistic regression,...), probabilistic (max likelihood) & Bayesian methods/graphical models/gaussian processes, decision trees & random forests,...
    - ensemble methods (bagging, boosting,...)
    - dim reduction (SVD, kernel SVD, manifold learning, sparse representations (L1 regularization),...)
    - probabilistic…

    51 votes
    Vote
    Sign in
    (thinking…)
    Password icon
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  14. Please consider implementing excel functions PPMT,IPMT,PMT,CUMIPMT,CUMPRINC

    These are the financial functions used by banks. The applications using math.net will be more richer if it can have below functions PPMT,IPMT,PMT,CUMIPMT,CUMPRINC

    4 votes
    Vote
    Sign in
    (thinking…)
    Password icon
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  15. 10 votes
    Vote
    Sign in
    (thinking…)
    Password icon
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  16. To match and provide formulas for statistical and engineering capabilities as in Excel...

    Can provide the calculation abilities of what excel inbuilt formula does as a part of framework This include formula related to statistical and engineering capabilities.

    1 vote
    Vote
    Sign in
    (thinking…)
    Password icon
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  17. Levinson Decomposition

    Levinnson Decomposition (both symmetric and non symmetric) was available in dnAnalytics 0.2 and are highly popular in signal processing. (via alibeirami)

    1 vote
    Vote
    Sign in
    (thinking…)
    Password icon
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  18. Matrix multiply-add, like DGEMM

    BLAS has something like DGEMM which does X = a*A*B + b*X in one loop. This can be very fast, so allowing direct use of this would be handy.

    3 votes
    Vote
    Sign in
    (thinking…)
    Password icon
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  19. Add the "Periodic" to "SplineBoundaryCondition" on MathNet.Numerics.Interpolation

    Currently, the condition Natural/ParaboricallyTerminated/FirstDerivative/SecondDerivative are on "SplineBoundaryCondition", but I'd like to add Periodic on it(I guess this is equivalent to "csape" on MATLAB).

    1 vote
    Vote
    Sign in
    (thinking…)
    Password icon
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  20. Add full multigrid solver (FMG) for boundary value problems, e.g. the Poisson equation.

    Many simluation and some image processing tasks require solving differential equations, such as heat equation and linear elliptic equation (Poisson equation).

    In case of 2D data (images), these become partial differential equations (PDEs).

    These can be solved in linear time using multigrid preconditioner with some relaxation scheme (Gauss-Seidel, CG, biCG).

    Some reference, including source code, can be found in Press et al.: "Numerical Recipes, 3rd edition".

    1 vote
    Vote
    Sign in
    (thinking…)
    Password icon
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  • Don't see your idea?

Math.NET Numerics

Feedback and Knowledge Base