Свободное программное обеспечение. Scilab оптимизация


Scilab - Главная страница

Scilab - это язык программирования и связанная с ним обширная коллекция численных алгоритмов, охватывающая многие аспекты научных вычислений,

С программной точки зрения, Scilab является интерпретируемым языком, что позволяет ускорить процесс разработки, поскольку пользователю прихо­дится напрямую иметь дело с высокоуровневыми конструкциями и широким набором возможностей, предоставляемых библиотеками. Язык Scilab допуска­ет расширение посредством определения пользовательских типов данных с воз­можностью перегрузки стандартных операций (таких как арифметические опе­рации, операции сравнения и т.д.). Пользователи Scilab могут разрабатывать собственные модули для решения конкретных задач. Возможна также динами­ческая компиляция и подключение кода, написанного на других языках, таких как Fortran или С - таким образом сторонние библиотеки могут быть использо­ваны, как если бы они частью встроенных средств Scilab. Scilab также предо­ставляет возможности для взаимодействия с пакетом Lab VIEW - платформой и программным окружением для визуального программирования, созданными в National Instruments.

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

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

Наиболее простым способом получить справку по возможностям пакета Scilab является функция help. Окно справки Scilab показано на рис. 2.

Рисунок 1. Окно консоли Scilab (командное окно) с набранным запросомhelp

Для его отоб­ражения наберите "help" в консоли и нажмите клавишу <Enter>:

-->help

Рисунок 1. Окно справки Scilab

Если вас интересует информация о конкретной функции (например, optim), вы можете пролистать содержание встроенной справки, найти раздел, посвя­щенный оптимизации, и выбрать optim, после чего будет отображено окно со справкой по данной функции. Однако более удобным способом получить ин­формацию о конкретной функции, если вы знаете ее название, является ис­пользование команды help с указанием имени интересующей вас функции:

-->help optim

В этом случае Scilab автоматически отобразит окно справки, содержащее ин­формацию о выбранной функции. Если функции с указанным именем не суще­ствует, будет отображено сообщение об ошибке. 

Эта страница всегда содержит справку по наиболее свежей версии Scilab. Ис­пользуя возможности поиска вашего Интернет-обозревателя, вы можете быстро (при определенной сноровке) найти необходимую информацию. Таким образом можно одновременно держать открытыми окна со справкой по нескольким ко­мандам Scilab. Например, изучив описание команд derivative и optim, можно записать целевую функцию, основанную на вычислении производных посред­ством команды derivative и пригодную для оптимизации при помощиoptim.

На домашней страничке Scilab также можно найти список книг, онлайн-руководств и статей, посвященных пакету.

 

Матрицы

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

Обзор

В Scilab основным типом данных является матрица. Всякая матрица характе­ризуется:

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

В Scilab векторы являются частным случаем матриц, когда число строк либостолбцов равно 1. Собственно скалярные величины в Scilab отсутствуют - скалярное значение представляется матрицей (вектором) 1х1, Поэтому в данной главе мы рассматриваем работу с матрицами, подразумевая, что аналогичные действия применимы и к векторам (т.е. матрицам  n х1 или 1 х n) и скалярам  (матрицам 1 х 1).

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

В числе задач проектирования Scilab также стояла оптимизация скорости выполнения таких операций. Для этого было разработано специальное внут­реннее представление матриц, позволяющее манипулировать ими на уровне ин­терпретатора. Большинство основных операций линейной алгебры, таких как сложение, вычитание, транспонирование и скалярное произведение выполняют­ся оптимизированными внутренними функциями. Эти операции обозначаются в Scilab символами "+",      "-", " ’ ” и "*".

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

Более сложные задачи линейной алгебры, такие как решение систем линей­ных уравнений Ax = b, различные разложения (например, гауссово разложение с перестановками PA = LU), поиск собственных значений и векторов, так­же выполняются встроенными оптимизированными функциями. Пользователю эти возможности доступны посредством операторов Scilab " /" и " \", а также специальных функций (например, функции spec, вычисляющей собственные значения и вектора для заданной матрицы).

scilab.3dn.ru

Возможности системы SCILAB

Информатика Возможности системы SCILAB

просмотров - 382

Лекция 1

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

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

С 1994 года распространяется в виде исходных кодов через интернет. Сейчас Scilab поддерживается компанией Scilab Consortium, созданной в 2003 году. Scilab поддерживает язык программирования высокого уровня для организации технических вычислений.

Некоторые возможности системы:

· В области математических вычислений:

- матричные, векторные, логические, условные операторы;

- символьные вычисления;

- полиномиальные и рациональные функции;

- элементарные и специальные функции;

- полиномиальная арифметика.

· В области реализации численных методов:

- решение дифференциальных уравнений;

- численное интегрирование;

- поиск корней нелинœейных алгебраических уравнений;

- оптимизация функций нескольких переменных;

- одномерная и многомерная интерполяция;

- решение задач математической статистики.

· В области программирования:

- свыше 500 встроенных математических функций;

- интерфейс к Fortran, Tcl/Tk, C, C++,Java, LabView.

· В области визуализации результатов расчетов и графики:

- возможности создания и редактирования двухмерных и трехмерных графиков;

- проведение визуального анализа данных.

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

