2013-09-27 50 views
0

我使用MATLAB的內置函數來計算第二階的貝塞爾函數使用否定範圍爲貝塞爾函數結果,以下是代碼在2個值

format long 
z = (-5:1:5)'; 

y = bessely(1,z) 
plot (y) 

輸出如下

Y =

-0.147863143391227 + 0.655158275182930i

-0.397925710557100 + 0.13208665604709 8I

-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

除了給出的答案,比較你的輸出和簡單取平方根的結果:'z。^ 0.5' –

回答

3

-0.147863143391227 + 0.655158275182930i 

不是兩個值,它是一個單一的複數。請參閱第二部分右側的i?這是Matlab告訴你的第二個數字是數字的虛數部分,乘以i(-1的平方根)。

Matlab告訴你,我同意這一點上的Matlab,該函數返回負值輸入的複數值。

0

兩個值?!這是一個複雜的數字!也就是說,一個x + yi形式的數字,其中i是-1的平方根。