为何使用符号计算?因为在物理和数学理论中推导某些繁琐的公式的时候,人工进行会比较慢,而且很容易出错。如果可以用计算机辅助我们完成这些繁琐的计算就太好了。
比较常用的用于符号计算的数学软件有Mathematica和Maple,但是这两个软件都是收费软件。本来打算购买一个学生版的Mathematica,但是在注册缴费的最后一步,发现只能使用VISA信用卡支付,所以最后还是放弃了。
在网上找了一下,发现在开源的项目中,Sage Math也支持符号计算,而且其支持的平台比较广,包括windows , Mac, Linux,甚至可以利用官网云平台在线计算并保存结果。
忘记local host的帐户密码怎么办,默认的帐户名是:admin,至于密码是一开始你自己设置的。
- SageMath的下载和安装
可以从官网下载相应的版本,但是要选取合适的版本,之前在Mac上安装过一个版本,积分的功能有问题,更换安装包后,这个问题就解决了。 - 数值计算
3+3
evaluate:
6 - 符号计算
-
因式乘法
x=var('x')
y=var('y')
eq=(x-y)(x+y)(x^3-y+1)+3
eq.expand()
evaluate:
x^5 - x3*y2 - x^2*y + y^3 + x^2 - y^2 + 3 -
微分
derivative(x3+x2,x)
evaluate:
3x^2 + 2x -
不定积分
integral(1/x-1,x)
evaluate:
-x + log(x) -
定积分
t=var('t')
f=-100
g=te^(-i2pif*t)
integrate(g,t,0,1) -
plot 2D scaler field
x=var('x')
y=var('y')
g2(x,y)=3*e^(-x^2-y^2)
plot3d(g2,(x,-1,1),(y,-1,1))
- plot 2D vector field
gv2d=g2.gradient()
plot_vector_field(gv2d,(x,-1,1),(y,-1,1))
- plot 3D vector field
x=var('x')
y=var('y')
z=var('z')
g(x,y,z)=3*e^(-x^2-y^2)-z
gv=g.gradient()
plot_vector_field3d(gv,(x,-1,1),(y,-1,1),(z,-1,1))