【问题标题】:.Net Matrix [closed].Net 矩阵 [关闭]
【发布时间】:2008-12-25 17:55:23
【问题描述】:

是否有标准的 .Net 矩阵类?有的话我找不到。

如果不是,为什么不呢?这听起来像是人们经常需要的东西。您可以推荐任何非标准库吗?

【问题讨论】:

    标签: .net matrix


    【解决方案1】:

    XNA 框架具有矩阵结构。我不知道主框架的任何部分都有一个 Matrix 类。

    http://msdn.microsoft.com/en-us/library/microsoft.xna.framework.matrix.aspx

    【讨论】:

      【解决方案2】:

      我不相信有,部分原因是任何数组在技术上都可以称为“矩阵”,如果它是长度为 n 的一维数组,它是一个 n x 1 矩阵。还有一个问题是您是否希望矩阵保存整数、双精度数或其他可能在某些 Matrix 函数中起作用的数值。

      确实存在诸如herehere 之类的不同地方,它们可能会将某些矩阵类与其他线性代数函数捆绑在一起。

      【讨论】:

        【解决方案3】:

        您可以在Lydos.MatLab library (documentation) 中找到一个 Matrix 类,它作为开源项目在zlib/libpng license 下分发。

        C# 中的示例用法:

        using Lydos.Matlab;
        using System;
        
        public class Example
        {
            static void Main()
            {
                Engine e = new Engine();
                Matrix m = new Matrix(2, 2), n;
        
                m[0, 0] = 0;
                m[0, 1] = 1;
                m[1, 0] = 2;
                m[1, 1] = 3;
        
                e.SetMatrix("m", m);
                e.Evaluate("m = m + 1");
                n = e.GetMatrix("m");
        
                Console.WriteLine(m); // [0 1; 2 3]
                Console.WriteLine(n); // [1 2; 3 4]
        
                m.Dispose();
                n.Dispose();
                e.Close();
            }
        }
        

        【讨论】:

        • 请注意,此库与 Matlab 执行互操作,这可能会在许多情况下排除它。
        猜你喜欢
        • 2010-10-24
        • 2021-11-12
        • 1970-01-01
        • 2012-06-04
        • 1970-01-01
        • 1970-01-01
        • 2020-12-05
        • 2021-07-04
        • 1970-01-01
        相关资源
        最近更新 更多