当前位置:  开发笔记 > 编程语言 > 正文

符号数学Python?

如何解决《符号数学Python?》经验,为你挑选了3个好方法。

我非常感兴趣的是数学和编程,并计划从头开始创建符号数学项目.

    这个好项目的想法吗?

    从哪儿开始?

    如何处理这个项目?

    有什么好资源吗?

提前致谢.



1> f3lix..:

    这是练习编程技巧的好项目.但是如果你想创建一个其他人想要使用的真实库,这是一个你不想从头开始的项目......

    从哪里开始:查看已经存在的解决方案,并考虑您想要做的不同之处.您的项目与其他项目有何不同?

    资源:SymPy是一个用于符号数学的Python库


另一个库选项是使用Sage(http://www.sagemath.org/)

2> High Perform..:

这个好项目的想法是什么?

是; 我希望它能提供无穷无尽的有趣工作源,可以很快地测试和扩展你的编程能力.

2.从哪里开始?

我提出你应该看看现有工作的其他建议.SAGE是非常可观的,如果你问我的意见,我建议你先写一个基本的系统做用数字和符号运算; 再看看SAGE和编写模块来扩展系统,换句话说,成为一个贡献者的东西,而不是试图做这一切你自己更大.另请参阅Mathematica和Maple,Macsyma和Axiom.后两者是免费的(我认为),但它们都在线上有很好的记录,是思想和挑战的重要来源.

如何进行这个项目?

就像人们吃大象一样.一次咬一口.更为严重的是,我觉得有一些核心问题,如表情的表示,和一些基本的功能(算术多项式),你能削减你的牙齿.

4.有什么好的资源吗?

许许多多.google for'computer algebra','term rewriting'.看看亚马逊上的可用内容.并且,如果您有权访问,请查看ACM数字图书馆

祝好运.



3> S.Lott..:

符号数学是一个有趣的项目.无论是否有人使用它在您的问题中似乎并不重要,所以请深入了解.

多年来我写过其中两篇.最酷的是SQL for where子句 - 它对SQL进行了一些琐碎的符号操作,以便在一些额外的AND条件下折叠.不是一个完整的"求解器"或"优化器"或任何东西,只是对任何SQL where子句可能的几个符号操作.调试器不太酷; 它做了复杂的数学计算(符号)叠加变量的偏移量.

首先,为数学表达式的元素定义类 - 操作数,运算符,函数等.

您必须决定这些对象必须参与哪些操作.获取表达式的具体值是一个简单明了的方法.从所有变量都具有绑定的情况开始.

然后处理一些变量保持未绑定的情况,并且只能评估表达式的部分内容.

然后处理将表达式重新排列为规范形式.即,你已经做了部分评估并且已经完成了Add( Variable(x), Add( Variable(x), Lit(3) ) ).您需要编写规则来将其转换为Add( Multiply( Lit(2), Variable(x) ), Lit(3) ).

一个非常酷的练习是优化括号,以便打印输出具有捕获含义所需的最少括号.

我们在学校里都有许多其他的"表达转换"规则,用于进行代数操作.其中很多.

特别是,在某些情况下,重新排列等式以隔离变量可能非常困难.

进行衍生变换很容易,但是在很多特殊情况下,符号集成确实非常困难.

基础很有趣.根据您想要走多远,它会变得越来越难.

推荐阅读
linjiabin43
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有