Matlab無法給出以下程序的3D曲面圖.Matlab給出了矩陣形式的所有變量的值。但它不能使用surf命令繪製三維圖形。爲什麼matlab不能在符號變量中使用'surf'命令繪製一個3d圖形?請幫助我....Matlab無法使用「衝浪」命令繪製3D圖形
clear all
close all
clc
syms r
c=1;
for R=0.01:0.01:0.03
R1(c)=R;
j=1;
for l=0.3:0.01:0.4
l1(j)=l;
A=l*exp(-r^2);
B=int(A,0,inf);
B1(c,j)=B;
j=j+1;
end
c=c+1;
end
B1=real(B1)
surf(R1,l1,B1')
你有沒有聽說過的[meshgrid(HTTP:/ /se.mathworks.com/help/matlab/ref/meshgrid.html?refresh=true)函數?它創建一個網格,允許您對代碼進行矢量化。在這個特殊情況下,它看起來很奇怪,有一個積分矩陣。那是你要的嗎? – patrik 2015-02-10 07:13:26
@patrik非常感謝你的幫助。但三維圖並未顯示。 – ARIJIT 2015-02-10 07:59:26
我明白這一點,但我擔心這個代碼有更多問題,我們需要逐個攻擊它們。我覺得第一件重要的事就是引導你創建一個函數,主要目的是爲'surf'和'mesh'函數創建一個網格。我認爲通過查看這個功能你會明白'surf'的工作原理。接下來理解爲什麼你計算相同的積分3次,然後用不同的偏移量計算它30次。如果解決了所有可能出現在循環中的索引問題,將會消失。符號問題仍然存在,雖然... – patrik 2015-02-10 09:46:28