на тему рефераты
 
Главная | Карта сайта
на тему рефераты
РАЗДЕЛЫ

на тему рефераты
ПАРТНЕРЫ

на тему рефераты
АЛФАВИТ
... А Б В Г Д Е Ж З И К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Э Ю Я

на тему рефераты
ПОИСК
Введите фамилию автора:


Учебное пособие: Матричная математическая система MATLAB


Учебное пособие: Матричная математическая система MATLAB

Введение

Среди бурно развивающихся систем компьютерной математики СКМ, в первую очередь ориентированных на численные расчеты, особо выделяется матричная математическая система MATLAB. Из-за большого числа поставляемых с системой пакетов расширения MATLAB (в новейшей реализации MATLAB R2009,b их уже 82) эта система является и самой большой из СКМ, ориентированных на персональные компьютеры. Объем ее файлов уже превышает 3 Гб. Система фактически стала мировым стандартом в области современного математического и научно-технического программного обеспечения.

Эффективность MATLAB обусловлена прежде всего ее ориентацией на матричные вычисления с программной эмуляцией параллельных вычислений и упрощенными средствами задания циклов. Последние версии системы поддерживают 64-разрядные микропроцессоры и многоядерные микропроцессоры, например Intel Core 2 Duo и Quad, что обеспечивает высочайшие показатели по скорости вычислений и скорости математического имитационного моделирования.

В MATLAB удачно реализованы средства работы с многомерными массивами, большими и разреженными матрицами и многими типами данных. Система прошла многолетний путь развития от узко специализированного матричного программного модуля, используемого только на больших ЭВМ, до универсальной интегрированной СКМ, ориентированной на массовые персональные компьютеры класса IBM PC, AT и Macintosh, рабочие станции UNIX и даже суперкомпьютеры. MATLAB имеет мощные средства диалога, графики и комплексной визуализации вычислений.

Система MATLAB предлагается разработчиками (корпорация The MathWorks Inc.) как лидирующий на рынке, в первую очередь на предприятиях военно-промышленного комплекса, в энергетике, в аэрокосмической отрасли и в автомобилестроении язык программирования высокого уровня для технических вычислений, расширяемый большим числом пакетов прикладных программ – расширений.

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

Типовой комплекс MATLAB + Simulink содержит инструментальные «ящики» Toolboxes с большим числом пакетов расширения MATLAB и Bloсksets для расширения возможностей системы визуально ориентированного блочного имитационного моделирования динамических систем Simulink. Они приобретаются избранно и отдельно от системы MATLAB + Simulink. В разработке пакетов расширения для MATLAB принимают участие многие научные школы мира и ведущие университеты. Многие пакеты охватывают крупные направления науки и техники, такие как оптимизация отклика нелинейных систем, моделирование устройств и систем механики и энергетики, обработка сигналов и изображений, вейвлеты, биоинформатика, генные алгоритмы, нечеткая логика, нейронные сети и т. д.


Назначение и особенности системы MATLAB

Начальные сведения о матрицах

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

Двумерный массив чисел или математических выражений принято называть матрицей. А одномерный массив называют вектором. Векторы могут быть двух типов: вектор-строка и вектор-столбец.

Векторы и матрицы характеризуются размерностью и размером. Размерность определяет структурную организацию массивов в виде строки (размерность 1), страницы (размерность 2), куба (размерность 3) и т. д. Так что вектор является одномерным массивом, а матрица представляет собой двумерный массив с размерностью 2. MATLAB допускает задание и использование многомерных массивов, но здесь мы ограничимся пока только описанием одномерных и двумерных массивов – векторами и матрицами.

Размер вектора – это число его элементов, а размер матрицы определяется произведением числа ее строк m и столбцов n. Обычно размер матрицы указывают как m×n. Матрица называется квадратной, если m = n, то есть число строк матрицы равно числу ее столбцов.

Векторы и матрицы могут иметь имена, например V – вектор или M – матрица.

Элементы векторов и матриц рассматриваются как индексированные переменные, например:

• V2 – второй элемент вектора V;

• M2,3 – третий элемент второй строки матрицы M.

Индексы у векторов и матриц в MATLAB имеют целочисленные номера, которые начинаются с 1. Даже обычные числа рассматриваются в MATLAB как матрицы размера 1×1.


Назначение матричной системы MATLAB

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

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

MATLAB реализует три важные концепции программирования:

• процедурное модульное программирование, основанное на создании модулей – процедур и функций;

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

• визуально-ориентированное программирование, направленное на создание средств графического интерфейса пользователя GUI (Graphics User Interface).

Язык программирования MATLAB относится к классу интерпретаторов. Это значит, что любая команда системы распознается (интерпретируется) по ее имени (идентификатору) и немедленно исполняется в командной строке, что обеспечивает легкую проверку по частям любого программного кода. Одновременно интерпретирующий характер языка программирования MATLAB означает, что с первых строк описания средств этой системы фактически описывается ее язык программирования.

Важными достоинствами системы являются ее открытость и расширяемость.

Большинство команд и функций системы реализованы в виде m файлов текстового формата (с расширением .m) и файлов на языке C/C++, причем все файлы доступны для модификации. Пользователю дана возможность создавать не только отдельные файлы, но и библиотеки файлов для реализации специфических задач. Любой набор команд в справке можно тут же исполнить с помощью команды Evaluate Selection контекстного меню правой клавиши мыши.

Системные требования к установке

Новые версии системы MATLAB – весьма громоздкий программный комплекс, который требует до 5000 Мб дисковой памяти (в зависимости от конкретной поставки, полноты справочной системы и числа устанавливаемых пакетов прикладных программ). Поэтому система на DVD. К сожалению, из поставки новых версий исключены PDF_файлы англоязычной документации, но доступ к ним открыт через Интернет. Однако получение их при низкой скорости доступа (до 56 Кбит/c) в наших условиях весьма проблематично. Это усиливает роль русскоязычной литературы по системе MATLAB.

Для успешной установки новых версий MATLAB необходимы следующие минимальные средства:

