使用MathNet.Numerics库构造矩阵并初始化时,编译器报错“this方法没有任何重载采用"1"个参数”

最近在使用MathNet.Numerics库作一些数据处理工作,构造一个矩阵并初始化时,编译器报错“this方法没有任何重载采用"1"个参数”。

问题分析:

构造的矩阵的维度是N*1,采用的方法是:

Matrix<float> Control_mat = Matrix<float>.Build.Dense(ComConstants.sDim, 1);

然后,再直接给该矩阵的某些元素赋值,方法如下:

            for (int i = 0; i < ComConstants.sDim; i++)
            {
                Control_mat[i] = 1.0F;
            }

此处,心里一直想着该矩阵是一个列向量,就无意间忘记了该矩阵实际上是二维的。真是大意!

解决办法:

该矩阵的第二维也需要指出元素索引,代码修改如下就不会报错了:

            for (int i = 0; i < ComConstants.sDim; i++)
            {
                Control_mat[i, 0] = 1.0F;
            }

 

posted @   rainbow70626  阅读(415)  评论(0编辑  收藏  举报
编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· 终于写完轮子一部分:tcp代理 了,记录一下
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
历史上的今天:
2015-12-27 C#中三层架构UI、BLL、DAL、Model实际操作
2015-12-27 [转]三层之抽象工厂加反射实例
2015-12-27 [转]C#三层架构登陆实例
点击右上角即可分享
微信分享提示