авторефераты диссертаций БЕСПЛАТНАЯ БИБЛИОТЕКА РОССИИ

КОНФЕРЕНЦИИ, КНИГИ, ПОСОБИЯ, НАУЧНЫЕ ИЗДАНИЯ

<< ГЛАВНАЯ
АГРОИНЖЕНЕРИЯ
АСТРОНОМИЯ
БЕЗОПАСНОСТЬ
БИОЛОГИЯ
ЗЕМЛЯ
ИНФОРМАТИКА
ИСКУССТВОВЕДЕНИЕ
ИСТОРИЯ
КУЛЬТУРОЛОГИЯ
МАШИНОСТРОЕНИЕ
МЕДИЦИНА
МЕТАЛЛУРГИЯ
МЕХАНИКА
ПЕДАГОГИКА
ПОЛИТИКА
ПРИБОРОСТРОЕНИЕ
ПРОДОВОЛЬСТВИЕ
ПСИХОЛОГИЯ
РАДИОТЕХНИКА
СЕЛЬСКОЕ ХОЗЯЙСТВО
СОЦИОЛОГИЯ
СТРОИТЕЛЬСТВО
ТЕХНИЧЕСКИЕ НАУКИ
ТРАНСПОРТ
ФАРМАЦЕВТИКА
ФИЗИКА
ФИЗИОЛОГИЯ
ФИЛОЛОГИЯ
ФИЛОСОФИЯ
ХИМИЯ
ЭКОНОМИКА
ЭЛЕКТРОТЕХНИКА
ЭНЕРГЕТИКА
ЮРИСПРУДЕНЦИЯ
ЯЗЫКОЗНАНИЕ
РАЗНОЕ
КОНТАКТЫ


Pages:   || 2 | 3 |
-- [ Страница 1 ] --

1

Поволжский государственный университет

телекоммуникаций и информатики

Акчурин Э.А.

Система компьютерной математики Scilab

Учебное пособие для студентов направления

«Информатика и вычислительная техника»

Самара

2011

2

Факультет информационных систем и технологий

Кафедра «Информатика и вычислительная техника»

Автор - д.т.н., профессор Акчурин Э.А.

Другие материалы по дисциплине Вы найдете на сайте www.ivt.psati.ru 3 1. Математическое программирование......................................................................................................................................... 7 1.1. Литература........................................................................................................................................................................... 1.2. Обзор.................................................................................................................................................................................... 1.3. MathCAD............................................................................................................................................................................... 1.4. Maple и Mathematica............................................................................................................................................................ 1.4.1. Maple.............................................................................................................................................................................. 1.4.2. Mathematica................................................................................................................................................................... 1.5. MATLAB................................................................................................................................................................................ 1.6. Scilab..................................................................................................................................................................................... 2. Scilab, основы.............................................................................................................................................................................. 2.1. Введение.............................................................................................................................................................................. 2.2. Основные отличия Scilab от MATLAB................................................................................................................................ 2.3. Основные свойства Scilab................................................................................................................................................. 2.4. Состав системы................................................................................................................................................................. 2.5. Демосы Scilab..................................................................................................................................................................... 2.6. Свойства системы.............................................................................................................................................................. 2.7. Окна Scilab.......................................................................................................................................................................... 2.7.1. Scilab, командное окно............................................................................................................................................... 2.7.2. Scilab, справка............................................................................................................................................................ 2.7.3. Scilab, редактор/отладчик SciPad.............................................................................................................................. 2.7.4. Figure (Графическое окно)......................................................................................................................................... 2.7.5. Scilab, модель Scicos................................................................................................................................................. 3. Scilab, математика..................................................................................................................................................................... 3.1. Scilab, выражения.............................................................................................................................................................. 3.1.1. Scilab, системые константы и переменные.............................................................................................................. 3.1.2. Scilab, переменные..................................................................................................................................................... 3.1.3. Scilab, числа................................................................................................................................................................ 3.1.4. Scilab, списки.............................................................................................................................................................. 3.1.5. Scilab, операторы....................................................................................................................................................... 3.2. Scilab, матрицы.................................................................................................................................................................. 3.2.1. Scilab, функции создания матриц.............................................................................................................................. 3.2.2. Операции с матрицами.............................................................................................................................................. 3.2.3. Суммирования и произведения в матрице............................................................................................................... 3.3. Scilab, функции................................................................................................................................................................... 3.4. Элементарная математика............................................................................................................................................... 3.4.1. Тригонометрия............................................................................................................................................................ 3.4.2. Степени, корни, логарифмы...................................................................................................................................... 3.4.3. Комплексные числа.................................................................................................................................................... 3.4.4. Округления и остатки................................................................................................................................................. 3.4.5. Дискретная математика............................................................................................................................................. 3.4.6. Специальная математика.......................................................................................................................................... 3.5. Программирование............................................................................................................................................................ 3.6. Массивы и матрицы........................................................................................................................................................... 3.6.1. Основная информация............................................................................................................................................... 3.6.2. Преобразования матриц............................................................................................................................................ 3.6.3. Тестовые матрицы..................................................................................................................................................... 3.6.4. Треугольные матрицы................................................................................................................................................ 3.6.5. Операции и манипуляции.......................................................................................................................................... 3.7. Линейная алгебра.............................................................................................................................................................. 3.7.1. Матричный анализ..................................................................................................................................................... 3.7.2. Линейные уравнения.



