Помощничек
Главная | Обратная связь


Археология
Архитектура
Астрономия
Аудит
Биология
Ботаника
Бухгалтерский учёт
Войное дело
Генетика
География
Геология
Дизайн
Искусство
История
Кино
Кулинария
Культура
Литература
Математика
Медицина
Металлургия
Мифология
Музыка
Психология
Религия
Спорт
Строительство
Техника
Транспорт
Туризм
Усадьба
Физика
Фотография
Химия
Экология
Электричество
Электроника
Энергетика

Дополнительные возможности



Команда shading с соответствующими параметрами обеспечивает «затенение» поверхности: shading faceted(«фасеточное») – равномерная раскраска ячеек с черными гранями (по умолчанию); shading flat(«плоское») – раскраска ячеек и граней цветами, соответствующими цветам узлов; shading interp(«интерполяционное») – цвета ячеек и граней определяются в результате двухмерной линейной интерполяции цветов в узлах.

Сравните команды:

» shading flat

» shading interp

Восстановим исходное состояние объекта:

» shading faceted

Изменим цветовую палитру:

» colormap copper

Восстановление палитры по умолчанию: colormap default или colormap hsv.

В некоторых случаях может возникнуть необходимость в изменении яркости цветовой палитры, для чего используют функцию brighten(beta)с соответствующим значением аргумента: при увеличении яркости , при уменьшении – соответст­венно .

» surf(x,y,r), brighten(0.5)

Возврат в исходное состояние осуществляется по команде: brighten(-beta):

» brighten(-0.5)

Угол наблюдения, под которым виден пространственный объект, устанавливается с помощью команды view(az,el)или view([az,el]), где az– угол азимута (от англ. azimuth – поворот относительно оси z) и el – угол возвышения (от англ. elevation – поворот относительно оси х). Значения углов задают в градусах. По умолчанию , . Эти параметры устанавливаются командой view(3). Другой вариант ввода параметров – включение вектора углов поворота в графические функции: mesh(z,[az el]).

Пример. Вращение относительно оси х при фиксированном угле азимута:

» az=-37.5;

» for k=0:12, mesh(r,[az k*5]), grid, pause, end

Поворот осей внутри пространственного объекта на произвольные углы можно осуществлять с помощью мыши по команде rotate3d on – включение режима вращения: внутри фигуры появляется анимационный параллелепипед, изменяющий положение при движении мыши; в левом нижнем углу отображаются текущие значения углов азимута и возвышения. По команде rotate3d offотключается режим вращения.

Упражнение. Создать трехмерную фигуру и изменять ее положение с помощью команды rotate3d on. После выполнения упражнения отменить режим (rotate3d или rotate3d off).

Линии уровня, соответствующие сечению пространственного тела горизонтальными плоскостями на различной высоте, выводятся с помощью функции contour:

contour(z) – число линий уровня по умолчанию, без учета диапазона значений x и y;

contour(z,n)– то же, но с заданным числом линий уровня n;

contour(x,y,z), contour(x,y,z,n)– то же, с учетом диапазона значений x и y.

Пример:

» [x,y]=meshgrid(-2:0.1:2,-2:.1:3);

» z=x.*exp(-x.^2-y.^2); mesh(x,y,z), pause, contour(z,25)

5. ОСНОВЫ ПРО­­ГРАМ­МИ­РОВАНИЯ В СРЕДЕ MATLAB

Общие положения

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

– не всегда удается повторить предыдущие команды при изменении исходных дан­­ных без повторного набора операторов;

– отсутствует возможность сохранения последовательности вычислений и их модификации в случае необходимости.

Для проведения многократных расчетов по определенному алгоритму составляют программы. Пользователь может ввести собственные внешние процедуры и функции, которые автоматически подключаются к выполняемой программе. В этом проявляется свойство расширимости системы MATLAB. Создаваемые функции могут быть в дальнейшем включены в число встроенных функций. Помимо команд и функций, используемых в режиме прямых вычислений (входной язык MATLAB), при программировании используются и специфические возможности языка программирования, который относится к числу про­блемно ориентированных языков весьма высокого уровня.

В связи с тем, что в системе MATLAB реализуется механизм интерпретации, ис­пол­няемые программы (.exe) не создаются, т.е. программы могут работать только в среде MATLAB. Однако для версий MATLAB 5.х разработаны компиляторы, транслирующие программы MATLAB в коды алгоритмических языков С и С++.

В системе MATLAB различают script-файлы («сценарии») и внешние функции; и те и другие хранятся на диске как m-файлы, т.е. файлы, имеющие расширение *.m. Использование внешних функций позволяет создавать структурированные программы, имеющие сходство с программами, написанными на языках Паскаль и Бейсик, без применения меток. Последовательность операторов – такая же, как при прямых вычислениях (ин­тер­пре­татор MATLAB просматривает строки про­грам­мы одну за другой, в естественном порядке).

Script-файлы по существу представляют собой основные (вызывающие) програм­мы, поскольку они не используют входные данные как аргументы или параметры и не возвращают выходные данные, но могут обращаться к внешним функциям. Имена сценариев нельзя применять в качестве операндов и аргументов функций. М-функ­ции используются как обычные встроенные функции MATLAB, и их имена можно применять в вычислительных операторах.

Структура script-файла:

<Script>

% Имя файла <и назначение программы>

<% Дополнительный (поясняющий) комментарий>

Тело файла

Символ % используется для обозначения комментариев. Комментарии, помещаемые в начале текста файла, выводятся на экран по команде help name. Остальные комментарии могут фигурировать в любом месте программы (при выполнении программы они интерпретатором игнорируются). В текстах комментариев допускается использование кириллицы.

Структура М-функции:

function [var1,var2,…]=f_name(Список аргументов)

<% Основной комментарий>

<% Дополнительный комментарий>

Тело функции

var1=выражение

var2=выражение

……………………………

<% ------------------------------------------------

Локальные функции >

Локальные функции (подфункции), применение которых разрешено в версиях MATLAB 5.х, могут быть расположены в любом порядке и вызываются первой (основной) функцией. Помимо локальных могут быть также объявлены и глобальные переменные (в script-файле). В списке они отделяются друг от друга пробелами:

global var1 var2 …

В дальнейшем будем предполагать, что создаваемые m-файлы будут сохраняться в пользовательской папке, например, D:\USER.

 




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

©2015-2020 studopedya.ru Все права принадлежат авторам размещенных материалов.