Quantcast
Channel: Math.NET Numerics
Viewing all articles
Browse latest Browse all 971

New Post: Iterative solver experience numerical break down

$
0
0
Can you save the matrix + rhs and upload a zipped version?

Use the MathNet.Numerics.LinearAlgebra.Double.IO namespace or the following code (assuming it's a real valued matrix)
publicvoid Save(SparseMatrix matrix, string filename)
{
    var nfi = CultureInfo.InvariantCulture.NumberFormat;

    int i, j, k, n = matrix.NonZerosCount;
    double value;

    var storage = matrix.IndexedEnumerator();

    using (var writer = new StreamWriter(filename))
    {
        // Write header 1 (format)
        writer.WriteLine("%%MatrixMarket matrix coordinate real general");

        // Write header 2 (size)
        writer.WriteLine("{0} {1} {2}", matrix.RowCount, matrix.ColumnCount, n);

        string iformat = "{0," + (matrix.RowCount.ToString().Length + 1) + "}";
        string dformat = "e10";
        string sformat = "{0,20}";

        // Write entriesforeach (var entry in storage)
        {
            i = entry.Item1;
            j = entry.Item2;
            value = entry.Item3;

            writer.Write(iformat, i);
            writer.Write(iformat, j);
            writer.Write(sformat, value.ToString(dformat, nfi));
            writer.WriteLine();
        }
    }
}

Viewing all articles
Browse latest Browse all 971

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>