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

DOI: 10.22184/2070-8963.2019.85.8.68.70

sitemap
Наш сайт использует cookies. Продолжая просмотр, вы даёте согласие на обработку персональных данных и соглашаетесь с нашей Политикой Конфиденциальности
Согласен
Поиск:

Вход
Архив журнала
Журналы
Медиаданные
Редакционная политика
Реклама
Авторам
Контакты
TS_pub
technospheramag
technospheramag
ТЕХНОСФЕРА_РИЦ
© 2001-2025
РИЦ Техносфера
Все права защищены
Тел. +7 (495) 234-0110
Оферта

Яндекс.Метрика
R&W
 
 
Вход:

Ваш e-mail:
Пароль:
 
Регистрация
Забыли пароль?
Книги по связи
Листвин В. Н., Трещиков В. Н.
Другие серии книг:
Мир связи
Библиотека Института стратегий развития
Мир квантовых технологий
Мир математики
Мир физики и техники
Мир биологии и медицины
Мир химии
Мир наук о Земле
Мир материалов и технологий
Мир электроники
Мир программирования
Мир строительства
Мир цифровой обработки
Мир экономики
Мир дизайна
Мир увлечений
Мир робототехники и мехатроники
Для кофейников
Мир радиоэлектроники
Библиотечка «КВАНТ»
Умный дом
Мировые бренды
Вне серий
Библиотека климатехника
Мир транспорта
Мир фотоники
Мир станкостроения
Мир метрологии
Мир энергетики
Книги, изданные при поддержке РФФИ
Выпуск #8/2019
Т.Семенова, В.Шакин
ИСПОЛЬЗОВАНИЕ МАТРИЧНЫХ ОПЕРАЦИЙ ПАКЕТА Scilab ПРИ РЕШЕНИИ ЗАДАЧ БАЗОВЫХ ДИСЦИПЛИН
Просмотры: 1572
В статье рассматривается использование матричных операций средствами математического пакета Scilab для решения задач базовых дисциплин при подготовке бакалавров, в частности, способы создания матриц, основные действия с матрицами и их элементами, динамическое изменение размера матриц, а также доступ к элементам матриц при стандартном и векторном индексировании.

DOI: 10.22184/2070-8963.2019.85.8.68.70
Т.Семенова, к.т.н., доцент МТУСИ / sematata@yandex.ru,
В.Шакин, к.т.н., доцент МТУСИ
УДК 378.14:004.9, DOI: 10.22184/2070-8963.2019.85.8.68.70

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

Среди множества современных математических пакетов все большую популярность завоевывает пакет Scilab [1], широко используемый в учебном процессе при изучении базовых дисциплин для бакалавров ([2–7]). Scilab отличает универсальность, которая заключается в сочетании возможности проведения математических расчетов любой сложности с использованием множества встроенных библиотечных функций, реализующих как элементарные функции, так и функции, реализующие численные методы; наличие мощной системы программирования; графические средства; возможность конвертирования в него программ и файлов данных, созданных в других математических пакетах (в частности из Matlab [8], наиболее полным аналогом которого он практически и является) и системах программирования; наличие средств для проведения моделирования и многое другое. Немаловажно для использования Scilab в учебном процессе и то, что он является свободно распространяемым пакетом, имеет русифицированную документацию и постоянно развивается, предлагая пользователям всё новые версии и новые возможности.

Математический пакет Scilab создан как программная система, ориентированная и оптимизированная на работу с матрицами. Именно поэтому без понимания принципов создания, хранения и обработки матриц, а также изучения и использования всевозможных встроенных матричных функций и операций [1] использование базовых средств Scilab неполноценно и неэффективно.

Все типы данных, применяемые в пакете Scilab, являются матрицами. Матрицы могут быть пустыми, скалярными, векторными, со­стоящими из одной строки или одного столбца и называемыми соответственно вектором-строкой или вектором-столбцом; квадратными и прямоугольными. Даже каждая числовая константа и значение переменной хранятся в матрицах размером 1 × 1. В то же время элементы матриц могут быть объектами практически любых типов данных, допустимых в системе Scilab: числами, символами, логическими значениями, полиномами, рациональными дробями и др. Для создания новых векторов и матриц в Scilab реализовано несколько способов [1]:
  • с помощью операции "квадратные скобки" (операция конструирования – []);
  • с помощью соответствующих встроенных функций;
  • путем объединения уже существующих матриц;
  • с помощью операции "двоеточие" (:).

