Skip to content

習題:科學計算練習 #6

@ccckmit

Description

@ccckmit

1 請將 07-scientific/algebra/root2.py 擴展到複數上

mac020:algebra mac020$ python3 root2.py
root of 1x^2+4x+0= [0.0, -4.0]

2 請改進 07-scientific/algebra/diffn.py ,讓 4 次以上微分的誤差縮小或幾乎消失

mac020:calculus mac020$ python3 diffn.py
df(sin, pi/4)= 0.7071067800074049
dfn(sin, 0 pi/4)= 0.7071067811865475
dfn(sin, 1 pi/4)= 0.7071067800074049
dfn(sin, 2 pi/4)= -0.7071067786856844
dfn(sin, 3 pi/4)= -0.7070732888081466
dfn(sin, 4 pi/4)= 0.6938893903907228
dfn(sin, 5 pi/4)= -2428.61286636753
dfn(sin, 6 pi/4)= 1734723.475976807
dfn(sin, 7 pi/4)= 190819582357.4488
dfn(sin, 8 pi/4)= -173472347597680.7
dfn(sin, 9 pi/4)= -1.5612511283791264e+19

可以看到 4 次微分後出現明顯誤差,5 次之後誤差非常大,已經亂掉了。

3 請用 sympy 去求解 RC 電路的微分方程

4 請改寫 fftRandom.py 程式在不存取 freq 的情況下,透過 ifft 的結果,印出真正的 freq 來。

請把你修改的部分之程式原理用 README.md 寫清楚!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions