2016-07-25 84 views
0

我正在尝试绘制documentation之后的流线。我的数据是在meshgrid -format中描述的那里。流线未显示在MATLAB中

但是,当我尝试使用streamline(x,y,vx,vy)来绘制它时,我得到的是一个从0到1的空数字。当我添加起始点时,它仍然是空白的streamline(x,y,vx,vy, 1:5,0*(1:5))

我错过了什么让流线绘制?

这里是我的数据:因为要绘制X范围从至当您的数据包含X

x = [0   0.0125 0.0250 0.0375 0.0500, 
     0   0.0125 0.0250 0.0375 0.0500, 
     0   0.0125 0.0250 0.0375 0.0500, 
     0   0.0125 0.0250 0.0375 0.0500, 
     0   0.0125 0.0250 0.0375 0.0500]; 

y = [0   0   0   0   0, 
     0.0125 0.0125 0.0125 0.0125 0.0125, 
     0.0250 0.0250 0.0250 0.0250 0.0250, 
     0.0375 0.0375 0.0375 0.0375 0.0375, 
     0.0500 0.0500 0.0500 0.0500 0.0500]; 

vx = [0.0009 -0.0019 -0.0058 -0.0040 -0.0028, 
     0.0012 0.0159 0.1207 0.1465 0.0985, 
     0.0007 0.0018 -0.0367 0.2432 -0.0053, 
     0.0004 0.0920 0.1796 0.3807 0.0338, 
    -0.0006 0.1708 0.1764 0.2567 0.1256]; 

vy = [0.0002 0.0000 -0.0001 -0.0001 -0.0001, 
    -0.0003 -0.0156 -0.0076 -0.0251 -0.0433, 
    -0.0008 -0.0113 -0.0218 -0.0519 -0.0720, 
    -0.0006 -0.0091 -0.0326 -0.0778 -0.1087, 
    -0.0003 -0.0026 -0.0025 -0.0416 -0.1048]; 

回答

2

你提供的范围是不正确的在范围从到0.5

如果您将您的起点设置为更合理的事情,您将会按预期得到流线。例如,我们可以使用X = 0.015Y = 0.01 ... 0.05如下面的例子:

streamline(x,y,vx,vy, ones(1,5)*0.015, 0.01:0.01:0.05); 

result


要获得在那里你可以设置一个印象你的出发点,你可以使用quiver。然后,您会看到表示数据集中定义点的速度的箭头。取决于您可以决定使用哪个起点。

quiver(x,y,vx,vy); 

quiver-plot