Как запустить программу в матлаб

от admin

MATLAB – Обзор

MATLAB (матричная лаборатория) – это язык программирования высокого уровня четвертого поколения и интерактивная среда для численных расчетов, визуализации и программирования.

Это позволяет матричные манипуляции; построение графиков функций и данных; реализация алгоритмов; создание пользовательских интерфейсов; взаимодействие с программами, написанными на других языках, включая C, C ++, Java и FORTRAN; анализировать данные; разработать алгоритмы; и создавать модели и приложения.

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

Сила вычислительной математики MATLAB

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

  • Работа с матрицами и массивами
  • 2-D и 3-D Печать и графика
  • Линейная алгебра
  • Алгебраические уравнения
  • Нелинейные функции
  • Статистика
  • Анализ данных
  • Исчисление и дифференциальные уравнения
  • Численные расчеты
  • интеграция
  • Трансформации
  • Кривая Фитинг
  • Различные другие специальные функции

Особенности MATLAB

Ниже приведены основные характеристики MATLAB –

Это язык высокого уровня для численных расчетов, визуализации и разработки приложений.

Он также предоставляет интерактивную среду для итеративного исследования, проектирования и решения проблем.

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

Он предоставляет встроенную графику для визуализации данных и инструменты для создания пользовательских графиков.

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

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

Он предоставляет функции для интеграции алгоритмов на основе MATLAB с внешними приложениями и языками, такими как C, Java, .NET и Microsoft Excel.

Это язык высокого уровня для численных расчетов, визуализации и разработки приложений.

Он также предоставляет интерактивную среду для итеративного исследования, проектирования и решения проблем.

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

Он предоставляет встроенную графику для визуализации данных и инструменты для создания пользовательских графиков.

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

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

Он предоставляет функции для интеграции алгоритмов на основе MATLAB с внешними приложениями и языками, такими как C, Java, .NET и Microsoft Excel.

Использование MATLAB

MATLAB широко используется в качестве вычислительного инструмента в науке и технике, охватывающего области физики, химии, математики и всех технических потоков. Он используется в различных областях, в том числе –

  • Обработка сигналов и связь
  • Обработка изображений и видео
  • Системы управления
  • Тест и Измерение
  • Вычислительные финансы
  • Вычислительная биология

MATLAB – Настройка среды

Настройка локальной среды

Настройка среды MATLAB производится в несколько кликов. Установщик можно скачать здесь .

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

После загрузки установщика программное обеспечение можно установить с помощью нескольких кликов.

Установка

Понимание среды MATLAB

Среду разработки MATLAB можно запустить из иконки, созданной на рабочем столе. Основное рабочее окно в MATLAB называется рабочим столом. Когда MATLAB запущен, рабочий стол отображается в макете по умолчанию –

MATLAB рабочий стол

Рабочий стол имеет следующие панели –

Текущая папка – эта панель позволяет получить доступ к папкам и файлам проекта.

Текущая папка

Окно команд – это основная область, где команды можно вводить в командной строке. На это указывает командная строка (>>).

Командное окно

Рабочая область – Рабочая область показывает все переменные, созданные и / или импортированные из файлов.

Рабочая среда

История команд – эта панель показывает или возвращает команды, которые вводятся в командной строке.

Текущая папка – эта панель позволяет получить доступ к папкам и файлам проекта.

Окно команд – это основная область, где команды можно вводить в командной строке. На это указывает командная строка (>>).

Рабочая область – Рабочая область показывает все переменные, созданные и / или импортированные из файлов.

История команд – эта панель показывает или возвращает команды, которые вводятся в командной строке.

Настройка GNU Octave

Если вы хотите использовать Octave на своем компьютере (Linux, BSD, OS X или Windows), пожалуйста, скачайте последнюю версию с Download GNU Octave . Вы можете проверить данные инструкции по установке для вашей машины.

MATLAB – базовый синтаксис

Среда MATLAB ведет себя как сверхсложный калькулятор. Вы можете вводить команды в командной строке >>.

MATLAB – это интерпретируемая среда. Другими словами, вы даете команду, а MATLAB выполняет ее сразу.

Руки на практике

Введите правильное выражение, например,

И нажмите ENTER

