Skip to content

readme examples "broken" on julia 1.0 #6

@AshtonSBradley

Description

@AshtonSBradley
julia> using ComplexPhasePortrait


julia> nx = 1000
1000

julia> x = range(-1, stop=1, length=nx)
-1.0:0.002002002002002002:1.0

julia> Z = x' .+ reverse(x)*im
1000×1000 Array{Complex{Float64},2}:
 -1.0+1.0im         0.997998+1.0im       1.0+1.0im     
 -1.0+0.997998im     0.997998+0.997998im  1.0+0.997998im
 -1.0+0.995996im     0.997998+0.995996im  1.0+0.995996im
 -1.0+0.993994im     0.997998+0.993994im  1.0+0.993994im
 -1.0+0.991992im     0.997998+0.991992im  1.0+0.991992im
 -1.0+0.98999im     0.997998+0.98999im   1.0+0.98999im 
 -1.0+0.987988im     0.997998+0.987988im  1.0+0.987988im
 -1.0+0.985986im     0.997998+0.985986im  1.0+0.985986im
                                                      
 -1.0-0.987988im     0.997998-0.987988im  1.0-0.987988im
 -1.0-0.98999im      0.997998-0.98999im   1.0-0.98999im 
 -1.0-0.991992im    0.997998-0.991992im  1.0-0.991992im
 -1.0-0.993994im     0.997998-0.993994im  1.0-0.993994im
 -1.0-0.995996im     0.997998-0.995996im  1.0-0.995996im
 -1.0-0.997998im     0.997998-0.997998im  1.0-0.997998im
 -1.0-1.0im          0.997998-1.0im       1.0-1.0im     

julia> f = z -> (z - 0.5im)^2 * (z + 0.5+0.5im)/z
#3 (generic function with 1 method)

julia> fz = f.(Z)
1000×1000 Array{Complex{Float64},2}:
      0.25-1.375im     0.246876-1.37187im       1.125+1.5im    
  0.253124-1.37187im       0.25-1.36875im      1.12787+1.49487im
  0.256241-1.36874im   0.253117-1.36563im      1.13074+1.48974im
  0.259351-1.36562im   0.256226-1.36251im       1.1336+1.48461im
  0.262452-1.36249im   0.259328-1.35939im      1.13645+1.47948im
  0.265547-1.35936im   0.262422-1.35627im     1.13929+1.47434im
  0.268634-1.35623im   0.265509-1.35315im      1.14212+1.46921im
  0.271713-1.3531im    0.268589-1.35003im      1.14495+1.46408im
                                                              
 -0.594364+1.48274im  -0.597234+1.47766im     0.279126-3.59572im
  -0.59945+1.48562im  -0.602321+1.48053im     0.274293-3.6006im 
 -0.604544+1.48849im  -0.607415+1.48339im    0.269451-3.60548im
 -0.609646+1.49137im  -0.612518+1.48626im     0.264601-3.61036im
 -0.614756+1.49425im  -0.617629+1.48913im     0.259743-3.61524im
 -0.619874+1.49712im  -0.622747+1.492im       0.254876-3.62012im
    -0.625+1.5im      -0.627874+1.49487im         0.25-3.625im  

julia> img = portrait(fz)
1000×1000 Array{RGB{Float64},2} with eltype ColorTypes.RGB{Float64}:
 RGB{Float64}(0.126878,1.0,0.0)    RGB{Float64}(0.567613,0.0,1.0)
 RGB{Float64}(0.126878,1.0,0.0)     RGB{Float64}(0.567613,0.0,1.0)
 RGB{Float64}(0.126878,1.0,0.0)     RGB{Float64}(0.567613,0.0,1.0)
 RGB{Float64}(0.126878,1.0,0.0)     RGB{Float64}(0.567613,0.0,1.0)
 RGB{Float64}(0.136895,1.0,0.0)     RGB{Float64}(0.577629,0.0,1.0)
 RGB{Float64}(0.136895,1.0,0.0)    RGB{Float64}(0.577629,0.0,1.0)
 RGB{Float64}(0.136895,1.0,0.0)     RGB{Float64}(0.577629,0.0,1.0)
 RGB{Float64}(0.136895,1.0,0.0)     RGB{Float64}(0.577629,0.0,1.0)
                                                                
 RGB{Float64}(0.687813,0.0,1.0)     RGB{Float64}(1.0,0.861436,0.0)
 RGB{Float64}(0.687813,0.0,1.0)     RGB{Float64}(1.0,0.871452,0.0)
 RGB{Float64}(0.687813,0.0,1.0)    RGB{Float64}(1.0,0.871452,0.0)
 RGB{Float64}(0.677796,0.0,1.0)     RGB{Float64}(1.0,0.871452,0.0)
 RGB{Float64}(0.677796,0.0,1.0)     RGB{Float64}(1.0,0.881469,0.0)
 RGB{Float64}(0.677796,0.0,1.0)     RGB{Float64}(1.0,0.881469,0.0)
 RGB{Float64}(0.677796,0.0,1.0)     RGB{Float64}(1.0,0.881469,0.0)

does not error, but neither does it produce a figure. Similarly for

julia> img = portrait(fz, ctype="nist")

julia> img = portrait(fz, PTstepphase)

julia> img = portrait(fz, PTstepmod)

The final example hits a MethodError:

julia> img = portrait(fz, PTcgrid)
ERROR: MethodError: no method matching abs(::Array{Complex{Float64},2})
Closest candidates are:
  abs(::Bool) at bool.jl:91
  abs(::Float16) at float.jl:517
  abs(::Float32) at float.jl:518
  ...
Stacktrace:
 [1] #portrait#3(::Int64, ::Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{(),Tuple{}}}, ::Function, ::Array{Complex{Float64},2}, ::Type{PTcgrid}) at /Users/abradley/.julia/packages/ComplexPhasePortrait/QeyCS/src/ComplexPhasePortrait.jl:55
 [2] portrait(::Array{Complex{Float64},2}, ::Type{PTcgrid}) at /Users/abradley/.julia/packages/ComplexPhasePortrait/QeyCS/src/ComplexPhasePortrait.jl:53
 [3] top-level scope at none: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