我試圖使用生成顯示,
參數的情節,但我沒能拿到「漩渦」形狀的等高線圖
。下面是我的實現:
len = 200;
[X,Y] = meshgrid(linspace(0,80,len), linspace(-8,8,len));
t = meshgrid(linspace(0,1,len));
a = 1.2;
c = 0.12;
k = 2*pi/7.5;
w = 0.4;
e = 0.3;
B = a + e * cos(w*t);
D = k * (X - c*t);
PSI = - tanh((Y - B.*sin(D)) ./ sqrt(1 + (k * B.*cos(D)).^2)) + c*Y;
figure('Position',[100 100 650 300])
movegui('center')
subplot(211)
contour(X, Y, PSI, 10), ylim([-4.5 4.5])
%colormap cool
xlabel('kilometers'), ylabel('km'), title('Mobility Model')
subplot(212), axis off
text(0.5, 0.5, ...
{['$\psi(x,y,t) = -\tanh{[ \frac{y - B(t) \sin(k(x-ct))}' ...
'{\sqrt{1 + k^2 B^2(t) \cos^2(k(x-ct))}} ]} + cy$'];
'$where\, B(t) = A + \epsilon cos(\omega t)$'}, 'Interpreter','latex', ...
'FontSize',20, 'Horizontal','center', 'Vertical','middle')
這導致我相信你已經展示的截圖不完全匹配它下面的等式/參數...
實際上,如果我們以3D觀察曲面圖,就會發現曲線中沒有看起來像那些在正弦曲線之間的三角形的形狀。它只是兩個幾乎平坦的飛機,兩者之間有一個凹陷的下降。
這裏是顯示爲表面圖的二維函數:
surf(X, Y, PSI, 'FaceColor','interp', 'EdgeColor','none')
daspect([20 6 1])
axis vis3d, axis tight
box on, grid on, view(140,30)
xlabel X, ylabel Y, zlabel PSI
lighting phong
camlight left
非常感謝你對你的解釋,但我仍需要這些旋渦狀 – Asad
@ user2487309:好,我看到問題;正如我預料的那樣,函數方程與您剛剛發佈的截圖中顯示的函數方程並不完全相同。在'PSI = -tanh(..)+ c * y'的末尾添加了一個術語,在原始圖片中省略了該術語。另外正弦函數在sin(k *(s-ct))中提到變量's'而不是'x',我認爲這是一個錯字?現在我不知道它代表什麼,但是你應該仔細檢查方程式!無論如何,當我添加缺失的術語'c * y'時,我開始看到你正在談論的「渦旋」形狀。我已更新我的帖子... – Amro
你是絕對正確的。非常感謝你提供了一個非常棒的答案 – Asad