Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Конспект_Мат_Ч1.doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
1.13 Mб
Скачать

332

Введение

Инженерам, научно-техническим сотрудникам и проектировщикам электротехнических специальностей часто приходится решать сложные математические задачи. Например:

  • при расчете установившихся режимов в разветвленных электрических цепях необходимо решать системы линейных уравнений – с действительными (если в цепях присутствуют только активные сопротивления) или комплексными (если присутствуют конденсаторы и катушки индуктивности) коэффициентами;

  • при расчете переходных процессов необходимо решать системы дифференциальных уравнений;

  • при анализе работы схем с нелинейными элементами их статические или динамические характеристики необходимо аппроксимировать или интерполировать;

  • часто необходимо определить гармонический состав периодических сигналов (например, при полигармоническом питании);

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

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

Кроме того, возможно гораздо проще решать такие задачи при помощи современных специализированных математических пакетов. К наиболее распространенным пакетам относятся:

  • Eureka фирмы Borland;

  • MathCAD фирмы MathSoft;

  • Matlab фирмы MathWorks;

  • Derive фирмы Soft Warehous Inc.

Кроме этих, существуют и другие пакеты, например, Assystent, Formula 1, MathGraph, Mathematika, Gauss, Point Five, Reduce, Phaser и др.

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

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

MathCAD – кроме вышеперечисленных задач, позволяет реализовать векторные и матричные операции, вычисление интегралов и производных функций, аппроксимацию табличных функций. Графика значительно лучше. Совместим с пакетами AutoCAD, PCAD, TurboCAD…

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

Недостатки: недостаточно развитый используемый алгоритмический язык, ограничены возможности расширения, несколько ограниченные возможности графики.

Derive, Mathematika, Reduce, Maple, Theorist – пакеты, специализирующиеся на выполнении математических операций в символьном виде.

Matlab (от слов Matrix Laboratory) – разработка фирмы MathWorks (США, Нейтик, штат Массачусетс). I версия была написана на Фортране (Cleve Moler) в начале 60-х годов. До 3-ей версии пакет работал под ОС MS DOS, начиная с 4-ой – под Windows). Версии под Windows написаны на С (авторы: интерпретатор – Steve Bangert, графика – Steve Kleiman, большинство функций – John Little и Cleve Molel). Может конвертировать файлы, написанные на Фортране и С.

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

Возможности Matlab:

  • выполнение самых различных операций с векторами и матрицами, с алгебраическими полиномами, с аналитическими и табличными функциями;

  • решение задач линейной алгебры, решение нелинейных алгебраических, трансцендентных, дифференциальных уравнений;

  • решение задач оптимизации;

  • интегрирование, аппроксимация, интерполяция;

  • аппарат для обработки сигналов;

  • анализ и синтез систем управления, идентификация объектов, математическое моделирование;

  • решения специальных задач в области нейронных сетей, фаззи-логики и т.п.;

  • отличный графический аппарат (2-х, 3-хмерная графика, анимация, просмотр фотографий и рисунков);

  • средства создания диалоговых интерфейсов: меню, кнопок и т.п.

Matlab содержит также Extended Symbolic Mathematics Toolbox (начиная с версии 5.0), реализующий интерфейс с системой символьной аналитической обработки данных Maple.

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

Система Matlab используется более, чем в 70 ведущих университетов мира, в т.ч. в Стэнфордском, Калифорнийском (США), Кэмбриджском (Англия), Киото (Япония), Эйндховенском техническом университете (Нидерланды), в Массачусетском, Калифорнийском, Хельсинском технологических институтах, в научно-исследовательских центрах НАСА, а также в таких крупных компаниях, как Aerospace Corp., Boeing Aerospace, General Dynamics Corp., IBM, Lockheed, Siemens AG и др.

Структура Matlab-каталога. Суть работы в режиме командного интерпретатора.

Matlab-каталог содержит:

главный командный подкаталог BIN,содержащий файлы запуска программного пакета (matlab.exe), встроенного блокнота-отладчика (medit.exe), значки файлов (mat, m, mdl) и стандартные динамические библиотеки (файлы *.dll);

подкаталог SIMULINK приложения для структурного математического моделирования;

подкаталог TOOLBOX различных приложений (инструментов) для решения математических задач (формируется в соответствии с данными, указанными при инсталляции).

