问题描述
我刚刚下载了 ILNumerics 的最新版本,可用于我的 F# 项目。是否可以在 F# 中利用这个库?我尝试过简单的计算,但看起来很麻烦(在 F# 中)。
我想设置一个有约束(甚至无约束)的优化问题。通常的 Rosenbrock 函数会做,然后我将使用我自己的函数。我什至很难定义一个数组。我可以定义的唯一类型的数组是 RetArray,例如使用此代码
let vector = ILMath.vector<float>(1.0,2.0)
编译器表示 vector 是一个 RetArray;我认为这是因为它是从函数返回的(即:ILMath.vector)。如果我定义另一个类似的向量,我可以 -e.g.- 求和向量,简单地写,例如
let a = ILMath.vector<float>(1.0,2.0)
let b = ILMath.vector<float>(3.2,2.2)
let c = a + b
我明白了
RetArray<float> = seq [4.2; 4.2]
但是如果我尝试检索 c 的值,再次写入,例如在 FSI 中,
c;;
我明白
错误:未将对象引用设置为对象的实例。
在 F# 中使用 ILNumerics 的建议方法是什么?是否可以在 F# 中本地使用该库,或者我被迫从 C# 库调用我的 F# 代码以使用整个 ILNumerics 库?除了引用的问题之外,当我在 F# 中移植时,我在理解 ILNumerics 的基本逻辑方面存在问题。
例如,与示例代码中使用作用域的 C# 等效的 F# 是什么,如:
using (ILScope.Enter(inData)) { ...
}
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)