slimgroup / JUDI.jl

Julia Devito inversion.
https://slimgroup.github.io/JUDI.jl
MIT License
96 stars 29 forks source link

ERROR: LoadError: type Int64 has no field n #126

Closed WYJLCYWHZ closed 2 years ago

WYJLCYWHZ commented 2 years ago

Hi, I am getting an error while running the example program in examples/software_paper/lsrtm_marmousi_easgd.jl

Warning: Fixed length trace flag set in stream: IOBuffer(data=UInt8[...], readable=true, writable=false, seekable=true, append=false, size=1086467600, maxsize=Inf, ptr=3601, mark=-1) └ @ SegyIO ~/.julia/packages/SegyIO/qkvUT/src/read/read_file.jl:26 ERROR: LoadError: type Int64 has no field n Stacktrace: [1] getproperty(x::Int64, f::Symbol) @ Base ./Base.jl:42 [2] top-level scope @ ~/.julia/environments/v1.7/lsrtm_marmousi_easgd.jl:52 in expression starting at /public/home/user/.julia/environments/v1.7/lsrtm_marmousi_easgd.jl:52

The error comes from: x = zeros(Float32, prod(model0.n).n, p)

I tried to cast n to int64 but that doesn't seem to work.Do you have any suggestion for me. thank you.(^▽^)

ziyiyin97 commented 2 years ago

Thanks for pointing it out. I think it's a typo -- should be x = zeros(Float32, prod(model0.n), p)

WYJLCYWHZ commented 2 years ago

感谢您指出。我认为这是一个错字——应该是x = zeros(Float32, prod(model0.n), p)

By the way, I also seem to have some problems when running the example below,

examples/compressive_splsrtm/Sigsbee2A/splsrtm_sigsbee_time_domain.jl

the error is:

Warning: judiProjection(info::Info, ar...; kw...) is deprecated, use judiProjection(ar...; kw...) │ caller = top-level scope at splsrtm_sigsbee_time_domain.jl:26 └ @ Core ~/.julia/environments/v1.7/splsrtm_sigsbee_time_domain.jl:26 ┌ Warning: judiModeling(info::Info, ar...; kw...) is deprecated, use judiModeling(ar...; kw...) │ caller = ip:0x0 └ @ Core :-1 ┌ Warning: judiProjection(info::Info, ar...; kw...) is deprecated, use judiProjection(ar...; kw...) │ caller = top-level scope at splsrtm_sigsbee_time_domain.jl:28 └ @ Core ~/.julia/environments/v1.7/splsrtm_sigsbee_time_domain.jl:28 ERROR: LoadError: could not load library "libdfdct_wrapping" libdfdct_wrapping.so: cannot open shared object file: No such file or directory Stacktrace: [1] joCurvelet2D(n1::Int64, n2::Int64; DDT::DataType, RDT::DataType, nbscales::Int64, nbangles_coarse::Int64, all_crvlts::Bool, real_crvlts::Bool, zero_finest::Bool, name::String) @ JOLI ~/.julia/packages/JOLI/g80Jj/src/joLinearFunctionConstructors/joCurvelet2D.jl:149 [2] top-level scope @ ~/.julia/environments/v1.7/splsrtm_sigsbee_time_domain.jl:45 in expression starting at /public/home/user/.julia/environments/v1.7/splsrtm_sigsbee_time_domain.jl:45

but I don't know why, can you help me(^▽^)

mloubout commented 2 years ago

libdfdct_wrapping is part of Curvelab and you will need a license for it (check JOLI.jl)

mloubout commented 2 years ago

http://www.curvelet.org/software.html

WYJLCYWHZ commented 2 years ago

libdfdct_wrapping is part of Curvelab and you will need a license for it (check JOLI.jl)

ok I’ll check it.Thank you(^▽^)