Когда вы нажимаете кнопку «Выполнить» или нажимаете Ctrl + E, MATLAB выполняет его немедленно, и возвращается результат –

Давайте рассмотрим еще несколько примеров –

Когда вы нажимаете кнопку «Выполнить» или нажимаете Ctrl + E, MATLAB выполняет его немедленно, и возвращается результат –

Когда вы нажимаете кнопку «Выполнить» или нажимаете Ctrl + E, MATLAB выполняет его немедленно, и возвращается результат –

Когда вы нажимаете кнопку «Выполнить» или нажимаете Ctrl + E, MATLAB выполняет его немедленно, и возвращается результат –

Когда вы нажимаете кнопку «Выполнить» или нажимаете Ctrl + E, MATLAB выполняет его немедленно, и возвращается результат –

MATLAB предоставляет некоторые специальные выражения для некоторых математических символов, таких как pi для π, Inf для ∞, i (и j) для √-1 и т. Д. Nan означает «не число».

Использование точки с запятой (;) в MATLAB

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

Когда вы нажимаете кнопку «Выполнить» или нажимаете Ctrl + E, MATLAB выполняет его немедленно, и возвращается результат –

Добавление комментариев

Символ процента (%) используется для обозначения строки комментария. Например,

Вы также можете написать блок комментариев, используя операторы комментариев к блоку% <и%>.

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

Обычно используемые операторы и специальные символы

MATLAB поддерживает следующие часто используемые операторы и специальные символы –

оператор Цель
+ Плюс; оператор сложения.
Минус; оператор вычитания.
* Скалярный и матричный оператор умножения.
. * Оператор умножения массива.
^ Скалярный и матричный оператор возведения в степень.
. ^ Оператор возведения в степень массива.
\ Оператор левого деления.
/ Оператор правого деления.
. \ Массив левого делителя.
./ Массив оператора правого деления.
: Двоеточие; генерирует регулярно расположенные элементы и представляет всю строку или столбец.
() Скобки; заключает в себе аргументы функций и индексы массивов; переопределяет приоритет
[] Скобки; элементы массива вложений.
, Десятичная точка.
Многоточие; оператор продолжения строки
, Comma; разделяет операторы и элементы подряд
; Точка с запятой; разделяет столбцы и подавляет отображение.
% Знак процента; обозначает комментарий и задает форматирование.
_ Цитировать знак и транспонировать оператора.
._ Несопряженный оператор транспонирования.
знак равно Оператор присваивания.

Специальные переменные и константы

MATLAB поддерживает следующие специальные переменные и константы –

название Имея в виду
анс Самый последний ответ.
прибыль на акцию Точность точности с плавающей точкой.
I, J Мнимая единица √-1.
Inf Бесконечность.
NaN Неопределенный числовой результат (не число).
число Пи Число π

Именование переменных

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

MATLAB чувствителен к регистру .

Имена переменных могут быть любой длины, однако MATLAB использует только первые N символов, где N задается функцией namelengthmax .

Сохранение вашей работы

Команда save используется для сохранения всех переменных в рабочей области в виде файла с расширением .mat в текущем каталоге.

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

MATLAB – Переменные

В среде MATLAB каждая переменная является массивом или матрицей.

Вы можете назначить переменные простым способом. Например,

MATLAB выполнит приведенный выше оператор и вернет следующий результат –

Он создает матрицу 1 на 1 с именем x и сохраняет значение 3 в своем элементе. Давайте посмотрим на другой пример,

MATLAB выполнит приведенный выше оператор и вернет следующий результат –

Пожалуйста, обратите внимание, что –

Как только переменная введена в систему, вы можете обратиться к ней позже.

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

Когда выражение возвращает результат, который не присвоен какой-либо переменной, система назначает его переменной с именем ans, которая может быть использована позже.

Как только переменная введена в систему, вы можете обратиться к ней позже.

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

Когда выражение возвращает результат, который не присвоен какой-либо переменной, система назначает его переменной с именем ans, которая может быть использована позже.

MATLAB выполнит приведенный выше оператор и вернет следующий результат –

Вы можете использовать эту переменную ANS

MATLAB выполнит приведенный выше оператор и вернет следующий результат –

Давайте посмотрим на другой пример –

MATLAB выполнит приведенный выше оператор и вернет следующий результат –

