Поверхности уровня, линии уровня

Множество всех точек М из области V , в которых выполняется равенство , где С – некоторая постоянная, называется поверхностью уровня, соответствующей числу С. Семейство поверхностей уровня скалярного поля в декартовых координатах определяется уравнением , где С - произвольное действительное число.

Замечание:дляплоского поля уравнение определяет линии уровня.

Для построения линий уровня соответствующих поверхностей в среде Matlab используются функции contour:

contour(X,Y,Z) – строит линии уровня для поверхности Z =Z(X,Y),

contour(X,Y,Z,n) - то же с указанием числа линий уровня (по умолчанию 10),

contour(X,Y,Z,v) - то же для массива указанных значений ;

contour(Z), contour(Z,n), contour(Z,v) - аналогичные функции без указания диапазонов для аргументов

contour(...,LineSpec) - аналогичные функции c указанием типа и цвета линий (см. plot); [C,h]=contour (...) возвращает массив С и вектор дескрипторов, позволяя тем самым продолжить работу с рисунком (давать оцифровку линий, заголовки и др.).

Функция contourf(...) закрашивает области между линиями уровня, аналогична contour(...) с разницей в формате[C,h, cf]=contour (...), где cf определяет матрицу раскраски.

Функция contour3(...) по синтаксису полностью аналогична contour(...),изображает линии уровня в пространственной интерпретации; так команда [c,h]=contour3(x,y,z,20); дает фигуру (рис.3).

Пример 1: построить линии уровня заданной поверхности

>> [x,y]=meshgrid(-8:0.5:8); >> t=sqrt(x.^2+y.^2)+0.001; >> z=sin(t).^3./t; >> [c,h]=contour(x,y,z,20); >> [x,y]=meshgrid(-2:0.25:2); >> t=sqrt(x.^2+y.^2)+0.001; >> z=sin(t).^3./t; >> [c,h,cf]=contourf(x,y,z,4);  
Рис.1 Рис.2 Рис.3

 

Для маркировки контурных графиков используются команды группы clabel:

  • сlabel(CS, H) – маркирует контурный график с данными в контурной матрице CS и дескрипторами объектов, заданными в массиве Н. Метки вставляются в разрывы контурных линий и ориентируются в соответствии с направлением линий;
  • сlabel(CS, H, V) – маркирует только те уровни, которые указаны в векторе V. По умолчанию маркируются все контуры. Позиции меток располагаются случайным образом;
  • сlabel(CS, H, ‘manual’) – маркирует контурные графики с установкой положения маркеров с помощью мыши. Нажатие клавиши Enter или кнопки мыши завершает установку маркера. При отсутствии мыши для перехода от одной линии уровня к другой используется клавиша пробела, а для перемещении надписи используются клавиши перемещения курсора;
  • сlabel(CS), сlabel(CS, V), сlabel(CS, H, ‘manual’) – дополнительные возможности маркировки контурных графиков.

Пример использования функции сlabel

  >> [X,Y]=meshgrid([-3:0.1:3]); >> Z=sin(X)./(X.^2+Y.^2+0.3;) >> Z=sin(X)./(X.^2+Y.^2+0.3); >> C=contour(X,Y,Z,10); >> colormap(gray) >> clabel(C)  

 

 








Дата добавления: 2015-08-14; просмотров: 688;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.003 сек.