рдЬреВрд▓рд┐рдпрд╛ рдФрд░ рдЪрд░рдг рдЧрддрд┐рд╢реАрд▓ рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ рдХреЗ рдЪрд┐рддреНрд░


рд╣рдо рдпреБрд╡рд╛ рдФрд░ рд╣реЛрдирд╣рд╛рд░ рд╕рд╛рдорд╛рдиреНрдп-рдЙрджреНрджреЗрд╢реНрдп рд╡рд╛рд▓реА рднрд╛рд╖рд╛ рдЬреВрд▓рд┐рдпрд╛ рдореЗрдВ рдорд╣рд╛рд░рдд рд╣рд╛рд╕рд┐рд▓ рдХрд░рдирд╛ рдЬрд╛рд░реА рд░рдЦрддреЗ рд╣реИрдВред рд▓реЗрдХрд┐рди рд╢реБрд░реБрдЖрдд рдХреЗ рд▓рд┐рдП, рд╣рдореЗрдВ рдЖрд╡реЗрджрди рдХреА рдмрд╣реБрдд рд╣реА рд╕рдВрдХреАрд░реНрдг рд╕рдВрднрд╛рд╡рдирд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ - рднреМрддрд┐рдХреА рдХреА рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред рдпрд╣ рд╕рд╛рдзрди рдореЗрдВ рдорд╣рд╛рд░рдд рд╣рд╛рд╕рд┐рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд░рдгрдиреАрддрд┐ рд╣реИ: рдПрдХ рд╣рд╛рде рдкрд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо рджрдмрд╛рдиреЗ рд╡рд╛рд▓реА рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рд╣рд▓ рдХрд░реЗрдВрдЧреЗ, рдзреАрд░реЗ-рдзреАрд░реЗ рдмрдврд╝рддреА рдЬрдЯрд┐рд▓рддрд╛ рдФрд░ рд╣рдорд╛рд░реЗ рдЬреАрд╡рди рдХреЛ рдЖрд╕рд╛рди рдмрдирд╛рдиреЗ рдХреЗ рддрд░реАрдХреЗ рдЦреЛрдЬреЗрдВрдЧреЗред рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ, рд╣рдо рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╣рд▓ рдХрд░реЗрдВрдЧреЗ рдФрд░ рдЧреНрд░рд╛рдл рдмрдирд╛рдПрдВрдЧреЗред


рдЖрд░рдВрдн рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЧреИрдбрд▓реА рдЧреНрд░рд╛рдлрд┐рдХреНрд╕ рдкреИрдХреЗрдЬ рдФрд░ рддреБрд░рдВрдд рдбреЗрд╡рд▓рдкрд░ рдХрд╛ рдкреВрд░реНрдг рд╕рдВрд╕реНрдХрд░рдг рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВ, рддрд╛рдХрд┐ рдпрд╣ рд╣рдорд╛рд░реЗ рдЬреВрд▓рд┐рдпрд╛ 1.0.1 рдХреЗ рд╕рд╛рде рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдХрд╛рдо рдХрд░реЗред рд╣рдо рдЕрдкрдиреЗ REPL, JUNO рдпрд╛ Jupyter рдиреЛрдЯрдмреБрдХ рдореЗрдВ рдбреНрд░рд╛рдЗрд╡ рдХрд░рддреЗ рд╣реИрдВ:


using Pkg pkg"add Compose#master" pkg"add Gadfly#master" 

рд╕рдмрд╕реЗ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╡рд┐рдХрд▓реНрдк рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдкреНрд▓реЙрдЯрд▓реАрдЬ рдЕрдкрдбреЗрдЯ рдХреЗ рд▓рд┐рдП рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░рддреЗ рд╕рдордп, рдЖрдк рддреБрд▓рдирд╛ рдХреЗ рд▓рд┐рдП рдкреНрд░рдпрд╛рд╕ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред


рдЖрдкрдХреЛ рдЕрдВрддрд░ рд╕рдореАрдХрд░рдгреЛрдВ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╢рдХреНрддрд┐рд╢рд╛рд▓реА рдЙрдкрдХрд░рдг рдХреА рднреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ


 ]add DifferentialEquations #     

