exponenta event banner

Отображение скругления с ленточками потока

Что могут показать ленты потока

Ленты потока иллюстрируют направление потока, аналогичное поточным линиям, но могут также показывать вращение вокруг оси потока посредством скручивания ленточной линии потока. streamribbon функция позволяет задать угол скручивания (в радианах) для каждой вершины в полосах потока.

При использовании совместно с curl функция, streamribbon полезен для отображения угловой скорости скручивания векторного поля. Следующий пример иллюстрирует этот метод.

1. Выбор подмножества данных для печати

Загрузите и выберите интересующую область в 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);

2. Расчет угловой скорости скручивания и скорости ветра

Рассчитайте угловую скорость завитка и скорость ветра.

cav = curl(x,y,z,u,v,w);
wind_speed = sqrt(u.^2 + v.^2 + w.^2);

3. Создание ленты потока

  • Использовать meshgrid для создания массивов начальных точек для лент потока. Сведения о задании массивов начальных точек см. в разделе Задание начальных точек для плотцов потока.

  • 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)
    

4. Определение вида и добавление освещения

  • volumebounds команда обеспечивает удобный способ установки axis и пределы цвета.

  • Добавить grid и установите view для 3-D (streamribbon не изменяет текущий вид).

  • camlight создает источник света, расположенный справа от точки обзора и lighting устанавливает метод освещения Гуро.

    axis(volumebounds(x,y,z,wind_speed))
    grid on
    view(3)
    camlight right;