exponenta event banner

streamtube

Создание графика трубы потока 3-D

Синтаксис

streamtube(X,Y,Z,U,V,W,startx,starty,startz)
streamtube(U,V,W,startx,starty,startz)
streamtube(vertices,X,Y,Z,divergence)
streamtube(vertices,divergence)
streamtube(vertices,width)
streamtube(vertices)
streamtube(...,[scale n])
streamtube(ax,...)
h = streamtube(...)

Описание

streamtube(X,Y,Z,U,V,W,startx,starty,startz) черпает трубы потока из данных векторного объема U, V, W.

Множества X, Y, и Z, которые определяют координаты для U, V, и W, должна быть монотонной, но не должна быть равномерно разнесена. X, Y, и Z должны иметь одинаковое количество элементов, как если бы произведены meshgrid.

startx, starty, и startz определите начальные положения линий обтекания в центре труб.

Ширина трубок пропорциональна нормированной дивергенции векторного поля.

streamtube(U,V,W,startx,starty,startz) принимает X, Y, и Z определяются выражением

[X,Y,Z] = meshgrid(1:n,1:m,1:p)

где [m,n,p] = size(U).

streamtube(vertices,X,Y,Z,divergence) предполагает предварительно вычисленные вершины упорядочения и дивергенцию. vertices - массив ячеек из упорядоченных вершин (созданный stream3). X, Y, Z, и divergence являются 3-D массивами.

streamtube(vertices,divergence) принимает X, Y, и Z определяются выражением

[X,Y,Z] = meshgrid(1:n,1:m,1:p)

где [m,n,p] = size(divergence).

streamtube(vertices,width) определяет ширину трубок в массиве ячеек векторов, width. Размер каждого соответствующего элемента vertices и width должно быть равным. width также может быть скаляром, задающим единственное значение ширины всех труб потока.

streamtube(vertices) автоматически выбирает ширину.

streamtube(...,[scale n]) масштабирует ширину труб на scale. Значение по умолчанию: scale = 1. При создании поточных труб, используя начальные точки или дивергенцию, укажите scale = 0 подавляет автоматическое масштабирование. n - количество точек по окружности трубы. Значение по умолчанию: n = 20.

streamtube(ax,...) печать в объекте-осях ax вместо в объект текущих осей (gca).

h = streamtube(...) возвращает вектор surface объекты (по одному на начальную точку), используемые для рисования труб потока.

Примеры

свернуть все

Используйте streamtube для указания потока в wind набор данных. Входные данные включают координаты, компоненты векторного поля и начальное местоположение труб потока.

load wind
[sx,sy,sz] = meshgrid(80,20:10:50,0:5:15);
streamtube(x,y,z,u,v,w,sx,sy,sz);
view(3);
axis tight
shading interp;
camlight; 
lighting gouraud

Figure contains an axes. The axes contains 16 objects of type surface.

Использовать данные вершин, возвращенные stream3 функция и данные расхождения для визуализации потока.

load wind
[sx,sy,sz] = meshgrid(80,20:10:50,0:5:15);
verts = stream3(x,y,z,u,v,w,sx,sy,sz);
div = divergence(x,y,z,u,v,w);
streamtube(verts,x,y,z,-div);
view(3);
axis tight
shading interp
camlight 
lighting gouraud

Figure contains an axes. The axes contains 16 objects of type surface.

Расширенные возможности

Представлен до R2006a