- •Введение
- •Глава 1 знакомство с matlab и простейшие вычисления
- •1.1. Рабочая среда matlab
- •1.2. Арифметические вычисления
- •1.3. Вещественные числа
- •1.4. Форматы вывода результата вычислений
- •1.5 Комплексные числа
- •1.6 Векторы и матрицы
- •1.7 Встроенные функции. Функции, задаваемые пользователем
- •1.8 Сообщения об ошибках и их исправление
- •1.9 Просмотр и сохранение переменных
- •1.10 Матричные и поэлементные операции над векторами и матрицами
- •1.11 Решение систем линейных уравнений
- •Вопросы для самопроверки
- •Глава 2 работа с массивами
- •2.1 Создание векторов и матриц
- •2.2 Применение команд обработки данных к векторам и матрицам
- •2.3 Создание специальных матриц
- •2.4 Создание новых массивов на основе существующих
- •Вопросы для самопроверки
- •Глава 3 м-файлы
- •3.1 Файл-программы
- •3.2 Файл-функции
- •Вопросы для самопроверки
- •Глава 4 программирование
- •4.1 Операторы отношения и логические операторы
- •4.2 Операторы цикла
- •4.3 Операторы ветвления
- •4.4 Оператор переключения switch
- •4.5 Оператор прерывания цикла break
- •4.6 Пример сравнения быстродействия матричных и скалярных операций
- •Вопросы для самопроверки
- •Глава 5 высокоуровневая графика
- •5.1 2D графика
- •5.1.1 Графики в линейном масштабе
- •5.2 Специальные виды 2d - графиков
- •5.2.1 Представление функции в виде дискретных отсчетов
- •5.2.2 Лестничные графики
- •5.2.3 Графики с указанием погрешности
- •5.2.4 Графики в логарифмическом и полулогарифмическом масштабах
- •5.2.5 Графики параметрических функций
- •5.3 3D графика
- •5.3.1 Линейчатые поверхности
- •5.3.2 Каркасные поверхности
- •5.3.3 Контурные графики
- •5.3.4 Сплошная освещенная поверхность
- •5.4.2 Сохранение и экспорт графиков
- •5.4.3 Анимация
- •Вопросы для самопроверки
- •Глава 6 прикладная численная математика
- •6.1 Операции с полиномами
- •6.2 Решение уравнений и их систем
- •6.3 Минимизация функции одной переменной
- •6.4 Минимизация функции нескольких переменных
- •6.5 Вычисление определенных интегралов
- •6.6 Решение дифференциальных уравнений
- •Вопросы для самопроверки
- •Глава 7 символьные вычисления
- •7.1 Символьные переменные, константы и выражения
- •7.2 Вычисления с использованием арифметики произвольной точности
- •7.3 Команды упрощения выражений – simplify, simple
- •7.4 Команда расширения выражений – expand
- •7.5 Разложение выражений на простые множители – команда factor
- •7.6 Приведение подобных членов – команда collect
- •7.7 Обеспечение подстановок – команда subs
- •7.8 Вычисление пределов – команда limit
- •7.9 Вычисление производных – команда diff
- •7.10 Вычисление интегралов – команда int
- •7.11 Разложение в ряд Тейлора – команда taylor
- •7.12 Вычисление суммы ряда – команда symsum
- •7.13 Решение уравнений и их систем – команда solve
- •7.14 Решение дифференциальных уравнений – команда dsolve
- •7.15 Прямое и обратное преобразования Лапласа – команды laplace, ilaplace
- •7.16 Графики символьных функций – команды ezplot, ezpolar
- •7.17 Прямой доступ к ядру системы Maple – команда maple
- •7.18 Разложение рациональной дроби на сумму простейших дробей
- •7.20 Решение неравенств и систем неравенств
- •7.21 Разложение в ряд Тейлора функции нескольких переменных
- •7.22 Решение дифференциальных уравнений с помощью степенных рядов
- •7.23 Решение тригонометрических уравнений
- •Вопросы для самопроверки
- •Приложения Приложение 1. Справочная система matlab
- •Приложение 2. Знакомство с пакетами расширения системы matlab
- •Приложение 3. Задания для самостоятельной работы
- •Варианты
- •Варианты
- •Варианты
- •Варианты
- •Варианты
- •Варианты
- •Варианты
- •Варианты
- •Варианты
- •Варианты
- •Варианты
- •Варианты
- •Варианты
- •Варианты
- •Варианты
- •Литература
Вопросы для самопроверки
1. Как в MATLAB создать вектор с помощью операции сцепления строк, индексацией с помощью вектора, индексацией с помощью двоеточия
2. Какие команды выдают размер и размерность массива
3. Что называется порядком квадратной матрицы
4. Какая команда выдает длину вектора
5. С помощью какой команды можно упорядочить вектор по убыванию
6. Как найти сумму всех элементов матрицы
7. Какие команды создают массивы специального вида
8. Какая команда осуществляет разворот матрицы на 90o против часовой стрелки
9. Какая команда выделяет главную диагональ матрицы
Глава 3 м-файлы
M-файлы – это обыкновенные текстовые файлы (с расширением .m), содержащие команды системы MATLAB. Подготовленный и записанный на жесткий диск компьютера M-файл становится частью системы и его можно вызывать как из командной строки, так и из другого M-файла. Большая часть обширного набора готовых средств системы MATLAB – это внешние расширения в виде M-файлов. Благодаря текстовому формату M-файлов пользователь может ввести в систему любую новую команду, оператор или функцию и легко приспособить ее к решению нужных классов задач.
Различают два типа M-файлов: файл-программы (Script M-Files) и файл-функции (Function M-Files). Мы продемонстрируем использование обоих типов M-файлов ниже.
Для создания и редактирования M-файлов предназначен встроенный модуль Editor (Редактор), который можно запустить командой edit (для редактирования нового файла). Для запуска модуля Editor (Редактор) можно также использовать меню File (Файл) или два крайних слева значка на панели инструментов, как для создания нового файла, так и для открытия уже существующего.
3.1 Файл-программы
Файл-программы (их также называют сценариями или скриптами) являются простейшим типом M-файлов. Они содержат последовательность команд без входных и выходных параметров.
В качестве примера составим файл-программу нахождения длины d = радиус - вектора точки (x;y;z) трехмерного пространства с двумя фиксированными координатами y = 3, z = 4. В главном меню MATLAB выберем команду File => New => M-file (Файл => Новый => M-файл), в результате чего раскроется окно редактора M-файлов (рис. 3.1).
Рис.3.1
В этом окне введем следующие строки:
y=3;z=4;
d=sqrt(x^2+y^2+z^2)
Обратим внимание, что строка, задающая d, не завершена точкой с запятой, поэтому результат работы этой строки будет отображаться в командном окне.
Сохраним введенный файл-сценарий в текущем каталоге под именем, например, myprog.m. Для этого в окне редактора M-файлов выберем команду File => Save As (Файл => Сохранить как). В появившемся диалоговом окне Save file as (Сохранить файл как) раскроется подкаталог work основного каталога MATLAB, который по умолчанию определен в качестве текущего рабочего каталога Current Directory. В поле File name (Имя файла) введем имя myprog вместо отобразившегося по умолчанию имени Untitled.m и щелкнем на кнопке Save (Сохранить). Расширение .m вводить не следует, система MATLAB добавит его автоматически.
Выполнить сохраненный файл-сценарий можно одним из следующих способов:
в редакторе M-файлов выбрать команду Debug => Run (Отладка => Запуск);
набрать в командной строке имя M-файла (без расширения) и нажать клавишу <Enter>, т. е. выполнить сценарий как команду MATLAB.
Выполним сценарий вторым способом:
>> x=2;
>> myprog
d =
5.3852
Ответом является длина 5,3852 радиус - вектора точки (2;3;4).
При работе с редактором M-файлов имеется возможность запуска только части команд, из которых состоит M-файл. Для этого надо выделить команды при помощи мыши и нажать клавишу <F9>. Выделенные команды выполняются последовательно, точно так же, как если бы они были набраны в командной строке. Очевидно, что работать в M-файле удобнее, чем в командной строке, поскольку можно сохранить программу, можно редактировать ее, используя обычные приемы редактирования, общие для Windows - приложений, в том числе с помощью мыши и клавиш <↑> и <↓>.
Если вы захотите изменить созданный M-файл (например, зафиксировать координаты y = 4, z = 5), внесите соответствующие изменения в текст программы
y=4;z=5;
d=sqrt(x^2+y^2+z^2)
сохраните эти изменения и вновь запустите файл-сценарий:
>> x=2;
>> myprog
d =
6.7082
Теперь сценарий myprog.m вычислил длину 6,7082 радиус - вектора точки (2;4;5).
Сценарий myprog.m обрабатывает как свои собственные переменные y, z, так и переменную x, определенную до вызова сценария в командном окне системы MATLAB и хранящуюся в ее рабочем пространстве. Это возможно потому, что переменные, определяемые в сценариях, и переменные, определяемые в командном окне, составляют единое рабочее пространство системы MATLAB. В свою очередь, все переменные, созданные во время работы сценария, остаются в рабочем пространстве MATLAB и после окончания его выполнения, т. е. являются глобальными. Можно убедится в этом, выполнив команду who:
>> who
Your variables are:
d x y z
Справочную информацию по M-программам можно получить, введя команду doc script.