Программа Scilab является пакетом свободно доступных программ для математических и инженерных расчетов. Scilab имеет схожий с программой Matlab язык программирования и интерфейс, но имеются различия в составе библиотек и в составе встроенных функций. Программа доступна для различных операционных систем, в том числе для Linux и Microsoft Windows. В настоящее время можно скачать бесплатно версию 5.5.1 с сайта организации по поддержки Scilab (www.scilab.org). Существует конвертор из языка Scilab в язык Matlab.
Данный пакет подходит для изучения основ математических расчетов в вузе и школе, а также для применения в научно-исследовательской работе. Небольшим недостатком является малое количество примеров кода именно для Scilab. Возможности программы в целом совпадают с возможностями программы Matlab [1,2]. Как свободно распространяемая программ она имеет одно весьма весомое достоинство – бесплатное использование, в том числе для аучных расчетов [3].
В программе Matlab имеется встроенная функция imread(), с помощью которой обрабатываются графические файлы. К сожалению, в программе SciLab отсутствуют встроенные функции для чтения и обработки графических файлов. Можно использовать библиотечные функции посторонних разработчиков, но они являются коммерческими и требуют оплаты. Существуют бесплатные модули Atoms, которые расширяют функции Scilab.
Программу Scilab можно использовать для моделирования обработки нелинейных оптических сигналов, он поддерживает встроенную функцию двумерного преобразования Фурье, что является основой моделирования тонкой положительной линзы. Поддержка числовых массивов больших размерностей позволяет обрабатывать изображения.
Для примера повторим известный опыт Аббе-Портера. Суть опыта заключается в оптической пространной фильтрации сигнала с помощью амплитудного транспаранта, в виде щели и схема опыта приведена на рис.1. [4].
Рис.1. Схема опыта Аббе-Портера
Для создания графического аналога можно использовать программный код, цикл для заполнения массива нужные значения. Массив чисел, заполненный единичными значениями в виде решетки, приведен на рис. 2.
Рис.2. Входной сигнал
В Matlab и Scilab существуют функция двумерного преобразования Фурье ff2(), в результате применения у нас получается двумерный комплексный спектр сигнала. После наложения на него транспаранта, в виде горизонтальной щели, и применения обратного преобразования Фурье, мы получаем массив значения, который приведен на рис.3. Данный результат совпадает с результатом полученный в программе MathCAD [5].
Рис.3. Выходной сигнал
При использовании программы Scilab можно моделировать обработку нелинейных оптических сигналов, в том числе с использованием двумерного преобразования Фурье. Недостатком программы является отсутствие встроенной библиотеки обработки графических файлов, что можно обойти используя возможности системы.
Таким образом программа Scilab дает возможность бесплатно использовать программы для математического моделирования оптической обработки информации.
Библиографический список
- Дохтаева И.П., Рожина Е.Н. Определение достоинств среды программирования Scilab путем сравнительного анализа языков программирования Matlab и Scilab // Прогрессивные технологии и процессы Сборник научных статей Международной молодежной научно-практической конференции: в 2-х томах. Курск, 2014 – с. 204-207
- Конев Ф.Б., Ицков О.М. Обработка и визуализация данных в программе Scilab Научная перспектива – Инфинити (Уфа) – 2013, №12, с.83-85
- Алексеев Е. Р. Использование свободных программ в научных исследованиях // Прикладная информатика, Москва – 2009, №6, с.61-79
- Богатырева В.В., Дмитриев А.Л. Оптические методы обработки информации: Учебное пособие. СПб.: СПбГУ ИТМО, 2009, 74 с.
- Леонтьев Н.А. Использования среды MathCAD для моделирования оптической обработки информации // Педагогическая информатика – 2012. -№ 5. – с. 28-34.