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. Implement an extension method ".ToVector()" for convert a IEnumberable to a Vector

    if it is possible, an extension method ".ToMatrix()" would be also helpful

    thank you~

    1 vote
    Vote
    Sign in
    (thinking…)
    Sign in with: facebook google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  2. 1 vote
    Vote
    Sign in
    (thinking…)
    Sign in with: facebook google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  3. Improving sparse matrix storage CRS by allowing the user to provide the sparsity structure of the matrix.

    I'm new to math.net, but I've found some issues with the libraries.

    One of these is related to sparsematrix and sparsecompressedrowstorage

    I've also wrote a post within the discussion forum, but I've recieved no response.

    The problem is simple: I've tried desperately to find a way to assign directly the sparse matrix in CRS format, but I've failed.
    It seems that the CSR must be constructed starting from an already existing matrix. This would imply a big performace issue and memory allocation problems.
    For istance, if one want to write a program to solve some physical problem with finite element…

    1 vote
    Vote
    Sign in
    (thinking…)
    Sign in with: facebook google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  4. Fix splines so that they can handle general lines

    When adding the points of a circle ( Cos(t), sin(t) ) for t the values [0,6.28], I get complete garbage out.
    It seems that the splines are unable to handle ambiguous values for y for a given x.
    Splines should have a independent variable t, on which x and y depend. It seems this implementation has a t that somehow is coupled to x.
    Interpolate should for example return a point, and the differentiate should return a vector for a given point.

    1 vote
    Vote
    Sign in
    (thinking…)
    Sign in with: facebook google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  5. Multidimensional Arrays Support

    Support multidimensional array and tensors with higher than 2D (i.e. Matrix). This would open Math.Net to more users who need this functionality daily.

    3 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: facebook google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  6. Dense and sparse matrix slicing based on input user defined indices

    This should allow functionality similar to MATLAB:
    Suppose that A is the following matrix

    A = [ 10 20 30 40 ;
    11 21 31 41;
    12 22 32 42;
    13 23 33 43]

    and I = { 1, 2, 4 } and J = { 3, 4 }

    A_IJ = A[I, J]

    should return a slice of the matrix according to the indices specified:
    A_IJ = [ 30 40;
    31 41;
    33 43 ]

    The same idea is very useful for arrays and it should work in both directions, for example:

    A[I, J] += some_3by2_matrix;

    The same for sparse…

    1 vote
    Vote
    Sign in
    (thinking…)
    Sign in with: facebook google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  7. Dense and sparse matrix slicing based on input user defined indices

    This should allow functionality similar to MATLAB:
    Suppose that A is the following matrix

    A = [ 10 20 30 40 ;
    11 21 31 41;
    12 22 32 42;
    13 23 33 43]

    and I = { 1, 2, 4 } and J = { 3, 4 }

    A_IJ = A[I, J]

    should return a slice of the matrix according to the indices specified:
    A_IJ = [ 30 40;
    31 41;
    33 43 ]

    The same idea is very useful for arrays and it should work in both directions, for example:

    A[I, J] += some_3by2_matrix;

    The same for sparse…

    0 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: facebook google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  8. Implement the Studentized range distribution

    https://en.wikipedia.org/wiki/Studentized_range_distribution

    This distribution is used in the Tukey test for post hoc analysis of an ANOVA test.

    6 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: facebook google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  9. Implement finding extrema for cubic splines

    I wanted to find extrema for a spline and had to implement it by myself, using the CubicSpline.cs of MathNet.Numerics. Unfortunately the Class is constructes thus, that I could not access the spline parameters which would have allowed my to simply write an extension method.

    I propose the following addition to the class "CubicSpline":

    public enum eExtremePointType
    {
    Minimum, Maximum
    }

    public class cExtremePointResult
    {
    public eExtremePointType Type { get; private set; }
    public double x { get; private set; }
    public double y [get;private set;}

    public cExtremePointResult(double in_x, double in_y, eExtremePointType in_type)
    {
    x=in_x;
    y=in_y;
    Type=in_type;
    }
    }

    ///…

    3 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: facebook google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  10. Eiganvalues and Eiganvectors

    A function that can evaluate a square matrix for eiganvalues and eiganvectors similar to MATLAB's eig() function.

    1 vote
    Vote
    Sign in
    (thinking…)
    Sign in with: facebook google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  11. 1 vote
    Vote
    Sign in
    (thinking…)
    Sign in with: facebook google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  12. Valuation of top eigenvalues/eigenvectors only

    Hi,

    CPU time to perform Matrix diagonalization scales like n^3 where n is the size of the matrix. In many applications, however, one needs to know the top eigenvalues/eigenvectors only.
    MKL provides this: "LAPACKE_dsyevr" where one can select how many eigenvalues one wants to compute.
    Would be great if this functionality was available in mathnet!

    1 vote
    Vote
    Sign in
    (thinking…)
    Sign in with: facebook google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  13. Implement Selected MATLAB Core Functionality

    Implement a new class which is intended to provide syntax matched core MATLAB functionalities, such as flip(), linspace(), etc. I know linspace() and logspace() are already present with reordered inputs, but matching MATLAB syntax would prevent a lot of rewriting. Some of these could simply be wrappers for existing Math.NET functions, just so syntax matches.

    Validation of this functionality would be such that inputs/outputs match the MATLAB implementation. Simple functions at the start, and more complex ones as time goes on.

    3 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: facebook google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    planned  ·  2 comments  ·  Flag idea as inappropriate…  ·  Admin →
  14. Add trigonometrical functions for degrees

    For most cases it can be overcome with multiplying pi/180 and using loops, but it would make code simpler. Coming from Octave/Matlab it is something I am used to have

    2 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: facebook google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    3 comments  ·  Flag idea as inappropriate…  ·  Admin →
  15. Add Matrix indexing using int arrays for row and columns indices to give sub matrix

    Allow the following A[row, cols] where each of rows and cols are int arrays.

    1 vote
    Vote
    Sign in
    (thinking…)
    Sign in with: facebook google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  16. Implement SetSubMatrix(int[] rowIndices, int[] columnIndices, Matrix<T> subMatrix)

    Implement method:

    Matrix<T>.SetSubMatrix(int[] rowIndices, int[] columnIndices, Matrix<T> subMatrix)

    where

    int[] rowIndices
    The row indices to copy to.

    int[] columnIndices
    The column indices to copy to.

    Matrix<T> subMatrix
    The sub-matrix to copy from.

    This would enable us to set a larger number of entries at the same time.

    1 vote
    Vote
    Sign in
    (thinking…)
    Sign in with: facebook google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  17. Geometric Problems - Like Adjacent Points

    Where's the namespace for geometric problems?

    2 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: facebook google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  18. 4 votes
    Vote
    Sign in
    (thinking…)
    Sign in with: facebook google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  19. support infinite precision

    I really love the infinite precision feature of Google's Android Calculator. If you enter a number like π, e, φ, √2, √3, √5, etc., you can scroll to the right to get an infinite number of digits.

    Such calculations should be supported by Math.NET Numerics, where results can get queried to get more (decimal) digits. Something like an IEnumerable<DecimalDigit> interface.

    1 vote
    Vote
    Sign in
    (thinking…)
    Sign in with: facebook google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
  20. 1 vote
    Vote
    Sign in
    (thinking…)
    Sign in with: facebook google
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    0 comments  ·  Flag idea as inappropriate…  ·  Admin →
← Previous 1 3 4
  • Don't see your idea?

Math.NET Numerics

Feedback and Knowledge Base