рдпрд╣ рд╕рдмрд╕реЗ рд╡реНрдпрд╛рдкрдХ рдФрд░ рд╕рдорд░реНрдерд┐рдд рдкреИрдХреЗрдЬ рд╣реИ рдЬреЛ рд╡рд┐рднрд┐рдиреНрди рддрд░реАрдХреЛрдВ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдИ рддрд░реАрдХреЗ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред рдЕрдм рдЪрд░рдг рдкреЛрд░реНрдЯреНрд░реЗрдЯ рдХреЗ рд▓рд┐рдП рдЖрдЧреЗ рдмрдврд╝реЗрдВред


рд╕рд╛рдзрд╛рд░рдг рдЕрдВрддрд░ рд╕рдореАрдХрд░рдгреЛрдВ рдХреЗ рд╕рдорд╛рдзрд╛рди рдЕрдХреНрд╕рд░ рдЕрд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рдореЗрдВ рдЪрд┐рддреНрд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдзрд┐рдХ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реЛрддреЗ рд╣реИрдВ , рдФрд░ рдЪрд░рдг рд╕реНрдерд╛рдиреЛрдВ рдореЗрдВ рдХреБрд▓реНрд╣рд╛рдбрд╝рд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдЬрд┐рдирдореЗрдВ рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рдореЗрдВ рдкрд╛рдпрд╛ рдЧрдпрд╛ рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдорд╛рди рдкреНрд▓реЙрдЯ рдХрд┐рдП рдЧрдП рд╣реИрдВред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рддрд░реНрдХ рдЯреА рдХреЗрд╡рд▓ рдкреИрд░рд╛рдореАрдЯреНрд░рд┐рдХ рд░реВрдк рд╕реЗ рд░реЗрдЦрд╛рдВрдХрди рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реИред рджреЛ рдУрдбреАрдИ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдРрд╕рд╛ рдЧреНрд░рд╛рдл - рд╕рд┐рд╕реНрдЯрдо рдХрд╛ рдЪрд░рдг рдЪрд┐рддреНрд░ - рдЪрд░рдг рд╡рд┐рдорд╛рди рдкрд░ рдПрдХ рд╡рдХреНрд░ рд╣реИ рдФрд░ рдЗрд╕рд▓рд┐рдП рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рджреБрд░реНрдШрдЯрдирд╛ рд╣реИред


рдерд░рдерд░рд╛рдирд╡рд╛рд▓рд╛


рд╣рд╛рд░реНрдореЛрдирд┐рдХ рдерд░рдерд░рд╛рдирд╡рд╛рд▓рд╛ рдЧрддрд┐рд╢реАрд▓рддрд╛ рдЧрд╛рдорд╛рд╕рдореАрдХрд░рдгреЛрдВ рдХреА рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдкреНрд░рдгрд╛рд▓реА рджреНрд╡рд╛рд░рд╛ рд╡рд░реНрдгрд┐рдд рд╣реИ:



рдФрд░ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдХреА рдкрд░рд╡рд╛рд╣ рдХрд┐рдП рдмрд┐рдирд╛ (x0, y0), рдпрд╣ рд╕рдВрддреБрд▓рди рдХреА рд╕реНрдерд┐рддрд┐, рд╢реВрдиреНрдп рд╡рд┐рдХреНрд╖реЗрдкрдг рдХреЛрдг рдФрд░ рд╢реВрдиреНрдп рдЧрддрд┐ рдХреЗ рд╕рд╛рде (0,0) рдХреА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдЖрддрд╛ рд╣реИред


рдкрд░ рд╕рдорд╛рдзрд╛рди рдПрдХ рд╢рд╛рд╕реНрддреНрд░реАрдп рдерд░рдерд░рд╛рдирд╡рд╛рд▓рд╛ рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛ рд▓реЗрддрд╛ рд╣реИред


 using DifferentialEquations, Gadfly #     -    function garmosc(╧Й = pi, ╬│ = 0, x0 = 0.1, y0 = 0.1) A = [0 1 -╧Й^2 ╬│] syst(u,p,t) = A * u # ODE system u0 = [x0, y0] # start cond-ns tspan = (0.0, 4pi) # time period prob = ODEProblem(syst, u0, tspan) # problem to solve sol = solve(prob, RK4(),reltol=1e-6, timeseries_steps = 4) N = length(sol.u) J = length(sol.u[1]) U = zeros(N, J) for i in 1:N, j in 1:J U[i,j] = sol.u[i][j] #      end U end 

