简体   繁体   English

LoadError: MethodError: convert(::Type{Union{}}, ::LinearAlgebra.Adjoint{Float64,Array{Float64,1}}) 不明确

[英]LoadError: MethodError: convert(::Type{Union{}}, ::LinearAlgebra.Adjoint{Float64,Array{Float64,1}}) is ambiguous

While I'm using julia to compile a.jl file当我使用 julia 编译 a.jl 文件时

pixelscale=4e-4
psfsize=4191.00

span = (2*pixelscale * floor(psfsize/2))/(psfsize-1)
temx = [-pixelscale * floor(psfsize/2)]
for i in psfsize
    b=-pixelscale * floor(psfsize/2) + i*span
    push!(temx,b)
end

meshtheta = temx   
meshphi = temx'
R_pup = sqrt(meshphi^2 + meshtheta^2)

temx is a one dimensional array and temx' is transposed from temx and error occurs: temx是一维数组, temx'temx转置,出现错误:

LoadError: MethodError: convert(::Type{Union{}}, ::LinearAlgebra.Adjoint{Float64,Array{Float64,1}}) is ambiguous. LoadError: MethodError: convert(::Type{Union{}}, ::LinearAlgebra.Adjoint{Float64,Array{Float64,1}}) 不明确。

I can't see why it's wrong.Does anyone have any idea?我不明白为什么它是错的。有人知道吗?

The error you're seeing comes from this:您看到的错误来自于此:

julia> a = rand(2);

julia> a'
1×2 adjoint(::Vector{Float64}) with eltype Float64:
 0.985248  0.651835

julia> (a')^2
ERROR: MethodError: convert(::Type{Union{}}, ::LinearAlgebra.Adjoint{Float64, Vector{Float64}}) is ambiguous. Candidates:

This is essentially because squaring a row or column vector doesn't make mathematical sense thus is undefined in Julia.这主要是因为对行或列向量求平方没有数学意义,因此在 Julia 中未定义。

If you want element-wise sqaure, do a'.^ 2 instead.如果你想要逐元素的 sqaure,请改为执行a'.^ 2

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 在Julia中将类型Array {Union {Missing,Float64},1}转换为Array {Float64,1} - Convert type Array{Union{Missing, Float64},1} to Array{Float64,1} in Julia 如何将数组{Float64,1}转换为Float64? 在朱莉娅 - how to convert an array{Float64,1} to a Float64? in julia 如何在 julia 中将 Tuple{Array{Float64,1},Array{Float64,1}} 转换为 Array{Tuple{Float64,Float64},1} - How to convert a Tuple{Array{Float64,1},Array{Float64,1}} to Array{Tuple{Float64,Float64},1} in julia 使用 rand MethodError: 没有方法匹配 isless(::Array{Float64,1}, ::Float64) - using rand MethodError: no method matching isless(::Array{Float64,1}, ::Float64) MethodError: Float64 类型的对象不可调用 - MethodError: objects of type Float64 are not callable 如何在 Julia 中将 Array{Float64,2} 转换为 Array{Array{Float64,1},1} - How to convert from Array{Float64,2} to Array{Array{Float64,1},1} in Julia 是否可以将 Julia 中的 Array{Num,1} 转换为 Array{Float64,1}? - Is it possible to convert an Array{Num,1} to Array{Float64,1} in Julia? MethodError: 没有方法匹配权重(::Array{Any,1}, ::Float64) - MethodError: no method matching Weights(::Array{Any,1}, ::Float64) 错误:方法错误:没有方法匹配 abs(::Array{Complex{Float64},1}) - ERROR: MethodError: no method matching abs(::Array{Complex{Float64},1}) 如何将字符串“ Array {Float64,1} [1,2,3]”转换为Julia中的实际数组? - How do you convert the string “Array{Float64,1}[1,2,3]” to an actual array in Julia?
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM