Как работать в matlab

Как работать в matlab

1.1. Рабочая среда MatLab

Чтобы запустить программу дважды щелкните на иконку . Перед Вами откроется рабочая среда, изображенная на рисунке.

Рабочая среда MatLab 6.х содержит следующие элементы:

панель инструментов с кнопками и раскрывающимся списком;

окно с вкладками Launch Pad иWorkspace, из которого можно получить доступ к различным модулям ToolBox и к содержимому рабочей среды;

окно с вкладками Command HistoryиCurrent Directory, предназначенное для просмотра и повторного вызова ранее введенных команд, а также для установки текущего каталога;

командное окно, в котором находится приглашение к вводу » и мигающий вертикальный курсор;

Если в рабочей среде MatLab 6.х отсутствуют некоторые окна, приведенные на рисунке, то следует в меню View выбрать соответствующие пункты: Command Window, Command History, Current Directory, Workspase, Launch Pad.

Команды следует набирать в командном окне. Символ », обозначающий приглашение к вводу командной строки, набирать не нужно. Для просмотра рабочей области удобно использовать полосы скроллинга или клавиши Home,End, для перемещения влево или вправо, иPageUp,PageDownдля перемещения вверх или вниз. Если вдруг после перемещения по рабочей области командного окна пропала командная строка с мигающим курсором, просто нажмитеEnter.

Важно помнить, что набор любой команды или выражения должен заканчиваться нажатием на Enter, для того, чтобы программа MatLab выполнила эту команду или вычислила выражение.

1.2. Простейшие вычисления

Наберите в командной строке 1+2и нажмитеEnter. В результате в командном окне MatLab отображается следующее:

Рис. 2 Графическое представление метода главных компонент

Что сделала программа MatLab? Сначала она вычислила сумму 1+2, затем записала результат в специальную переменнуюansи вывела ее значение, равное3, в командное окно. Ниже ответа расположена командная строка с мигающим курсором, обозначающая, что MatLab готов к дальнейшим вычислениям. Можно набирать в командной строке новые выражения и находить их значения. Если требуется продолжить работу с предыдущим выражением, например, вычислить(1+2)/4.5, то проще всего воспользоваться уже имеющимся результатом, который хранится в переменнойans. Наберитеans/4.5(при вводе десятичных дробей используется точка) и нажмитеEnter, получается

Рис. 3 Графическое представление метода главных компонент

1.3. Эхо команд

Выполнение каждой команды в MatLab сопровождается эхом. В приведенном выше примере — это ответ ans = 0.6667. Часто эхо затрудняет восприятие работы программы и тогда его можно отключить. Для этого команда должна завершаться символом точка с запятой. Например

Рис. 4 Пример ввода функции ScoresPCA

1.4. Сохранение рабочей среды. Mat файлы

Самый простой способ сохранить все значения переменных — использовать в меню FileпунктSave Workspase As.При этом появляется диалоговое окноSave Workspase Variables, в котором следует указать каталог и имя файла. По умолчанию предлагается сохранить файл в подкаталогеworkосновного каталога MatLab. Программа сохранит результаты работы в файле с расширениемmat. Теперь можно закрыть MatLab. В следующем сеансе работы для восстановления значений переменных следует открыть этот сохраненный файл при помощи подпунктаOpenменюFile. Теперь все переменные, определенные в прошлом сеансе, опять стали доступными. Их можно использовать во вновь вводимых командах.

MATLAB
Тип Программы математического моделирования
Разработчик The MathWorks
Написана на C [1] , Java
Операционная система Unix, Linux, OS X, Microsoft Windows
Первый выпуск 1984
Последняя версия R2020a [2] (18 марта 2020)
Читаемые форматы файлов Файл MATLAB-M [d] , Hierarchical Data Format [3] , MAT [d] , MAT-file, Level 4 [d] , MAT-file, Level 5, version 6 [d] , MAT-file, Level 5, version 7 [d] , MAT-file, Level 5, version 7.3 [d] и BigTIFF [d]
Создаваемые форматы файлов Файл MATLAB-M [d] и Hierarchical Data Format [4]
Состояние В активной разработке
Лицензия Проприетарное
Сайт mathworks.com
Медиафайлы на Викискладе