Несколько назначений

Вы можете иметь несколько назначений на одной строке. Например,

MATLAB выполнит приведенный выше оператор и вернет следующий результат –

Я забыл переменные!

Команда who отображает все имена переменных, которые вы использовали.

MATLAB выполнит приведенный выше оператор и вернет следующий результат –

Команда whos показывает немного больше о переменных –

  • Переменные в настоящее время в памяти
  • Тип каждой переменной
  • Память, выделенная для каждой переменной
  • Являются ли они сложными переменными или нет

MATLAB выполнит приведенный выше оператор и вернет следующий результат –

Команда очистки удаляет все (или указанные) переменные из памяти.

Длинные Задания

Длинные назначения могут быть расширены до другой строки с помощью эллипсов (…). Например,

MATLAB выполнит приведенный выше оператор и вернет следующий результат –

Формат Команда

По умолчанию MATLAB отображает числа с четырьмя знаками после запятой. Это известно как короткий формат .

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

Команда format long отображает 16 цифр после десятичной дроби.

MATLAB выполнит приведенный выше оператор и вернет следующий результат:

MATLAB выполнит приведенный выше оператор и вернет следующий результат –

Команда формата банка округляет числа до двух десятичных знаков. Например,

MATLAB выполнит приведенный выше оператор и вернет следующий результат –

MATLAB отображает большие числа с использованием экспоненциальной записи.

Команда format short e позволяет отображать в экспоненциальной форме с четырьмя десятичными знаками плюс показатель степени.

MATLAB выполнит приведенный выше оператор и вернет следующий результат –

Команда format long e позволяет отображать в экспоненциальной форме с четырьмя десятичными знаками плюс показатель степени. Например,

MATLAB выполнит приведенный выше оператор и вернет следующий результат –

Команда format rat дает наиболее близкое рациональное выражение, полученное в результате вычисления. Например,

MATLAB выполнит приведенный выше оператор и вернет следующий результат –

Создание векторов

Вектор – это одномерный массив чисел. MATLAB позволяет создавать два типа векторов –

  • Векторы строк
  • Векторы столбцов

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

MATLAB выполнит приведенный выше оператор и вернет следующий результат –

MATLAB выполнит приведенный выше оператор и вернет следующий результат –

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

MATLAB выполнит приведенный выше оператор и вернет следующий результат –

Создание Матрицы

Матрица – это двумерный массив чисел.

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

MATLAB выполнит приведенный выше оператор и вернет следующий результат –

MATLAB – Команды

MATLAB – интерактивная программа для численных расчетов и визуализации данных. Вы можете ввести команду, набрав ее в командной строке MATLAB ‘>>’ в окне команд .

В этом разделе мы предоставим списки часто используемых общих команд MATLAB.

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

MATLAB предоставляет различные команды для управления сеансом. В следующей таблице приведены все такие команды:

команда Цель
CLC Очищает командное окно.
Чисто Удаляет переменные из памяти.
существовать Проверяет наличие файла или переменной.
Глобальный Объявляет переменные глобальными.
Помогите Ищет справочную тему.
Ищу Поиск записей справки по ключевому слову.
уволиться Останавливается MATLAB.
кто Перечисляет текущие переменные.
Whos Перечисляет текущие переменные (длинный дисплей).

Команды для работы с системой

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

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

В следующей таблице приведены некоторые часто используемые системные команды:

команда Цель
CD Изменяет текущий каталог.
Дата Отображает текущую дату.
удалять Удаляет файл.
дневник Включает / выключает запись в дневниковый файл.
реж Перечисляет все файлы в текущем каталоге.
нагрузка Загружает переменные рабочей области из файла.
дорожка Отображает путь поиска.
PWD Отображает текущий каталог.
спасти Сохраняет переменные рабочей области в файл.
тип Отображает содержимое файла.
какие Перечисляет все файлы MATLAB в текущем каталоге.
wklread Читает файл электронной таблицы .wk1.

Команды ввода и вывода

MATLAB предоставляет следующие команды ввода и вывода –

команда Цель
Индик.точки Отображает содержимое массива или строки.
fscanf Чтение отформатированных данных из файла.
формат Управляет форматом отображения экрана.
fprintf Выполняет отформатированные записи на экран или в файл.
вход Отображает подсказки и ждет ввода.
; Подавляет трафаретную печать.

