Maple第二章 数值计算(2)

# 2.2无理数和浮点数
# 上一节中,我们可以看到对于有理数,maple可以自动化简,但对于无理数,maple一般不会这样做,他总是按照你的命令来工作
> 25^(1/6);
                              (1/6)
                            25     
> simplify(%);
                              (1/3)
                             5     
> evalf(`%%`);
                          1.709975947
> convert(`%%%`, 'float');
                          1.709975947
# %的含义是上一次计算结果,这样很方便我们调用上一次得到的结果
# 对于无理数运算,必须使用simplify命令强迫它化简,主要原因是如果maple自动化简,可能会出错.
# 使用evalf命令对数值取浮点数,和其他编程语言一样,当输入的数据中含有小数点时候,会自动识别为浮点数
> 25.0^(1/6);
                          1.709975947
> %^6;
                          25.00000003
> 100045*0.15;
                            15006.75
# 由此可见浮点数的计算还是有精度需要控制的,还是有误差的
# 浮点算术的位数是由Maple变量Digits控制的,省缺情况下,,Digits的值为10,从前面计算可以看出浮点数在小数点后位数不超过十.改变Digits的值可以得到不同精度的浮点数.
# Maple在计算浮点数时候常用的函数为evalf
> evalf(sqrt(2));
                          1.414213562
> Digits;
                               10
> Digits := 20;
> evalf(sqrt(2));
                     1.4142135623730950488
> evalf(Pi, 150);
3.14159265358979323846264338327950288419716939937510582097494459
  23078164062862089986280348253421170679821480865132823066470938
  4460955058223172535940813
> Digits;
                               20

> Digits := 10;
                          Digits := 10
# 可以通过两种方法来改变得到的浮点数的小数位数:
# 1.改变环境变量Digits的值
# 2.evalf命令中加上位数这第二个参数,这样不会改变环境变量Digits的值
# Maple中许多科学常数,都存储在constants中,也可以自己定义自己的符号常量,并附加在constants之后
> constants;
        false, gamma, infinity, true, Catalan, FAIL, Pi
> constants := constants, A, B, C;
constants := false, gamma, infinity, true, Catalan, FAIL, Pi, A, B, C
# 在constants中,false,true,FAIL是布尔常量,γ是欧拉常量,定义为:
> gamma = limit(sum(1/k, k = 1 .. infinity) - 1/n, n = infinity);
# Catalan数的定义是
> sum((-1)^n/(2*n + 1)^2, n = 0 .. infinity);# .
# 除了基本的数学常量之外,Maple也内置了非常多的常用的数学函数,包括指数函数、对数函数、三角函数、反三角函数、双曲函数、反双曲函数等,使用?inifcns命令可以得到一个完整的数学函数列表.当然这个命令是直接打开对应的帮助页面,非常方便.
> help("inifcns");
# 下面给出部分特殊的科学函数进行简要说明;

# 这些特殊函数可以直接使用,或者从orthopoly、numtheory、combinat、stats等程序包中调用

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值