................................................................................................................................................. 3.7.3. Собственные и особые значения.............................................................................................................................. 3.7.4. Матричные логарифмы и экспоненты...................................................................................................................... 3.7.5. Факторизация.............................................................................................................................................................. 3.8. Полиномы........................................................................................................................................................................... 3.9. Интерполяция и вычислительная геометрия.................................................................................................................. 3.10. Нелинейные численные методы.................................................................................................................................... 3.10.1. Обыкновенные дифференциальные управнения................................................................................................. 3.10.2. Дифференциальные уравнения с задержками...................................................................................................... 3.11. Разреженные матрицы.................................................................................................................................................... 3.12. Матрицы и линейная алгебра......................................................................................................................................... 4. Scilab, программирование........................................................................................................................................................ 4.1. Preferences (Предпочтения).............................................................................................................................................. 4.2. Scilab – суперкалькулятор................................................................................................................................................. 4.3. Переменные....................................................................................................................................................................... 4.4. Ключевые слова................................................................................................................................................................. 4.5. Типы данных в Scilab......................................................................................................................................................... 4.5.1. Специальные константы............................................................................................................................................ 4.5.2. Списки......................................................................................................................................................................... 4.5.3. Матрицы из строк символов...................................................................................................................................... 4.5.4. Полиномы и матрицы полиномов............................................................................................................................. 4.6. Выражения в Scilab............................................................................................................................................................ 4.7. Операторы для вычислений............................................................................................................................................. 4.7.1. Арифметические операторы..................................................................................................................................... 4.7.2. Операторы отношения............................................................................................................................................... 4.7.3. Логические операторы и функции............................................................................................................................. 4.7.4. Приоритеты................................................................................................................................................................. 4.8. Инструкции управления программой............................................................................................................................... 4.8.1. Условные инструкции................................................................................................................................................. 4.8.2. Инструкции циклов..................................................................................................................................................... 4.8.3. Инструкции управления ошибками........................................................................................................................... 4.8.4. Инструкция завершения программы......................................................................................................................... 4.9. Символы ссылок................................................................................................................................................................ 4.10. Структуры данных............................................................................................................................................................ 4.11. Типы данных.................................................................................................................................................................... 4.11.1. Численные типы....................................................................................................................................................... 4.11.2. Логические типы....................................................................................................................................................... 4.11.3. Символы и строки..................................................................................................................................................... 4.11.4. Даты и время............................................................................................................................................................ 4.11.5. Структуры.................................................................................................................................................................. 4.11.6. Массивы ячеек.......................................................................................................................................................... 4.12. Программирование sce-файлов..................................................................................................................................... 4.12.1. Работа с sce-файлами............................................................................................................................................. 4.13. Редактор/Отладчик (Editor/Debugger)............................................................................................................................ 4.13.1. Пункт File (Файл)....................................................................................................................................................... 4.13.2. Пункт Edit (Правка)................................................................................................................................................... 4.13.3. Пункт Search (Поиск)................................................................................................................................................ 4.13.4. Пункт Execute (Исполнить)...................................................................................................................................... 4.13.5. Пункт Debug (Отладка)............................................................................................................................................. 4.13.6. Пункт Scheme (Схема)............................................................................................................................................. 4.13.7. Пункт Options (Опции).............................................................................................................................................. 4.13.8. Пункт Windows (Окна).............................................................................................................................................. 4.13.9. Пункт Help (Справка)................................................................................................................................................ 4.13.10. Режим редактирования и отладки......................................................................................................................... 4.14. Ввод и вывод данных...................................................................................................................................................... 4.14.1. Импорт и экспорт данных........................................................................................................................................ 4.14.2. Диалоговый ввод...................................................................................................................................................... 4.14.3. Вывод данных........................................................................................................................................................... 5. Scilab, основы графики............................................................................................................................................................. 5.1. Анатомия графики.............................................................................................................................................................. 5.2. Глобальные свойства......................................................................................................................................

.................. 5.3. Графическая библиотека.................................................................................................................................................. 5.4. Инструментарий ГИП......................................................................................................................................................... 5.5. Графические объекты Scilab............................................................................................................................................. 5.5.1. Root.............................................................................................................................................................................. 5.5.2. Figure........................................................................................................................................................................... 5.5.3. Axes............................................................................................................................................................................. 5.5.4. Compound.................................................................................................................................................................... 5.5.5. Axis............................................................................................................................................................................... 5.5.6. Polyline......................................................................................................................................................................... 5.5.7. Arc................................................................................................................................................................................ 5.5.8. Rectangle..................................................................................................................................................................... 5.5.9. Grayplot........................................................................................................................................................................ 5.5.10. Surface....................................................................................................................................................................... 5.5.11. Champ........................................................................................................................................................................ 5.5.12. Segs........................................................................................................................................................................... 5.5.13. Text............................................................................................................................................................................ 5.5.14. Label........................................................................................................................................................................... 5.5.15. Legend....................................................................................................................................................................... 5.6. Функции рисования высокого уровня............................................................................................................................... 5.7. Графика 2D......................................................................................................................................................................... 5.7.1. Функция plot................................................................................................................................................................. 5.7.2. Функция subplot........................................................................................................................................................... 5.7.3. Функция plot2d............................................................................................................................................................. 5.7.4. Функция plot2d2........................................................................................................................................................... 5.7.5. Функция plot2d3........................................................................................................................................................... 5.7.6. Функция plot2d4........................................................................................................................................................... 5.7.7. Функция bar................................................................................................................................................................. 5.7.8. Функция pie (круговая диаграмма)............................................................................................................................ 6. Графика 3D................................................................................................................................................................................ 6.1.1. Функция param3d........................................................................................................................................................ 6.1.2. Функция param3d1...................................................................................................................................................... 6.2. Графика 3D......................................................................................................................................................................... 6.2.1. Функция plot3d............................................................................................................................................................. 6.2.2. Функция plot3d1........................................................................................................................................................... 6.2.3. Функция plot3d2........................................................................................................................................................... 6.2.4. Функция plot3d3........................................................................................................................................................... 6.2.5. Функция contour.......................................................................................................................................................... 6.2.6. Функция hist3d............................................................................................................................................................. 6.2.7. Функция geom3d......................................................................................................................................................... 6.2.8. Функция mesh (сетка)................................................................................................................................................. 6.2.9. Функции surf (сетка с окраской поверхности)........................................................................................................... 7. Scilab, графический интерфейс пользователя....................................................................................................................... 7.1. TCL/Tk interface.................................................................................................................................................................. 7.1.1. Объект PushButton..................................................................................................................................................... 7.1.2. Объект Checkbox........................................................................................................................................................ 7.1.3. Объект RadioButton.................................................................................................................................................... 7.1.4. Объект Edit.................................................................................................................................................................. 7.1.5. Объект Text................................................................................................................................................................. 7.1.6. Объект Slider............................................................................................................................................................... 7.1.7. Объект ListBox............................................................................................................................................................ 7.1.8. Объект PopUpMenu.................................................................................................................................................... 7.1.9. Объект Frame.............................................................................................................................................................. 7.2. GUI and Dialogs.................................................................................................................................................................. 7.2.1. Функции addmenu, delmenu....................................................................................................................................... 7.2.2. Функция browsevar.....................................................................................................

................................................. 7.2.3. Функция config............................................................................................................................................................. 7.2.4. Функция buttondialog................................................................................................................................................... 7.2.5. Функция demoplay....................................................................................................................................................... 7.2.6. Функция editvar............................................................................................................................................................ 7.2.7. Функция getvalue......................................................................................................................................................... 7.2.8. Функция halt................................................................................................................................................................. 7.2.9. Функция havewindow................................................................................................................................................... 7.2.10. Функция progressionbar............................................................................................................................................ 7.2.11. Функция seteventhandler........................................................................................................................................... 7.2.12. Функция setmenu....................................................................................................................................................... 7.2.13. Функция unsetmenu................................................................................................................................................... 7.2.14. Функция waitbar......................................................................................................................................................... 7.2.15. Whatis........................................................................................................................................................................ 7.2.16. Функция winclose....................................................................................................................................................... 7.2.17. Функция winlist........................................................................................................................................................... 7.2.18. Функция x_choices.................................................................................................................................................... 7.2.19. Функция x_choose..................................................................................................................................................... 7.2.20. Функция x_dialog....................................................................................................................................................... 7.2.21. Функция x_matrix....................................................................................................................................................... 7.2.22. Функция x_mdialog.................................................................................................................................................... 7.2.23. Функция x_message.................................................................................................................................................. 7.3. Функция x_message_modeless.......................................................................................................................................... 8. SCILAB, Scicos........................................................................................................................................................................... 8.1. Введение............................................................................................................................................................................ 8.2. Базовые блоки в Scicos..................................................................................................................................................... 8.3. Библиотека блоков Scicos................................................................................................................................................. 8.4. Редактор Scicos.................................................................................................................................................................. 8.5. Sources – источники........................................................................................................................................................... 8.6. Sinks – регистраторы....................................................................................................................................................... 8.7. Linear – линейные............................................................................................................................................................ 8.8. Non_Linear – нелинейные................................................................................................................................................ 8.9. Matrix – матрицы.............................................................................................................................................................. 8.10. Integer – целочисленные............................................................................................................................................... 8.11. Events – события............................................................................................................................................................ 8.12. Threshold – пороги.......................................................................................................................................................... 8.13. Other – другие................................................................................................................................................................. 8.14. Branching – ветвления................................................................................................................................................... 8.15. Electrical – электротехника............................................................................................................................................ 8.16. Свойства блоков Scicos................................................................................................................................................. 9. Scilab, внешние интерфейсы.................................................................................................................................................. 9.1. Импорт и экспорт данных................................................................................................................................................ 9.2. Преобразования MATLAB в Scilab.................................................................................................................................. 9.3. Вызов из Scilab объектов Java........................................................................................................................................ 9.4. Последовательный порт ввода/вывода......................................................................................................................... 1. Математическое программирование 1.1. Литература 1. Дьяконов В. MATLAB 6/6.1/6.5+Simulink 4/5. Основы применения. М.: СОЛОН-Пресс, 2004. 768 с.

