Skip to content

Segmentation fault: 11 in BRUSS example #153

@jiweiqi

Description

@jiweiqi

Hi, I run into issue when running the tutorial of BRUSS http://methodoflines.sciml.ai/dev/tutorials/brusselator/

For convince, I also copied the code below, and the error message is afterwards.

using ModelingToolkit, MethodOfLines, OrdinaryDiffEq, DomainSets


@parameters x y t
@variables u(..) v(..)
Dt = Differential(t)
Dx = Differential(x)
Dy = Differential(y)
Dxx = Differential(x)^2
Dyy = Differential(y)^2

∇²(u) = Dxx(u) + Dyy(u)

brusselator_f(x, y, t) = (((x-0.3)^2 + (y-0.6)^2) <= 0.1^2) * (t >= 1.1) * 5.

x_min = y_min = t_min = 0.0
x_max = y_max = 1.0
t_max = 11.5

α = 10.

u0(x,y,t) = 22(y*(1-y))^(3/2)
v0(x,y,t) = 27(x*(1-x))^(3/2)

eq = [Dt(u(x,y,t)) ~ 1. + v(x,y,t)*u(x,y,t)^2 - 4.4*u(x,y,t) + α*∇²(u(x,y,t)) + brusselator_f(x, y, t),
       Dt(v(x,y,t)) ~ 3.4*u(x,y,t) - v(x,y,t)*u(x,y,t)^2 + α*∇²(v(x,y,t))]

domains = [x  Interval(x_min, x_max),
              y  Interval(y_min, y_max),
              t  Interval(t_min, t_max)]

# Periodic BCs
bcs = [u(x,y,0) ~ u0(x,y,0),
       u(0,y,t) ~ u(1,y,t),
       u(x,0,t) ~ u(x,1,t),

       v(x,y,0) ~ v0(x,y,0),
       v(0,y,t) ~ v(1,y,t),
       v(x,0,t) ~ v(x,1,t)] 

@named pdesys = PDESystem(eq,bcs,domains,[x,y,t],[u(x,y,t),v(x,y,t)])

N = 32

dx = (x_max-x_min)/N
dy = (y_max-y_min)/N

order = 2

discretization = MOLFiniteDifference([x=>dx, y=>dy], t, approx_order=order, grid_align=center_align)

# Convert the PDE problem into an ODE problem
println("Discretization:")
@time prob = discretize(pdesys,discretization)

The error message

julia> @time sol = solve(prob, TRBDF2(), saveat=0.1)

