【julia】ベクトル場
2020年5月20日
ベクトル場を描いてみます。
$$x_1(t+1)=A_1x_1(t)+B_1x_2(t)$$ $$x_2(t+1)=A_2x_1(t)+B_2x_2(t)$$コードは下の通り。A1
の値を少しずつ変えてgifアニメを作成しています。
using Plots import ProgressMeter gr() n = 100 # フレーム数 prog = ProgressMeter.Progress(n,1) A1=1.0 B1=0.01 A2=-0.2 B2=-0.005 x_n(x1,x2,A,B)= x1 + x1*(A - B*x2) anim = @animate for A1 in 0.1:0.1:1.2 global p =plot(xlabel="x1",ylabel="x2",xlims=(0,150),ylims=(0,150)) for i in 1:10 ,j in 1:10 global p=plot!([10*i,x_n(10*i,10*j,A1, B1)],[10*j,x_n(10*j,10*i,A2, B2)],arrow = 2, label="", linecolor = "blue", xlabel="x1",ylabel="x2",xlims=(0,150),ylims=(0,150)) end ProgressMeter.next!(prog) p end fps = 1 filename = "plot.gif" gif(anim, filename, fps = fps)