博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Math.Net Hello,World
阅读量:5768 次
发布时间:2019-06-18

本文共 1359 字,大约阅读时间需要 4 分钟。

hot3.png

Math.Net DotNet阵营中的开源Math库,官网为www.mathdotnet.com。

高数、线代等知识已经忘得差不多了,MathNet的相关中文资料好像也不多,真有点费力气。

VS中使用Math.Net 可以直接用Nuget添加MathNet.Numerics。

下面测试一个最简单的线性方程组:

1.建立左侧的系数矩阵

1  1
1 -1

var ma = DenseMatrix.OfArray(new double[,] {
{1, 1}, {1, -1}});

2.建立右侧的矩阵或向量

var va = Vector
.Build.DenseOfArray(new double[] {3,1});//向量
var mb = DenseMatrix.OfArray(new double[,] {
{3}, {1}});//矩阵

3.求解

//var mx = ma.Solve(va);var mx = ma.Solve(mb);

源代码如下:

using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;using MathNet.Numerics.LinearAlgebra;using MathNet.Numerics.LinearAlgebra.Double;namespace ConsoleDemo{    class Program    {        static void Main(string[] args)        {            /*            var ma = DenseMatrix.OfArray(new double[,] {
{1, 1}, {1, -1}}); var va = Vector
.Build.DenseOfArray(new double[] {3,1}); var mx = ma.Solve(va); Console.WriteLine(mx.ToString()); Console.ReadLine(); */ var ma = DenseMatrix.OfArray(new double[,] { { 1, 1 }, { 1, -1 } }); var mb = DenseMatrix.OfArray(new double[,] {
{3}, {1}}); var mx = ma.Solve(mb); Console.WriteLine(mx.ToString()); Console.ReadLine(); } }}

转载于:https://my.oschina.net/fdstudio/blog/872734

你可能感兴趣的文章
PJ Naughter CSerialPort
查看>>
软件測试自学指南---从入门到精通
查看>>
JDBC连接oracle RAC数据库配置
查看>>
【读书笔记《Android游戏编程之从零开始》】20.游戏开发基础(游戏数据存储)...
查看>>
【消息】Pivotal Pivots 开源大数据处理的核心组件
查看>>
MapGuide应用程序演示样例——你好,MapGuide!
查看>>
cocos2d-x 3.0 rapidJson 解析操作应该注意的细节
查看>>
oracle 索引的(创建、简介、技巧、怎样查看)
查看>>
用脚本定时监控SQL Server主从一致性
查看>>
类模版的static成员
查看>>
LeetCode - Valid Parentheses
查看>>
ANDROID对文件的操作
查看>>
用互联网思维来开发客户端软件——项目开发小结
查看>>
CSS中脱离文档流是什么意思?
查看>>
ExtJS智能提示工具spket安装与破解
查看>>
[LeetCode] Regular Expression Matching 正则表达式匹配
查看>>
Shader的语法
查看>>
PowerDesigner导出表到word
查看>>
[AngularJS] angular-formly: expressionProperties
查看>>
Android实现视频录制
查看>>