« かつやで赤辛カツ丼(竹、ご飯大盛り)+豚汁(小)を食す。 | トップページ | 新型コロナウイルス肺炎の重症患者に使われる人工呼吸器を素粒子・天体物理学者たちが共同で迅速に開発し、FDA(アメリカ食品医薬品局)の緊急使用認可を得たそうだ。Mechanical Ventilator Milano(MVM)。arXivに詳細が出ているのが物理学者らしい。 »

2020年5月13日 (水)

Python+numbaでマンデルブロ集合を描く(今更)、、、colormapsの色を確かめるために!

最近、家にいることが多いのでプログラムでも組んでみようと思った。Pythonなら会社でも使えるしまあいいかなということで

お絵かきから、、、で早速カラーマップで悩む、、、どれがいいんだ、、、

ということでここは実際にお絵かき、Mandelbrot集合あたりがいいだろうということでやってみた。

さすがにnumbaのjitで計算は一瞬です。

 

Spectral

Mandel_spectral

Spectral_r

Mandel_spectral_r

amhot

Mandel_afmhot

amhot_r

Mandel_afmhot_r

twilight_shifted

Mandel_twilight_shifted

coolwarm_r

Mandel_coolwarm_r_r

YlOrRd_r

Mandel_ylorrd_r

 

うーん、afmhotあたりか、、、

プログラムはこちら。cm.????のところを変えれば色が変わる。

import numpy as np
import matplotlib.pyplot as plt
from numba import jit


@jit
def mandel_calc(imag, Nx, Ny, xmin, xmax, ymin, ymax, max_iteration):

    x=np.linspace(xmin,xmax,Nx)
    y=np.linspace(ymin,ymax,Ny)

    for i in range(Nx):
        for j in range(Ny):
            iteration=0
            c=x[i]+1j*y[j]
            z=0+0j
            while z.real**2+z.imag**2<4 and iteration < max_iteration:
                z=z**2+c
                iteration=iteration+1
           imag[j][i]=np.log(iteration)

Nx=1200
Ny=1200
max_iteration=1000
imag=np.zeros((Nx,Ny))
xmax=1.0
xmin=-2.5
ymax=1.5
ymin=-1.5
mandel_calc(imag, Nx, Ny, xmin, xmax, ymin, ymax,max_iteration)
plt.figure(figsize=(12,12))
plt.imshow(imag,extent=(xmin,xmax,ymin,ymax),cmap=plt.cm.coolwarm_r)
# plt.colorbar()
plt.show()

« かつやで赤辛カツ丼(竹、ご飯大盛り)+豚汁(小)を食す。 | トップページ | 新型コロナウイルス肺炎の重症患者に使われる人工呼吸器を素粒子・天体物理学者たちが共同で迅速に開発し、FDA(アメリカ食品医薬品局)の緊急使用認可を得たそうだ。Mechanical Ventilator Milano(MVM)。arXivに詳細が出ているのが物理学者らしい。 »

学問・資格」カテゴリの記事

コメント

コメントを書く

(ウェブ上には掲載しません)

« かつやで赤辛カツ丼(竹、ご飯大盛り)+豚汁(小)を食す。 | トップページ | 新型コロナウイルス肺炎の重症患者に使われる人工呼吸器を素粒子・天体物理学者たちが共同で迅速に開発し、FDA(アメリカ食品医薬品局)の緊急使用認可を得たそうだ。Mechanical Ventilator Milano(MVM)。arXivに詳細が出ているのが物理学者らしい。 »

最近の記事

2021年3月
  1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31      
フォト
無料ブログはココログ