MATLAB (сокращение от англ. «Matrix Laboratory» , в русском языке произносится как Матла́б) — пакет прикладных программ для решения задач технических вычислений. Пакет используют более миллиона инженерных и научных работников, он работает на большинстве современных операционных систем, включая Linux, Mac OS, Solaris (начиная с версии R2010b поддержка Solaris прекращена [5] ) и Windows [6] .

Содержание

История [ править | править код ]

MATLAB как язык программирования был разработан Кливом Моулером (англ. Cleve Moler ) в конце 1970-х годов когда он был деканом факультета компьютерных наук в Университете Нью-Мексико. Целью разработки служила задача дать студентам факультета возможность использования программных библиотек Linpack и EISPACK без необходимости изучения Фортрана. Вскоре новый язык распространился среди других университетов и был с большим интересом встречен учёными, работающими в области прикладной математики. До сих пор в Интернете можно найти версию 1982 года, написанную на Фортране, распространяемую с открытым исходным кодом. Инженер Джон Литтл (англ. John N. (Jack) Little ) познакомился с этим языком во время визита Клива Моулера в Стэнфордский университет в 1983 году. Поняв, что новый язык обладает большим коммерческим потенциалом, он объединился с Кливом Моулером и Стивом Бангертом (англ. Steve Bangert ). Совместными усилиями они переписали MATLAB на C и основали в 1984 компанию The MathWorks для дальнейшего развития. Эти переписанные на С библиотеки долгое время были известны под именем JACKPAC. Первоначально MATLAB предназначался для проектирования систем управления (основная специальность Джона Литтла), но быстро завоевал популярность во многих других научных и инженерных областях. Он также широко использовался и в образовании, в частности, для преподавания линейной алгебры и численных методов.

Читайте также:  Как распечатать документ пдф в большом масштабе

Язык MATLAB [ править | править код ]

Описание языка [ править | править код ]

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

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

Основной особенностью языка MATLAB являются его широкие возможности по работе с матрицами, которые создатели языка выразили в лозунге «думай векторно» (англ. Think vectorized ).

Векторы и матрицы [ править | править код ]

Пример кода, являющегося частью функции magic.m, генерирующего магический квадрат M для нечётных значений размера стороны n:

Пример кода, загружающего одномерный массив A значениями массива B в обратном порядке (только если вектор A определен, и число его элементов совпадает с числом элементов вектора B):

Графики [ править | править код ]

Программа MATLAB может создавать трехмерную графику с помощью функций surf, plot3 или mesh.

Этот код создаст каркасный 3D график sinc-функции sin ⁡ R R <displaystyle <sin R over R>> .

Применение [ править | править код ]

Математика и вычисления [ править | править код ]

MATLAB предоставляет пользователю большое количество (несколько сотен) функций для анализа данных, покрывающие практически все области математики, в частности:

  • Матрицы и линейная алгебра — алгебра матриц, линейные уравнения, собственные значения и векторы, сингулярности, факторизация матриц и другие.
  • Многочлены и интерполяция — корни многочленов, операции над многочленами и их дифференцирование, интерполяция и экстраполяциякривых и другие.
  • Математическая статистика и анализ данных — статистические функции, статистическая регрессия, цифровая фильтрация, быстрое преобразование Фурье и другие.
  • Обработка данных — набор специальных функций, включая построение графиков, оптимизацию, поиск нулей, численное интегрирование (в квадратурах) и другие.
  • Дифференциальные уравнения — решение дифференциальных и дифференциально-алгебраических уравнений, дифференциальных уравнений с запаздыванием, уравнений с ограничениями, уравнений в частных производных и другие.
  • Разреженные матрицы — специальный класс данных пакета MATLAB, использующийся в специализированных приложениях.
  • Целочисленная арифметика — выполнение операций целочисленной арифметики в среде MATLAB.

Разработка алгоритмов [ править | править код ]

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

Визуализация данных [ править | править код ]

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

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

Независимые приложения [ править | править код ]

Программы MATLAB, как консольные, так и с графическим интерфейсом пользователя, могут быть собраны с помощью компоненты MATLAB Compiler в независимые от MATLAB исполняемые приложения или динамические библиотеки, для запуска которых на других компьютерах, однако, требуется установка свободно распространяемой среды MATLAB Compiler Runtime (MCR) [7] .

