
2012-2013 / Литература / В. Дьяконов MATLAB Математические пакеты расширения Matlab
.pdfВ.Дьяконов, В.Круглов
МАТЕМАТИЧЕСКИЕ ПАКЕТЫ РАСШИРЕНИЯ MATLAB. СПЕЦИАЛЬНЫЙ СПРАВОЧНИК
Книга известных специалистов, педагогов с большим стажем в справочной форме описывает ряд пакетов расширения MATLAB. Впервые в одной книге описаны пакеты Notebooks, Symbolic, Simulink, Neural Net, Fuzzy Logic Toolbox, Optimization Toolbox и Statistics Toolbox. Эти пакеты существенно расширяют возможности системы MATLAB при выполнении массовых математических вычислений и моделировании сложных объектов и систем — как обычных, так и использующих новые подходы: нечеткую логику и нейронные сети. Особое внимание уделено визуализации математических вычислений и их теоретическому обоснованию.
Книга рекомендуется широкому кругу читателей — студентам университетов и вузов, инженерам, научным работникам.
Краткое содержание
Введение |
19 |
Глава 1 Основы работы с системой MATLAB |
24 |
Глава 2. Расширение Notebook |
84 |
Глава 3. Пакет расширения Symbolic Math |
100 |
Глава 4. Пакет расширения Simulink |
155 |
Глава 5. Пакет расширения по нейронным сетям |
199 |
Глава 6. Пакет нечеткой логики Fuzzy Logic Toolbox |
292 |
Глава 7. Пакет оптимизации Optimization Toolbox |
376 |
Глава 8. Пакет Statistics Toolbox |
437 |
Алфавитный указатель |
467 |
Содержание |
|
Введение |
19 |
Предупреждения |
21 |
Благодарности и адреса для связи |
22 |
От издательства |
23 |
Глава 1 Основы работы с системой MATLAB |
24 |
Ориентация на матричные операции |
24 |
Файловая система MATLAB |
25 |
Запуск MATLAB |
27 |
Операции строчного редактирования |
28 |
Команды управления окном |
28 |
MATLAB как мощный калькулятор |
29 |
Понятие о математическом выражении |
31 |
Типы данных системы MATLAB |
31 |
Числа целые и вещественные |
31 |
Форматы чисел |
32 |
Числа комплексные |
32 |
Константы и системные переменные |
32 |
Строки и текстовые комментарии |
33 |
Переменные и присваивание им значений |
34 |
Уничтожение определений переменных |
35 |
Операторы и функции |
36 |
Применение оператора : (двоеточие) |
38 |
Сообщения об ошибках и исправление последних |
40 |
Простейшие приемы работы с векторами и матрицами |
41 |
Особенности задания векторов и матриц |
41 |
Доступ к отдельным элементам |
42 |
Удаление столбцов и строк матриц |
44 |
Сессия MATLAB |
44 |
Сохранение рабочей области сессии |
45 |
Ведение дневника |
45 |
Загрузка рабочей области сессии |
47 |
Завершение работы с системой |
48 |
Работа со справочной системой MATLAB |
48 |
Вызов списка примеров интерактивной справки |
48 |
Справка по конкретному объекту |
49 |
Справка по определенной группе объектов |
49 |
Справка по ключевому слову |
50 |
Некоторые дополнительные справочные команды |
50 |
Вызов списка демонстрационных примеров |
52 |
Пример — тест на быстродействие компьютера |
52 |
Просмотр текстов примеров и m-файлов |
53 |
Запуск справочной системы Help Desk |
53 |
Справка по функциям и полнотекстовый обзор |
53 |
Просмотр документации в формате PDF |
55 |
Демонстрационные примеры |
55 |
Команда demo |
55 |
Ознакомительная система MATLAB Tour |
57 |
Пользовательский интерфейс |
57 |
Панель инструментов |
57 |
Кнопки работы с файлами |
58 |
Работа с буфером обмена |
59 |
Броузер рабочей области |
60 |
Команды просмотра рабочей области who и whos |
61 |
Броузер файловой структуры |
62 |
Меню системы |
63 |
Меню, операции и команды |
63 |
Меню File |
64 |
Операции с рабочей областью |
65 |
Настройка MATLAB и операция Preferences |
65 |
Операции печати |
66 |
Меню Edit — средства редактирования документов |
66 |
Меню View и Window |
67 |
Интерфейс редактора/отладчика m-файлов |
67 |
Цветовые выделения и синтаксический контроль |
68 |
Понятие о файлах-сценариях и файлах-функциях |
68 |
Панель инструментов редактора/отладчика |
69 |
Работа с точками останова |
71 |
Графика системы MATLAB |
72 |
Особенности графики системы MATLAB |
72 |
Интерфейс графических окон |
73 |
Построение графиков функций одной переменной |
75 |
Построение гистограммы |
76 |
Построение трехмерных графиков |
77 |
Вращение графиков мытью |
78 |
Редактор свойств графикой |
79 |
Управление форматом графиков |
80 |
Глава 2. Расширение Notebook |
84 |
Назначение расширения Notebook |
84 |
Создание Notebook |
85 |
Демонстрация возможностей Notebook |
87 |
Эволюция магической матрицы |
87 |
Эволюция рисунка |
88 |
Создание новых документов класса Notebook |
90 |
Открытие нового документа класса Notebook |
90 |
Пример создания документа класса Notebook |
90 |
Ячейки ввода MATLAB в тексте Word |
91 |
Преобразование текстов Word в ячейки ввода |
92 |
Сохранение документов класса Notebook |
92 |
Меню Notebook |
93 |
Создание ячейки ввода |
93 |
Создание ячейки автостарта |
93 |
Создание зоны вычислений |
93 |
Преобразование ячеек MATLAB в обычный текст |
94 |
Удаление ячеек вывода |
94 |
Создание многострочной ячейки ввода |
'94 |
Преобразование группы ячеек в ячейки ввода |
94 |
Управление показом маркеров |
44 |
Пуск оценки ячеек |
45 |
Пуск оценки зоны |
45 |
Пуск оценки всей М-книги |
45 |
Циклическая оценка |
45 |
Вывод окна MATLAB на передний план |
47 |
Установка опций Notebook |
98 |
Глава 3. Пакет расширения Symbolic Math |
100 |
Назначение пакета Symbolic Math |
100 |
Демонстрационные примеры |
101 |
Работа с объектами и переменными |
101 |
Задание символьных переменных |
101 |
Функция создания символьных переменных sym |
102 |
Функция создания группы символьных объектов syms |
104 |
Функция создания списка символьных переменных findsum |
104 |
Функции вывода и преобразования символьных выражений |
105 |
Функция вывода символьного выражения pretty |
105 |
Функция представления выражений в форме LaTeX |
10G |
Функция представления выражений в кодах языка C — ccode |
107 |
Функция представления выражений в кодах языка Fortran |
107 |
Контроль допустимости имен — isvarname |
108 |
Векторизация символьных выражений — vectorize |
108 |
Арифметика произвольной точности |
108 |
Установка количества знаков чисел — digits |
108 |
Вычисления в арифметике произвольной точности — vpa |
109 |
Символьные операции с матрицами |
110 |
Задание или извлечение диагональных элементов матриц — diag |
110 |
Формирование верхней треугольной матрицы — triu |
111 |
Формирование нижней треугольной матрицы — tril |
112 |
Обращение матрицы — inv |
112 |
Вычисление детерминанта матрицы — det |
112 |
Вычисление ранга матрицы — rank |
113 |
Приведение матрицы к верхней треугольной форме — rref |
113 |
Нуль-пространство матрицы — null |
114 |
Базис-пространство столбцов — colspace |
114 |
Вычисление собственных значений и векторов матриц — eig |
115 |
Сингулярное разложение матриц — svd |
116 |
Вычисление канонической формы Жордана — Jordan |
117 |
Вычисление характеристического полинома матриц — poly |
117 |
Вычисление матричного экспоненциала — expm |
118 |
Символьные операции математического анализа |
118 |
Функция вычисления производных — diff |
118 |
Функция вычисления интегралов — hit |
119 |
Функция вычисления пределов — limit |
120 |
Функция разложения выражения в ряд Тейлора — taylor |
122 |
Функция вычисления матрицы Якоби — jacobian |
123 |
Функция вычисления сумм рядов — symsum |
124 |
Решение алгебраических уравнений — solve |
124 |
Решение дифференциальных уравнений — dsolve |
126 |
Интегральные преобразования |
127 |
Прямое преобразование Фурье;— fourier |
127 |
Обратное преобразование Фурье — ifourier |
128 |
Прямое преобразование Лапласа — laplace |
129 |
Обратное преобразование Лапласа — ilaplace |
130 |
Z-преобразование — ztrans |
131 |
Обратное z-преобразование — iztrans |
131 |
Символьные операции с выражениями |
132 |
Функция упрощения выражений — simplify |
132 |
Функция расширения выражений — expand |
133 |
Разложение выражений на простые множители — factor |
133 |
Комплектование по степеням — collect |
133 |
Упрощение выражений — simple |
134 |
Приведение к рациональной форме — numden |
134 |
Приведение к схеме Горнера — horner |
135 |
Запись с подстановками — subexpr |
135 |
Обеспечение подстановок — subs |
135 |
Обращение функции — finverse |
136 |
Суперпозиция функций — compose |
137 |
Специальные возможности |
137 |
Преобразование символьной матрицы в числовую — double |
138 |
Преобразование вектора коэффициентов полинома в символьный |
138 |
полином — poly2sym |
|
Преобразование символьного полинома в вектор его коэффициентов |
139 |
— sym2poly |
|
Преобразование символьного объекта в строковый — char |
139 |
Вычисление специальных функций |
139 |
Интегральный синус — sinint |
139 |
Интегральный косинус — cosint |
140 |
Дзета-функция Римана — zeta |
140 |
W-функция Ламберта — lambertw |
140 |
Суммы Римана — rsums |
141 |
Графические возможности пакета расширения Symbolic Math |
141 |
Графики символьных функций — ezplot |
141 |
Калькулятор и графопостроитель — funtool |
142 |
Контурные графики — ezcontour |
146 |
Контурные графики с закраской — ezcontourf |
147 |
Трехмерные графики параметрически заданных функций — ezplot3 |
147 |
Полярный график — команда ezpolar |
148 |
Графики поверхностей — ezsurf и ezsurfc |
149 |
Доступ к ресурсам ядра системы Maple V |
151 |
Доступ к ядру системы Maple V — maple |
152 |
Численное вычисление Maple-функций — mfun |
152 |
Вызов списка функций Maple V — mfunlist |
153 |
Получение справки по ядру Maple V — mhelp |
153 |
Инсталляция Maple-процедур — procread |
153 |
Глава 4. Пакет расширения Simulink |
155 |
Назначение пакета Simulink |
155 |
Новые возможности Simulink 3.1 |
157 |
Интеграция пакета Simulink с системой MATLAB |
158 |
Решатель систем дифференциальных уравнений |
160 |
Особенности интерфейса Simulink |
160 |
Демонстрация возможностей Simulink |
161 |
Запуск моделей Simulink из среды MATLAB |
164 |
Библиотека компонентов пакета Simulink |
165 |
Основная палитра компонентов |
165 |
Источники сигналов и воздействий |
167 |
Регистрирующие элементы |
168 |
Дискретные компоненты |
170 |
Линейные компоненты |
170 |
Нелинейные компоненты |
171 |
Математические компоненты |
173 |
Подключающие компоненты |
173 |
Компоненты функций и таблиц |
174 |
Внешние библиотеки и готовые решения |
174 |
Основы работы |
176 |
Постановка задачи — моделирование ограничителя |
176 |
Создание модели устройства (системы) |
177 |
Запуск модели |
181 |
Модернизация и расширение модели |
184 |
Некоторые приемы редактирования модели |
185 |
Примеры работы с Simulink |
187 |
Построение фигур Лиссажу |
187 |
Моделирование колебательной системы второго порядка |
188 |
Работа с решателем и редактором дифференциальных уравнений |
191 |
Моделирование работы автопилота самолета F14 |
192 |
Применение подсистем |
193 |
Использование S-функции |
194 |
Применение специальных преобразователей сигналов |
195 |
Еще один пример сложной системы |
196 |
Моделирование работы унитаза |
198 |
Глава 5. Пакет расширения по нейронным сетям |
199 |
Назначение пакета Neural Networks Toolbox |
199 |
Биологический нейрон |
201 |
Структура и свойства искусственного нейрона |
202 |
Классификация нейронных сетей и их свойства |
205 |
Топология нейронных сетей |
208 |
Обучение нейронных сетей |
214 |
Алгоритм обратного распространения |
216 |
Переобучение и обобщение нейронных сетей |
218 |
Обучение без учителя |
221 |
Применение нейросетей |
222 |
Области применения нейросетей: классификация |
222 |
Кластеризация и поиск зависимостей : |
223 |
Прогнозирование |
224 |
Персептроны |
224 |
Нейронные сети встречного распространения |
229 |
Функционирование сети |
230 |
Обучение слоя Кохонена |
231 |
Обучение слоя Гроссберга |
232 |
Модификации |
233 |
Нейронные сети Хопфилда и Хэмминга |
233 |
Сеть с радиальными базисными элементами |
238 |
Вероятностная нейронная сеть |
241 |
Обобщенно-регрессионная нейронная сеть |
243 |
Линейные НС |
244 |
Функции пакета Neural Networks Toolbox |
244 |
Обзор функций пакета Neural Networks Toolbox |
244 |
Функции активации (передаточные функции) и связанные с ними |
245 |
функции |
|
Функции обучения нейронных сетей |
248 |
Функции настройки слоев нейронов |
252 |
Функции одномерной оптимизации |
254 |
Функции инициализации слоев и смещений |
255 |
Функции создания нейронных сетей |
256 |
Функции преобразования входов сети |
260 |
Функции весов и расстояний |
261 |
Функции размещения нейронов (топологические функции) |
262 |
Функции использования нейронных сетей |
264 |
Графические функции |
266 |
Прочие функции |
270 |
Примеры создания и использования нейронных сетей |
272 |
Нейронные сети для аппроксимации функций |
272 |
Прогнозирование значений процесса |
274 |
Использование слоя Кохонена |
276 |
Сеть Хопфилда с двумя нейронами |
277 |
Классификация с помощью персептрона |
279 |
Адаптивный линейный прогноз |
280 |
Использование сети Элмана |
282 |
Задача классификации: применение сети встречного |
285 |
распространения |
|
Создание и использование самоорганизующейся карты |
286 |
Использование Simulink при построении нейронных сетей |
287 |
Блоки функций активации (Transfer Functions) |
288 |
Блоки преобразования входов сети |
288 |
Блоки весовых коэффициентов |
289 |
Формирование нейросетевых моделей |
289 |
Глава 6. Пакет нечеткой логики Fuzzy Logic Toolbox |
292 |
Назначение и возможности пакета Fuzzy Logic Toolbox |
292 |
Нечеткая информация и выводы |
292 |
Нечеткие множества |
294 |
Функции принадлежности нечеткой логики |
296 |
Операции над нечеткими множествами |
298 |
Логические операции |
298 |
Алгебраические операции |
301 |
Нечеткие отношения |
301 |
Операции над нечеткими отношениями |
302 |
Объединение двух отношений |
302 |
Пересечение двух отношений |
303 |
Алгебраическое произведение двух отношений |
303 |
Алгебраическая сумма двух отношений |
303 |
Дополнение отношения |
303 |
Обычное отношение, ближайшее к нечеткому |
303 |
Композиция (свертка) двух нечетких отношений |
303 |
(max-*)-композиция |
304 |
Нечеткие выводы |
305 |
Алгоритм Мамдани (Mamdani) |
307 |
Алгоритм Сугэно (Sugeno) |
308 |
Методы приведения к четкости |
309 |
Эффективность систем принятия решений |
310 |
Гибридные сети |
311 |
Графический интерфейс Fuzzy Logic Toolbox |
314 |
Состав графического интерфейса |
314 |
Построение нечеткой аппроксимирующей системы |
315 |
Построение экспертной системы: сколько дать «на чай»? |
322 |
Экспорт и импорт результатов |
328 |
Создание пользовательских функций принадлежности |
328 |
Графический интерфейс гибридных систем |
329 |
Графический интерфейс программы кластеризации |
336 |
Работа с Fuzzy Logic Toolbox в режиме командной строки |
338 |
Возможности работы в режиме командной строки |
338 |
Функции вызова программ графического интерфейса |
338 |
Задание функций принадлежности |
339 |
Функции систем нечеткого вывода |
348 |
Функции сохранения, открытия и использования созданной системы |
348 |
Функции использования графического окна |
348 |
Функции создания, просмотра структуры и редактирования систем |
350 |
нечеткого вывода |
|
Дополнительные функции |
356 |
Функция создания и/или обучения гибридных сетей с архитектурой |
356 |
ANFIS |
|
Функция кластеризации |
360 |
Функция генерации FIS-структуры |
361 |
Функция генерации структуры нечеткого вывода |
363 |
Функция возврата центров кластеров |
364 |
Сервисные функции |
366 |
Функции вызова диалоговых окон интерфейса |
389 |
Работа Fuzzy Logic с Sinuilink |
370 |
Пример: контроль уровня воды в бакс |
370 |
Построение нечеткой модели с использованием блоков Simulink |
374 |
Демонстрационные примеры работы с пакетом Fuzzy Logic Toolbox |
374 |
Глава 7. Пакет оптимизации Optimization Toolbox |
376 |
Назначение и возможности пакета |
376 |
Применяемые алгоритмы |
379 |
Общая формулировка задачи параметрической оптимизации |
380 |
Безусловная оптимизация |
380 |
Ньютоновские алгоритмы |
382 |
Алгоритмы Ньютона— Гаусса и Левснберга— Марквардта |
383 |
Минимизация при наличии ограничений |
383 |
Многокритериальная оптимизация |
384 |
Алгоритмы большой размерности |
385 |
Функции пакета Optimization Toolbox |
387 |
Функции минимизации |
387 |
Функции решения уравнений |
403 |
Функции наименьших квадратов (подбора кривых) |
407 |
Функции-утилиты |
412 |
Демонстрационные функции |
413 |
Примеры решения оптимизационных задач |
415 |
Минимизация без ограничений |
415 |
Минимизация с ограничениями в форме нелинейных неравенств |
416 |
Минимизация с дополнительными ограничениями на диапазоны |
417 |
изменения переменных |
|
Использование вектора-градиента, аналитически задаваемого |
418 |
пользователем |
|
Задача достижения цели |
420 |
Решение системы нелинейных уравнений с заданием якобиана |
423 |
Решение системы нелинейных уравнений с представлением оценки |
425 |
якобиана в виде разреженной матрицы |
|
Нелинейный МНК с вычислением оценок всех элементов якобиана |
426 |
Минимизация нелинейной функции с использованием градиента и |
426 |
гессиана |
|
Нелинейная оптимизация с использованием разреженных образов |
429 |
градиента и гессиана |
|
Нелинейная минимизация с ограничениями в виде линейных |
431 |
равенств |
|
Задача квадратичного программирования при наличии ограничений |
432 |
|
на диапазоны изменений переменных |
|
|
Решение задачи линейного программирования |
432 |
|
Некоторые рекомендации по использованию функций пакета |
433 |
|
Использование inline-функции вместо m-файла |
433 |
|
Решение задач максимизации |
|
434 |
Приведение ограничений-неравенств к стандартному виду |
434 |
|
Введение дополнительных аргументов (глобальные переменные) |
435 |
|
Соответствия между версиями пакета 1.5 и 2.0 |
435 |
|
Глава 8. Пакет Statistics Toolbox |
|
437 |
Назначение пакета Statistics Toolbox |
|
437 |
Распределения вероятностей |
|
437 |
Функции плотности вероятности |
|
438 |
Функции распределения вероятностей |
|
439 |
Функции, обратные к интегральным функциям распределения |
440 |
|
Генерация случайных чисел |
|
440 |
Среднее и дисперсия как функции распределения |
441 |
|
Функции оценки параметров закона распределения |
441 |
|
Дескриптивная статистика |
|
441 |
Кластерный анализ |
|
444 |
Линейные модели |
|
448 |
Функция rstool |
|
449 |
Функция stepwise |
|
450 |
Нелинейные регрессионные модели |
|
452 |
Проверка гипотез |
|
452 |
Многомерные статистики |
|
453 |
Метод главных компонент |
|
454 |
Статистические графики |
|
455 |
Статистический контроль в промышленности |
458 |
|
Планирование эксперимента |
|
460 |
Демонстрационные примеры |
|
463 |
Функции записи/чтения файлов данных |
|
464 |
Алфавитный указатель |
|
467 |
Алфавитный указатель |
|
|
-, унарный минус и знак вычитания, |
C |
|
32 |
char, функция преобразования |
|
... (многоточие), оператор переноса |
объекта в строку, 139 |
|
строки, 31 |
clc, команда, 28 |
|
./, оператор, 39 |
Clear Session, команда, 60 |
|
: (двоеточие), оператор задания |
clear, команда, 35 |
|
последовательностей, 38 |
collect, функция комплектования по |
|
A |
степеням, 133 |
|
ANFIS, 313, 330, 331, 332, 356 |
compose, функция суперпозиции, 137 |
|
ans, переменная, 30 |
Сору, кнопка и команда, 59 |
|