2. Дьяконов В. Simulink 4. Специальный справочник. СПб: Питер, 2002. 528 с.

3. Дьяконов В., Круглов В. Математические пакеты расширения MATLAB. Специальный справочник. СПб: Питер, 2001.

480 с.

4. Дьяконов В., Абраменкова И. MATLAB. Обработка сигналов и изображений. Специальный справочник. СПб: Питер, 2002. 608 с.

5. Дьяконов В., Круглов В. MATLAB. Анализ, идентификация и моделирование систем. Специальный справочник. СПб:

Питер, 2002. 448 с.

6. Гультяев А. Визуальное моделирование в среде MATLAB: учебный курс. СПб: Питер. 2000. 432 с.

7. Солонина А. и др. Основы цифровой обработки сигналов: курс лекций. СПб: БХВ-Петербург, 2003. 608 с.

8. Сергиенко А. Цифровая обработка сигналов. СПб: Питер, 2003. 608 с.

9. Акчурин Э. "Программирование в системе MATLAB".Часть 1. Использование MATLAB и Simulink. МУ к ЛР. Самара:

ПГАТИ, 2004, 51 с.

10. Акчурин Э. "Программирование в системе MATLAB".Часть 2. Использование MATLAB и Stateflow. МУ к ЛР. Самара:

ПГАТИ, 2004, 27 с.

11. Акчурин Э. "Программирование в системе MATLAB".Часть 3. Разработка программ для ЦСП. МУ к ЛР. Самара:

ПГАТИ, 2004, 31 с.

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

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

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

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

Для визуализации результата желательны графики в разных форматах (декартовы, полярные, объемные, контурные и др.).

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

Хорошо иметь средства для моделирования процессов.

Подобными свойствами обладают системы компьютерной математики (СКМ):

MathCAD, Maple, Mathematica, MATLAB.

Scilab.

Наибольшее распространение в России имеют:

MathCAD для математических расчетов.

MATLAB для моделирования. Содержит много встроенных пакетов расширения для работы в конкретных предметных областях, а также пакет имитационного моделирования Simulink.

Scilab для моделирования. Это бесплатный клон MATLAB. Ядра обеих СКМ практически одинаковы. Scilab содержит меньше, чем MATLAB, встроенных пакетов расширения для работы в конкретных предметных областях. Встроенный в Scilab пакет имитационного моделирования Scicos уступает аналогичному пакету Simulink в MATLAB.

1.3. MathCAD Создана в 1980-х годах в университете Стэнфорда (США). Современные версии для ПК готовит фирма MathSoft Application. Web страница в Интернете - www.mathsoft.com.

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

Ориентирована на пользователей, разрабатывающих прикладные программы для конкретных предметных областей.

MathCAD = Mathematics Computer Assistance Design (Математическое конструирование с помощью компьютеров).

Достоинства:

Математический интерфейс. Программирование на языке математики. Для непрограммиста лучше формулы в привычном математическом начертании.

Есть мощная поддержка двумерной и трехмерной графики.

Возможен импорт графики из других программ.

Большое количество встроенных математических функций (сотни). Практически все основные математические формулы.

Встроенные справочники по предметным областям.

Возможна анимация.

Символьная математика. Основные аналитические преобразования (компьютерная алгебра).

Есть версии, в которых интерфейс на русском языке.

Недостатки:

Это интерпретатор.

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

1.4. Maple и Mathematica 1.4.1. Maple СКМ Maple создана в 80-х годах в университете Waterloo (Канада) сначала для больших компьютеров. Современные версии для ПК готовит фирма Waterloo Maple.

Эта СКМ ориентирована на профессиональных математиков, позволяет выполнять математические расчеты любой сложности. Однако ее основное ядро эффективно могут использовать все.

Достоинства:

Математический интерфейс. Программирование на языке математики. Для непрограммиста лучше формулы в привычном математическом начертании.

Есть мощная поддержка двумерной и трехмерной графики.

Огромное количество встроенных математических функций (2700). Практически все известные математические формулы.

Символьная математика. Основные аналитические преобразования (компьютерная алгебра).

Недостатки:

Это интерпретатор.

Возможности программирования ограничены.

Поддержка в основном символьной математики.

1.4.2. Mathematica СКМ Mathematica - конкурент системы Maple. Их возможности близки друг к другу. Современные версии готовит фирма Wolfram Research Incorporated.Название по фамилии главы фирмы, лондонского вундеркинда – Wolfram.

1.5. MATLAB Первая версия СКМ MATLAB создана в конце 1970-х годов в Стэнфордском университете (США) для преподавания теории матриц. Современные версии готовит фирма Math Works. Web страница в Интернете – www.mathworks.com.

MATLAB = Matrix Laboratory (Лаборатория Матриц).

Достоинства:

Матричная математика обеспечивает очень высокую скорость математических действий. Примерно в 10 раз выше, чем в СКМ MathCAD.

Язык программирования близок к широко распространенным языкам Делфи и Бейсик.

Есть поддержка двумерной и трехмерной графики.

Большое количество встроенных математических функций. Несколько тысяч для различных предметных областей. Есть возможность создания собственных функций в виде М-файлов.

Есть средства разработки графического пользовательского интерфейса.

Есть встроенная система имитационного моделирования блочно организованных систем Simulink.

Недостатки:

Программирование не на языке математики.

Нет достаточной поддержки работы с радиотехническими компонентами.

СКМ содержит четыре группы компонент:

Продукты MATLAB. Это ядро системы и наборы универсальных функций.

Toolboxes – Инструментальные пакеты для MATLAB (универсальные и специализированные). Каждый набор содержит встроенные функции для определенной предметной области.

