lectures:numeric15
差分
このページの2つのバージョン間の差分を表示します。
| 次のリビジョン | 前のリビジョン | ||
| lectures:numeric15 [2023/01/24 22:33] – 作成 kimi | lectures:numeric15 [2023/01/24 23:40] (現在) – [数値積分] kimi | ||
|---|---|---|---|
| 行 18: | 行 18: | ||
| $$ | $$ | ||
| - | * $N分割して$$L$重積分を行うためには$N^L$回の和の計算が必要 | + | |
| - | * $L=100$ならば$N=2$でも $2^{100}\simeq 10^{30}$回の和が必要 | + | * $L=100$ならば$N=2$でも $2^{100}\simeq 10^{30}$回の和が必要 |
| - | * 1PFLOPSの計算機=毎秒$10^{15}$回の実数計算が可能 | + | * 1PFLOPSの計算機=毎秒$10^{15}$回の実数計算が可能 |
| - | * 1年が$3\times 10^{7}$秒なので$10^{30}\div 10^{15}\div (3\times 10^{7}) = 0.3\times 10^{8}$年 | + | * 1年が$3\times 10^{7}$秒なので$10^{30}\div 10^{15}\div (3\times 10^{7}) = 0.3\times 10^{8}$年 |
| - | * 1PFLOPSの計算機でも3000万年かかる → **モンテカルロ法** | + | * 1PFLOPSの計算機でも3000万年かかる → **モンテカルロ法** |
| + | |||
| + | ===== 数値積分 ===== | ||
| + | |||
| + | $$ | ||
| + | \int_a^bf(x)dx\simeq\sum_{k=0}^{N-1}w_kf(x_k) | ||
| + | $$ | ||
| + | |||
| + | <code python> | ||
| + | #@title Left Riemann sum | ||
| + | import matplotlib.pyplot as plt | ||
| + | import numpy as np | ||
| + | |||
| + | def f(x): | ||
| + | return 1 - 3*x**2/5 | ||
| + | |||
| + | xlist = np.arange(-0.2, | ||
| + | ylist = [f(x) for x in xlist] | ||
| + | xsample = [0.0, 0.5] | ||
| + | ysample = [f(x) for x in xsample] | ||
| + | xbar = [0.25, 0.75] | ||
| + | # plot | ||
| + | fig, ax = plt.subplots() | ||
| + | |||
| + | |||
| + | ax.plot(xlist, | ||
| + | ax.bar(xbar, | ||
| + | ax.scatter(xsample, | ||
| + | |||
| + | ax.set(xlim=(-0.1, | ||
| + | |||
| + | plt.show() | ||
| + | |||
| + | </ | ||
| + | |||
| + | {{: | ||
lectures/numeric15.1674567203.txt.gz · 最終更新: by kimi