1

我正在 VB.NET 中完成我的 A-Level 大学项目的一部分,并且正在使用 Math.NET Symbolics 包。

我将 MathNet.Symbolics.SymbolicExpresssion 作为 Expr 导入。

我有定义为类型 Expr (SymbolicExpression) 的变量,我想进行一个涉及 ArcCos 的方程。

Math.NET.Symbolics 包含一个 ArcCos 函数,该函数采用 Expression 类型参数(不像我的变量那样 SymbolicExpression),但在 Expr 中似乎没有 ArcCos 函数,所以我不能将 ArcCos 函数与我的变量一起使用,因为类型。

我想避免尝试转换它们或更改我的代码以仅使用 Expression 类型。有没有办法做到这一点?

    Dim a As Expr = CharacteristicPolynomialCoefficients(3)
    Dim b As Expr = CharacteristicPolynomialCoefficients(2)
    Dim c As Expr = CharacteristicPolynomialCoefficients(1)
    Dim d As Expr = CharacteristicPolynomialCoefficients(0)

    Dim p As Expr = -b / (3 * a)
    Dim q As Expr = (p * p * p) + (((b * c) - (3 * a * d)) / (6 * a * a))
    Dim r As Expr = c / (3 * a)
    Dim theta = Expr.Variable("θ")
    theta = MathNet.Symbolics.Expression.ArcCos() 'This is the function

    theta = (1 / 3) * MathNet.Symbolics.Expression.ArcCos(((-1 / 2) * q) * ((3 / -p).Sqrt * (3 / -p).Sqrt * (3 / -p).Sqrt)) 'this will fail due to param being SymbolicExpression
4

0 回答 0