Try   HackMD

Rounding error, machine epsilon


要在matlab顯示雙精度數值可用以下指令:

format long

Assignment 1

試寫一matlab程式求 machine epsilon


數值估計 Harmonic series

考慮調和級數(Harmonic series)

n=11n
是否能以程式判斷其收斂或發散?

如果我們以電腦完全依照這級數一項一項做加法, 則一定會收斂到某個數字.

因為可以將此級數拆解為

n=110161n+n=1016+11n
後面那個級數裡的每一項都小於 machine epsilon, 所以當他們被加進級數和時會沒有任何作用.

因此若以程式將此級數一項一項做加法, 一定會不大於前面那個級數和.

Remark:

n=1N1n1N1xdx=ln(N)

Rules

  1. 絕對不可用程式判斷函數極限存在與否/數列或級數收斂與否
  2. 可以用程式猜測函數極限存在與否/數列或級數收斂與否
    • 接著以數學證明
    • 若極限存在/數列或級數收斂 -> 以程式逼近此極限值

Assignment 2 - Estimation of harmonic series

Matlab-03 我們寫過一個函數, input

x, output
N
使得
SN=n=1N1n>x.

  • 試計算出此程式所能運作最大的
    x
    , 以及最大的
    N
    , 使得使用者在 10 分鐘內可得知答案.
  • 修改你的註解及程式碼.
    • 約略估計值即可, 不需完全準確.