微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在简单向量和数组上运行的C#数学库

c#有几个数学库,但它们似乎都定义了自己的向量和矩阵类型,或者对已建立的c#类(如Vector3D或Vector)进行操作.

是否有任何数学库操作“简单”向量和矩阵类型,如double []和double [,]

一些“好有”功能的例子就是

double[] v = new double[3];
double[] w = new double[3];
double m[,] = new double[3,3];

double vDOTv = DesiredClass.Dot(v); // v.v

double[] normV = DesiredClass.normalize(v); // normalize vector

double[] cCROSSw = DesiredClass.Cross(v,w);  // v x w

double vDOTm = DesiredClass.Dot(v,m,i); // v.m[i] - dot product of v with ith row of m

解决方法

您可以为这些类型创建自己的类,并为它们提供从双数组到双数组的隐式转换,然后创建那些接受您自己类型的参数的实用程序方法,这些参数可以在这些数组上运行,因为存在隐式转换.

但这有点可疑,为什么不在普通类型上工作.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