Продукты Simulink. Это сама система имитационного моделирования блочно организованных систем Simulink и поддерживающие ее средства.

Blocksets – Наборы блоков для имитационной модели Simulink. Каждый набор содержит блоки для определенной предметной области.

1.6. Scilab Пакет разработан Scilab Group INRIA-Rocquencourt Metalau Project. Свободно распространяемую версию пакета вместе с полной документацией на английском языке в формате pdf можно получить по адресу http://www.scilab.org/.

Современные версии готовит Consrtium Scilab (INRIA, ENPC). Web страница в Интернете – www.scilab.org.

Scilab = Science Laboratory (Научная Лаборатория).

Основные характеристики пакета Scilab Распространение: Scilab свободно распространяется вместе с исходными кодами. Использование, копирование, изменение, распространение - свободные. Пакет защищен специальной лицензией, основное отличие которой от стандартной GNU лицензии, по утверждению авторов, определяется стремлением избежать появления клонов.

Платформы: UNIX (включая Linux), Windows. Исходные тексты, рабочая версия для Windows и документация доступны в сети.

Имеется интерфейс и система помощи.

Имеются алгоритмы базовой математики.

Имеется возможность программирования.

Имеется возможность работать не только в численном виде, но и в формульном варианте.

Имеется возможность работы с графикой.

Интерфейс с прикладными программами: имеется возможность использовать откомпилированные функции языков Си и Фортран.

2. Scilab, основы 2.1. Введение Scilab - это система компьютерной математики (СКМ), использующая одноименный язык программирования высокого уровня. Пакет разработан Scilab Group INRIA-Rocquencourt Metalau Project.

Пакет Scilab включает в себя набор инструментов и интерактивную документацию. В первом приближении пакет является некоммерческим аналогом пакета MATLAB.

Стабильная версия СКМ – 4.1.2. Предлагаемая усовершенствованная версия 5.0 имеет в 4 раза больший объем и содержит редко употребляемые пакеты расширения. Ниже описана версия 4.1.2.

2.2. Основные отличия Scilab от MATLAB Раздел Scilab MATLAB Функция Это переменная. В одном.sci файле Это.m файлы.

можно определить несколько функций.

Комментарий Начинается с //. Начинается с %.

Переменные Определены защищенные от записи переменные. Их имена начинаются с префикса %.

Строки Строка – это матрица размером 1х1, имеет длину, равную числу символов в строке.

Логические переменные %T – Истина 1 – Истина %F - Ложь 0 - Ложь Полиномы Определяются функцией poly. Это вектор коэффициентов.

Пустые матрицы Команда [ ]+1 возвращает 1. Команда [ ]+1 возвращает [ ].

Графика Функции plot и mesh (plot3d) совпадают. Функции plot и mesh (plot3d) совпадают.

Остальные свои. Остальные свои.

Имитационное Scicos Simulink моделирование Несовместим с Simulink Несовместим с Scicos Словарь Много терминов одинаковые. Много терминов одинаковые.

Часть с немного измененным Часть с немного измененным синтаксисом.

синтаксисом. Есть и свои.

Есть и свои.

2.3. Основные свойства Scilab Для освоения пакета Scilab и использования данной документации знание MATLAB не является обязательным.

Сведения о разработчике:

Свободно распространяемую версию пакета вместе с полной документацией на английском языке в формате pdf можно получить по адресу http://www.Scilab.org/.

Основные характеристики пакета Scilab:

Распространение: Scilab свободно распространяется вместе с исходными кодами. Использование, копирование, изменение, распространение - свободные. Пакет защищен специальной лицензией, основное отличие которой от стандартной GNU лицензии, по утверждению авторов, определяется стремлением избежать появления клонов.

Платформы: UNIX (включая Linux), Windows.

Интерфейс и система помощи.

Алгоритмы базовой математики.

Программирование.

Имеется возможность работать не только в численном виде, но и в формульном варианте.

Работа с графикой.

Интерфейс с прикладными программами на языках С и Фортран.

Scilab состоит из 3-х частей:

Интерпретатор, библиотеки функций (Scilab-процедуры), библиотеки Fortran и С процедур.

Литература:

Б. Андриевский, А. Фрадков "Элементы математического моделирования в программных средах MATLAB 5 и Scilab" СПб.: Наука, 2001. 286 с.

Чурилов А.Н., Гессен А.В. Исследование линейных матричных неравенств. Путеводитель по программным пакетам.

СПб.: Издательство Санкт-Петербургского университета, 2004. 148 с.

Книги, статьи и сообщения о Scilab с сайта Inria на всех языках.

Для простоты можно начать с версии пакета для Windows. Версии для операционных систем Windows и Linux имеют некоторые отличия в панели меню управления окна, но все команды пакета Scilab в обеих версиях идентичны.

2.4. Состав системы Scilab состоит из ядра, пакетов расширения (Toolbox), системы имитационного моделирования Scicos (аналог Simulink в MATLAB) и компонент для него. Перечень доступных средств можно увидеть в справочной системе СКМ.

Категория средств Описание Programming Программирование.

Graphics Library Библиотека графики.

Elementary Functions Элементарные функции.

Input/Output Functions Функции ввода/вывода.

Handling of Functions and Libraries Поддержка функций и библиотек.

Character string manipulations Манипуляции со строками символов.

GUI and dialogs ГИП (графический интерфейс пользователя) и диалоги.

Utilities Утилиты.

Linear Algebra Линейная алгебра.

Polinomial calculations Полиномиальные вычисления.

General System and Control Обобщенные системы и управление.

Robust Control Toolbox Инструментарий робастного контроля.

Optimization and Simulation Оптимизация и имитационное моделирование.

Signal Processing Toolbox Инструментарий обработки сигналов.

Arma modelisation and Simulation Toolbox Инструментарий Arma моделей и имитационного моделирования.

Metanet: Graph and Network Toolbox Metanet: инструментарий графов и сетей.

Scicos: Bloc diagram and simulator Scicos: блочная диаграмма и имитационное моделирование.

Sound file handling Поддержка звука.

Language or data translations Трансляции языка или данных.

TdCs Statistic basis Основы статистики.

Cumulative Distribution Functions: inversies, Функции кумулятивных распределений: инверсии, гранд.

grand Identification Идентификация.

MATLAB to Scilab conversion tips Преобразования MATLAB в Scilab.

Sparse Solvers Решение разреженных матриц.

PVM Parallel Toolbox Инструментарий.

TCL/Tk interface Интерфейс TCL/Tk.

Java Interface Интерфейс Java.

2.5. Демосы Scilab Для ознакомления с возможностями системы предусмотрены демонстрационные средства, доступные в команде ? = Scilab Demos, которая отображает окно выбора категории демонстрационных средств. Щелчок по категории отображает окно выбора конкретного средства в категории. Например, при выборе Signal Processing получаем:

В отличие от MATLAB в справке Scilab нет визуального различения характера средства.

2.6. Свойства системы Система устанавливается пользователем в обычной манере. После установки при запуске отображается командное окно, в котором сообщаются данные о версии СКМ и формируется приглашение к диалогу. Диалог может осуществляться набором команд в командной строке после символов приглашения, с использованием меню или с помощью панели инструментов.

