2017-07-28 31 views
0

我只是測試,看看我是否可以利用math.Net數字爲即將到來的線性代數類,我有麻煩。我通常使用R和Python,但我覺得要測試一下。我從字面上看是全新的Visual Studio。出於某種原因,當我嘗試僅測試如何腳本例如下面這個網站的第一個例子時,我得到了26錯誤。我在NuGet Package Manager中添加了math.Net Numerics 3.20.0。我也附加了我的UI的樣子。任何人都知道我需要如何啓動腳本。我需要用類和方法打開嗎? enter image description here如何在視覺工作室中使用math.Net數字

https://numerics.mathdotnet.com/#Using-Math-NET-Numerics-with-C

下面是代碼:

using MathNet.Numerics.LinearAlgebra; 
using MathNet.Numerics.LinearAlgebra.Double; 

Matrix<double> A = DenseMatrix.OfArray(new double[,] { 
     {1,1,1,1}, 
     {1,2,3,4}, 
     {4,3,2,1}}); 
Vector<double>[] nullspace = A.Kernel(); 

// verify: the following should be approximately (0,0,0) 
(A* (2* nullspace[0] - 3* nullspace[1])) 

這裏有錯誤,當我複製和粘貼代碼到VS.新項目

錯誤CS8124元組必須包含至少兩個元素。 錯誤CS1026)預計 錯誤CS1031類型預計
錯誤CS8124元組必須包含至少兩個元素。
錯誤CS1026)預期
錯誤CS1022型或命名空間定義,或 - 的文件結束預定
錯誤CS1031型預期
錯誤CS0650爲數組聲明:要聲明一個管理的陣列的秩指示符之前的變量的標識符。要聲明固定大小的緩衝區字段,請在字段類型之前使用fixed關鍵字。 錯誤CS0270無法在變量聲明中指定數組大小(嘗試用'新'表達式初始化) 錯誤CS1002;預計 錯誤CS1022類型或名稱空間定義或文件結束預期
錯誤CS1031類型預計
錯誤CS0650錯誤數組聲明符:要聲明託管數組,排名說明符位於變量的標識符之前。要聲明固定大小的緩衝區字段,請在字段類型之前使用fixed關鍵字。
錯誤CS0270無法在變量聲明中指定數組大小(嘗試使用'新'表達式進行初始化) 錯誤CS1002;預期
錯誤CS1022型或命名空間定義,或預期
錯誤CS0116命名空間不能直接包含成員如字段或方法文件結束-
錯誤CS0116命名空間不能直接包含成員如字段或方法 錯誤CS0214指針和固定大小的緩衝區只能在不安全的環境中使用
錯誤CS0208無法獲取託管類型('?')的地址,獲取大小或聲明指針
錯誤CS0102類型''已經包含定義 錯誤CS0214指針和固定大小的緩衝區只能用於不安全的地址 錯誤CS0208無法取地址,獲取大小或者聲明指向託管類型的指針('?') 錯誤CS0102類型''已包含定義
錯誤CS0103當前上下文中不存在名稱'A'
錯誤CS0103名稱'A'在當前上下文中不存在。

回答

1

NVM計算出來。

using System; 
using MathNet.Numerics.LinearAlgebra; 
using MathNet.Numerics.LinearAlgebra.Double; 


namespace check1 
{ 
    class Program 
    { 
     static void Main(string[] args) 
     { 
      Matrix<double> A = DenseMatrix.OfArray(new double[,] { 
     {1,1,1,1}, 
     {1,2,3,4}, 
     {4,3,2,1}}); 
      Vector<double>[] nullspace = A.Kernel(); 

      // verify: the following should be approximately (0,0,0) 
      Console.Write(A * (2 * nullspace[0] - 3 * nullspace[1])); 
      Console.Read(); 
     } 
    } 
}