我使用matlab的内置函数来计算二阶bessel函数,以下是代码
format long
z = (-5:1:5)';
y = bessely(1,z)
plot (y)
输出如下
y =
-0.147863143391227 + 0.655158275182930i
-0.397925710557100 + 0.132086656047098i
-0.324674424791800 - 0.678117917051873i
0.107032431540937 - 1.153449615513747i
0.781212821300289 - 0.880101171489867i
-Inf
-0.781212821300289
-0.107032431540937
0.324674424791800
0.397925710557100
0.147863143391227
我不明白为什么当z的值为负时我得到两个值?
答案 0 :(得分:3)
此
-0.147863143391227 + 0.655158275182930i
不是两个值,而是一个复数。请参阅第二部分右侧的i
?这是Matlab告诉你的第二个数字是数字的虚部,即乘以i
,-1的平方根。
Matlab告诉你,我同意Matlab,该函数返回负输入的复数值。
答案 1 :(得分:0)
两个值?!这是一个复杂的数字!也就是说,形式为x + yi,其中i
是-1的平方根。