Команды fscanf и fprintf ведут себя как функции C scanf и printf. Они поддерживают следующие коды формата –

Код формата Цель
% s Форматировать как строку.
% d Форматировать как целое число.
% е Формат как значение с плавающей запятой.
% е Формат как значение с плавающей запятой в научной нотации.
Формат в наиболее компактной форме:% f или% e.
\ п Вставьте новую строку в выходную строку.
\ т Вставьте вкладку в выходной строке.

Функция форматирования имеет следующие формы, используемые для числового отображения:

Функция формата Отображать до
формат короткий Четыре десятичных знака (по умолчанию).
форматировать долго 16 десятичных цифр.
формат короткой электронной Пять цифр плюс показатель степени.
формат длинная электронная 16 цифр плюс показатели.
формат банка Две десятичные цифры.
формат + Положительный, отрицательный или ноль.
формат крыса Рациональное приближение.
формат компактный Подавляет некоторые переводы строки.
свободный формат Сбрасывает в менее компактный режим отображения.

Векторные, матричные и матричные команды

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

команда Цель
кошка Объединяет массивы.
находить Находит индексы ненулевых элементов.
длина Вычисляет количество элементов.
LINSPACE Создает равномерно расположенный вектор.
logspace Создает логарифмически разнесенный вектор.
Максимум Возвращает самый большой элемент.
мин Возвращает наименьший элемент.
тычок Продукт каждого столбца.
перекроить Изменяет размер.
размер Вычисляет размер массива.
Сортировать Сортирует каждый столбец.
сумма Суммирует каждый столбец.
глаз Создает идентичную матрицу.
те, Создает массив из них.
нули Создает массив нулей.
пересекать Вычисляет матричные перекрестные произведения.
точка Вычисляет матричные точечные произведения.
йе Вычисляет определитель массива.
фактура Вычисляет обратную матрицу.
pinv Вычисляет псевдообратную матрицу.
ранг Вычисляет ранг матрицы.
RREF Вычисляет приведенную форму ряда эшелонов.
клетка Создает массив ячеек.
celldisp Отображает массив ячеек.
cellplot Отображает графическое представление массива ячеек.
num2cell Преобразует числовой массив в массив ячеек.
по рукам Соответствует спискам ввода и вывода.
iscell Определяет массив ячеек.

Команды построения

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

команда Цель
ось Устанавливает пределы оси.
fplot Интеллектуальное построение функций.
сетка Отображает линии сетки.
сюжет Создает график xy.
Распечатать Печать графика или сохранение графика в файл.
заглавие Размещает текст в верхней части сюжета.
xlabel Добавляет текстовую метку к оси X.
ylabel Добавляет текстовую метку к оси Y.
оси Создает объекты осей.
близко Закрывает текущий сюжет.
закрыть все Закрывает все участки.
фигура Открывает новое окно фигуры.
gtext Включает размещение метки с помощью мыши.
держать Замораживает текущий сюжет.
легенда Размещение легенды мышью.
обновление Перерисовывает текущее окно рисунка.
задавать Определяет свойства объектов, таких как оси.
подзаговор Создает участки в подокнах.
текст Размещает строку на рисунке.
бар Создает гистограмму.
loglog Создает лог-лог сюжет.
полярный Создает полярный сюжет.
semilogx Создает полулогичный сюжет. (логарифмическая абсцисса).
semilogy Создает полулогичный сюжет. (логарифмическая ордината).
лестница Создает лестничный участок.
стебель Создает стволовый сюжет.

MATLAB – M-Files

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

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

М-файлы

MATLAB позволяет писать два вида программных файлов –

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

Функции – файлы функций также являются программными файлами с расширением .m . Функции могут принимать входные и выходные данные. Внутренние переменные являются локальными для функции.

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

Функции – файлы функций также являются программными файлами с расширением .m . Функции могут принимать входные и выходные данные. Внутренние переменные являются локальными для функции.

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

Создание и запуск файла скрипта

Для создания файлов скриптов вам необходимо использовать текстовый редактор. Вы можете открыть редактор MATLAB двумя способами:

  • Использование командной строки
  • Использование IDE

