田崎さんの U-tube カオス
http://www.gakushuin.ac.jp/~881791/d/0804.html#19
名前超ナイス。自分でもやってみた。
e00=0.099 あたりでカオティックになるけど、出てくる絵が田崎さんのとなんか違う。
そういえばNHKの爆笑問題が研究者の話を聞きに行く番組でカオスの合原一幸さんの回。一見デタラメなデータを一つ前のデータと一緒にプロットするとこうきれいになります、って話が出てきて放物線が写ったんで「えーなんだロジスティック写像だったんか。でも現実の時系列データじゃそんなのありえなくない?」と思った。
#include <stdio.h> #include <stdlib.h> #include <math.h> //#define PI 3.14159265358979323843279 // Grav.acc #define G 1.0 // Mass #define M 1.0 // Charge #define Q 1.0 int main(int argc, char **argv){ double v=1.0; double t=0.0; int i; // Field strength * U-region length double e00 = (double)atof(argv[1]); int lr=0; // left or right for(i=0;i<10000;i++) { if(lr==0)printf("%f %f\n",v, t); // free-fall time t += 2*v/G; t -= (int)t; // kinetic energy double ee = 0.5*v*v*M; // work done //double de = Q*e00*cos(2*PI*t); double de = Q*e00*cos(2*M_PI*t); if(lr==0) ee += de; else ee -= de; if(ee>0.0) { v= sqrt(2*ee/M); lr = 1-lr; } else { // Bounced back. v -> -v } } }