Приветствую Вас Гость
Суббота
02.08.2025
09:37

Scilab

Меню сайта
Reklama
- кино, фильмы, видео
- музыка и MP3
- авто и мото
- знакомства
- заработок в сети
- игры
- форекс, forex
- женские сайты
- для взрослых
- строительство и ремонт
- недвижимость
- бытовая техника
- здоровье и медицина
- красота, косметика
- работа, вакансии, резюме
- животные и растения
- детские товары
- знакомства для интима
- софт
- развлечения
- одежда и обувь
- туризм и отдых
- мебель, интерьер
- компьютеры и оргтехника
- реклама и интернет
- промышленное оборудование
- сырье и материалы
- социальные сети
- средства связи
- образование и обучение
wmlink
Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0
Форма входа
Поиск

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, вычисляющей собственные значения и вектора для заданной матрицы).