Если вы используете командную строку, введите edit в командной строке. Это откроет редактор. Вы можете напрямую ввести edit и затем имя файла (с расширением .m)

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

Читать:
Как повысить фпс варзон

Давайте создадим папку с именем progs. Введите следующие команды в командной строке (>>) –

Если вы создаете файл в первый раз, MATLAB предложит вам подтвердить его. Нажмите Да.

Создание файла сценария

В качестве альтернативы, если вы используете IDE, выберите NEW -> Script. Это также открывает редактор и создает файл с именем Untitled. Вы можете назвать и сохранить файл после ввода кода.

Введите следующий код в редакторе –

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

Нажав кнопку « Выполнить» в окне редактора или

Просто введите имя файла (без расширения) в командной строке: >> prog1

Нажав кнопку « Выполнить» в окне редактора или

Просто введите имя файла (без расширения) в командной строке: >> prog1

В командной строке отображается результат –

пример

Создайте файл сценария и введите следующий код –

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

MATLAB – Типы данных

MATLAB не требует никакого объявления типа или операторов измерения. Всякий раз, когда MATLAB встречает новое имя переменной, он создает переменную и выделяет соответствующее пространство памяти.

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

Вышеприведенный оператор создает матрицу 1 на 1 с именем «Total» и сохраняет в ней значение 42.

Типы данных, доступные в MATLAB

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

В следующей таблице приведены наиболее часто используемые типы данных в MATLAB.

8-разрядное целое число со знаком

8-битное целое число без знака

16-разрядное целое число со знаком

16-разрядное целое число без знака

32-разрядное целое число со знаком

32-разрядное целое число без знака

64-разрядное целое число со знаком

64-разрядное целое число без знака

числовые данные одинарной точности

числовые данные двойной точности

логические значения 1 или 0, представляют истину и ложь соответственно

символьные данные (строки хранятся как вектор символов)

массив ячеек

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

C-подобные структуры, каждая структура имеет именованные поля, способные хранить массив другого измерения и типа данных

ручка функции

указатель на функцию

пользовательские классы

объекты, созданные из определенного пользователем класса

объекты, построенные из класса Java

8-разрядное целое число со знаком

8-битное целое число без знака

16-разрядное целое число со знаком

16-разрядное целое число без знака

32-разрядное целое число со знаком

32-разрядное целое число без знака

64-разрядное целое число со знаком

64-разрядное целое число без знака

числовые данные одинарной точности

числовые данные двойной точности

логические значения 1 или 0, представляют истину и ложь соответственно

символьные данные (строки хранятся как вектор символов)

массив ячеек

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

C-подобные структуры, каждая структура имеет именованные поля, способные хранить массив другого измерения и типа данных

ручка функции

указатель на функцию

пользовательские классы

объекты, созданные из определенного пользователем класса

объекты, построенные из класса Java

пример

Создайте файл сценария со следующим кодом –

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

Преобразование типов данных

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

функция Цель
голец Преобразовать в массив символов (строку)
int2str Преобразовать целочисленные данные в строку
mat2str Преобразовать матрицу в строку
num2str Преобразовать число в строку
str2double Преобразовать строку в значение двойной точности
str2num Преобразовать строку в число
native2unicode Преобразуйте числовые байты в символы Юникода
unicode2native Преобразование символов Юникода в числовые байты
base2dec Преобразовать базовую N числовую строку в десятичное число
BIN2DEC Преобразовать строку двоичного числа в десятичное число
dec2base Преобразовать десятичное число в базовое число N в строке
DEC2BIN Преобразовать десятичное число в двоичное число в строке
DEC2HEX Преобразовать десятичное число в шестнадцатеричное число в строке
HEX2DEC Преобразовать строку шестнадцатеричного числа в десятичное число
hex2num Преобразовать строку шестнадцатеричного числа в число с двойной точностью
num2hex Преобразование одинарных и двойных символов в шестнадцатеричные строки IEEE
cell2mat Преобразовать массив ячеек в числовой массив
cell2struct Преобразовать массив ячеек в массив структур
cellstr Создать массив строк из массива символов
mat2cell Конвертировать массив в массив ячеек с потенциально разными размерами ячеек
num2cell Преобразовать массив в массив ячеек с ячейками одинакового размера
struct2cell Преобразовать структуру в массив ячеек