2.7. Окна Scilab В Scilab определены окна:

№ Окно Назначение 1. Scilab Главное окно системы. Командное окно (консоль).

2. Help Справка.

3. SciPad Редактор/отладчик.sci-файла.

4. Figure # Графическое окно, # - номер окна от 1. Под номером 0 главное окно.

5. Model Окно модели Scicos 6. Scicos Library Browser Браузер библиотек компонент Scicos 2.7.1. Scilab, командное окно При старте пользователь видит главное окно В этом окне обычно начинается работа в Scilab. В окне выводится поясняющий текст для пользователя и символ приглашения продолжить, за которым пользователь должен писать командную строку, исполняемую после нажатия клавиши Enter.

2.7.2. Scilab, справка Доступ к справке доступен в командном окне Scilab из меню. В нем нужно исполнить команду ? = Scilab Help. Это приведет к отображению окна справки. В нем в левом поле размещен список категорий средств, а в правом – содержание выбранной категории. В нижней части поля размещен навигатор по справке, позволяющей перемещается по разделам. Имена средств в категории помечены ссылками, по которым можно узнать подробности по нему.

2.7.3. Scilab, редактор/отладчик SciPad Используется для создания или редактирования sce-файлов. Для вызова окна используется команда Editor главного меню Scilab.

2.7.4. Figure (Графическое окно) В Scilab имеется много графических средств:

Графический интерфейс пользователя (ГИП).

Простой графический редактор для рисования дуг и узлов.

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

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

Листинг программы // Функция SinCos x=[-2*%pi:0.1:2*%pi]';

// Диапазон х y1=sin(x);

// функция y2=cos(x);

// функция plot(x,y1,x,y2);

// Рисование xgrid // Включить сетку Функция высокого уровня plot автоматически создает окно графики с именем Scilab Graphic (0).

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

Пункт Команды Файл Новый… -------------------------------------------- Загрузить файл с расширением.scg Сохранить файл с расширением.scg ---------------------------------------------- Экспорт, формат выбирается в диалоге Копировать в буфер (как метафайл или BMP) ---------------------------------------------- Установить параметры принтера Печать ---------------------------------------------- Закрыть Инструменты Панель инструментов ------------------------------------ Увеличить масштаб, выделяется блок и он отображается на весь экран Вернуть масштаб ------------------------------------ 2D/3D вращение Правка Установить figure текущим Перерисовать figure Стереть рисунок ---------------------------------------- Свойства figure Свойства текущего axes ---------------------------------------- Начать выбор объектов Завершить выбор объектов ToolBar (Панель инструментов). Она отображает панель инструментов под меню. Содержит кнопки:

Zoom (Увеличить). Знак команды - лупа с символом ( + ). Каждое нажатие увеличивает размер выделенной области. Область на графике для увеличения выделяют, нарисовав мышью обрамляющий прямоугольник.

После отпускания мыши в том же окне отображается график выделенной области. В нем операция увеличения может быть повторена Zoom out (Уменьшить). Знак команды - лупа с символом ( - ). Нажатие восстанавливает исходный график, после операции увеличения.

2D/3D Rotate (Вращать объект). Знак команды - круг со стрелкой.

Graphical Editor (Редактировать график). Знак команды - GED. После этой команды вызывается графический редактор. Окно редактора содержит два поля. В левом показана иерархия объектов. В правом отображаются свойства объекта, выбранного слева.

Entity Picker (Выделять объект). Знак команды стрелка. При включенном режиме кнопка отображается нажатой.

Если объект 3D, то при команде вращения график обрамляется параллелепипедом, который можно вращать, перетаскивая угол графика мышью. Если объект 2D, то его нужно предварительно преобразовать в 3D. Для этого нужно вызвать окно редактора для объекта axes и в закладке Viewpoint для свойства view в группе радио-кнопок вместо 2d выбрать 3d.

При этом плоскость графика размещается в 3d объекте при z=0 и обрамляется параллелепипедом.

Команда Graphical Editor вызывает отдельное окно редактирования. Оно содержит 2 поля: в левом иерархический список объектов, в правом свойства объекта, выделенного в левом поле.

Свойства объекта распределены по категориям, каждая из которых может выбираться. Если какое-либо свойство изменено, то figure перерисовывается.

В примере объект Figure(1) содержит координатное поле Axes(1), в котором находится объект Compound(1). В нем определены две полилинии Polyline(1) и Polyline(2).

Команда Entity Picker активизирует режим выбора объекта. В этом режиме для доступа к свойствам нарисованного объекта (например, линия) достаточно мышью выбрать объект. При этом сразу отображается окно с его свойствами.

2.7.5. Scilab, модель Scicos В Scilab встроена система имитационного моделирования блочно организованных систем Scicos (это функциональный аналог Simulink в MATLAB). Для вызова системы используется команда меню Scilab Applications=Scicos. Генерируется пустое окно модели.

Главное меню окна модели содержит пункты:

Пункт Команды Файл Новый Открыть Переименовать Сохранить Сохранить как… Сохранить как функцию интерфейса Экспорт Экспорт всего Выход из Scicos Выход Диаграмма Перерисовать Очистить Установить информацию о диаграмме Область для суперблока Перейти к главной диаграмме Контекст Палитра Палитры Редактор палитры Загрузить как палитру Сохранить как палитру Дерево палитр Правка Отменить Вырезать в буфер Копировать в буфер Вставить из буфера Дубикат Удалить Перемещение Умное перемещение Выравнивание Перевернуть Вращение влево Вращение вправо Добавить новый блок Документация по блоку Метка Вид Увеличить Отменить увеличение Зафиксировать диаграмму в рисунке Параметры окна по умолчанию Доступные параметры Сетка Моделирование Установка параметров Компиляция Вычисление Уровень отладки Запуск Формат Установить сетку Добавить цвет Цвета линий связи по умолчанию Цвет Цвет фона Показать тени у блока Изменить размер Идентификация Шрифт идентификатора Иконка Редактор иконки Инструменты Создать маску Удалить маску Сохранить блок ГИП Получить информацию Детали Браузер Генерация кода Активизировать окно Scilab Калькулятор Справка Вызов справки Документация по Scicos Демосы О Scicos Stop Стоп Модель составляется из заранее запрограммированных блоков путем их переноса из библиотеки в окно модели. Доступ к библиотекам обеспечивается браузером, окно которого вызывается командой Palette=Pal Tree из меню модели. В отдельном окне в виде дерева отображается палитра компонент. Альтернативный вариант - командой Palette=Palettes из выпадающего списка вызывается подбиблиотека компонент.

Из перечня компонент нужно выбрать нужный и перенести его в окно модели нужный компонент. Затем в окне модели компоненты необходимо в визуальном режиме мышью соединить друг с другом. После заполнения блоками окно модели имеет вид, подобный этому:

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

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

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


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

3.1.1. Scilab, системые константы и переменные В Scilab определены специальные скалярные константы и переменные:

