- •Введение
- •Командное окно
- •Редактирование командной строки.
- •Длинные командные строки.
- •Вывод на печать командного окна.
- •Запуск внешних программ.
- •!Notepad
- •Команда format.
- •Выражения
- •Переменные.
- •Inf бесконечность
- •Операторы.
- •Функции.
- •Текстовые комментарии и символьные константы.
- •Операции с рабочей областью
- •Операции с файлами
- •Дневник командного окна
- •Операции с векторами и матрицами
- •Оператор «двоеточие».
- •Векторные индексы.
- •Удаление строк и столбцов.
- •Объединение матриц.
- •Транспонирование матриц.
- •Создание матриц с заданными свойствами.
- •Создание вектора равноотстоящих точек.
- •Создание вектора равноотстоящих точек в логарифмическом масштабе.
- •Разреженные матрицы.
- •Графика
- •Команда plot.
- •Графические объекты.
- •Окна изображений.
- •Добавление кривых на существующий график.
- •Управление осями.
- •Разбиение графического окна.
- •Подписи к осям и заголовки.
- •Графики в полярной системе координат.
- •Контурные графики и графики полей градиентов.
- •Создание массивов данных для трехмерной графики.
- •Построение графиков трехмерных поверхностей.
- •Программирование в системе matlab.
- •Основные типы данных.
- •Арифметические операторы и массивы.
- •Операторы отношения.
- •Логические операторы и функции.
- •Приоритет выполнения операторов.
- •Структура файлов сценариев.
- •Структура m-файлов функций.
- •Использование подфункций.
- •Операторная функция.
- •Передача данных через глобальные переменные.
- •Параметры функционального типа.
- •Функции с переменным числом аргументов.
- •Управление потоками.
- •If expression1
- •Диалоговый ввод.
- •Численные методы и обработка данных
- •Решение систем линейных алгебраических уравнений.
- •Решение систем линейных уравнений итерационными методами.
- •Обратная матрица и определитель.
- •Факторизация Холецкого.
- •Lu факторизация.
- •Qr факторизация.
- •Матричная экспонента.
- •Собственные значения и собственные вектора.
- •Нормальная форма Жордана.
- •Разложение Шура.
- •Сингулярное разложение.
- •Численное интегрирование.
- •Представление полиномов в среде matlab.
- •Умножение и деление многочленов.
- •Вычисление производной от многочлена.
- •Решение систем нелинейных уравнений.
- •Преобразование Фурье.
- •Xlabel('time (seconds)')
- •Решение обыкновенных дифференциальных уравнений.
- •Численное решение дифференциальных уравнений в частных производных.
- •Литература
Программирование в системе matlab.
Программирование в системе MATLAB является эффективным средством ее расширения и адаптации к решению специфических задач. Большинство объектов этого языка, в частности все команды, операторы и функции, могут использоваться в командном режиме работы. Программы на языке программирования MATLAB сохраняются в виде текстовых m-файлов. При этом могут сохраняться как целые программы в виде файлов-сценариев, так и отдельные программные модули – функции.
Язык программирования MATLAB является интерпретатором. Это означает, что MATLAB не создает исполняемых конечных программ. Для выполнения программ необходима среда MATLAB. Для создания исполняемых программ следует воспользоваться специально разработанными компиляторами, например – MATLAB Compiler, транслирующими программы MATLAB в коды языков программирования C и C++.
С позиций программиста язык MATLAB является проблемно-ориентированным языком программирования высокого уровня, который содержит множество встроенных сложных функций и операторов. К таким функциям можно отнести матричные функции, функции быстрого преобразования Фурье и другие, а к операторам – операторы построения разнообразных графиков, генерации матриц определенного вида и т.д.
Основные типы данных.
В MATLAB определены 14 основных типов данных (или классов), представляющих собой форму массива. Массивы могут быть многомерными или иметь размерность 0x0. Двумерные массивы принято называть матрицами. Типы данных кратко описаны в следующей таблице:
Тип данных |
Пример |
Описание |
single |
3*10^38 |
Числовой массив с одинарной точностью. Не может использоваться в математических операциях. |
double |
3*10^300 5+6i |
Числовой массив с двойной точностью. Наиболее часто используемый тип данных. |
sparse |
speye(5) |
Разреженные матрицы с элементами-числами удвоенной точности. |
int8, uint8, int16,uint16,int32,uint32 |
uint8(magic(3)) |
Целочисленные массивы со знаком и без знака, длина элементов которых равна 8,16 и 32 разрядам. Математические операции с этими типами не предусмотрены. |
char |
'Hello' |
Строчные массивы с элементами-символами. |
cell |
{17 'hello' eye(2)} |
Массивы ячеек; ячейки, в свою очередь также могут быть массивами. |
structure |
a.day = 12; a.color = 'Red'; a.mat = magic(3); |
Массивы записей с полями, которые также могут содержать массивы. |
user class |
inline('sin(x)') |
Тип данных, определяемый пользователем. Строится на основе функций MATLAB. |
java class |
java.awt.Frame |
Java класс. Вы можете использовать классы уже определенные в Java API или создать свои собственные на языке Java. |
function handle |
@humps |
Указатель функции MATLAB. Указатель может передаваться в списке аргументов или определяться командой feval. |
Каждому типу данных можно соотнести некоторые характерные для него операции, называемые методами. Дочерние типы данных выводятся из родительских классов и наследуют их методы. Поскольку в иерархии типов данных старшим является array, то все типы в MATLAB являются массивами.