Определение типов данных

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

В следующей таблице приведены функции для определения типа данных переменной –

функция Цель
является Определить состояние
это Определите, является ли ввод объектом указанного класса
iscell Определите, является ли ввод массивом ячеек
iscellstr Определите, является ли ввод массивом строк
ischar Определить, является ли элемент массивом символов
isfield Определите, является ли входное поле структурным массивом
isfloat Определите, является ли ввод массивом с плавающей точкой
ishghandle Истинно для дескрипторов объектов Handle Graphics
isinteger Определите, является ли ввод целочисленным массивом
isjava Определите, является ли ввод Java-объектом
ISLOGICAL Определите, является ли ввод логическим массивом
IsNumeric Определите, является ли ввод числовым массивом
IsObject Определите, является ли ввод объектом MATLAB
реально Проверьте, является ли входной массив реальным
isscalar Определите, является ли вход скалярным
isstr Определите, является ли ввод символьным массивом
isstruct Определите, является ли ввод структурным массивом
isvector Определите, является ли входной вектор
учебный класс Определить класс объекта
validateattributes Проверьте правильность массива
Whos Перечислите переменные в рабочей области, с размерами и типами

пример

Создайте файл сценария со следующим кодом –

Когда вы запускаете файл, он дает следующий результат –

MATLAB – Операторы

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

  • Арифметические Операторы
  • Операторы отношений
  • Логические Операторы
  • Побитовые операции
  • Операции над множествами

Арифметические Операторы

MATLAB допускает два различных типа арифметических операций –

  • Матричные арифметические операции
  • Массив арифметических операций

Матричные арифметические операции аналогичны определенным в линейной алгебре. Операции с массивами выполняются поэлементно, как в одномерном, так и в многомерном массиве.

Матричные операторы и операторы массива дифференцируются символом точки (.). Однако, поскольку операция сложения и вычитания одинакова для матриц и массивов, оператор одинаков для обоих случаев. Следующая таблица дает краткое описание операторов –

Дополнение или унарный плюс. A + B добавляет значения, хранящиеся в переменных A и B. A и B должны иметь одинаковый размер, если только один не является скаляром. Скаляр можно добавить в матрицу любого размера.

Вычитание или унарный минус. AB вычитает значение B из A. A и B должны иметь одинаковый размер, если только он не является скаляром. Скаляр можно вычесть из матрицы любого размера.

Матричное умножение. C = A * B – линейное алгебраическое произведение матриц A и B. Точнее,

Умножение матриц

Для нескалярных A и B число столбцов в A должно быть равно количеству строк в B. Скаляр может умножить матрицу любого размера.

Умножение массивов. A. * B – это поэлементное произведение массивов A и B. A и B должны иметь одинаковый размер, если только один из них не является скаляром.

Косая черта или матрица правого деления. B / A примерно такой же, как B * inv (A). Точнее, B / A = (A ‘\ B’) ‘.

Массив правого деления. A./B – матрица с элементами A (i, j) / B (i, j). A и B должны иметь одинаковый размер, если только один из них не является скаляром.

Обратная косая черта или матрица левого деления. Если A – квадратная матрица, A \ B – примерно то же самое, что inv (A) * B, за исключением того, что она вычисляется другим способом. Если A является матрицей n-на-n и B является вектором столбцов с n компонентами, или матрицей с несколькими такими столбцами, то X = A \ B является решением уравнения AX = B. Предупреждающее сообщение отображается, если А плохо масштабировано или почти единственное число.

Массив покинул деление. A. \ B – матрица с элементами B (i, j) / A (i, j). A и B должны иметь одинаковый размер, если только один из них не является скаляром.

Матрица власти. X ^ p есть X в степени p, если p скаляр. Если p является целым числом, мощность вычисляется путем повторного возведения в квадрат. Если целое число отрицательно, X инвертируется первым. Для других значений p в расчет включаются собственные значения и собственные векторы, например, если [V, D] = eig (X), то X ^ p = V * D. ^ p / V.

Массив власти. A. ^ B – это матрица с элементами A (i, j) степени B (i, j). A и B должны иметь одинаковый размер, если только один из них не является скаляром.

Матрица транспонировать. A ‘- линейная алгебраическая транспонирование A. Для комплексных матриц это комплексная сопряженная транспонирование.

Массив транспонировать. A.» это транспонирование массива A. Для сложных матриц это не связано с сопряжением.

Дополнение или унарный плюс. A + B добавляет значения, хранящиеся в переменных A и B. A и B должны иметь одинаковый размер, если только один не является скаляром. Скаляр можно добавить в матрицу любого размера.

Вычитание или унарный минус. AB вычитает значение B из A. A и B должны иметь одинаковый размер, если только он не является скаляром. Скаляр можно вычесть из матрицы любого размера.

Матричное умножение. C = A * B – линейное алгебраическое произведение матриц A и B. Точнее,

Умножение матриц

Для нескалярных A и B число столбцов в A должно быть равно количеству строк в B. Скаляр может умножить матрицу любого размера.

Умножение массивов. A. * B – это поэлементное произведение массивов A и B. A и B должны иметь одинаковый размер, если только один из них не является скаляром.

Косая черта или матрица правого деления. B / A примерно такой же, как B * inv (A). Точнее, B / A = (A ‘\ B’) ‘.

Массив правого деления. A./B – матрица с элементами A (i, j) / B (i, j). A и B должны иметь одинаковый размер, если только один из них не является скаляром.

Обратная косая черта или матрица левого деления. Если A – квадратная матрица, A \ B – примерно то же самое, что inv (A) * B, за исключением того, что она вычисляется другим способом. Если A является матрицей n-на-n и B является вектором столбцов с n компонентами, или матрицей с несколькими такими столбцами, то X = A \ B является решением уравнения AX = B. Предупреждающее сообщение отображается, если А плохо масштабировано или почти единственное число.

Массив покинул деление. A. \ B – матрица с элементами B (i, j) / A (i, j). A и B должны иметь одинаковый размер, если только один из них не является скаляром.

Матрица власти. X ^ p есть X в степени p, если p скаляр. Если p является целым числом, мощность вычисляется путем повторного возведения в квадрат. Если целое число отрицательно, X инвертируется первым. Для других значений p в расчет включаются собственные значения и собственные векторы, например, если [V, D] = eig (X), то X ^ p = V * D. ^ p / V.

Массив власти. A. ^ B – это матрица с элементами A (i, j) степени B (i, j). A и B должны иметь одинаковый размер, если только один из них не является скаляром.

Матрица транспонировать. A ‘- линейная алгебраическая транспонирование A. Для комплексных матриц это комплексная сопряженная транспонирование.

Массив транспонировать. A.» это транспонирование массива A. Для сложных матриц это не связано с сопряжением.

Операторы отношений

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

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

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

1 Работа с окном команд в среде MATLAB

В среде MATLAB есть несколько режимов работы. Самый простой – это ввод команд непосредственно в окно команд (Command Window).

Использование пакета MATLAB Окно команд MATLAB

Если оно не видно в интерфейсе программы, откроем его. Найти окно команд можно через меню Desktop Command Window.

Давайте для примера введём в это окно последовательно друг за другом команды

и нажмём клавишу «Ввод» (Enter). Программа моментально создаст переменную X, создаст переменную Y и посчитает её значения по заданной функции, а затем построит её график.

Стрелками клавиатуры вверх и вниз в окне команд мы можем переключаться между введёнными командами, тут же изменять их, а по нажатию Enter отправлять среде MATLAB на исполнение. Стрелками влево и вправо можно перемещаться по введённой команде и редактировать её. Если в конце команды стоит точка с запятой, то результат будет посчитан, но не будет выведен в окно команд; в противном случае результат выполнения команды будет отображён тут же. По любой функции в среде MATLAB есть подробная встроенная справка. Например, чтобы получить справку по команде plot, выделите эту команду, нажмите на неё правой кнопкой мыши, и в открывшемся контекстном меню выберите пункт Help on Selection или нажмите клавишу F1.

Справка по командам MATLAB Получение справки по командам MATLAB

Удобно? Безусловно. И главное – очень быстро. Все эти действия занимают несколько секунд.

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

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

Чтобы упростить жизнь учёному, инженеру или студенту, служит окно редактора (Editor). Давайте откроем окно редактора через меню Desktop Editor.