signal (11): Segmentation fault: 11
in expression starting at REPL[38]:1
ndigits0zpb at ./intfuncs.jl:0
ndigits0z at ./intfuncs.jl:605
< at ./rational.jl:408
ode_determine_initdt at /Users/jiw1syv/.julia/packages/OrdinaryDiffEq/DGMT0/src/initdt.jl:125
auto_dt_reset! at /Users/jiw1syv/.julia/packages/OrdinaryDiffEq/DGMT0/src/integrators/integrator_interface.jl:357 [inlined]
handle_dt! at /Users/jiw1syv/.julia/packages/OrdinaryDiffEq/DGMT0/src/solve.jl:503
unknown function (ip: 0x288a6843f)
jl_apply_generic at /Applications/Julia-1.7.app/Contents/Resources/julia/lib/julia/libjulia-internal.1.7.dylib (unknown line)
#__init#503 at /Users/jiw1syv/.julia/packages/OrdinaryDiffEq/DGMT0/src/solve.jl:466
__init##kw at /Users/jiw1syv/.julia/packages/OrdinaryDiffEq/DGMT0/src/solve.jl:67
__init##kw at /Users/jiw1syv/.julia/packages/OrdinaryDiffEq/DGMT0/src/solve.jl:67 [inlined]
__init##kw at /Users/jiw1syv/.julia/packages/OrdinaryDiffEq/DGMT0/src/solve.jl:67 [inlined]
__init##kw at /Users/jiw1syv/.julia/packages/OrdinaryDiffEq/DGMT0/src/solve.jl:67 [inlined]
__init##kw at /Users/jiw1syv/.julia/packages/OrdinaryDiffEq/DGMT0/src/solve.jl:67 [inlined]
#__solve#502 at /Users/jiw1syv/.julia/packages/OrdinaryDiffEq/DGMT0/src/solve.jl:4
__solve##kw at /Users/jiw1syv/.julia/packages/OrdinaryDiffEq/DGMT0/src/solve.jl:4 [inlined]
#solve_call#24 at /Users/jiw1syv/.julia/packages/DiffEqBase/5OQ8Y/src/solve.jl:451 [inlined]
solve_call##kw at /Users/jiw1syv/.julia/packages/DiffEqBase/5OQ8Y/src/solve.jl:423
unknown function (ip: 0x288a350df)
jl_apply_generic at /Applications/Julia-1.7.app/Contents/Resources/julia/lib/julia/libjulia-internal.1.7.dylib (unknown line)
#solve_up#30 at /Users/jiw1syv/.julia/packages/DiffEqBase/5OQ8Y/src/solve.jl:804
solve_up##kw at /Users/jiw1syv/.julia/packages/DiffEqBase/5OQ8Y/src/solve.jl:779 [inlined]
#solve#29 at /Users/jiw1syv/.julia/packages/DiffEqBase/5OQ8Y/src/solve.jl:774 [inlined]
solve##kw at /Users/jiw1syv/.julia/packages/DiffEqBase/5OQ8Y/src/solve.jl:769
unknown function (ip: 0x288a2741f)
jl_apply_generic at /Applications/Julia-1.7.app/Contents/Resources/julia/lib/julia/libjulia-internal.1.7.dylib (unknown line)
top-level scope at ./timing.jl:220 [inlined]
top-level scope at ./REPL[38]:0
jl_toplevel_eval_flex at /Applications/Julia-1.7.app/Contents/Resources/julia/lib/julia/libjulia-internal.1.7.dylib (unknown line)
jl_toplevel_eval_flex at /Applications/Julia-1.7.app/Contents/Resources/julia/lib/julia/libjulia-internal.1.7.dylib (unknown line)
jl_toplevel_eval_in at /Applications/Julia-1.7.app/Contents/Resources/julia/lib/julia/libjulia-internal.1.7.dylib (unknown line)
eval at ./boot.jl:373 [inlined]
eval_user_input at /Users/sabae/src/julia/usr/share/julia/stdlib/v1.7/REPL/src/REPL.jl:150
repl_backend_loop at /Users/sabae/src/julia/usr/share/julia/stdlib/v1.7/REPL/src/REPL.jl:246
start_repl_backend at /Users/sabae/src/julia/usr/share/julia/stdlib/v1.7/REPL/src/REPL.jl:231
#run_repl#47 at /Users/sabae/src/julia/usr/share/julia/stdlib/v1.7/REPL/src/REPL.jl:364
run_repl at /Users/sabae/src/julia/usr/share/julia/stdlib/v1.7/REPL/src/REPL.jl:351
jl_apply_generic at /Applications/Julia-1.7.app/Contents/Resources/julia/lib/julia/libjulia-internal.1.7.dylib (unknown line)
#930 at ./client.jl:394
jfptr_YY.930_31284 at /Applications/Julia-1.7.app/Contents/Resources/julia/lib/julia/sys.dylib (unknown line)
jl_apply_generic at /Applications/Julia-1.7.app/Contents/Resources/julia/lib/julia/libjulia-internal.1.7.dylib (unknown line)
jl_f__call_latest at /Applications/Julia-1.7.app/Contents/Resources/julia/lib/julia/libjulia-internal.1.7.dylib (unknown line)
#invokelatest#2 at ./essentials.jl:716 [inlined]
invokelatest at ./essentials.jl:714 [inlined]
run_main_repl at ./client.jl:379
exec_options at ./client.jl:309
_start at ./client.jl:495
jfptr__start_41470 at /Applications/Julia-1.7.app/Contents/Resources/julia/lib/julia/sys.dylib (unknown line)
jl_apply_generic at /Applications/Julia-1.7.app/Contents/Resources/julia/lib/julia/libjulia-internal.1.7.dylib (unknown line)
true_main at /Applications/Julia-1.7.app/Contents/Resources/julia/lib/julia/libjulia-internal.1.7.dylib (unknown line)
jl_repl_entrypoint at /Applications/Julia-1.7.app/Contents/Resources/julia/lib/julia/libjulia-internal.1.7.dylib (unknown line)
Allocations: 865939469 (Pool: 865850951; Big: 88518); GC: 373

My system infomation

julia> versioninfo()
Julia Version 1.7.2
Commit bf53498635 (2022-02-06 15:21 UTC)
Platform Info:
  OS: macOS (arm64-apple-darwin21.2.0)
  CPU: Apple M1 Pro
  WORD_SIZE: 64
  LIBM: libopenlibm
  LLVM: libLLVM-12.0.1 (ORCJIT, cyclone)

(MyProject) pkg> st
      Status `~/Documents/test_MOL/MyProject/Project.toml`
  [5b8099bc] DomainSets v0.5.12
  [94925ecb] MethodOfLines v0.4.0
  [961ee093] ModelingToolkit v8.19.0
  [1dea7af3] OrdinaryDiffEq v6.22.0

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions