감쇠 진자의 위상 평면의 gif를 만들었습니다. 통합을 위해 DifferentialEquations.jl 패키지를 사용하고 플로팅 및 애니메이션을 위해 pyplot 백엔드와 패키지 Plots.jl 및 ImageMagick.jl을 사용합니다. 그렇게하기 위해, 초기 값에 대한 함수를 통합하고, 각각의 함수를 많은 시간 동안 통합하여 gif의 형태로 최종 플롯을 만드는 작은 조각을 얻습니다. 코드는 다음과 같습니다.줄리아의 불일치 세분화 오류
using DifferentialEquations
using Plots ; default(size=(1000,700))
pyplot()
using ImageMagick
x = linspace(0.0,50.0,101)
tfinal = collect(x)
b = 0.2
p = plot()
u0vals = ([pi,-2.41],[2.0*pi,-2.41],[-2.0*pi,-3.0],[-2pi,3.0])
anim = @animate for j=1:endof(tfinal)
for i=1:endof(u0vals)
f = function(t,u,du)
du[1] = u[2]
du[2] = -b*u[2] -sin(u[1])
end
u0 = u0vals[i]
tspan=(0.0,tfinal[j])
prob = ODEProblem(f, u0, tspan)
sol = solve(prob)
plot!(p, sol, vars=(1,2),arrow=true,legend = false, titlefont=font(15, "cursive"),title = "STRO Figure 6.7.7", linewidth=1,linecolor=:"black",xlims=(-15.0,10.0),border=false,ticks=nothing,grid=false)
end
end
gif(anim, "STRO_6_7_7_GIF_.gif",fps=5)
이 코드는 처음 실행했을 때 좋았습니다. 그러나 다시 실행하려고 시도한 tfinal
및이를 보여 : signal (11): Segmentation fault: 11
(julia에서 메시지의 첫 번째 줄). 그런 다음 초기 코드를 다시 실행하려고 시도하고 동일한 메시지가 나타납니다. 줄리아와 컴퓨터를 다시 시작한 후에 나는 같은 메시지를 얻습니다. 나는 tfinal
을 다시 바꿨고 모든 것이 다시 작동했습니다. tfinal
나는 사용하고 싶었습니다. 나는 원하는 출력을 가지고있다. 그러나 그것은 julia "반응"이 내 코드와 일치하지 않는다는 사실을 귀찮게합니다. 필요한 경우 전체 오류를 붙여 넣을 수는 있지만 길다.
편집 : 여기에 귀하의 시간 범위는 사소한 때문에 분할 오류가 있었다 전체 오류 메시지
signal (11): Segmentation fault: 11
while loading no file, in expression starting on line 0
ode_interpolation at /Users/pacagal/.julia/v0.5/OrdinaryDiffEq/src/dense/generic_dense.jl:134
[inlined]
InterpolationData at /Users/pacagal/.julia/v0.5/OrdinaryDiffEq/src/interp_func.jl:20
unknown function (ip: 0x32b584519)
macro expansion at /Users/pacagal/.julia/v0.5/DiffEqBase/src/solutions/solution_interface.jl:72 [inlined]
apply_recipe at /Users/pacagal/.julia/v0.5/RecipesBase/src/RecipesBase.jl:238
unknown function (ip: 0x32b5808c6)
jl_call_method_internal at /Users/osx/buildbot/slave/package_osx10_9 x64/build/src/./julia_internal.h:189 [inlined]
jl_apply_generic at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/gf.c:1942
jl_apply at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/./julia.h:1392 [inlined]
jl_f__apply at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/builtins.c:547
_process_userrecipes at /Users/pacagal/.julia/v0.5/Plots/src/pipeline.jl:73
_plot! at /Users/pacagal/.julia/v0.5/Plots/src/plot.jl:171
unknown function (ip: 0x32b57bbed)
jl_call_method_internal at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/./julia_internal.h:189 [inlined]
jl_apply_generic at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/gf.c:1942
#plot!#266 at /Users/pacagal/.julia/v0.5/Plots/src/plot.jl:151
jl_call_method_internal at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/./julia_internal.h:189 [inlined]
jl_apply_generic at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/gf.c:1942
jl_apply at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/./julia.h:1392 [inlined]
jl_f__apply at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/builtins.c:547
#plot! at ./<missing>:0
jl_call_method_internal at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/./julia_internal.h:189 [inlined]
jl_apply_generic at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/gf.c:1942
macro expansion; at ./REPL[10]:11 [inlined]
macro expansion; at /Users/pacagal/.julia/v0.5/Plots/src/animation.jl:154 [inlined]
anonymous at ./<missing> (unknown line)
unknown function (ip: 0x32b5566ff)
jl_call_method_internal at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/./julia_internal.h:189 [inlined]
jl_toplevel_eval_flex at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/toplevel.c:569
jl_toplevel_eval_in_warn at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/builtins.c:590
eval at ./boot.jl:234
jlcall_eval_19752 at /Applications/Julia-0.5.app/Contents/Resources/julia/lib/julia/sys.dylib (unknown line)
jl_call_method_internal at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/./julia_internal.h:189 [inlined]
jl_apply_generic at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/gf.c:1942
eval_user_input at ./REPL.jl:64
unknown function (ip: 0x3192d9e66)
jl_call_method_internal at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/./julia_internal.h:189 [inlined]
jl_apply_generic at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/gf.c:1942
macro expansion at ./REPL.jl:95 [inlined]
#3 at ./event.jl:68
unknown function (ip: 0x3192d30df)
jl_call_method_internal at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/./julia_internal.h:189 [inlined]
jl_apply_generic at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/gf.c:1942
jl_apply at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/./julia.h:1392 [inlined]
start_task at /Users/osx/buildbot/slave/package_osx10_9-x64/build/src/task.c:253
Allocations: 40525029 (Pool: 40521241; Big: 3788); GC: 71
[Proceso completado]
다른 백엔드를 사용하거나 정말로 PyPlot을 사용하고 싶다면 https://github.com/JuliaPy/PyPlot.jl/issues/234 –
을 참조하십시오. @TomBreloff'plotly()','' plotlyjs()','pgfplots()','inspectdr()'를 사용합니다. 'gr()'은'x = linspace (0.0,50.0,101)'에 대해서만 작동했지만'x = linspace (0.0,50.0,201)'에 대해서는 작동하지 않습니다.'gr()'과'x = linspace (0.0,50.0,101)'그리고 그것은 효과가 없었습니다. – Pau
Windows 버전인가요? ImageMagick에는 Windows에 몇 가지 문제가 있습니다. 전체 오류 메시지를 포함시킬 수 있습니까? 그것이 될 수있는 몇 가지가 있으며, 그것 없이는 알기가 어렵습니다. –