рдХреЛрдб рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░рддреЗ рд╣реИрдВред рдлрд╝рдВрдХреНрд╢рди рдЖрд╡реГрддреНрддрд┐ рдФрд░ рдХреНрд╖реАрдгрди рдкреИрд░рд╛рдореАрдЯрд░ рдХреЗ рдореВрд▓реНрдпреЛрдВ рдХреЛ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рддрд╛ рд╣реИ, рд╕рд╛рде рд╣реА рд╕рд╛рде рдкреНрд░рд╛рд░рдВрднрд┐рдХ рд╢рд░реНрддреЗрдВ рднреАред рдиреЗрд╕реНрдЯреЗрдб рд╕рд┐рд╕реНрдЯ () рдлрд╝рдВрдХреНрд╢рди рд╕рд┐рд╕реНрдЯрдо рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддрд╛ рд╣реИред рдЗрд╕реЗ рдЪрд╛рд▓реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЙрдиреНрд╣реЛрдВрдиреЗ рдПрдХ-рд▓рд╛рдЗрди рдореИрдЯреНрд░рд┐рдХреНрд╕ рдЧреБрдгрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ред рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рдорд╛рдкрджрдВрдбреЛрдВ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ рд╕рдорд╛рдзрд╛рди () рдлрд╝рдВрдХреНрд╢рди, рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рд▓рдЪреАрд▓реЗ рдврдВрдЧ рд╕реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╣рдордиреЗ рдХреЗрд╡рд▓ рд╕рдорд╛рдзрд╛рди рдкрджреНрдзрддрд┐ рдХрд╛ рд╕рдВрдХреЗрдд рджрд┐рдпрд╛ рд╣реИ - рд░рдирдЧреЗ-рдХреБрдЯреНрдЯрд╛ 4 ( рдХрдИ рдЕрдиреНрдп рд╣реИрдВ ), рд╕рд╛рдкреЗрдХреНрд╖ рддреНрд░реБрдЯрд┐, рдФрд░ рдпрд╣ рддрдереНрдп рдХрд┐ рд╕рднреА рдмрд┐рдВрджреБрдУрдВ рдХреЛ рдмрдЪрд╛рдпрд╛ рдирд╣реАрдВ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рд▓реЗрдХрд┐рди рдХреЗрд╡рд▓ рд╣рд░ рдЪреМрдереЗ ред рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдореИрдЯреНрд░рд┐рдХреНрд╕ рдХреЛ рдЪрд░ рд╕реЛрд▓ рдореЗрдВ рд░рдЦрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╕реЛрд▓ рдореЗрдВ рдХрдИ рдмрд╛рд░ рд╡реЗрдХреНрдЯрд░ рд╣реЛрддрд╛ рд╣реИ, рдФрд░ рдЗрди рд╕рдордп рдкрд░ рд╕рд┐рд╕реНрдЯрдо рдХреЛ рд╣рд▓ рдХрд░рддрд╛ рд╣реИред рдпрд╣ рд╕рдм рд╢рд╛рдВрддрд┐ рд╕реЗ рдкреНрд▓реЙрдЯреНрд╕ рдореЗрдВ рдЦреАрдВрдЪрд╛ рдЧрдпрд╛ рд╣реИ, рдФрд░ рдЧреИрдбрд▓реА рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ рдореИрдЯреНрд░рд┐рдХреНрд╕ рдореЗрдВ рдЙрддреНрддрд░ рдХреЛ рдФрд░ рдЕрдзрд┐рдХ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдмрдирд╛рдирд╛ рд╣реЛрдЧрд╛ред рд╣рдореЗрдВ рд╕рдордп рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╣рдо рдХреЗрд╡рд▓ рд╕рдорд╛рдзрд╛рди рд▓реМрдЯрд╛рддреЗ рд╣реИрдВред


рдЪрд▓реЛ рдПрдХ рдЪрд░рдг рдЪрд┐рддреНрд░ рдмрдирд╛рдПрдБ:


 Ans0 = garmosc() plot(x = Ans0[:,1], y = Ans0[:,2]) 


рдЙрдЪреНрдЪ-рдХреНрд░рдо рдХреЗ рдХрд╛рд░реНрдпреЛрдВ рдореЗрдВ, broadcast(f, [1, 2, 3]) рд╣рдорд╛рд░реЗ рд▓рд┐рдП рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдЙрд▓реНрд▓реЗрдЦрдиреАрдп рд╣реИ, рдЬреЛ рд╡реИрдХрд▓реНрдкрд┐рдХ рд░реВрдк рд╕реЗ рд╕рдорд╛рд░реЛрд╣ рдореЗрдВ рд╕рд░рдгреА [1, 2, 3] рдХреЗ рдореВрд▓реНрдпреЛрдВ рдХреЛ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддрд╛ рд╣реИ ред рд▓рдШреБ рд░рд┐рдХреЙрд░реНрдб f.([1, 2, 3]) ред рдпрд╣ рдЖрд╡реГрддреНрддрд┐, рдХреНрд╖реАрдгрди рдкреИрд░рд╛рдореАрдЯрд░, рдкреНрд░рд╛рд░рдВрднрд┐рдХ рд╕рдордиреНрд╡рдп рдФрд░ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдЧрддрд┐ рдХреЛ рдЕрд▓рдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧреА рд╣реИред


рдмрд┐рдЧрд╛рдбрд╝рдиреЗ рд╡рд╛рд▓реЗ рдХреЗ рдиреАрдЪреЗ рдЫрд┐рдкрд╛ рд╣реБрдЖ
 L = Array{Any}(undef, 3)#     (  ) clr = ["red" "green" "yellow"] function ploter(Answ) for i = 1:3 L[i] = layer(x = Answ[i][:,1], y = Answ[i][:,2], Geom.path, Theme(default_color=clr[i]) ) end p = plot(L[1], L[2], L[3]) end Ans1 = garmosc.( [pi 2pi 3pi] )#  p1 = ploter(Ans1) Ans2 = garmosc.( pi, [0.1 0.3 0.5] )#  p2 = ploter(Ans2) Ans3 = garmosc.( pi, 0.1, [0.2 0.5 0.8] ) p3 = ploter(Ans3) Ans4 = garmosc.( pi, 0.1, 0.1, [0.2 0.5 0.8] ) p4 = ploter(Ans4) set_default_plot_size(16cm, 16cm) vstack( hstack(p1,p2), hstack(p3,p4) ) #     


рдЕрдм рд╣рдо рдЫреЛрдЯреЗ рджреЛрд▓рдиреЛрдВ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдордирдорд╛рдиреЗ рдЖрдпрд╛рдо рдХреЗ рджреЛрд▓рдиреЛрдВ:



рд╕рдорд╛рдзрд╛рди рдХрд╛ рдЪрд░рдг рдЖрд░реЗрдЦ рдПрдХ рджреАрд░реНрдШрд╡реГрддреНрдд рдирд╣реАрдВ рд╣реИ (рдЬреЛ рдерд░рдерд░рд╛рдирд╡рд╛рд▓рд╛ рдХреА рдЕрд╢реБрджреНрдзрддрд╛ рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реИ)ред рдХрдо рд╣рдо рджреЛрд▓рдиреЛрдВ рдХреЗ рдЖрдпрд╛рдо рдЪреБрдирддреЗ рд╣реИрдВ (рдпрд╛рдиреА, рдкреНрд░рд╛рд░рдВрднрд┐рдХ рд╢рд░реНрддреЗрдВ), рдХрдо рдЕрд╢реБрджреНрдзрддрд╛ рджрд┐рдЦрд╛рдИ рджреЗрдЧреА (рдЗрд╕рд▓рд┐рдП, рдкреЗрдВрдбреБрд▓рдо рдХреЗ рдЫреЛрдЯреЗ рджреЛрд▓рдиреЛрдВ рдХреЛ рд╣рд╛рд░реНрдореЛрдирд┐рдХ рдорд╛рдирд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ)ред


рдмрд┐рдЧрд╛рдбрд╝рдиреЗ рд╡рд╛рд▓реЗ рдХреЗ рдиреАрдЪреЗ рдЫрд┐рдкрд╛ рд╣реБрдЖ
 function ungarmosc(╧Й = pi, ╬│ = 0, x0 = 0.1, y0 = 0.1) function syst(du,u,p,t) du[1] = u[2] du[2] = -sin( ╧Й*u[1] )+╬│*u[2] end u0 = [x0, y0] # start cond-ns tspan = (0.0, 2pi) # time period prob = ODEProblem(syst, u0, tspan) # problem to solve sol = solve(prob, RK4(),reltol=1e-6, timeseries_steps = 4) N = length(sol.u) J = length(sol.u[1]) U = zeros(N, J) for i in 1:N, j in 1:J U[i,j] = sol.u[i][j] #      end U end Ans1 = ungarmosc.( [pi 2pi 3pi] ) p1 = ploter(Ans1) Ans2 = ungarmosc.( pi, [0.1 0.4 0.7] ) p2 = ploter(Ans2) Ans3 = ungarmosc.( pi, 0.1, [0.1 0.5 0.9] ) p3 = ploter(Ans3) Ans4 = ungarmosc.( pi, 0.1, 0.1, [0.1 0.5 0.9] ) p4 = ploter(Ans4) vstack( hstack(p1,p2), hstack(p3,p4) ) 


