Рис. 1.1. Интерфейс. Основное окно

Соломатин А.С.

С60

Вычислительная математика для инженерно-технических специальностей. Решение типовых задач с применением пакета MATLAB: учеб. пособие / А. С. Соломатин, Т. Н. Гартман, Е. В. Царева, А. В. Панкрушина; под ред. проф. Т.Н. Гартмана. - М.: РХТУ им. Д. И. Менделеева, 2019. - 292с.:ил.

ISBN

 

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

Предназначено для студентов химико-технологических специальностей вузов.

УДК 517.977

ББК

© Российский Химико-Технологический Университет

им. Д. И. Менделеева, 2019





ОГЛАВЛЕНИЕ

ПРЕДИСЛОВИЕ……………………………….……………………….4

ГЛАВА 1. КРАТКИЕ ОСНОВЫ РАБОТЫ В MATLAB ……...5

1.1. Интерфейс ………………………………………………………….......6

1.2. Редактирование М-файлов …………………………………….…..11

1.3. Построение графиков кривых и поверхностей …………….……..33

1.4. Операции с матрицами, строками, файлами, задачи линейной алгебры …………………….…………………………………….…………52

1.5. Нелинейные уравнения и системы, интегрирование, решение обыкновенных дифференциальных уравнений и систем, обработка результатов эксперимента, оптимизация …………………...................71

1.6. Уравнения в частных производных …………..…………................93

1.7. Символьные вычисления …………………………….…………......106

1.8. Графический интерфейс …………………………….………………116

ГЛАВА 2. ЗАДАЧИ ВЫЧИСЛИТЕЛЬНОЙ МАТЕМАТИКИ..152

2.1. Программирование по блок-схемам…………………………….......152

2.2. Погрешности ………………………………………………………......191

2.3. Матрицы. Системы линейных алгебраических уравнений (СЛАУ)………………………………………………………………...……..195

2.4. Обработка результатов измерения одной величины. Критерий Стьюдента……………………………………………………………...……203

2.5. Приближение функции. Интерполяция. Аппроксимация. ……...207

2.6. Интегрирование………………………………………………………..215

2.7. Решение уравнения с одним неизвестным…………………………222

2.8. Решение систем нелинейных уравнений…………………………...231

2.9. Методы одномерной оптимизации…………………………………..236

2.10. Методы многомерной оптимизации…………………………..…...251

2.11. Методы решения обыкновенных дифференциальных уравнений и систем………………………………………………………….…………..261

СБОРНИК ЗАДАЧ……………………………………………………...275



ПРЕДИСЛОВИЕ

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

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

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

Авторы настоящего учебного пособия с благодарностью отнесутся к замечаниям и предложениям по улучшению его смыслового содержания.

 



ГЛАВА 1. КРАТКИЕ ОСНОВЫ РАБОТЫ В MATLAB

MATLAB предназначен для выполнения вычислений, таких как:

· Простейшие расчеты по формулам;

· Решение задач линейной алгебры;

· Решение нелинейных уравнений и систем;

· Решение задач оптимизации;

· Дифференцирование;

· Интегрирование;

· Задачи обработки экспериментальных данных (интерполяция, аппроксимация, популярен метод наименьших квадратов);

· Решение обыкновенных дифференциальных уравнений и систем (в том числе так называемые «жесткие» диф. уравнения и системы);

· Решение дифференциальных уравнений в частных производных;

Все вышеперечисленные (и многие другие) вычисления выполняются без создания специальных программ, по сути дела – калькулятор с особо большими возможностями, используется окно Command Window, о нем будет подробно сказано ниже. Непосредственно для вычислений используются специальные выражения – команды (операторы, вычислители), образующие специальный язык пакета МАТЛАБ.

Кроме того МАТЛАБ предоставляет широкие возможности по созданию графиков (плоских и объемных).

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

МАТЛАБ позволяет снабдить его программы визуальным интерфейсом, который создается пользователем.


 


Интерфейс

После запуска МАТЛАБ на экране появляется основное окно приложения (рис.1.1.). Оно содержит меню, панель инструментов и рабочую область (Commаnd Window).

Рис. 1.1. Интерфейс. Основное окно.

 

