Elettracompany.com

Компьютерный справочник
0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Команды в matlab

Основные команды МATLAB — понятие и виды. Классификация и особенности категории «Основные команды МATLAB» 2017, 2018.

Читайте также

Схема моделирования СУ ВГЭУ с использованием магнитопорошковой муфты приведена на рис. 4. Результаты исследования во временной области для синусоидального изменения ветра и для скачкообразного изменения ветра приведены соответственно на рис.5 и рис. 6. Рисунок 4 Схема. [читать подробнее].

Цель работы. Лабораторная работа №5. Контрольные вопросы Лабораторный отчет · Введение в лабораторную работу, цель работы и что было достигнуто в ходе выполнения. · Описание работы вашей программы. Если вы выполнили любое из. [читать подробнее].

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

MatLab (http://www.mathworks.com/) Минимальные требования к системе: процессор Pentium III, 4, Xeon, Pentium M; AMD Athlon, Athlon XP, Athlon MP; 256 Мбайт оперативной памяти (рекомендуется 512 Мбайт); 400 Мбайт дискового пространства (только для самой системы MatLab и ее Help); операционная система Microsoft Windows 2000. [читать подробнее].

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

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

Рассмотрим несколько пакетов более подробно. Для решения задач моделирования программа MatLab дополнена пакетом SIMULINK с визуально-ориентированным программированием. На рисунке 2.8 представлен интерфейс пакета расширения Simulink. Для визуализации моделирования система. [читать подробнее].

При работе в Windows запустить систему MATLAB можно из меню Пуск (стартового меню) этой операционной системы. Альтернативным вариантом запуска MATLAB является двойной щелчок на ярлыке системы MATLAB, расположенном на рабочем столе Windows. Запуск MATLAB6.x отображает на экране окно. [читать подробнее].

Конспект лекций по дисциплине «ОСНОВЫ КОМПЬЮТЕРНОГО МОДЕЛИРОВАНИЯ ЭЛЕКТРИЧЕСКИХ ЦЕПЕЙ» для студентов специальности 2-45 01 03 – Сети телекоммуникаций Минск УДК 519.6 ББК 22.18 0-75 Рекомендовано к изданию кафедрой программного обеспечения сетей. [читать подробнее].

СОДЕРЖАНИЕ ЛИТЕРАТУРА Варианты Задание 3 (11). Решить систему линейных алгебраических уравнений Варианты Задание 2 (10). Вычислить матричное выражение Варианты Задание 1 (8). Ввести и вычислить. [читать подробнее].

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

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

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

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

Окно команд MATLAB

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Читать еще:  Натуральный логарифм matlab

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

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

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

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

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

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

Команды в matlab

В сложных вычислительных задачах (или просто при нежелании программировать на Lua, Cpp и т.д., а пользоваться более высокоуровневыми инструментами разработки), незаменимым оказывается API интерфейс Матлаба реализованный в качестве Active-X COM Automation Server. Для его реализации на языке Си существует специальная библиотека libeng.lib, позволяющая языкам Си, С++, Фортран обмениваться данными и пользоваться всеми ресурсами Матлаба (обычно это обработка видео, автопилоты, ИИ, нейронные сети и т.п.).

Поэтому, в качестве изучения возможностей, попробуем реализовать простейший проект обмена данными и вызова функций Матлаб со стороны Си++ при использовании CodeBlocks и MinGW64.

  • Запуск интерфейса Матлаб

Чтобы адресовать все внешние процессы к единому процессу Матлаб, а не запускать Engine для каждого процесса в отдельности,
запустим «двигатель» матлаба внутренней командой :

В этом случае используемые в Cи++ функции engOpen() будут получать указатель на уже существующий интерфейс, а не открывать новый.

  • Подключение необходимых библиотек и получение указателя интерфейса

Необходимый минимум :

1. Библиотека libeng.lib, отвечающая за управление интерфейсом Matlab (matlabroot)/extern/lib/win64/microsoft
2. Библиотека libmx.lib, отвечающая за конвертацию данных Matlab — Cpp (matlabroot)/extern/lib/win64/microsoft
3. Файл заголовок engine.h, описывающий доступные пользователю функции. (matlabroot)/extern/include/win64/microsoft

Указатель интерфейса получается вызовом функции ep=engOpen(NULL), с единственно допустимым параметром для Win OS — NULL.

  • Передача в Матлаб массива типа Double float,2p

Для того чтобы передать заданный массив размером 2х3 в Матлаб нам необходимо сначала создать некоторый матлаб-совместимый объект mxArray, указатель на который возвращает функция:

*mxCreateDoubleMatrix( число строк, число столбцов, флаг комплексного числа)

После чего, созданный объект заполняется при помощи функции:

memcpy( память назначения (первый элемент mxArray), память источник (массив Cи++), объем копирования памяти в байтах)

Полученный таким образом массив передается в Матлаб по стандартной процедуре:

engPutVariable( указатель процесса Матлаб, имя переменной в процессе Матлаб, передаваемая переменная из Си++)

  • Чтение ранее переданного Double float,2p массива из Матлаб

Чтение происходит аналогично, но в обратной последовательности.

  • Исполнение заданной Си++ функции в среде Матлаб

Функция для исполнения Матлаб задается строкой (массив char) и в данном случае представляет собой создание и заполнение 2х2 массива ячеек (Cell Array) строковыми переменными.

После того, как функция задана строкой, она исполняется командой:

engEvalString(указатель процесса Матлаб, команда матлаб заданная строкой)

  • Чтение массива ячеек из матлаб в цикле



Чтение массива ячеек аналогично чтению массива double за исключением того, что читать нам его приходится поэлементно в цикле, получая строки из ячеек при помощи функции :

строка из ячейки = mxArrayToString( указатель ячейки)

указатель ячейки = mxGetCell( указатель массива, указатель порядкового номера ячейки от 0 до последнего элемента массива)

* В ячейке Cell Array может содержаться не только строка, но и многомерный массив Double, и даже другой Cell Array, в ячейках которого содержаться иные массивы. В данном случае, предполагается использование только простых массивов строк.

int engOutputBuffer(Engine *ep, char *buffer, int buflen); — захват выходного буфера процесса Матлаб

int engSetVisible(Engine *ep, bool newVal); — изменение видимости окна процесса Матлаб

int engClose(Engine *ep); — закрытие указанного процесса Матлаб

Результаты работы программы:

Предложения и критика приветствуются.
Торгуйте алгоритмами.
С уважением, Кот-Бегемот.

Описание некоторых команд MATLAB

Функции окон

window – открывает Window Design and Analysis Tool (wintool).

Окна во временной и частотной областях можно посмотреть с помощью утилиты wvtool (Window Visualization Tool).

Пример: Сравнение окон Хэмминга Ханна и Гаусса

Расчет периодограммы

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

[Pxх, f] = periodogram(x, window, Nfft, Fs, ‘range’)

Единственным обязательным входным параметром является х — вектор отсчетов сигнала. Остальные параметры имеют значения по умолчанию, которые используются, если в качестве параметра указана пустая матрица [] или если некоторое количество параметров (начиная споследнего) опущены при вызове.

Вектор window должен содержать коэффициенты используемого окна. При этом вычисляется модифицированная периодограмма по формуле:

.

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

.

Параметр Nfft задает размерность БПФ, используемого для вычисления периодограммы. По умолчанию этот параметр равен max(256, 2^nextpow2(length(x))). Входной сигнал, умноженный на окно, приводится к размеруNfft (обрезается либо дополняется нулями).

Параметр Fs – частота дискретизации в герцах. Эта величина используется в формулах, а также для оцифровки графика и расчета возвращаемого вектора частот f. Значение по умолчанию равно 2π.

Строковый параметр ‘range’ определяет частотный диапазон для возвращаемого вектора Рхх. Возможны два значения:

— ‘twosided’ – векторы Рхх и f имеют длину Nfft и соответствуют полному диапазону частот 0. Fs. Этот вариант используется по умолчанию, если х содержит комплексные отсчеты;

— ‘onesided’ – векторы Рхх и f имеют длину ceil((Nfft +1)/2) и соответствуют половинному диапазону частот 0. Fs/2. Этот вариант используется по умолчанию в случае вещественного вектора х.

Параметр ‘range’ может быть указан в списке параметров в любом месте после window.

Возвращаемые параметры: Рхх – вектор значений спектральной плотности мощности, f – вектор значений частот, использованных для расчета. Шаг между соседними элементами этого вектора равен Fs/Nfft, первый элемент равен нулю.

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

Пример 1.Используя прямоугольное окно (окно по – умолчанию) рассчитаем периодограмму сигнала с частотой 200 МГц дополненного аддитивным шумом.

Рис. 7. Оценка спектральной плотности мощности с помощью периодограммы

Реализация метода Уэлша

Функция pwelch предназначена для определения спектра мощности случайного сигнала методом Уэлша (методом усреднения модифицированных периодограмм – averaged modified periodogram method). Синтаксис вызова функции следующий:

[Рхх, f] = pwelch(x, Nwin, Noverlар, Nfft, Fs, ‘range’)

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

Параметр Nwin управляет выбором окна, используемого для анализа. Если Nwin – число, используется окно Хэмминга указанной длины, если вектор, то данный вектор используется в качестве окна. По умолчанию используется окно Хэмминга, длина которого выбирается так, чтобы с учетом заданного перекрытия (см. ниже) сигнал оказался разделенным на 8 фрагментов.

Параметр Noverlар задает (в отсчетах) перекрытие соседних фрагментов сигнала, для которых вычисляются периодограммы. По умолчанию перекрытие равно половине длины окна.

Параметр Nfft задает размерность БПФ, используемого для вычисления периодограммы. По умолчанию Nfft = max(256, 2 ^ nextpow2(Nwin)), где Nwin – длина фрагмента сигнала (длина используемого окна).

Параметр Fs указывает частоту дискретизации сигнала. Это значение используется для нормировки рассчитанного спектра мощности, а также при расчете возвращаемого вектора f и для оцифровки графика. По умолчанию значение этого параметра равно 2π.

Строковый параметр ‘range’ определяет частотный диапазон для возвращаемого вектора Рхх. Возможны два значения:

— ‘twosided’ – векторы Рхх и f имеют длину Nfft и соответствуют полному диапазону частот 0. Fs. Этот вариант используется по умолчанию, если х содержит комплексные отсчеты;

— ‘onesided’– векторы Рхх и f имеют длину ceil ((Nfft + D/2) и соответствуют половинному диапазону частот 0. Fs /2. Этот вариант используется по умолчанию в случае вещественного вектора х.

Параметр ‘range’ может быть указан в списке параметров в любом месте после Noverlар.

Возвращаемые параметры: Рхх – вектор значений спектральной плотности мощности, f – вектор значений частот, использованных для расчета. Шаг между соседними элементами этого вектора равен Fs/Nfft, первый элемент равен нулю.

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

Расчет спектра производится следующим образом. Анализируемый сигнал х делится на перекрывающиеся фрагменты согласно параметрам Nwin и Noverlар. Для каждого фрагмента вычисляется модифицированная периодограмма с использованием заданных окна и размерности БПФ. Полученный набор модифицированных периодограмм усредняется, и результат делится на Fs.

Пример 2.Оценить СПМ сигнала состоящего из синусоиды с шумом, дискретизированного с частотой 1000 Гц. Использовать 33-точечное окно с 32-точечным перекрытием. ДлинаFFT по – умолчанию. Отобразить полный диапазон частот СПМ (режим ‘twosided’).

Fs = 1000; t = 0:1/Fs:.3;

x = cos(2*pi*t*200) + randn(size(t)); % 200Hz cosine plus noise

Рис.8. Оценка спектральной плотности мощности методом Уэлша

Авторегрессионные методы

Функции авторегрессионного спектрального анализа

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

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

Свободно распространяемый пакет Scilab (план интерфейс Matlab, основные принципы работы.) Основные команды главного меню Matlab. Элементарные математические выражения.

Как организовать дистанционное обучение во время карантина?

Помогает проект «Инфоурок»

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РФ ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧЕРЕЖДЕНИЕ ВЫСШЕГО ПРОФЕССИНАЛЬНОГО ОБРАЗОВАНИЯ «МОРДОВСКИЙ ГОСУДАРСТВЕННЫЙ ПЕДАГОГИЧЕСКИЙ ИНСТИТУТ ИМЕНИ М.Е. ЕВСЕВЬЕВА»

Факультет физико –математический

Кафедра информатики и вычислительной техники

Реферат на тему:

Свободно распространяемый пакет Scilab (план интерфейс Matlab , основные принципы работы.) Основные команды главного меню Matlab . Элементарные математические выражения.

Выполнила: Краснова М.В

Студентка 2 курса группы МДМ-214

Проверила: кан. Физ-мат. Наук, доцент

Scilab предназначен для выполнения инженерных и научных вычислений. По своим возможностям пакет Scilab сопоставим с известным математическим пакетом Mathcad, а по своему интерфейсу похож на пакет MATLAB. Однако при этом пакет Scilab — свободно распространяемая программа, а значит бесплатная для конечного пользователя. Существуют версии Scilab для различных операционных систем: для ОС Linux, ОС семейства Windows (в том числе и для MS Windows Vista) и даже для MacOS. На момент написания реферата последней была версия пакета 5.5.2.. Последнюю версию пакета всегда можно скачать на официальном сайте программы www.scilab.org. К сожалению очень мало русскоязычной литературы, посвященной Scilab. Вообще отсутствуют книги на русском языке для пользователей, начинающих осваивать пакет. Разработчики рекомендуют два русскоязычых сайта, посвященные пакету Scilab: • сайты: http://scilab.land.ru, http://teacher.dn-ua.com, на которыx можно найти много материала в форматах odt 1 и pdf . • сайт М. И. Павловой http://www.csa.ru/

zebra/my_scilab/index.html, с которого, собственно, и началось знакомство авторов книги с пакетом. Много ссылок на литературу на разных языках можно найти на странице официального сайта Scilab http://www.scilab.org/publications/index_ publications.php?page=books.html. Входной язык системы Scilab позволяет не только использовать встроенные команды, но и разрабатывать собственные визуальные приложения. Далее на практических примерах рассмотрены основные принципы работы в Scilab. В данном реферате рассматривается следующие вопросы: 1) Основные команды главного меню Scilab. 2) Основные принципы работы. 3) Элементарные математические выражения.

Основные команды главного меню Scilab

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

Работа с файлами. Пункт меню File предназначен для работы с файлами. Рассмотрим назначе- ние представленных в нем команд1 : • New Scilab — открывает новое окно Scilab, фактически пакет запускается повторно; • Exec. . . — запуск на выполнение созданной ранее Scilab-программы (файлы с расширением sce или sci ); • Open — открывает окно для загрузки созданного ранее файла, рисунка или модели; • Load — открывает окно для загрузки файлов, информация в которых хра- нится в виде машинных кодов; при их открытии в память компьютера за- гружаются определенные ранее переменные и функции; • Save — сохранение всех определенных в данной сессии переменных и функ- ций в виде файла с расширением sav или bin ; • Change Directory — смена текущего каталога, выводит окно настройки пу- тей файловой системы; • Get Change Directory — выводит в командную строку имя текущего ката- лога; • Print Setup. . . — выводит окно настройки параметров печати; • Print — печать текущей сессии; • Exit — выход из системы Scilab.

Редактирование команд текущей сессии Пункт меню Edit содержит следующие команды: • Select All — выделение всех команд текущей сессии; • Copy — копирование выделенного объекта в буфер; • Paste — вставка объекта из буфера; • Empty Clipboard — очистка буфера обмена; • History — группа команд, предназначенных для редактирования командной строки.

Настройка среды. Команды настройки среды пакета представлены в меню Preferences: • Language — предлагает выбрать из списка язык интерфейса (английский, французский); • Colors — позволяет установить цвет шрифта (Text), цвет фона (Background) или цвета, принятые по умолчанию (Default System Colors); • Toolbar (F3) — выводит или удаляет панель инструментов; • Files Association — предлагает установить типы поддерживаемых файлов; • Choose Font — выполняет настройки шрифта (гарнитура, начертание, раз- мер); • Clear History — очищает рабочее пространство; • Clear Command Window (F2) — очищает рабочее окно; • Consol (F12) — активизирует консольное приложение

Справочная система. Команда главного меню открывает доступ к справочной системе Scilab. В справочной системе информацию можно искать, воспользовавшись содержанием, в списке, упорядоченном по алфавиту, по ключевому слову или фразе. С помощью команды Scilab Demos можно осуществить просмотр демонстрационных примеров. 1.3.5 Редактирование и отладка файлов-сценариев Файл-сценарий — это список команд Scilab, сохраненный на диске. Для подготовки, редактирования и отладки файлов-сценариев служит специальный редактор SciPad, который можно вызвать, выполнив команду главного меню Editor. В результате работы этой команды будет создан новый файл-сценарий. По умолчанию он имеет имя Untitled1.sce . Окно редактора файлов-сценариев выглядит стандартно, т.е. имеет заголовок, меню, панели инструментов, строку состояния. Ввод текста в окно редактора файла-сценария осуществляется по правилам, принятым для команд Scilab. Рис. 1.4 содержит пример ввода команд для решения квадратного уравнения 3x 2 + 5x + 4 = 0. Нетрудно заметить, что точка с запятой «;» ставится после тех команд, которые не требуют вывода значений. Для сохранения введенной информации необходимо выполнить команду File – Save из меню редактора. Если информация сохраняется впервые, то появится окно Save file As. . . . Ввод имени в поле File Name и щелчок по кнопке Sav

Выполнение файла-сценария Scilab (Рис.1.1)

приведет к сохранению информации, находящейся в окне редактора. Файлы-сценарии сохраняют с расширением .sce . Открывает ранее созданный файл

команда главного меню File – Open.

Выполнить операторы файла-сценария можно несколькими способами:

из меню редактора SciPad вызвать команду Execute – Load into Scilab;

из главного меню Scilab вызвать команду Exec и указать имя файла-сценария.

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

Отметим, что редактор SciPad имеет возможность работы с множеством окон

(пункт меню Windows), обладает принятыми для текстовых редакторов приема-ми редактирования (пункт меню Edit) и поиска (пункт меню Search). Кроме то-го, можно выполнить настройку среды редактора SciPad (пункт меню Options),

вызвать справочную информацию (пункт меню Help) и осуществить отладку

программы, набранной в редакторе (пункт меню Debug ).

Выйти из режима редактирования можно, просто закрыв окно SciPad или

Ссылка на основную публикацию
Adblock
detector