Каждый из подкаталогов TOOLBOX/* в основном содержит файлы *.m, называемые m-функциями, и один m-файл комментариев (Contents.m), в котором кратко (в одну строку) описано назначение функций, составляющих данную директорию. Расширенные справочные данные об m-функциях находятся в самих файлах *.m. Описание стандартных функций Matlab находится в файлах TOOLBOX/MATLAB/*.m.

Каждая m-функция начинается с заголовка

function …

после которого обычно следуют несколько строк комментария (% – символ комментария, весь текст справа от него игнорируется компилятором). Весь такой комментарий может быть выведен в командном окне с помощью команды вида

help fn

(fn – имя m-файла). Например, на запрос

help sin

в командное окно будет выведена следующая информация:

SIN Sine.

SIN(X) is the sine of the elements of X.

Overloaded methods

help sym/sin.m

Последние строки могут указывать на наличие перегруженных (overloaded) функций (в данном случае указано, что имеется также функция sin в библиотеке символьных вычислений), информация о которых может быть выведена с помощью указанной команды. Если функция является стандартной (встроенной), то ее исходный текст не доступен пользователю в соответствующем m-файле, и комментарий заканчивается словами

Built-in function

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

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

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

При запуске Matlab открывается командное окно (Matlab Command Window) с приглашением:

To get started, type one of these: helpwin, helpdesk, or demo.

For product information, type tour or visit www.mathworks.com.

»

Символ "»" обозначает командную строку (ожидание ввода системой команды пользователя).

Matlab может работать в режиме командного интерпретатора (в режиме очень мощного суперкалькулятора), то есть, в интерактивном (диалоговом) режиме, – при вводе инструкции в одной командной строке и последующем нажатии клавиши [Enter] сразу же происходит транслирование и выполнение введенной команды.

Инструкция может представлять собой выражение, либо вызов существующего m-файла или m-функции, либо оператор, организуемый в соответствии с правилами языка Matlab, а также их совокупность. Операторы, расположенные в одной командной строке, отделяются друг от друга символами "," или ";". Если инструкция не помещается в одной строке, ее можно продолжить на следующей, используя оператор переноса "…" (три или более точек подряд без пробелов).

Некоторое количество введенных команд запоминается в буфере, из которого их можно вызвать поочередно в обратном порядке клавишей "". Клавиша "" выполняет обратную функцию.

После выполнения введенной команды интерпретатор готов к приему следующей команды, на экране при этом должен быть выведен символ командной строки "»".

В процессе работы в режиме командного интерпретатора возможно управлять отображением на экране оператором выполняемой функции с помощью команды echo:

для программных файлов:

echo on – включает режим отображения текста исполняемого файла;

echo off – выключает режим отображения;

echo – чередование;

для функций:

echo имя_функции on – включает режим отображения для указанной функции;

echo имя_функции off – выключает режим отображения;

echo имя_функции – чередование;

echo on all – включает режим отображения для всех функций;

echo off all – выключает режим отображения для всех функций.

Информация о состоянии режима вызывается с помощью команды

get(0,'echo')

Для постраничного вывода информации на экран используются команды:

more on – включение режима постраничного вывода;

more off – выключение режима;

more (n) – возможно указать размер страницы (по умолчанию n = 23).

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

[Enter] – переход к следующей строке;

[ ] – переход к следующей странице;

[q] – выход из просмотра.

Командное окно Matlab при необходимости может быть очищено путем вызова команды clc.

Использование помощи.

1. С помощью меню Help – Help Window (значок "?" на панели инструментов) – описание всех стандартных функций.

2. Из командной строки с помощью команды help:

help

– выводит список основных директорий с краткими пояснениями;

help help

– выводит основные правила пользования командой help;

help dir

(dir – имя каталога) – выводит тематически сформированный список функций данной директории с краткими пояснениями, сформированными из первых строк комментариев соответствующих m-файлов, например,

help ops

help elfun

help control

help fun

(fun – имя функции) – выводит подробное пояснение назначения функции, смысла ее параметров и формата вызова, сформированное из начального комментария соответствующего m-файла, например,

help zeros

help step

help sin

3. Из командной строки с помощью команды lookfor:

lookfor text

(text – искомый текст) – ищет указанный текст в первых строках комментариев всех m-файлов во всех доступных каталогах, и выводит имена этих файлов на экран с пояснениями в одну строку, например,

lookfor XY

lookfor interp

Управление доступом к каталогу.

Перед началом работы пользователь должен сформировать каталог (любым из способов Windows), как правило, внутри директории WORK, и установить доступ к нему. Это наиболее просто выполняется следующим образом.

С помощью кнопки “Path Browser” (как правило, третья кнопка справа на панели инструментов) активируется окно Path Browser, в котором содержатся сведения о текущем каталоге (Current Directory), доступных каталогах (Path) и файлах, содержащихся в выбранном доступном каталоге (Files in general).

Добавление доступного каталога выполняется с помощью кнопки “Add to path” (вторая кнопка слева на панели инструментов). В предлагаемом диалоговом окне следует ввести полный путь к каталогу (Directory to add) и способа доступа (Add to front или Add to back). Разница в способах доступа заключается в том, что в случае совпадения имен и форматов вызова функций, находящихся в разных доступных каталогах, предпочтение будет отдано той, чей каталог указан раньше (выше) в поле Path. Пользователям рекомендуется использовать уникальные названия для создаваемых m-файлов и m-функций (например, Ivanov_lab01.m), и при установке доступа к каталогу желательно использовать спецификацию Add to back.

При завершении работы с Path Browser следует сохранить сделанные изменения (с помощью меню File – Save Path или просто ответив утвердительно на вопрос в появившемся перед закрытием диалоговом окне).