Константа в MATLAB Описание ans ans Последний ответ %i I или j Мнимая единица: sqrt(-1)=i.

%pi pi Число Pi=3. %e e Число e=2.7182818.

%eps eps Это условный нуль, то есть такое максимальное число, что 1+%eps=1 %eps=2.220E 16.

%inf Бесконечность.

%NotANumber Возведение в степень %s Переменная, значение которой равно "s",т.е.%s=s или s=poly(0,"s").

%t Булевское true=T.

%f Булевское false=F.

~%t Отрицание true=F.

~%f Отрицание false=T.

3.1.2. Scilab, переменные Переменная задается именем, под нее выделяется память. Не требуется задавать параметры переменных. При вводе для новой переменной значения автоматически выбирается ее внутреннее представление. Требования к имени:

Первый символ – буква.

Далее буквы, цифры, символ подчеркивания.

Scilab чувствителен к регистру (высоте символов).

3.1.3. Scilab, числа Для чисел применяется формат с плавающей точкой с ведущим знаком (плюс или минус). При отображении чисел с порядком используется символ e для разделения мантиссы и порядка. Для мнимых значений добавляется суффикс %i.

Для целых чисел определены 6 типов данных: беззнаковые и знаковые с числом бит 8, 16, 32. Для преобразования типов имеются функции:

Функция В MATLAB Описание y=int8(x) y=int8(x) Получить из x 8-битное целое со знаком. Возвращает значение из области [-28, 28 1].

y=uint8(x) y=uint8(x) Получить из x 8-битное целое без знака. Возвращает значение из области [0, 28].

y=int16(x) y=int16(x) Получить из x 16-битное целое со знаком. Возвращает значение из области [-216, 216-1].

y=uint16(x) y=uint16(x) Получить из x 16-битное целое без знака. Возвращает значение из области [0, 216 1].

y=int32(x) y=int32(x) Получить из x 32-битное целое со знаком. Возвращает значение из области [-232, 232-1].

y=uint32(x) y=uint32(x) Получить из x 32-битное целое без знака. Возвращает значение из области [0, 232].

y=double(x) y=double(x) Получить из целочисленного x вещественное.

3.1.4. Scilab, списки Тип данных список состоит из набора данных необязательно одинакового типа. Списки могут быть вложенными друг друга Существуют списки:

Обыкновенный.

Типизированный.

Матрично-ориентированный.

Функция Описание L=list(a1,…an) Создает обыкновенный список L из перечисленных компонент a1…an.

Вызов компонента L(номер).

--L=list(1,"w",[1 2]) L= L(1) 1.

L(2) w L(3) 1. 2.

--L(1) ans = 1.

--L(2) ans = w --L(3) ans = 1. 2.

T=tlist(typ, a1,…an) Создает типизированный список T из перечисленных компонент a1…an.

Первый компонент typ – символьная переменная или массив.

Вызов компонента T(номер) или T.номер.

M=mlist(a1,…an) Создает матрично-ориентированный список M из перечисленных компонент a1…an.

Вызов компонента M(номер).

Для вызова матрицы M.номер.

Для чисел применяется формат с плавающей точкой с ведущим знаком (плюс или минус). При отображении чисел с порядком используется символ e для разделения мантиссы и порядка. Для мнимых значений добавляется суффикс %i.

3.1.5. Scilab, операторы В Scilab определены две группы арифметических операторов. В одной операции выполняется по правилам матричной алгебры, когда результат зависит от порядка следования операндов. В другой из операндов компоненты извлекаются по очереди и осуществляются операции по правилам линейной алгебры. Для этих операций в оператор добавляется символ точка (.) перед символом операции. Операции сложения и вычитания по правилам матричной и линейной алгебры дают одинаковый результат, поэтому для них символ точка не употребляется.

Это операторы линейной алгебры:

Оператор в MATLAB Описание Начало:Конец Начало:Конец Задает массив со значениями от Начало до Конец с шагом 1.

Начало:Шаг:Конец Начало:Шаг:Конец Задает массив со значениями от Начало до Конец с шагом Шаг.

+ + Сложение - - Вычитание * * Умножение / / Правое деление \ \ Левое деление ^ ^ Возведение в степень ‘ ‘ Транспонирование () () Задание порядка ввода Это логические операторы:

Оператор в MATLAB Описание | | Логическое сложение, операция ИЛИ (OR) ~ ~ Логическое отрицание, операция НЕ (Not) & & Логическое умножение, операция И (AND) Логическое исключающее ИЛИ, операция XOR Это побитовые логические операторы:

Оператор в MATLAB Описание bitor bitor Побитовое логическое сложение bitcmp bitcmp Побитовое логическая инверсия bitand bitand Побитовое логическое умножение bitexor bitexor Побитовое логическое исключающее ИЛИ Это операторы отношений:

Оператор в MATLAB Описание Больше чем = = Больше или равно чем Меньше чем = = Меньше или равно чем == == Равно ~= ~= Не равно 3.2. Scilab, матрицы 3.2.1. Scilab, функции создания матриц Функция В MATLAB Описание ones(m,n) ones(m,n) Матрица из единиц.

eye(m,n) eye(m,n) Единичная матрица. Все нули, кроме главной диагонали, там 1.

zeros(m,n) zeros(m,n) Матрица из нулей.

rand(m,n) rand(m,n) Матрица со случайными элементами, распределенными по нормальному закону с нулевым математическим ожиданием и среднеквадратическим отклонением, равным 1.

3.2.2. Операции с матрицами Операция В MATLAB Описание [] [] Определение матрицы, конкатенация.

;

;

Разделитель строк () () Извлечение m=a(k).

Ввод a(k)=m A+B A+B Сложение. A, B должны быть одинакового размера. Одно из них может быть скаляром.

A–B A–B Вычитание. A, B должны быть одинакового размера. B может быть скаляром.

A*B A*B Умножение матриц. Для нескалярных A, B число столбцов в А должно быть равно числу строк в В.

A.* B A.* B Умножение массивов. Почленное умножение A и B. A, B должны быть одинакового размера.

Одно из них может быть скаляром.

A/B A/B Деление правое. A делится на B.

A./ B A./ B Деление правое почленное. Почленное деление A на B.

A\B A\B Деление левое. B делится на A.

A.\ B A.\ B Деление левое почленное. Почленное деление B на A.

A:H:B A:H:B Вертикальное двоеточие. Список от A до B с шагом H.

A:B A:B Вертикальное двоеточие. Список от A до B с шагом 1 (или -1).

A^B A^B Возведение в степень. A возводится в степень B.

A.^ B A.^ B Возведение в степень поэлементное. Компоненты A возводятся в степень B.

A‘ A‘ Транспонирование матрицы.

3.2.3. Суммирования и произведения в матрице Функция в MATLAB Описание s=sum(A) s=sum(A) Сумма всех элементов матрицы A. Ответ - скаляр s.

S=sum(A,r) S=sum(A,r) Сумма элементов матрицы A по строкам. Ответ - вектор S. Вместо r можно задать 1.

