2

我正在使用一个名为 besselh 的 Matlab 函数,它给出了 Theoderon 的升力不足函数的精确解,该函数在给定 k 范围内执行不可压缩流动中的简谐运动的二维翼型。

我试图用给定的 k 范围绘制这个函数的实部。我觉得我的代码中遗漏了一些非常简单的东西。也许,通过在循环中包含“绘图”函数,我可能会错误地使用 for 循环?

for k=10^-10:0.2:1.5 %range of k
H=(besselh(1,2,k))/(besselh(1,2,k)+i*besselh(0,2,k)) %Bessel function
plot(k,real(H))
%plot(k,imag(H))
end

下面是情节应该是什么样子的图片(实线)。

任何帮助将不胜感激,在此先感谢您!

这就是情节应该是什么样子

4

1 回答 1

2

您正在尝试单独绘制每个点。只需计算整个范围内的函数k,然后绘制:

k = 10^-10:0.2:1.5; %range of k
% notice the ./ means element-wise vector division
H = (besselh(1,2,k)) ./ (besselh(1,2,k) + i * besselh(0,2,k)); %Bessel function
plot(k,real(H))
于 2018-06-07T15:33:08.720 回答