randi
X = randi( imax ) возвращает псевдослучайное скалярное целое число между 1 и imax .
X = randi( imax , n ) возвращает n — n матрица псевдослучайных целых чисел, чертивших от дискретного равномерного распределения на интервале [ 1 IMAX ].
X = randi( imax , sz1. szN ) возвращает sz1 -. -by- szN массив, где sz1. szN указывает на размер каждой размерности. Например, randi(10,3,4) возвращает массив 3 на 4 псевдослучайных целых чисел между 1 и 10.
X = randi( imax , sz ) возвращает массив где вектор размера sz задает size(X) . Например, randi(10,[3,4]) возвращает массив 3 на 4 псевдослучайных целых чисел между 1 и 10.
X = randi( imax , typename ) возвращает псевдослучайное целое число где typename задает тип данных. typename может быть ‘single’ ‘double’ int8 uint8 int16 uint16 int32 , или ‘uint32’ .
X = randi( imax , n , typename ) возвращает n — n массив типа данных typename .
X = randi( imax , sz1. szN , typename ) возвращает sz1 -. -by- szN массив типа данных typename .
X = randi( imax , sz , typename ) возвращает массив где вектор размера sz задает size(X) и typename задает class(X) .
X = randi( imax ,’like’, p ) возвращает псевдослучайное целое число как p ; то есть, с совпадающим типом данных (класс).
X = randi( imax , n ,’like’, p ) возвращает n — n массив как p .
X = randi( imax , sz1. szN ,’like’, p ) возвращает sz1 -. -by- szN массив как p .
X = randi( imax , sz ,’like’, p ) возвращает массив как p где вектор размера sz задает size(X) .
X = randi([ imin , imax ], ___ ) возвращает массив, содержащий целые числа, чертившие от дискретного равномерного распределения на интервале [ imin IMAX ], с помощью любого из вышеупомянутых синтаксисов.
X = randi( s , ___ ) генерирует целые числа от потока случайных чисел s вместо глобального потока по умолчанию. Чтобы создать поток, используйте RandStream . Задайте s сопровождаемый любой из комбинаций аргументов в предыдущих синтаксисах, за исключением тех, которые включают ‘like’ . Этот синтаксис не поддерживает ‘like’ входной параметр.
Примеры
Квадратная матрица случайных Целых чисел
Сгенерируйте матрицу 5 на 5 случайных целых чисел между 1 и 10. Первый вход к randi указывает на самое большое целое число в интервале выборки (самое маленькое целое число в интервале равняется 1).
Случайные Целые числа в заданном интервале
Сгенерируйте вектор-столбец 10 на 1 равномерно распределенных случайных целых чисел от демонстрационного интервала [-5,5] .
Управление генерацией случайных чисел
Сохраните текущее состояние генератора случайных чисел и создайте вектор 1 на 5 из случайных целых чисел.
Восстановите состояние генератора случайных чисел к s , и затем создайте новый вектор 1 на 5 из случайных целых чисел. Значения те же, что и прежде.
Всегда используйте rng функция (а не rand или randn функции), чтобы задать настройки генератора случайных чисел. Для получения дополнительной информации смотрите Замену Нежелательные Синтаксисы rand и randn.
Трехмерный массив случайных Целых чисел
Создание массива 3 на 2 на 3 равномерно распределенных случайных целых чисел между 1 и 500.
Случайные Целые числа других типов данных
Создайте вектор 1 на 4 из случайных чисел, элементы которых имеют тип int16 .
Размер, заданный существующим массивом
Создайте матрицу равномерно распределенных случайных целых чисел между 1 и 10 с тем же размером как существующий массив.
Это — общий шаблон, чтобы объединить предыдущие две строки кода в одну строку:
Размер и тип числовых данных, заданный существующим массивом
Создайте матрицу 2 на 2 8-битных целых чисел со знаком.
Создайте массив случайных целых чисел, который одного размера и тип данных с p .
Входные параметры
imax — Самое большое целое число в демонстрационном интервале
положительное целое число
Самое большое целое число в демонстрационном интервале в виде положительного целого числа. randi чертит значения от равномерного распределения в демонстрационном интервале [1,imax] .
Пример: randi(10,5)
imin — Самое маленькое целое число в демонстрационном интервале
1 (значение по умолчанию) | скалярное целое число
Самое маленькое целое число в демонстрационном интервале в виде скалярного целого числа.
Оба imin и imax должны быть целые числа, которые удовлетворяют imin ≤ imax .
Например, randi([50,100],5) возвращает матрицу 5 на 5 случайных целых чисел между (и включая) 50 и 100.
n — Размер квадратной матрицы
целочисленное значение
Размер квадратной матрицы в виде целочисленного значения.
Если n 0 , затем X пустая матрица.
Если n отрицательно, затем это обработано как 0 .
Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64
sz1. szN — Размер каждой размерности (в качестве отдельных аргументов)
два или больше целочисленных значения
Размер каждой размерности в виде отдельных аргументов целочисленных значений.
Если размером какой-либо размерности является 0 , затем X пустой массив.
Если размер какой-либо размерности отрицателен, то это обработано как 0 .
После второго измерения, randi игнорирует последующие измерения с размером 1. Например, randi([5,10],3,1,1,1) дает вектор 3 на 1 случайных целых чисел между 5 и 10.
Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64
sz — Размер каждой размерности (как вектор-строка)
целочисленные значения
Размер каждой размерности в виде вектора-строки из целочисленных значений. Каждый элемент этого вектора указывает на размер соответствующей размерности:
Если размером какой-либо размерности является 0 , затем X пустой массив.
Если размер какой-либо размерности отрицателен, то это обработано как 0 .
После второго измерения, randi игнорирует последующие измерения с размером 1. Например, randi([5,10],[3 1 1 1]) дает вектор 3 на 1 случайных целых чисел между 5 и 10.
Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64
typename — Тип (класс) создаваемых данных
‘double’ (значение по умолчанию) | ‘single’ | ‘int8’ | ‘uint8’ | .
Выходной класс в виде ‘double’ единственный int8 uint8 int16 uint16 int32 uint32 , или имя другого класса, который обеспечивает randi поддержка.
Пример: randi(5,5,’int8′)
Типы данных: char
p — Прототип создаваемого массива
числовой массив
Прототип создаваемого массива в виде числового массива.
Пример: randi(5,5,’like’,p)
Типы данных: single | double | int8 | int16 | int32 | uint8 | uint16 | uint32
s — Поток случайных чисел
RandStream объект
Поток случайных чисел в виде a RandStream объект.
Пример: s = RandStream(‘dsfmt19937’); randi(s,[5,10],[3 1])
Советы
Последовательность чисел производится randi определяется внутренними настройками универсального генератора псевдослучайного числа, который лежит в основе rand randi , и randn . Можно управлять этим генератором, используя функцию rng .
Массивы, возвращенные randi может содержать повторенные целочисленные значения. Это поведение иногда упоминается как производящий с заменой. Использование randperm если вы требуете всех уникальных значений.
Расширенные возможности
Генерация кода C/C++
Генерация кода C и C++ с помощью MATLAB® Coder™.
Указания и ограничения по применению:
Типом данных (класс) должен быть встроенный MATLAB ® числовой тип. Не вызывает помехи randi метод для других классов. Например, randi(imax,sz,’myclass’) не вызывает myclass.randi(imax,sz) .
Аргументы размера должны иметь фиксированный размер.
Если внешние вызовы включены и randi не называется из a parfor цикл, сгенерированные файлы MEX используют то же состояние случайных чисел в качестве MATLAB в последовательном коде. В противном случае сгенерированный код MEX и автономный код обеспечивают их собственное состояние случайных чисел, которое инициализируется к тому же состоянию как MATLAB.
Основанная на потоке среда
Запустите код в фоновом режиме с помощью MATLAB® backgroundPool или ускорьте код с Parallel Computing Toolbox™ ThreadPool .
Эта функция полностью поддерживает основанные на потоке среды. Для получения дополнительной информации смотрите функции MATLAB Запуска в Основанной на потоке Среде.
Массивы графического процессора
Ускорьте код путем работы графического процессора (GPU) с помощью Parallel Computing Toolbox™.
Указания и ограничения по применению:
Потоковый синтаксис randi ( s ,___) не поддерживается на графическом процессоре.
Можно задать typename как ‘gpuArray’ . Если вы задаете typename как ‘gpuArray’ , типом лежания в основе значения по умолчанию массива является double .
Создать массив графического процессора с базовым типом datatype , задайте базовый тип в качестве дополнительного аргумента перед typename . Например, X = randi(imax,3,datatype,’gpuArray’) создает 3х3 массив графического процессора случайных целых чисел в области значений [1 imax] с базовым типом datatype .
Можно задать базовый тип datatype как одна из этих опций:
Можно также задать числовую переменную p как gpuArray .
Если вы задаете p как gpuArray , базовый тип возвращенного массива совпадает с p .
Для получения дополнительной информации смотрите функции MATLAB Запуска на графическом процессоре (Parallel Computing Toolbox) .
Распределенные массивы
Большие массивы раздела через объединенную память о вашем кластере с помощью Parallel Computing Toolbox™.
Указания и ограничения по применению:
Потоковый синтаксис randi ( s ,___) не поддерживается для codistributed или distributed массивы.
Можно задать typename как ‘codistributed’ или ‘distributed’ . Если вы задаете typename как ‘codistributed’ или ‘distributed’ , типом лежания в основе значения по умолчанию возвращенного массива является double .
Создать распределенный или codistributed массив с базовым типом datatype , задайте базовый тип в качестве дополнительного аргумента перед typename . Например, X = randi(imax,3,datatype,’distributed’) создает 3х3 распределенную матрицу случайных целых чисел в области значений [1 imax] с базовым типом datatype .
Можно задать базовый тип datatype как одна из этих опций:
Можно также задать p как codistributed или distributed массив.
Если вы задаете p как codistributed или distributed массив, базовый тип возвращенного массива совпадает с p .
Для дополнительного codistributed синтаксисы, смотрите randi (codistributed) (Parallel Computing Toolbox) .
Для получения дополнительной информации смотрите функции MATLAB Запуска с Распределенными Массивами (Parallel Computing Toolbox) .
Смотрите также
Открытый пример
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
Документация MATLAB
Поддержка
© 1994-2021 The MathWorks, Inc.
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста — например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.
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 запущен, рабочий стол отображается в макете по умолчанию –

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

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

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

История команд – эта панель показывает или возвращает команды, которые вводятся в командной строке.
Текущая папка – эта панель позволяет получить доступ к папкам и файлам проекта.
Окно команд – это основная область, где команды можно вводить в командной строке. На это указывает командная строка (>>).
Рабочая область – Рабочая область показывает все переменные, созданные и / или импортированные из файлов.
История команд – эта панель показывает или возвращает команды, которые вводятся в командной строке.
Настройка 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 (ложь), где оно не.