Потоковые ленты иллюстрируют направление потока, подобного линиям потоков, но могут также показать вращение вокруг оси потока путем скручивания соединительной линии ленточной формы. Функция streamribbon позволяет вам задать угол скручивания (в радианах) для каждой вершины в потоковых лентах.
Когда используется в сочетании с функцией curl, streamribbon полезен для отображения вихревой угловой скорости векторного поля. Следующий пример иллюстрирует этот метод.
Загрузите и выберите видимую область в наборе данных wind с помощью subvolume. Графическое изображение полного набора данных сначала может помочь вам выбрать видимую область.
load wind lims = [100.64 116.67 17.25 28.75 -0.02 6.86]; [x,y,z,u,v,w] = subvolume(x,y,z,u,v,w,lims);
Вычислите вихревую угловую скорость и скорость ветра.
cav = curl(x,y,z,u,v,w); wind_speed = sqrt(u.^2 + v.^2 + w.^2);
Используйте meshgrid, чтобы создать массивы отправных точек для потоковых лент. Смотрите Отправные точки Определения для Потока информация о Plotsfor об определении массивов отправных точек.
stream3 вычисляет вершины линии потоков с размером шага .5.
streamribbon масштабирует ширину ленты фактором 2, чтобы улучшить видимость скручивания (который указывает на вихревую угловую скорость).
streamribbon возвращает указатели объектов подложки, которые он создает, которые затем используются, чтобы выбрать цвет к красному (FaceColor), цвет поверхностных краев к светло-серому (EdgeColor), и немного увеличить яркость рассеянного света, отраженного, когда подсветка применяется (AmbientStrength).
[sx sy sz] = meshgrid(110,20:5:30,1:5); verts = stream3(x,y,z,u,v,w,sx,sy,sz,.5); h = streamribbon(verts,x,y,z,cav,wind_speed,2); set(h,'FaceColor','r',... 'EdgeColor',[.7 .7 .7],... 'AmbientStrength',.6)
Команда volumebounds обеспечивает удобный способ установить axis и цветные пределы.
Добавьте grid и установите view для 3-D (streamribbon не изменяет текущее представление).
camlight создает свет, расположенный справа от точки зрения, и lighting устанавливает метод подсветки на Гуро.
axis(volumebounds(x,y,z,wind_speed)) grid on view(3) camlight right;
