有时候我们需要进行一些复杂的数学计算,比如求导, 求积分,解方程,还是用abcd字母代表变量的方程等,这就需要进行复杂的数学运算还需要具备良好的数学基础。不过现在有一个非常方便的在线工具,只需要几秒钟, 就能告诉我们所有的答案。

sage

 &ems;sage是一个免费开源的数学计算软件系统, 里面包含了许多的package,比如NumPy, SciPy, matplotlib, Sympy, Maxima, GAP, FLINT, R 等。默认情况下,既可以运行sage自身的语法, 也兼容python的语法。正因为内部整合了许多包,所以它的安装包非常大,当然,它也有在线版本SageMathCell实现方便的在线运算。SageMathCell:http://sagecell.sagemath.org/

sage介绍

输入框是代码框,点evaluate之后,会在下面出现结果框(计算的结果或者是画的图形), 并且在代码框右下方有一个切换语言的选项。代码框支持tab补全,支持? + 函数来查看函数帮助。

进行基本的运算

求导

x = var(x) #声明x为变量
f(x) = x^3 + x^2 +2 #定义函数f(x)
diff(f, x) #f(x) 对x 求导

不定积分

integral(f, x)  # f(x) 对x不定积分

定积分

integral(f, x, 0, 1)  #f(x) 对x 0,1 定积分

解方程

var('x y p q') #声明变量
eq1 = p+q==9 #等式1
eq2 = q*y+p*x==-6 #等式2
eq3 = q*y^2+p*x^2==24 #等式3
solve([eq1, eq2, eq3,p==1],p,q,x,y) #已知 p==1解方程
[[p == 1, q == 8, x == -4/3*sqrt(10) - 2/3, y == 1/6*sqrt(10) - 2/3], [p == 1, q == 8, x == 4/3*sqrt(10) - 2/3, y == -1/6*sqrt(10) - 2/3]]

泰勒展开

var('x a')
f(x) = sqrt(x+a)
taylor(f,x, 1, 2) #f(x)在1处水平为2进行泰勒展开

绘图

circle((0,0), 1, rgbcolor=(1,1,0)) #圆心为0,0半径为1的圆

以上只是作为基本的引入, 更多的内容可以自己去看manual,它具有几乎所有你能想象的到的非常强大的数学计算功能。

参考资料

Sage tutorial: http://doc.sagemath.org/html/en/tutorial/index.html

Philipp K. Janert, Data Analysis with Open Source Tools

方便快捷的求导求积分解方程在线工具sage介绍的更多相关文章

  1. BUAA-OO-表达式解析与求导

    BUAA-OO-表达式解析与求导 解析 按照常规,解析这一部分我们分为词法分析与语法分析.当然由于待解析的字符串较简单,词法分析器和语法分析器不必单独实现. 词法分析器 按照常规,我们先手写一个词法分 ...

  2. OO_多项式求导_单元总结

    概述: 面向对象第一单元的作业是三次难度依次递增的多项式求导.第一次作业是仅包含带符号整数和幂函数的多项式求导,例如:-1+xˆ233-xˆ06:第二次是在前面的基础上增加了三角函数的求导,例如:-1 ...

  3. 深度学习:Sigmoid函数与损失函数求导

    1.sigmoid函数 ​ sigmoid函数,也就是s型曲线函数,如下: 函数: 导数: ​ 上面是我们常见的形式,虽然知道这样的形式,也知道计算流程,不够感觉并不太直观,下面来分析一下. 1.1 ...

  4. OO第一单元总结__多项式求导问题

    作业一.含幂函数的简单多项式的求导 (1)基于度量的程序结构分析 1. 统计信息图: 2. 结构信息图: 3. 复杂度分析 基本复杂度(Essential Complexity (ev(G)).模块设 ...

  5. OO_Unit1_表达式求导总结

    OO_Unit1_表达式求导总结   OO的第一单元主要是围绕表达式求导这一问题布置了3个子任务,并在程序的鲁棒性与模型的复杂度上逐渐升级,从而帮助我们更好地提升面向对象的编程能力.事实也证明,通过这 ...

  6. OO第一单元总结——求导

    一.基于度量分析程序结构 (一)第一次作业 (1)设计思路 本次作业只涉及到简单幂函数通过加减运算而复合而成的函数,因此笔者自然的把函数分成了函数本体以及单个的项两个部分,在笔者的设计中两个类的功能如 ...

  7. OO第一单元总结——表达式求导

    第一次作业 (1) UML结构图 (2)结构分析 Polynomial 类是对输入的字符串进行预处理,其中包括判断格式是否合法,运算符简化,分割成项等方法. Polynomial处理后得到的每一个项的 ...

  8. 面向对象第一单元总结:Java实现表达式求导

    面向对象第一单元总结:Java实现表达式求导 题目要求 输入一个表达式:包含x,x**2,sin(),cos(),等形式,对x求导并输出结果 例:\(x+x**2+-2*x**2*(sin(x**2+ ...

  9. Deep learning:五十一(CNN的反向求导及练习)

    前言: CNN作为DL中最成功的模型之一,有必要对其更进一步研究它.虽然在前面的博文Stacked CNN简单介绍中有大概介绍过CNN的使用,不过那是有个前提的:CNN中的参数必须已提前学习好.而本文 ...

随机推荐

  1. 【转】一文掌握 Linux 性能分析之网络篇(续)

    [转]一文掌握 Linux 性能分析之网络篇(续) 在上篇网络篇中,我们已经介绍了几个 Linux 网络方向的性能分析工具,本文再补充几个.总结下来,余下的工具包括但不限于以下几个: sar:统计信息 ...

  2. mysql插入大数据

    /*部门表*/ CREATE TABLE dept( id INT UNSIGNED PRIMARY KEY AUTO_INCREMENT, /*id*/ deptno MEDIUMINT UNSIG ...

  3. [mysql] 修复问题表Table '.xxxx' is marked as crashed and should be repaired

    程序执行的过程中,出现   Table '.xxxx' is marked as crashed and should be repaired 错误,上网查了一下,原来是表遭到损坏所致,具体修复办法如 ...

  4. Django --- Django下载和APP创建 ORM (大概步骤)

    1,下载: 命令行: pip install django == 1.11.15 pip install -i或 源 django == 1.11.15 pycharm settings 解释器 点 ...

  5. Android 插件化和热修复知识梳理

    概述 在Android开发中,插件化和热修复的话题越来越多的被大家提及,同时随着技术的迭代,各种框架的发展更新,插件化和热修复的框架似乎已经日趋成熟,许多开发者也把这两项技术运用到实际开发协作和正式的 ...

  6. JDBC编程六部曲

    今天初学jdbc,明白了大致的编程流程,在此总结一下: JDBC编程可以分为六步——六部曲: * 第一步:注册驱动. * 1.1 获取驱动对象 * 1.2 注册驱动 * 第二步:获取数据库连接 * 第 ...

  7. uni-app 在input获取焦点(弹出软键盘后收起软键盘),页面不下滑,留下下方空白

    加入收起软键盘时让页面回正 uni.pageScrollTo({ scrollTop: 0, duration: 0 });

  8. 数据库根据id排序

    select * from 表名 order by id 根据 id 从小到大排序

  9. swoole 版本查看

    php --ri swoole php --ri swoole | grep Version  查看swoole版本 php -m | grep swoole  查看swoole拓展是否安装成功(ph ...

  10. loading js备份

    loadingManageEdit.jsp $(function(){ //组织 var lodingDeparts =[<c:forEach items="${lodingDepar ...