Scilab позволяет работать с элементарными и большим числом специальных функций (Бесселя, Неймана, интегральные функции), имеет мощные средства работы с матрицами, полиномами (в том числе и символьно), производить численные вычисления (к примеру, численное интегрирование) и решение задач линœейной алгебры, оптимизации и симуляции, в его состав входят мощные статистические функции, а также средства для построения и работы с графиками.

Программа доступна для различных операционных систем, включая GNU/Linux и Microsoft Windows.

Отличия от некоторых коммерческих программ:

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

o интерпретатор

o библиотека функций (Scilab-процедуры)

библиотека Fortran и С процедур Главное меню

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

  • - Назначение и основные возможности системы управления базами данных. Элементы окна программы.

    Система управления базами данных Microsoft Access является одним из самых популярных приложений в семействе настольных СУБД. Все версии Access имеют в своем арсенале средства, значительно упрощающие ввод и обработку данных, поиск данных и предоставление информации в виде таблиц,... [читать подробенее]

  • - Работа с Scilab в режиме диалога

    Основы редактирования и отладки sci-файлов Меню File Команда New Scilab открывает новое окно Scilab, фактически пакет запускается повторно. Команда Open открывает окно для загрузки созданного ранее файла, рисунка или модели. Команда Load открывает окно для загрузки файлов,... [читать подробенее]

  • - Возможности системы SCILAB

    Лекция 1 Scilab – мощная интерактивная система автоматизации инженерных, научных и математических расчетов, построенная на расширенном представлении и применении матричных операций. Пакет разработан Scilab Group INRIA-Rocquencourt Metalau Project. Свободно распространяемую версию пакета... [читать подробенее]

  • - Функциональные возможности системы

    Ведение единой базы данных клиентов. Ведение единой клиентской базы данных (БД) является обязательным элементом CRM&... [читать подробенее]

  • - Функциональные возможности системы

    Ведение единой базы данных клиентов. Ведение единой клиентской базы данных (БД) является обязательным элементом CRM&... [читать подробенее]

  • - Математические выражения в Scilab

    Математические выражения состоят из чисел, констант, переменных, операторов, функций и спецзнаков. Числа могут быть целыми, дробными, с фиксированной и плавающей точкой. Примеры: -3 2.453 123.12е-3. Последнее число – это 123.12*10-3, т.е. 0,12312. Для разделения целой и десятичной части... [читать подробенее]

  • - Графические возможности системы Mathcad

    Лекция 8 Шаблоны для построения графиков. Двухмерные графики. Трехмерные графики. Специальная графика. Построение графиков по результатам математических вычислений 8.1 Шаблоны для построения графиков Одним из интересных и эффективных применений математических... [читать подробенее]

  • - Функции ввода-вывода в Scilab

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

  • - Функции ввода-вывода в Scilab

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

  • - Функциональные возможности системы

    Состав комплекса ОБЩИЙ ОБЗОР СИСТЕМЫ Фирмой “UCS” создан комплекс программ для автоматизации ресторанов различных направлений и форм обслуживания на всех уровнях. Программный комплекс включает в себя: 1) Кассовый уровень: · cистема кассира (кассовый... [читать подробенее]

  • oplib.ru

    Личный сайт Е.Р.Алексеева - Работа в пакете Scilab

    - один из самых интересных свободных математических программ. Scilab - система компьютерной математики, которая предназначена для выполнения инженерных и научных вычислений. По возможностям пакет Scilab практически не уступает Mathcad, а по интерфейсу близок к Matlab. В Scilab реализованы численные методы решения следующих задач вычислительной математики, среди которых можно выделить следующие:

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

    Графические возможности Scilab не уступают проприетарным математическим пакетам. Следует обратить внимание на то, что в состав Scilab входит Xcos — система компьютерного моделирования, аналогичная Simulink. Cвободно распространяемый пакет Scilab должен занять достойное место на компьютере специалиста, чья деятельность связана с решением задач вычислительной математики.

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

    Мое знакомство с пакетом началось 5 лет назад c ресурса http://scilab.psati.ru/rukovodstvo/index.html, за эти годы был разработан курс лекций (совместно с Чесноковой О.В.) по пакету Scilab 4.

    Затем в содружестве с компанией ALT Linux была написана и издана книга. Это первая, и на сегодняшний день единственная книга по пакету, изданная на русском языке.

    Е. Р. Алекс

    еев, Е. А. Чеснокова, Е. А. Рудченко. Scilab: Решение инженерных и математических задач.

    Полный текст книги по Scilab находится на этой странице сайта Alt Linux, прямая ссылка для скачивания книги.

    На сегодняшний вышел Scilab 5.2, в нем появилось много изменений, в частности значительно изменилась система моделирования, которая теперь называется Xcos.Список изменений в версии 5.0 по сравнению с 4.1 можно увидеть здесь

    (на английском языке). Изменения в версии 5.2 представлены на официальном сайте программы в виде pdf файла.

    Очень надеюсь, что в ближайшее время я напишу обзор нововведений Scilab 5.0-5.2. Есть мечта и о втором издании книги, дополнив его новыми возможностями и системой моделирования Xcos. Но, наверное, только мечта. Хотя, если Alt Linux или кто другой возьмётся за издание, то почему нет. Написать не проблема.

    teacher.ucoz.net


    Prostoy-Site | Все права защищены © 2018 | Карта сайта