S=sum(A,с) S=sum(A,с) Сумма элементов матрицы A по столбцам. Ответ - вектор S. Вместо c можно задать 2.

p=prod(A) p=prod(A) Произведение всех элементов матрицы A. Ответ - скаляр p.

P=prod(A,r) P=prod(A,r) Произведение элементов матрицы A по строкам. Ответ – вектор P. Вместо r можно задать 1.

P=prod(A,c) P=prod(A,c) Произведение элементов матрицы A по столбцам. Ответ – вектор P. Вместо c можно задать 2.

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

Элементарная математика.

Специальная математика.

Анализ данных и преобразования Фурье.

Математические константы.

Преобразования систем координат.

Массивы и матрицы.

Линейная алгебра.

Полиномы.

Интерполяция и вычислительная геометрия.

Нелинейные численные методы.

Разреженные матрицы.

Операции для предметных областей определены в пакетах расширения Scilab.

3.4. Элементарная математика Определено около 200 функций. Некоторые примеры.

3.4.1. Тригонометрия Прямая тригонометрия.

Функция в MATLAB Описание sin(X) sin(X) Синус.

sinc(X) sinc(X) sin(X)/X.

cos (X) cos (X) Косинус.

tan(X) tan(X) Тангенс.

cotg (X) cot (X) Котангенс.

Обратная тригонометрия.

Функция в MATLAB Описание asin(X) asin(X) Обратный синус.

нет acsc(X) Обратный косеканс.

acos (X) acos (X) Обратный косинус.

нет asec(X) Обратный секанс.

atan(X) atan(X) Обратный тангенс. Результат в квадрантах 1 и 4.

atan2(X) atan2(X) Обратный тангенс. Результат в 4-ех квадрантах.

нет acot(X) Обратный котангенс. Результат в квадрантах 1 и 4.

Гиперболические функции.

Функция в MATLAB Описание sinh(X) sinh(X) Синус гиперболический.

sinh(X) sinh(X) Синус гиперболический.

cosh (X) cosh (X) Косинус гиперболический.

tanh(X) tanh(X) Тангенс гиперболический.

coth (X) coth (X) Котангенс гиперболический.

Обратные гиперболические функции.

Функция в MATLAB Описание asinh(X) asinh(X) Обратный синус гиперболический.

нет asech(X) Обратный секанс гиперболический.

нет aсsch(X) Обратный косеканс гиперболический.

acosh (X) acosh (X) Обратный косинус гиперболический.

atanh(X) atanh(X) Обратный тангенс гиперболический.

нет acoth(X) Обратный котангенс гиперболический.

3.4.2. Степени, корни, логарифмы Функция в MATLAB Описание sqrt(X) sqrt(X) Квадратный корень из Х..

exp(X) exp(X) Экспонента от Х.

log(X) log(X) Натуральный логарифм от Х.

log1p(X) log1p(X) Натуральный логарифм от (1+Х).

log2(X) log2(X) Логарифм от Х по основанию 2.

log10(X) log10(X) Логарифм от Х по основанию 10.

3.4.3. Комплексные числа Функция в MATLAB Описание abs(X) abs(X) Абсолютное значение Х.

conj(X) conj(X) Сопряженный комплекс imag(X) imag(X) Мнимая часть комплексного числа.

real(X) real(X) Вещественная часть комплексного числа.

isreal(X) isreal(X) Все компоненты X вещественные?

sign(X) sign(X) Знак числа 3.4.4. Округления и остатки Функция в MATLAB Описание fix(X) fix(X) Ближайшее к Х целое по направлению к нулю.

floor(X) floor(X) Округление вниз ceil(X) ceil(X) Округление вверх round(X) round(X) Округление Х до ближайшего целого.

pmodulo(X,Y) mod(X,Y) Целочисленное деление X на Y.

3.4.5. Дискретная математика Функция в MATLAB Описание factorial(X) factorial(X) Факториал Х.

perms(X) perms(X) Перестановки компонент вектора X.

3.4.6. Специальная математика Функции в MATLAB Описание besselj(nu.Z) besselj(nu.Z) Функции Бесселя 1, 2, 3 рода.

besseli(nu.Z) besseli(nu.Z) Это решения линейного дифференциального уравнения вида bessely(nu.Z) bessely(nu.Z) besselk(nu.Z) besselk(nu.Z) besselh(nu,Z) Каждое решение описыватся своей функцией Бесселя, которые характеризуется родом и порядком (nu).

beta(Z,W) beta(Z,W) Бета-функция erf(X) erf(X) Функция ошибки gamma (А) gamma (А) Гамма-функция legendre(n.X) legendre(n.X) Функция Лежандра степени n и порядков m = 0,1..... n.

где Рn(*) — полином Лежандра степени п В системе Scilab определены указанные ниже функции. Функция, примененная к массиву, возвращает значения для каждого элемента массива. Входной массив допускает комплексные значения. Углы в большинстве функций в радианах.

3.5. Программирование Определено около 125 функций. Некоторые примеры.

Графические библиотеки. Определено около 200 функций.

Функции ввода вывода. Определено около 75 функций.

Функций и библиотек. Определено около 30 функций.

Манипуляции со строками символов. Определено около 20 функций.

ГИП и диалоги. Определено около 25 функций.

Утилиты. Определено около 70 функций.

Линейная алгебра. Определено около 70 функций. Некоторые примеры.

Функция Описание exp(X) Экспонента X.

det(X) Определитель матрицы X.

inv(X) Инверсия матрицы X.

Полиномиальные вычисления. Определено около 40 функций. Некоторые примеры.

Функция Описание roots(X) Корни полинома X.

factors(X) Факторизация полинома X.

Обобщенные системы и управление. Определено около 70 функций.

Робастное управление. Определено около 40 функций.

Оптимизация и моделирование. Определено около 40 функций.

Обработка сигналов. Определено около 80 функций.

Преобразования Фурье Функция Описание dft(X) Прямое дискретное преобразование Фурье от Х.

fft(X) Прямое одномерное дискретное преобразование Фурье от Х.

ifft(X) Обратное одномерное дискретное преобразование Фурье от Х.

fft2(X) Прямое двумерное дискретное преобразование Фурье от Х.

fftshift(X) Сдвиг постоянной составляющей дискретного преобразования Фурье от Х к центру спектра.

Корреляция Функция Описание corr(X,Y) Корреляция Х, Y.

Фильтрация и свертка Функция Описание convol(X,Y) Свертка и полиномиальное умножение Х,Y.

filter(n,F,H,Rt,T) Расчет фильтра модели. N – число точек. F,H – матрицы модели Маркова. Rt,T – усиление матриц, eqfir(nf,bedge,des,wate) Фильтр с конечной (КИХ) импульсной характеристикой сигнала. Nf –число выходов,,bedge – матрица границ поддиапазонов, des – вектор усилений поддиапазонов,,wate – вектор веса ошибок поддапазонов eqiir(ftype,approx,om,deltap,deltas) Фильтр с бесконечной (БИХ) импульсной характеристикой сигнала. Ftype –тип фильтра, approx – метод аппроксимации, om – вектор частот среза, deltap – пульсации в полосе пропускания, deltas - пульсации в полосе задерживания.