Brusselator


рдпрд╣ рдореЙрдбрд▓ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдСрдЯреЛрдХреИрдЯрд▓рд┐рдХ рд░рд╛рд╕рд╛рдпрдирд┐рдХ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдкреНрд░рд╕рд╛рд░ рдПрдХ рднреВрдорд┐рдХрд╛ рдирд┐рднрд╛рддрд╛ рд╣реИред рдореЙрдбрд▓ рдХреЛ 1968 рдореЗрдВ рд▓реЗрдлреЗрдмреНрд░реЗ рдФрд░ рдкреНрд░рд╛рдЗрдЧреЛрдЬрд┐рди рджреНрд╡рд╛рд░рд╛ рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред



рдЕрдЬреНрдЮрд╛рдд рдХрд╛рд░реНрдп рдПрдХ рд░рд╛рд╕рд╛рдпрдирд┐рдХ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЗ рдордзреНрдпрд╡рд░реНрддреА рдЙрддреНрдкрд╛рджреЛрдВ рдХреА рдПрдХрд╛рдЧреНрд░рддрд╛ рдХреА рдЧрддрд┐рд╢реАрд▓рддрд╛ рдХреЛ рджрд░реНрд╢рд╛рддреЗ рд╣реИрдВред рдореЙрдбрд▓ рдкреИрд░рд╛рдореАрдЯрд░ рдореБрдЙрддреНрдкреНрд░реЗрд░рдХ (рддреАрд╕рд░рд╛ рдкрджрд╛рд░реНрде) рдХреА рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдПрдХрд╛рдЧреНрд░рддрд╛ рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИред


рдЕрдзрд┐рдХ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ, рд╡рд┐рднрд┐рдиреНрди рдорд╛рдкрджрдВрдбреЛрдВ рдХреЗ рд╕рд╛рде рдЧрдгрдирд╛ рдХрд░рдХреЗ рдмреНрд░реБрд╕реЗрд▓рд░ рдХреЗ рдЪрд░рдг рдЪрд┐рддреНрд░ рдХрд╛ рд╡рд┐рдХрд╛рд╕ рджреЗрдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдореБред рдЗрд╕рдХреА рд╡реГрджреНрдзрд┐ рдХреЗ рд╕рд╛рде, рдиреЛрдб рдкрд╣рд▓реЗ рдирд┐рд░реНрджреЗрд╢рд╛рдВрдХ рдХреЗ рд╕рд╛рде рдзреАрд░реЗ-рдзреАрд░реЗ рдПрдХ рдмрд┐рдВрджреБ рдкрд░ рд╢рд┐рдлреНрдЯ рд╣реЛ рдЬрд╛рдПрдЧрд╛ (1, рдореБ) рдЬрдм рддрдХ рдпрд╣ рдПрдХ рджреНрд╡рд┐рднрд╛рдЬрди рдореВрд▓реНрдп рддрдХ рдирд╣реАрдВ рдкрд╣реБрдВрдЪрддрд╛ рд╣реИ рдореБ= реиред рдЗрд╕ рдмрд┐рдВрджреБ рдкрд░, рд╕реАрдорд╛ рдЪрдХреНрд░ рдХреЗ рдЬрдиреНрдо рдореЗрдВ рд╡реНрдпрдХреНрдд рдкреЛрд░реНрдЯреНрд░реЗрдЯ рдХрд╛ рдЧреБрдгрд╛рддреНрдордХ рдкреБрдирд░реНрдЧрдарди рд╣реЛрддрд╛ рд╣реИред рдФрд░ рд╡реГрджреНрдзрд┐ рдХреЗ рд╕рд╛рде рдореБрдЗрд╕ рдЪрдХреНрд░ рдХреЗ рдорд╛рдкрджрдВрдбреЛрдВ рдореЗрдВ рдХреЗрд╡рд▓ рдПрдХ рдорд╛рддреНрд░рд╛рддреНрдордХ рдкрд░рд┐рд╡рд░реНрддрди рд╣реЛрддрд╛ рд╣реИред