Открытие редактора MATLAB Открытие редактора MATLAB

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

Нас в данный момент интересует написание программы, содержащей функции для повторного использования в будущем. Поэтому идём в меню File редактора и выбираем New M-File.

Создание нового M-файла в MATLAB Создание нового M-файла в MATLAB

М-файлами в среде МАТЛАБ называются файлы, содержащие текст программ (скрипты) или определённые пользователем функции.

Давайте напишем в редакторе простую функцию draw_plot:

Ввод текста программы в окне редактора MATLAB Ввод текста программы в окне редактора MATLAB

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

Не забудем сохранить программу. Стандартное расширение файла с программой МАТЛАБ – *.m. Теперь закройте редактор и окно с графиком, который мы построили ранее.

Переходим обратно в окно команд.

Можно очистить историю команд, чтобы лишняя информация нас не отвлекала. Для этого кликните правой кнопкой мыши на поле ввода команд и в открывшемся контекстном меню выберите пункт Clear Command Window.

Переменная X у нас осталась после предыдущего эксперимента, мы её не изменяли и не удаляли. Поэтому в окно команд можно сразу ввести:

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

Результат выполнения скрипта, написанного в редакторе MATLAB Результат выполнения скрипта, написанного в редакторе MATLAB

Как запустить программу в matlab

Кнопка Run изменяется на кнопку Pause.

Чтобы приостановить осуществление программы, в то время как это запускается, перейдите к вкладке Editor и нажмите кнопку Pause. MATLAB приостанавливает выполнение в следующей исполняемой строке и изменения кнопки Pause в кнопке Continue. Чтобы продолжить выполнение, нажмите кнопку Continue.

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

Нажмите Continue , чтобы запустить следующую строку кода.

Run to Cursor

Step

Step In

Continue

Step Out

Pause

Quit Debugging

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

1 Работа с окном команд в среде MATLAB

Окно команд MATLAB

Получение справки по командам MATLAB

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

Открытие редактора MATLAB

Создание нового M-файла в MATLAB

Ввод текста программы в окне редактора MATLAB

Результат выполнения скрипта, написанного в редакторе MATLAB

Создание GUI-приложения в MATLAB. Часть 2

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

Запуск инструмента по созданию приложений

Запуск инструмента по созданию приложений

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

Варианты шаблонов для создания приложения

Варианты шаблонов для создания приложения

В качестве примера приложение будет создаваться без использования шаблонов:

Выбор одного из шаблонов

Выбор одного из шаблонов

В инструментарий mlapp входит большое число элементов управления для организации интерфейса программы:

Элементы интерфейса программы Элементы интерфейса программы

Добавляя элементы управления, формируем облик приложения:

Формирование облика приложения

Формирование облика приложения

Для создания реакции на нажатие кнопок необходимо открыть контекстное меню:

Настройка логики работы элементов интерфейса

Настройка логики работы элементов интерфейса

У mlapp существует особенность, которая сильно отличает написание кода в нем от других IDE, mlapp не позволяет редактировать тот код, который отвечает за структуру самого приложения (настройки интерфейса, параметры элементов управления), то что нельзя редактировать выделяется в редакторе серой заливкой. Область, в которой приложение позволяет писать код, показано белой заливкой.

Фрагмент кода программы

Фрагмент кода программы

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

Фрагмент кода программы

Фрагмент кода программы

Язык написания кода – это MATLAB, а файлы формата mlapp представляют собой *.zip архивы которых содержат код приложения и файл графического интерфейса.

Когда приложение готово, его необходимо подготовить к распространению, для этого в mlapp существует следующий инструмент:

Выбор типа распространяемого приложения Выбор типа распространяемого приложения Описание версии приложения Описание версии приложения

Для работы таких скомпилированных приложений необходимо, чтобы на компьютере было установлено ядро Matlab (matlab_runtime). Ядро матлаба можно либо скачать непосредственно с официального сайта и установить, либо встроить в распространяемое приложение:

Включение ядра Mатлаб в распространяемое приложение Включение ядра Mатлаб в распространяемое приложение Компиляция приложения Компиляция приложения Исполняемый файл приложения Исполняемый файл приложения Запущенное приложение Запущенное приложение

Похожие статьи