Созданные матрицы любого допустимого типа размещаются в Рабочей области Scilab по столбцам, а информация об активных объектах текущей сессии отображается в окне Обозревателя переменных (рис.1). 

Для изменения значений элементов созданных матриц можно использовать "Обозреватель переменных": установив курсор на имя матрицы в этом окне (рис.2), выполнить команду контекстного меню "Изменить" и в появившемся окне "Редактора переменных", где отображаются значения элементов матрицы, произвести необходимые изменения.

В процессе выполнения про­граммного кода можно с помощью специальной функции динамически изменить размер и конфигурацию матриц, например, путем добавления элемента увеличить столбец, а с использованием функции resize_matrix(А,2,2) изменить размерность матрицы А(3 × 3) на А(2 × 2).

В Scilab алгебраические операции над векторами и матрицами выполняются по алгебраическим правилам, а поэлементные операции – для каждого соответствующего элемента вектора или матрицы. При поэлементных операциях точка ставится перед всеми арифметическими операциями (рис.3).

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

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

Векторное (линейное) индексирование матриц – это такое индексирование, которое осуществляется одним индексом, а матрица при этом рассматривается как суммарный вектор, в котором все ее элементы вытянуты в один длинный вектор-столбец, где каждый следующий столбец индексируемой матрицы следует за предыдущим столбцом (рис.5).

Индексирование матриц, являясь средством доступа к элементам матриц, позволяет извлекать из матриц подмножества их элементов, присваивать извлеченное из матриц подмножество новым матрицам или модифицировать подмножество элементов существующих матриц. В Scilab существует еще один способ индексирования матриц – логическое индексирование, основанное на операциях сравнения, поиска, принятия решений и логических операциях [1]. Выбор индексации при проведении расчетов следует производить исходя из особенностей решения конкретной задачи.

Матричные операции активно используются при решении алгебраических задач, задач вычислительной математики [7], задач теории электрических цепей [9], задач общей теории связи матрицы для описания объектов, над которыми необходимо производить различные операции. Представление однородных данных в виде матриц в сочетании с использованием матричных операций позволяет сделать программный код более эффективным и кратким и легко читаемым без использования циклов и операций сравнения.

ЛИТЕРАТУРА
Документация Scilab. Режим доступа: https://help.scilab.org/docs/6.0.1/ru_RU/index.html
Семенова Т.И., Шакин В.Н. Математический пакет Scilab: учебное пособие для бакалавров. – М.: ЭБС МТУСИ, 2017. 127 c. Режим доступа http://www.mtuci.ru/structure/library/catalogue/download.php?book_id=1834
Семенова Т.И., Юскова И.Б., Юсков И.О. Проведение расчетов в среде пакета Scilab: Практикум. – М.: ЭБС МТУСИ, 2018. 35 c. Режим доступа: http://www.mtuci.ru/structure/library/catalogue/download.php?book_id=1963
Алексеев Е.Р., Чеснокова О.В., Рудченко Е.А. Scilab: Решение инженерных и математических задач. – М.: ALT Linux; БИНОМ. Лаборатория знаний, 2008. 269 c.
Ерин С.В. Scilab – примеры и задачи: Практическое пособие. – M.: Лаборатория "Знания будущего", 2017. 154 c.
Семенова Т.И., Загвоздкина А.В., Загвоздкин В.А. Графическое представление результатов расчетов в Scilab // Материалы II Международной научно-практической конференции. Донецк, Донецкая народная республика, 2018. С. 4–10.
Семенова Т.И., Загвоздкина А.В., Загвоздкин В.А. Изучение численных методов с использованием средств пакета Scilab // Экономика и качество систем связи. 2017. № 4 (6). С. 60–69.
Шакин В.Н., Семенова Т.И. Основы работы с математическим пакетом Matlab: Учебное пособие. – МТУСИ, 2016. 133 c.
Смирнов Н.И., Фриск В.В. Теория электрических цепей: Учебник для вузов. – М.: Горячая линия – Телеком, 2019. 286 c.
 
 Отзывы читателей
Разработка: студия Green Art