Внешние интерфейсы [ править | править код ]

Пакет MATLAB включает различные интерфейсы для получения доступа к внешним подпрограммам, написанным на других языках программирования, данным, клиентам и серверам, общающимся через технологии Component Object Model или Dynamic Data Exchange, а также периферийным устройствам, которые взаимодействуют напрямую с MATLAB. Многие из этих возможностей известны под названием MATLAB API.

COM [ править | править код ]

Пакет MATLAB предоставляет доступ к функциям, позволяющим создавать, манипулировать и удалять COM-объекты (как клиенты, так и серверы). Поддерживается также технология ActiveX. Все COM-объекты принадлежат к специальному COM-классу пакета MATLAB. Все программы, имеющие функции контроллера автоматизации (англ. Automation controller ) могут иметь доступ к MATLAB как к серверу автоматизации (англ. Automation server ).

.NET [ править | править код ]

Пакет MATLAB в Microsoft Windows предоставляет доступ к программной платформе .NET Framework. Имеется возможность загружать .NET сборки (Assemblies) и работать с объектами .NET классов из среды MATLAB. В версии MATLAB 7.11 (R2010b) поддерживается .NET Framework версий 2.0, 3.0, 3.5 и 4.0.

DDE [ править | править код ]

Пакет MATLAB содержит функции, которые позволяют ему получать доступ к другим приложениям среды Windows, равно как и этим приложениям получать доступ к данным MATLAB, посредством технологии динамического обмена данными (DDE). Каждое приложение, которое может быть DDE-сервером, имеет своё уникальное идентификационное имя. Для MATLAB это имя — Matlab.

Веб-сервисы [ править | править код ]

В MATLAB существует возможность вызывать методы веб-сервисов. Специальная функция создаёт класс, основываясь на методах API веб-сервиса.

MATLAB взаимодействует с клиентом веб-сервиса с помощью принятия от него посылок, их обработки и посылок ответа. Поддерживаются следующие технологии: Simple Object Access Protocol (SOAP) и Web Services Description Language (WSDL).

Читайте также:  До скольки градусов может нагреваться процессор

Последовательный порт [ править | править код ]

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

MEX-файлы [ править | править код ]

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

DLL [ править | править код ]

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

Кроме того, в MATLAB имеется возможность получить доступ к его встроенным функциям через C-интерфейс, что позволяет использовать функции пакета во внешних приложениях, написанных на C. Эта технология в MATLAB называется C Engine.

Наборы инструментов [ править | править код ]

