使用 conv 函数报错:ERROR: MethodError: no method matching conv,如何处理?
技术分享
发布于 2025-07-22 14:54:29
查看 1过去315天
问题现象
using TyMath
a = Array{Any}(undef,1)
a[1] = 1+1im
b = 1+1im
w = conv(a,b)

解决方法
使用 conv 函数时,如果输入的第一个参数是 Any 类型,Any 类型不稳定会导致出现报错,需要使用 ComplexF64 函数将 Any 类型数组转为 Complex 类型。
1.将上述代码修改为为以下:
using TyMath
a = Array{Any}(undef,1)
a[1] = 1+1im
b = 1+1im
# w = conv(a,b)
w = conv(ComplexF64.(a),b) #使用 ComplexF64 函数改变 Any 类型数组为 ComplexF64
2.运行上述代码,可以看到运行出正确结果:

所属专栏:Syslab基础平台
产品信息:Syslab科学计算环境