GNU Octave中的函数eps理解

      在GNU Octave中,eps为一个函数,在除法运算中,遇到分母为零时,将分母设为eps,就可以进行相应的运算了。

     例如,在命令窗口输入以下程序:

     t=-2:0.5:2;   %设定t

    t(find(t==0))=eps(2);%在t=0时,将t设为eps(2)

    t              %显示t

t =

  -2.0000e+00  -1.5000e+00  -1.0000e+00  -5.0000e-01   4.4409e-16   5.0000e-01   1.0000e+00   1.5000e+00   2.0000e+00

     

       可以看到,将初期赋值的t=0的值变为了4.4409e-16这个非常小的数。

       注意这里使用了eps(2)来替换0值。

       按照定义,eps(a)是与a值最接近的值的距离,将a取不同值带入,可以得出以下表格:

  

a

eps(a)

-2

4.4409E-16

-1

2.2204E-16

1

2.2204E-16

2

4.4409E-16

3

4.4409E-16

4

8.8818E-16

5

8.8818E-16

6

8.8818E-16

7

8.8818E-16

8

1.7764E-15

9

1.7764E-15

10

1.7764E-15

11

1.7764E-15

12

1.7764E-15

13

1.7764E-15

14

1.7764E-15

15

1.7764E-15

16

3.5527E-15

20

3.5527E-15

40

7.1054E-15

60

7.1054E-15

100

1.4211E-14

         可以看到,eps(2)是eps(1)的两倍关系。随着a的增加,有些eps值是相等的。可以大概理解a的意义。

          由于eps值非常小,在进行加减乘除运算时,有如下结果:

  加法:

1+eps

ans = 1.0000

1+eps(3)

ans = 1.0000

1+eps(100000)

ans = 1.0000

  乘法:

2*eps(1)

ans = 4.4409e-16

   减法:

2-eps(2)

ans = 2.0000

   除法:

2/eps(1)

ans = 9.0072e+15

   END

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值