рдмрд┐рдЧрд╛рдбрд╝рдиреЗ рд╡рд╛рд▓реЗ рдХреЗ рдиреАрдЪреЗ рдЫрд┐рдкрд╛ рд╣реБрдЖ
 function brusselator(╬╝ = 0.1, u0 = [0.1; 0.1]) function syst(du,u,p,t) du[1] = -(╬╝+1)*u[1] + u[1]*u[1]*u[2] + 1 du[2] = ╬╝*u[1] - u[1]*u[1]*u[2] end tspan = (0.0, 10) # time period prob = ODEProblem(syst, u0, tspan) # problem to solve sol = solve(prob, RK4(),reltol=1e-6, timeseries_steps = 1) N = length(sol.u) J = length(sol.u[1]) U = zeros(N, J) for i in 1:N, j in 1:J U[i,j] = sol.u[i][j] #      end U end L = Array{Any}(undef, 10) function ploter(Answ) for i = 1:length(Answ) L[i] = layer(x = Answ[i][:,1], y = Answ[i][:,2], Geom.path ) end plot(L[1], L[2], L[3], L[4], L[5], L[6], L[7], L[8], L[9], L[10]) end SC = [ [0 0.5], [0 1.5], [2.5 0], [1.5 0], [0.5 1], [1 0], [1 1], [1.5 2], [0.1 0.1], [0.5 0.2] ] Ans1 = brusselator.( 0.1, SC ) Ans2 = brusselator.( 0.8, SC ) Ans3 = brusselator.( 1.6, SC ) Ans4 = brusselator.( 2.5, SC ) p1 = ploter(Ans1) p2 = ploter(Ans2) p3 = ploter(Ans3) p4 = ploter(Ans4) set_default_plot_size(16cm, 16cm) vstack( hstack(p1,p2), hstack(p3,p4) ) 


рдЖрдЬ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╣реИред рдЕрдЧрд▓реА рдмрд╛рд░, рд╣рдо рдпрд╣ рдЬрд╛рдирдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдВрдЧреЗ рдХрд┐ рдирдП рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рджреВрд╕рд░реЗ рдЧреНрд░рд╛рдлрд┐рдХреНрд╕ рдкреИрдХреЗрдЬ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреИрд╕реЗ рдХрд░реЗрдВ, рд╕рд╛рде рд╣реА рд╕рд╛рде рдЬреВрд▓рд┐рдпрд╛ рдХреЗ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдкрд░ рдЕрдкрдирд╛ рд╣рд╛рде рдЯрд╛рдЗрдк рдХрд░реЗрдВред рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ, рдзреАрд░реЗ-рдзреАрд░реЗ рдкрддрд╛ рд▓рдЧрд╛рдпрд╛ рдЬрд╛рдирд╛ рд╢реБрд░реВ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рди рдХрд┐ рдкреЗрд╢реЗрд╡рд░реЛрдВ рдФрд░ рд╡рд┐рдкрдХреНрд╖ рд╕реАрдзреЗ рд╣реИрдВ ... рдмрд▓реНрдХрд┐, рд╕реБрд╡рд┐рдзрд╛рдПрдВ рдФрд░ рдЕрд╕реБрд╡рд┐рдзрд╛рдПрдВ - рдЗрд╕рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрд▓рдЧ рд╡рд╛рд░реНрддрд╛рд▓рд╛рдк рд╕рдорд░реНрдкрд┐рдд рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдФрд░, рдЬрд╝рд╛рд╣рд┐рд░ рд╣реИ, рдореИрдВ рдЕрдкрдиреЗ рдЦреЗрд▓ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЕрдкрдиреЗ рдЦреЗрд▓ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЕрдкрдиреЗ рд╣реЗрдмреНрд░рд╛ рдкрд░ рдХреБрдЫ рдЕрдзрд┐рдХ рдЧрдВрднреАрд░ рджреЗрдЦрдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ - рдЗрд╕рд▓рд┐рдП, рдореИрдВ рдЬреВрд▓рд┐рд╕реНрдЯ рд╕реЗ рдФрд░ рдЕрдзрд┐рдХ рдЧрдВрднреАрд░ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрддрд╛рдиреЗ рдХрд╛ рдЖрдЧреНрд░рд╣ рдХрд░рддрд╛ рд╣реВрдВ, рдЗрд╕рд╕реЗ рдХрдИ рдФрд░ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ, рдЗрд╕ рдЕрджреНрднреБрдд рднрд╛рд╖рд╛ рдХреЛ рд╕реАрдЦрдиреЗ рдореЗрдВ рдорджрдж рдорд┐рд▓реЗрдЧреАред

Source: https://habr.com/ru/post/hi428984/


All Articles