• компьютер с микропроцессором не ниже Pentium и математическим сопроцессором, рекомендуются процессоры Pentium III, Pentium IV, Pentium M или AMD Athlon, Athlon XP, Athlon MP (последние версии MATLAB поддерживают двухъядерные (например серий Intel Core 2 Duo) и четырехъядерные процессоры (Intel Core 2 Quad);

• устройство считывания компакт-дисков (привод DVD), мышь, 8-разрядный графический адаптер и монитор, поддерживающие не менее 256 цветов;

• операционная система Windows XP/2000/NT/Vista (допускается Windows NT4 с сервис-пакетами 5 или 6a);

• ОЗУ емкостью 256Мб для минимального варианта системы (рекомендуется иметь память 512 Мб и выше);

• до 5000 Мб дискового пространства при полной установке всех расширений и всех справочных систем (345 Мб при установке только MATLAB со справкой);

• свободный USB-порт для подключения ключа, открывающего доступ к системе.

Для использования расширенных возможностей системы нужны графический ускоритель, Windows-совместимые звуковая карта и принтер, текстовый процессор Microsoft Word 97/2000/XP для реализации Notebook, компиляторы языков Cи/Cи++ и/или ФОРТРАН для подготовки собственных файлов расширения и браузер Netscape Navigator 4.0 и выше или Microsoft Internet Explorer 5.0 и выше. Для просмотра файлов справочной системы в формате PDF нужна программа Adobe Reader или Adobe Acrobat 5.0 и выше.

Далее рассматриваются только реализации системы, работающие с операционными системами класса Windows. Все примеры даны для систем класса MATLAB, запущенных в среде Windows XP.

Инсталляция системы MATLAB + Simulink

Система MATLAB + Simulink поставляется на одном DVD. Для инсталляции ее с другими пакетами расширения достаточно установить DVD и дождаться его автоматического запуска (или запустить его, как обычно). После распаковки и установки файлов инсталлятора на короткое время появляется окно с эмблемой MATLAB, а затем первое окно инсталлятора.

В первом окне инсталлятора надо установить опцию Install для инсталляции или опцию обновления лицензии и получения кода PLP (Personal License Pasword). Этот код является группой из 20 цифр. Установим Install и нажмем мышью кнопку Next>. Появится окно для ввода данных пользователя (имени и названия организации) и, главное, кода PLP. Этот код записывается в виде длинного числа и указывается на диске при продаже MATLAB или запрашивается у MathWorks по Интернету. Каждый легальный пользователь MATLAB ныне имеет свои страницы на этом Интернет-сайте с данными о лицензии, ее сроках и комплекте поставки MATLAB. С этой страницы можно получить и коды PLP.

Дальнейшие операции производятся в соответствии с простыми указаниями окон инсталлятора. Инсталляция занимает немало времени – около получаса даже на современных ПК.

Файловая система MATLAB

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

В MATLAB особое значение имеют файлы двух типов – с расширениями .mat и .m. Первые являются бинарными файлами, в которых могут храниться значения переменных. Вторые представляют собой текстовые файлы, содержащие внешние программы, определения команд и функций системы. Именно к ним относится большая часть команд и функций, в том числе задаваемых пользователем для решения своих специфических задач. Нередко встречаются и файлы с расширением .c (коды на языке Cи), файлы с откомпилированными кодами MATLAB с расширением .mex и др. Исполняемые файлы имеют расширение .exe.

Особое значение имеет папка MATLAB/TOOLBOX/MATLAB. В ней содержится набор стандартных m-файлов системы. Просмотр этих файлов позволяет детально оценить возможности поставляемой конкретной версии системы.

Полный состав файлов каждой папки (их список содержится в файле contents.m) можно вывести на просмотр с помощью команды help имя, где имя – название соответствующей подпапки. Ознакомиться с файловой системой MATLAB несложно с помощью Проводника Windows или любого файлового менеджера.


Начало работы с MATLAB

Запуск MATLAB и работа в режиме диалога

MATLAB обычно запускается из главного меню операционной системы Windows XP или активизацией ярлыка с логотипом системы на рабочем столе Windows. После запуска MATLAB на экране появляется основное окно системы MATLAB. Оно имеет обычные средства управления размерами, скрытия и закрытия. В окне командного режима показано окно About MATLAB, которое выводится одноименной командой в позиции Help меню и позволяет уточнить версию системы.

Система готова к проведению вычислений в командном режиме. Полезно знать, что в начале запуска автоматически выполняется команда matlabrc, которая исполняет загрузочный файл matlabrc.m и файл startup.m, если таковой существует. Эти файлы текстового формата выполняют начальную настройку терминала системы и задают ряд ее параметров.

Понятие о сессии работы с системой MATLAB

Сеанс работы с MATLAB принято именовать сессией (session). Сессия в сущности является текущим документом, отражающим работу пользователя с системой MATLAB. В ней имеются строки ввода, вывода и сообщений об ошибках. Входящие в сессию определения переменных и функций, расположенные в рабочей области памяти, но не саму сессию можно записать на диск (файлы формата .mat), используя команду save (Сохранить). Команда load (Загрузить) позволяет считать с диска данные рабочей области. Фрагменты сессии можно оформить в виде дневника с помощью команды diary (Дневник).

Полезно обратить внимание на возможность использования контекстного меню правой клавиши мыши в момент выделения той или иной позиции рабочего меню. Как и во всех приложениях операционных систем Windows XP/2000/NT4, это меню дает доступ ко всем возможным в данный момент операциям.

Новый и старый облики системы MATLAB

Вид окна системы MATLAB, выводимого изначально, вполне отвечает канонам современного интерфейса Windows-приложений. Пользовательский интерфейс многооконный и имеет ряд средств прямого доступа к различным компонентам системы. В панели инструментов имеется меню просмотра файловой системы с кнопкой его открытия.

В левой части общего окна системы имеются окна доступа к компонентам системы Launch Pad/Workspace (Панель запуска/Рабочая область) и окно Current Directory (текущей папки). Под ними расположено окно Command History, содержащее список выполненных команд. Щелкнув мышью по любой команде, ее можно перенести в текущую строку окна командного режима MATLAB.

Изменение внешнего вида интерфейса отведено командам позиции Desktop меню. Если оставить только командное окно, то интерфейс MATLAB будет иметь упрощенный вид. Такой вид интерфейса был характерен для старых версий системы. Многие пользователи находят его наиболее приемлемым.

Операции строчного редактирования

При работе с MATLAB в командном режиме действует простейший строчный редактор. Его работа знакома любому пользователю ПК еще со времен работы с приложениями под операционную систему MS_DOS и в детальном описании не нуждается. Ограничимся указанием команд строчного редактирования:

→или Ctrl+b ___ Перемещение курсора вправо на один символ

←или Ctrl+f ___ Перемещение курсора влево на один символ

Ctrl+→или Ctrl+r ___ Перемещение курсора вправо на одно слово

Ctrl+←или Ctrl+l ___ Перемещение курсора влево на одно слово

Home или Ctrl+a ___ Перемещение курсора в начало строки

End или Ctrl+e ___ Перемещение курсора в конец строки

↑и ↓или Ctrl+p и Ctrl+n ___ Перелистывание предыдущих команд вверх или вниз для подстановки в строку ввода

Del или Ctrl+d ___ Стирание символа справа от курсора

←или Ctrl+h ___ Стирание символа слева от курсора

Ctrl+k ___ Стирание до конца строки

Esc ___ Очистка строки ввода

Ins ___ Включение/выключение режима вставки

PgUp ___ Перелистывание страниц сессии вверх

PgDn ___ Перелистывание страниц сессии вниз

Обратите особое внимание на применение клавиш ↑и ↓. Они используются для подстановки после маркера строки ввода >> ранее введенных строк, например для их исправления, дублирования или дополнения. При этом указанные клавиши обеспечивают перелистывание ранее введенных строк снизу вверх или сверху вниз. Такая возможность существует благодаря организации специального стека, хранящего строки с исполненными ранее командами.

Команды управления окном

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

• clс – очищает экран и размещает курсор в левом верхнем углу пустого экрана;

• home – возвращает курсор в левый верхний угол окна;

• echo <file_name> on – включает режим вывода на экран текста Script-файла (файла-сценария);

• echo <file_name> off – выключает режим вывода на экран текста

Script-файла;

• echo <file_name> – меняет режим вывода на противоположный;

• echo on all – включает режим вывода на экран текста всех m-файлов;

• echo off all – отключает режим вывода на экран текста всех m-файлов;

• more on – включает режим постраничного вывода (полезен при просмотре больших m-файлов);

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

В новых версиях MATLAB обе команды clc и home действуют аналогично – очищают экран и помещают курсор в левый верхний угол окна командного режима работы.


Простые вычисления в MATLAB

MATLAB в роли мощного научного калькулятора

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

Работа с системой носит диалоговый характер и происходит по правилу «задал вопрос – получил ответ». Пользователь набирает на клавиатуре вычисляемое выражение, редактирует его (если нужно) в командной строке и завершает ввод нажатием клавиши ENTER. В качестве примера на рисунке показаны простейшие и вполне очевидные вычисления.

Даже из таких простых примеров можно сделать некоторые поучительные выводы:

• для указания ввода исходных данных используется символ >>;

• данные вводятся с помощью простейшего строчного редактора;

• для блокировки вывода результата вычислений некоторого выражения после него надо установить знак ; (точка с запятой);

• если не указана переменная для значения результата вычислений, то MATLAB назначает такую переменную с именем ans;

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

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

• результат вычислений выводится в строках вывода (без знака >>);

• диалог происходит в стиле «задал вопрос – получил ответ».

Следующие примеры иллюстрируют применение системы MATLAB для выполнения еще ряда простых векторных операций. На рисунке представлено также окно браузера файловой системы, который имеется на вкладке Current Directory. В командном режиме вызов окна браузера файловой системы удобнее производить из панели инструментов активизацией кнопки после списка директорий системы MATLAB. Возможны случаи отказа от вычислений при неправильно установленной текущей директории, если нужные для вычислений m-файлы не обнаруживаются.

В большинстве математических систем вычисление sin(V) или exp(V), где V – вектор, сопровождалось бы выдачей ошибки, поскольку функции sin и exp должны иметь аргумент в виде скалярной величины. Однако MATLAB – матричная система, а вектор является разновидностью матрицы с размером 1×n или n×1. Поэтому в нашем случае результат вычислений будет вектором того же размера, что и аргумент V, но элементы возвращаемого вектора будут синусами или экспонентами от элементов вектора V.

Матрица задается в виде ряда векторов, представляющих ее строки и заключенных в квадратные скобки. Для разделения элементов векторов используется пробел или запятая, а для отделения одного вектора от другого – точка с запятой. Для выделения отдельного элемента матрицы M используется выражение вида M(j,i), где M – имя матрицы, j – номер строки и i – номер столбца.

Для просмотра содержимого массивов удобно использовать браузер рабочего пространства Workspace. Каждый вектор и матрица в нем представляются в виде квадратика с ячейками, справа от которого указывается размер массива. Двойной щелчок по квадратику мышью ведет к появлению окна редактора массивов Array Editor. Работа с редактором массивов вполне очевидна – возможен не только просмотр элементов массивов, но и их редактирование и замена.

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

Работа с редактором массивов

To get started, select "MATLAB Help" from the Help menu.

>> 2+3

ans =

5

>> sin(1)

ans =

0.8415

>> type sin

sin is a built-in function.

>> help sin

SIN Sine.

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

Overloaded methods

help sym/sin.m

>> V=[1 2 3 4]

V =

1        2      3       4

>> sin(V)

ans =

0.8415 0.9093 0.1411 -0.7568

>> 3*V

ans =

3        6       9       12

>> V^2

??? Error using ==> ^

Matrix must be square.

>> V.^2

ans =

1        4       9       16

>> V+2

ans =

3        4       5       6

>>

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

Форма вывода и перенос строки в сессии

Следует отметить особенности вывода в системе MATLAB. Вывод начинается с новой строки, причем числовые данные выводятся с отступом, а текстовые – без него. Для экономии места в данной книге в дальнейшем вывод будет даваться без перевода на новую строку. Например, вывод вектора-строки

ans =

3        4       5       6

будет дан в виде:

ans = 3       4       5       6


Исключением является вывод векторов столбцов и матриц – тут будет сохранена более наглядная и присущая MATLAB по умолчанию форма вывода.

В некоторых случаях вводимое математическое выражение может оказаться настолько длинным, что для него не хватит одной строки. Тогда часть выражения можно перенести на новую строку с помощью знака многоточия «...» (3 или более точек), например:

s = 1 – 1/2 + 1/3 – 1/4 + 1/5 – 1/6 + 1/7 ...

1/8 + 1/9 – 1/10 + 1/11 – 1/12;

Максимальное число символов в одной строке командного режима – 4096, а в m-файле – не ограничено, но со столь длинными строками работать неудобно. В ранних версиях в одной строке было не более 256 символов.

Запуск примеров применения MATLAB из командной строки

MATLAB имеет множество примеров применения, часть из которых можно запускать прямо из командной строки. Например, команда

>> bench

запускает m-файл bench.m демонстрационного примера тестирования системы.


Основные объекты MATLAB

Понятие о математическом выражении

Центральным понятием всех математических систем является математическое выражение. Оно задает то, что должно быть вычислено в численном (реже символьном) виде. Вот примеры простых математических выражений, записанных в MATLAB и в математике.

Страницы: 1, 2, 3


на тему рефераты
НОВОСТИ на тему рефераты
на тему рефераты
ВХОД на тему рефераты
Логин:
Пароль:
регистрация
забыли пароль?

на тему рефераты    
на тему рефераты
ТЕГИ на тему рефераты

Рефераты бесплатно, реферат бесплатно, курсовые работы, реферат, доклады, рефераты, рефераты скачать, рефераты на тему, сочинения, курсовые, дипломы, научные работы и многое другое.


Copyright © 2012 г.
При использовании материалов - ссылка на сайт обязательна.