Основы статстики. Определено около 70 функций. Некоторые примеры.

Функция Описание correl(x,y,fre) Корреляция x,y. Тип матриц – fre.

mean(X) Среднее арифметическое Х.

median(X) Медиана Х.

stdev(X) Стандартная девиация X.

variance(X) Вариация Х.

Функции кумулятивных распределений. Определено около 12 функций. Некоторые примеры.

Функция Описание grand Генератор случайных чисел.

cdfbet Бета распределение.

cdfbin Биномиальное распределение.

cdfchi Распределение Хи-квадрат cdfgam Гамма распределение.

cdft Распределение Стьюдента.

Java интерфейс. Определено около 10 функций. Некоторые примеры.

sort(X) Сортировка элементов X.

std(X) Стандартное отклонение Х.

var(X) Дисперсия Х.

3.6. Массивы и матрицы 3.6.1. Основная информация Функция Описание disp(A) Вывод на дисплей массива А без имени.

isempty(A) А пустой? 1, если да.

isequal(A) А = В? 1, если да.

isfloat(A) А – числа с плавающей точкой? 1, если да.

isinteger(A) А – целые числа? 1, если да.

islogical(A) А - логический? 1, если да.

isnumerical(A) А - числа? 1, если да.

isscalar(A) А - скаляр? 1, если да.

issparse(A) А - разреженный массив? 1, если да.

isvector(A) А - вектор? 1, если да.

length(A) Длина А.

size(A) Размер массива (вектор длины каждого измерения).

3.6.2. Преобразования матриц Функция Описание cat (dim, А, В) Объединяет массивы А и В в соответствии с dim:

dim = 1 - горизонтальная конкатенация, dim = 2 - вертикальная конкатенация, dim = 3 - многомерный массив размерности 3 и т. д.

fiiplr(A) Зеркально переставляет столбцы матрицы А относительно вертикальной оси.

fiiplud(A) Зеркально переставляет столбцы матрицы А относительно горизонтальной оси.

rot90(A,k) Поворот матрицы А на угол 90*k градусов, где k — целое число.

3.6.3. Тестовые матрицы Функция Описание pascal(n) Тестовая матрица Паскаля, значения целочисленные из треугольника Паскаля.

hadamard(n) Тестовая матрица Адамара, состоящая из 1 и -1.

magic(n) Тестовая матрица - магический квадрат. Содержит элементы от 1 до n2, суммы по всем направлениям одинаковы. Значение n должно быть больше или равно 3.

3.6.4. Треугольные матрицы Функция Описание tril(X,k) Матрица c неизменной нижней треугольной частью матрицы X, начиная с k-ой (k=0 по умолчанию) диагонали.

tru(X,k) Матрица c неизменной верхней треугольной частью матрицы X, начиная с k-ой (k=0 по умолчанию) диагонали.

3.6.5. Операции и манипуляции Оператор Функция Описание : colon Создание векторов.

dot(A,B) Скалярное произведение векторов A,B.

kron(A,B) тензорное произведение Кронекера.

3.7. Линейная алгебра 3.7.1. Матричный анализ Функция Описание norm(A,p) Нормализация A. Возвращает норму p, которая характеризует значения в матрице:

при p=1 это сумма модулей, при p=2 (по умолчанию) это Эвклидова норма - квадратный корень из суммы квадратов, при p= это сумма значений.

normest(S,tol) Возвращает оценку нормы 2 матрицы S с точностью tol.

cond(X) Число обусловленности, основанное на второй норме, то есть отношение самого большого сингулярного числа X к самому малому. Значение cond(X), близкое к 1, указывает на хорошо обусловленную матрицу.

k=rank(A,tol) Оценка k числа независимых столбцов матрицы A с точностью tol.

d=det(X) Определитель квадратной X.

b=trace(A) След - сумма диагональных элементов A.

3.7.2. Линейные уравнения Пусть система линейных уравнений представлена в матричной форме: A*X=B, где A – матрица коэффициентов, X – вектор независимых переменных, B _ вектор правой части системы. Тогда для решения системы достаточно выполнить матричную операцию X=B/A (или X=A\B). Определены функции:

Функция Описание inv(X) Матрица, обратная квадратной матрице X. Предупреждающее сообщение выдается, если X плохо масштабирована или близка к вырожденной.

pinv(A,tol) В = pinv(A) — возвращает матрицу, псевдообратную матрице А (псевдообращение матрицы по Муру-Пенроузу). Имеет тот же размер, что и А', удовлетворяет условиям А*В*А=А и В*А*В=В.

Вычисление основано на использовании функции svd(A) и приравнивании к нулю всех сингулярных чисел, меньших величины tol.

3.7.3. Собственные и особые значения Функция Описание eig(A) Вектор собственных значений А. При вычитании единичной матрицы, умноженной на собстаенное значение, матрица А делается вырожденной.

eigs(A) Несколько векторов собственных значений разреженной матрицы А.

svd(X) Сингулярное (необычное) значение X.

svds(X) Несколько сингулярных значений X.

3.7.4. Матричные логарифмы и экспоненты Функция Описание expm(X) Матричная экспонента от Х.

llogm(X) Матричный натуральный логарифм от Х.

sqrtm(X) Матричный квадратный корень из Х.

3.7.5. Факторизация Факторизация матриц – это представление матрицы в виде произведения матриц.

Функция Описание chol(X) Факторизация Х по методу Холецкого.

lu(X) LU факторизация Х. Возвращаются две треугольные матрицы (нижняя, верхняя).

qz(X) QZ факторизация Х.

3.8. Полиномы Функция Описание poly(X) Коэффициенты характеристического полинома (собственные значения) квадратной матрицы Х по убывающим степеням.

polyder(a,b) Коэффициенты характеристического полинома (собственные значения) от произведения полиномов a,b по убывающим степеням.

roots(р) Корни уравнения по полиному р с коэффициентами по убывающим степеням.

polyfit(X,Y,n) Коэффициенты полинома от Х порядка n для подгонки Y(X).

polyval(p,X) Вычисляет полином p для вектора Х.

polyvalm(p,X) Вычисляет полином p для матрицы Х.

residue(b,a) Преобразует отношение полиномов b/a в простые дроби с коэффициентами r/p и остатком k.

residue(r,p,k) Обратное преобразование. При этом происходит нормализация (коэффициент при максимальной степени знаменателя теперь равен 1).

3.9. Интерполяция и вычислительная геометрия Интерполяция Функция Описание interp1(X,Y,Xi) Одномерная интерполяция Yi(Xi) по таблице просмотра Y(X).

interp2 Двумерная интерполяция по таблице просмотра.



Pages:   || 2 | 3 |
 

Похожие работы:





 
© 2013 www.libed.ru - «Бесплатная библиотека научно-практических конференций»

Материалы этого сайта размещены для ознакомления, все права принадлежат их авторам.
Если Вы не согласны с тем, что Ваш материал размещён на этом сайте, пожалуйста, напишите нам, мы в течении 1-2 рабочих дней удалим его.