Schemeで複素関数の可視化
今までやってきたこと
プログラム
(include "grBMP.scm") (include "color.scm") (include "window.scm") (define (f x y) (letrec ((z (+ x (* y 0+1i)))) z ;;;(sin z) ;;;(log z) ;;;(exp z) ;;;(expt z z) ;;;(sinh z) ;;;(* z z z) ;;;(exp (/ 1.0 z)) ) ) (define min_x -10.0) (define min_y -10.0) (define max_x 10.0) (define max_y 10.0) (define points_x 400) (define points_y 400) (define r (/ 180 3.1415926)) (define dx (/ (- max_x min_x) points_x)) (define dy (/ (- max_y min_y) points_y)) (do ((i 0 (+ i 1))) ((>= i points_x)) (do ((j 0 (+ j 1))) ((>= j points_y)) (letrec ((x (+ min_x (* i dx))) (y (+ min_y (* j dy))) (z (f x y)) (h (* r (atan (imag-part z) (real-part z))))) (gr_dot (+ i 1) (+ j 1) (hsl-to-rgb h 1.0 0.5)) ) ) ) (gr_BMP "test.bmp")
今後参考にしていきたいサイト
- https://www.math.univ-toulouse.fr/~cheritat/wiki-draw/index.php/Mandelbrot_set#Fancy_coloring_of_the_outside
- Real-Time Zooming Math Engine (rtzme)
- Fractals
- objective c - how to zoom mandelbrot set - Stack Overflow
- https://www.jstage.jst.go.jp/article/jsgs1967/42/Supplement1/42_Supplement1_123/_pdf
- https://core.ac.uk/download/pdf/234016849.pdf
- Calabi-Yau多様体をブラウザ上に可視化する(Three.js) - sw1227’s diary
- http://staff.miyakyo-u.ac.jp/~h-uri/blog/archive/lecture/gensho/2008/text.pdf
- Domain coloring