Для MATLAB имеется возможность создавать специальные наборы инструментов (англ. toolbox ), расширяющие его функциональность. Наборы инструментов представляют собой коллекции функций и объектов, написанных на языке MATLAB для решения определённого класса задач. Компания Mathworks поставляет наборы инструментов, которые используются во многих областях, включая следующие:

  • Цифровая обработка сигналов, изображений и данных: Signal Processing Toolbox,DSP System Toolbox, Image Processing Toolbox, Wavelet Toolbox, Communications System Toolbox — наборы функций и объектов, позволяющих решать широкий спектр задач обработки сигналов, изображений, проектирования цифровых фильтров и систем связи.
  • Системы управления: Control Systems Toolbox, Robust Control Toolbox, System Identification Toolbox, Model Predictive Control Toolbox, Model-Based Calibration Toolbox — наборы функций и объектов, облегчающих анализ и синтез динамических систем, проектирование, моделирование и идентификацию систем управления, включая современные алгоритмы управления, такие как робастное управление, H∞-управление, ЛМН-синтез, µ-синтез и другие.
  • Финансовый анализ: Econometrics Toolbox,Financial Instruments Toolbox, Financial Toolbox, Datafeed Toolbox, Trading Toolbox — наборы функций и объектов, позволяющие быстро и эффективно собирать, обрабатывать и передавать различную финансовую информацию.
  • Анализ и синтез географических карт, включая трёхмерные: Mapping Toolbox.
  • Сбор и анализ экспериментальных данных: Data Acquisition Toolbox, Image Acquisition Toolbox, Instrument Control Toolbox, OPC Toolbox — наборы функций и объектов, позволяющих сохранять и обрабатывать данные, полученные в ходе экспериментов, в том числе в реальном времени. Поддерживается широкий спектр научного и инженерного измерительного оборудования.
  • Визуализация и представление данных: Virtual Reality Toolbox — позволяет создавать интерактивные миры и визуализировать научную информацию с помощью технологий виртуальной реальности и языка VRML.
  • Средства разработки: MATLAB Builder for COM, MATLAB Builder for Excel, MATLAB Builder for NET, MATLAB Compiler, HDL Coder — инструменты, позволяющие создавать независимые приложения из среды MATLAB.
  • Взаимодействие с внешними программными продуктами: MATLAB Report Generator, Excel Link, Database Toolbox, MATLAB Web Server, Link for ModelSim — наборы функций, позволяющие сохранять данные различных видов таким образом, чтобы другие программы могли с ними работать.
  • Базы данных: Database Toolbox — инструменты работы с базами данных.
  • Научные и математические пакеты: Bioinformatics Toolbox, Curve Fitting Toolbox, Fixed-Point Toolbox, Optimization Toolbox, Global Optimization Toolbox,Partial Differential Equation Toolbox, Statistics And Machine Learning Toolbox, RF Toolbox — наборы специализированных математических функций и объектов, позволяющие решать широкий спектр научных и инженерных задач, включая разработку генетических алгоритмов, решения задач в частных производных, целочисленные проблемы, оптимизацию систем и другие.
  • Нейронные сети: Neural Network Toolbox — инструменты для синтеза и анализа нейронных сетей.
  • Нечёткая логика: Fuzzy Logic Toolbox — инструменты для построения и анализа нечётких множеств.
  • Символьные вычисления: Symbolic Math Toolbox — инструменты для символьных вычислений с возможностью взаимодействия с символьным процессором программы Maple.

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

Интересные факты [ править | править код ]

  • Если в командной строке напечатать «why» (почему), MATLAB ответит на этот вопрос. Ответы выбираются из ограниченного множества ответов случайным образом всякий раз, когда вводится эта команда.
  • В MATLAB встроена программа виртуальной машины vrcar.

Альтернативные пакеты [ править | править код ]

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

Методические указания к лабораторной работе

Составители: Митришкина М.Е.,

Тамьярова М.В., Тамьяров А.В.

ОСНОВЫ РАБОТЫ В MATLAB

Цель работы – изучение функциональных возможностей математического пакета MATLAB и приобретение навыков практической работы по вводу и редактированию формул и выполнению элементарных вычислений.

Запуск программы MATLAB производится нажатием кнопки Пуск/Программы/MATLAB Release 12/MATLAB R 12.

Читайте также:  Как снять головку принтера epson stylus

При запуске MATLAB на экране появляется командное окно MATLAB Command Window.Окно MATLAB Command Window состоит из следующих основных элементов:

панели с кнопками;

рабочей области с командной строкой, в которой находится мигающий вертикальный курсор;

Рабочее пространство и численные расчеты в МАТLАВ

Рабочее пространство МАТLАВ

Общение пользователя с программой происходит с помощью команд, набираемых в командной строке. Командная строка системы МАТLАВ начинается со знака приглашения »(рrоmpt), после которого можно записать любое алгебраическое выражение, т.е. выражение, состоящее из чисел, имен переменных и знаков операций. Для того чтобы увидеть результат вычисления математического выра­жения, которое вводится после знака », нужно нажать клавишу Еntеr. После вычисления в нижней части экрана появится строка для ввода новых данных, которая также начи­нается со знака приглашения.

!! Введите на поле нового документа 3+5 и нажмите Еntеr.

Что сделала программа MATLAB? Сначала она вычислила сумму 3+5, затем записала результат в специальную системную переменную ans и вывела ее значение, равное 8, в командное окно. Ниже ответа расположена командная строка с мигающим курсором, обозначающая, что MATLAB готова к дальнейшим вы­числениям. Можно набирать в командной строке новые выражения и нахо­дить их значения.

Если требуется продолжить работу с предыдущим выражением, например, вычислить (3+5)/4, то проще всего воспользоваться уже имеющимся ре­зультатом, который хранится в переменной ans.

!! Наберите в командной строке ans/4 и нажми­те Enter.

!! Присвойте переменной a полученный результат.