В рабочей области находится знак >> после которого расположен курсор. Эту строку называют командной строкой. В нее с клавиатуры вводятся команды. Нажатие Enter заставит выполнить команду и вывести результат в том же окне (см. рис. 1.1.).

Так как текст в окне по мере работы смещается (уступает место новым командам и выводимым данным) то для просмотра выехавшей за окно части текста используют полосы прокрутки или клавиши Page Up, Page Down.

Клавиши ↑ и ↓ позволяют вернуть в командную строку ранее введенные команды или другую входную информацию (она вся обязательно автоматически хранится и всегда доступна). Кнопка ↑ помещает в командную строку предыдущую команду, а если еще раз ее нажать то еще предыдущую и так далее. Кнопка ↓ выводит команды (ранее набранные) в обратном порядке.

Видимая часть информации (то есть то что поместилось в окне) называется зоной просмотра, а командная строка зоной редактирования.

В зоне просмотра ничего нельзя исправить или ввести. Можно только выделить мышкой для копирования.

Если команда заканчивается; то результат ее выполнения не отображается в командной строке. Иначе, то есть если строка не заканчивается на; то результат сразу же после нажатия на Enter выводится в окне ниже этой команды. (см. выше на рис. 1.1).

Если не предусмотрено имя переменной для результата вычисления то по умолчанию присваивается имя ans.

Это имя системной переменной. Она (ans) используется для вывода результатов вычислений в командной строке в Command Window. Системные переменные:

ans              результат последней операции без знака присваивания

i, j            мнимая единица

pi            число Пи

inf           машинный символ бесконечности

NaN         неопределенный результат

realmin    наименьшее число с плавающей точкой

realmax    наибольшее число с плавающей точкой

Текущий документ, отражающий работу пользователя и содержащий строки ввода, вывода и сообщения об ошибках, принято называть сессией. Значения переменных, вычисленные в течение сессии, сохраняются в специальной области памяти, называемой Workspace (см. выше на рис. 1.1). Определения всех переменных и функций данной сессии и их последние перед закрытием программы значения можно сохранить на диск в файл с расширением.mat но саму сессию сохранить нельзя, само содержание Command Window при выключении МАТЛАБа не сохраняется никаким способом.

Команда меню File предоставляет, помимо прочего, возможность выбрать настройки, например, размер шрифта (File-Preferences-Fonts).

Также меню File содержит команду сохранения текущих значений переменных File-Save Workspace As в файле с расширением .mat. Откроется окно сохранения с выбранным именем файла (например, Workspace3) и папкой, в которую он будет сохранен.

Затем можно (при следующем включении MATLAB) открыть этот файл (он находится среди списка всех остальных файлов в рабочей папке, если при его сохранении было одобрено пользователем место его сохранения, предлагаемое по умолчанию) щелчком мышки. Открыв MATLAB, щелкнем (как мы выше условились, имя файла, например, Workspace3) в окне Current Directory и можно выполнять операции с сохраненными переменными. Все сохраненные значения переменных станут актуальны (это можно проверить, заглянув в окно Workspace) и к ним можно обращаться при работе. Это позволяет сохранять в файле с расширением.mat совокупность как исходных данных при решении какой-либо задачи, так и вычисленные значения. 

Рекомендуется имена переменных выбирать так, чтобы однозначно было ясно в дальнейшем, что из них является исходными данными, а что результатами. Расположение переменных в окне Workspace и в файле.mat сортируется автоматически (по умолчанию) по именам по алфавиту, поэтому имена исходных данных можно начинать с какой-то одной буквы (сочетания букв), имена результатов с другой буквы, и так далее, если изначально по смыслу удобно разбить переменные на несколько групп и потом так их и видеть в окне Workspace и в файле.mat. Сам файл с расширением.mat является хранилищем данных для последующих случаев решения такой же или подобной задачи, как та, данные которой в нем хранятся.

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

Примеры выполнения арифметических операций показаны на рис.1.1.

Для строк символов необходимо текст помещать в ‘одинарные кавычки’. Для сложения строк символов используется операция strcat, как показано на рис.1.1.

В главном меню (см. рис.1.1) следует обратить внимание на команду Desktop (настройка среды МАТЛАБ). При нажатии раскроется список (рис.1.2), содержащий Desktop Layout который предлагает на выбор:


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: