代码之家  ›  专栏  ›  技术社区  ›  mson

C语言中的复杂计算#

  •  13
  • mson  · 技术社区  · 17 年前

    中可用的最佳工具(效率最高)是什么 .NET(C#) 用于计算:

    • 积分
    • 偏导数
    • 其他非平凡数学

    人们可以评论Mathematica和Matlab以及它们与 ?

    7 回复  |  直到 10 年前
        1
  •  13
  •   Christoph Rüegg    13 年前

    Math.NET 是一个用C#为Microsoft.NET平台编写的数学开源工具包,旨在为数值科学和符号代数计算提供一个自包含的干净框架。特别地, Math.NET Numerics dnAnalytics 具有 Math.NET Iridium 并包括以下功能:

    • 实与复、稠密与稀疏线性代数(带 LU QR eigenvalues , ... 分解)
    • 数值函数积分(求积)例程
    • 积分变换
        2
  •  1
  •   Alfred Myers    17 年前

    我不能保证它是最好的或更有效的,但几天前我学到了这一点 Luca Bolognese

    你可以在这里找到它: http://code.msdn.microsoft.com/FinancialFunctions

        3
  •  1
  •   Pillsy    17 年前

    我没有使用Mathematica/.NET网桥的经验,但我使用过Mathematica/Java网桥,从文档来看,这与Mathematica/Java网桥非常相似。当然,有一个问题我无法回答,那就是这个系统有多好 接口的关键在于稳定性和性能。

    从概念上讲,我发现调用Mathematica的Java接口非常好。您有一组对象和方法,可以启动Mathematica会话并将Mathematica表达式发送给它们进行计算。您可以发送文本(在简单的情况下很容易,但如果您想要一些非琐碎的东西,则需要技巧),也可以发送更结构化的文本 Expr

    在错误处理方面,它会出现一些问题。Mathematica本身没有例外;相反,当遇到问题时,它会生成“消息”,并继续尝试计算它正在处理的表达式。考虑到Mathematica相当不寻常的语义(它对重复规则重写的表达式进行操作),这有一定的意义,但与Mathematica通信的默认方法集不允许您从Java(或者,.NET)内部轻松监视这些消息,尽管可以编写自己的方法来更好地完成这项工作。

        4
  •  1
  •   J D    16 年前

    微软的 Visual F# F# for Numerics 已安装库,您可以集成x 3. -x-1从-3交互到3,如下所示:

    > Functional.integrate (fun [x] -> x**3.0 - x - 1.0) [-3.0, 3.0];;
    val it : float = -6.0
    

    然后计算这个函数对的偏导数 x x=2 详情如下:

    > Functional.d (fun x -> x**3.0 - x - 1.0) 2.0;;
    val it : float = 11.0
    
        5
  •  0
  •   TrueWill    17 年前

    你可以退房 http://www.dmoz.org/Science/Math/Software/ MATLAB -请参阅该条目的“限制和备选方案”部分。(我个人没有使用这些工具的经验。)

        6
  •  0
  •   gsharp    17 年前

    看看f# http://research.microsoft.com/en-us/um/cambridge/projects/fsharp/

    它将是VisualStudio2010的一部分。

        7
  •  0
  •   Sam Roberts David Peden    13 年前

    如果您有一个附加产品MATLAB Builder for.NET,您可以将MATLAB代码打包到一个.NET程序集中,该程序集可以从C#调用。