Для того чтобы ввести в строке ввода значения нескольких пе­ременных подряд, между выражениями ставится знак ";". Необ­ходимо отметить, что знак ";" используется также для того, что­бы система не выводила на экран результат после нажатия кла­виши Enter.

Вся информация, которая набирается в строке ввода, запоми­нается в специальной области памяти, называемой стеком команд. С помощью нажатия клавиш управления курсором ↑или ↓ можно вернуть в строку ввода ранее набранные команды.

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

Расположение информации, которая отображена в рабочем окне МАТLАВ, можно условно разделить на две зоны: зону просмотра и зону ввода (или редактирования) информации. В зоне просмотра мож­но выделять (с помощью мыши) любую информацию и копиро­вать ее в буфер обмена, однако в ней ничего нельзя ис­правлять. В свою очередь, зона ввода занимает последнюю строку рабочего окна. В ней можно вводить и редактировать набранные выражения.

Для просмотра рабочей области удобно использовать полосы скроллинга или клавиши Ноmе, Еnd для перемещения влево или вправо и Page Up и Page Down для перемещения вверх или вниз. Если вдруг после перемещения по рабочей области командного окна пропала командная строка с мигающим курсором, просто нажмите Еnter.

Важно запомнить, что набор любой команды или выражения должен закан­чиваться нажатием на Enter, для того, чтобы программа MATLAB выполни­ла эту команду или вычислила выражение.

Иногда работа в системе МАТLАВ существенно замедляется. Это происходит из-за того, что в специальной области памяти компьютера запоминается огромное количество значений всех переменных, вычисленных в течение текущего сеанса работы. Данная область называется рабочим пространством системы МАТLАВ. Для того чтобы скорость работы не замедлялась, пере­менные, которые уже не нужны для работы, необходимо стирать из памяти компьютера. Это делается с помощью команды сlеаr, имеющей следующий синтаксис:

Указанная команда удаляет из рабочего пространства пере­менные с именами имя1, имя2 и т.д.

Выполнив команду who, можно узнать, какие переменные ос­тались в рабочем пространстве.

Команда whos позволяет получить более подробную информацию о пере­менных в виде таблицы.

Первый столбик Name состоит из имен используемых переменных. То, что со­держится в столбике Size, по существу, определяется основным принципом работы MATLAB. Программа MATLAB все данные представляет в виде массивов. Переменные а1, а2 и а3 являются двумерными массивами размера один на один. Каждая из переменных занимает по восемь байтов, как указано в стол­бике Bytes. Наконец, в последнем столбике Class указан тип переменных — double array, т. е. массив, состоящий из чисел двойной точности. В строке под таблицей написано, что в итоге три элемента, т. е. переменные, занимают двадцать четыре байта. Оказывается, что представление всех данных в виде массивов дает определенные преимущества.

Удалить из памяти компьютера все ранее использованные пе­ременные можно, выполнив команду clear без указания их имен и без скобок.

Команда сlс очищает видимую часть рабочего пространства.

Для просмотра значения какой-либо переменной, содержа­щейся в рабочем пространстве, достаточно набрать ее имя и на­жать кнопку Еntеr.

!! Попробуйте просмотреть значение переменной b.

Система MATLAB выведет сообщение о неопределенности переменной.

В MATLAB имеется другое удобное средство для просмотра переменных рабочей среды – окно Workspace, для перехода к которому следует активизировать одноименную закладку в меню Veiw.

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

Ссылка на основную публикацию
Как поставить напоминалку на андроиде
Привет всем. Нужно ли вам напоминать о каких-либо событиях? Я думаю напоминания не помешают никому. В силу своей занятости или...
Как пользоваться microsoft office access
Введение В современном мире человеку приходится сталкиваться с огромными массивами однородной информации. Эту информацию необходимо упорядочить каким-либо образом, обработать однотипными...
Как пользоваться steam link
Несколько лет назад американская компания Valve , знакомая многим по непотопляемому Steam и таким знаменитым сериям игр, как Half-Life, Team...
Как поставить пароль на покупку фильмов ростелеком
Интерактивное ТВ от Ростелеком предлагает абонентам огромное многообразие телеканалов различного содержания. Многие из них совершенно не рассчитаны на младшую аудиторию....
Adblock detector