MatLab — высокоуровневый интерпретируемый язык программирования вместе с пакетом прикладных программ и интегрированной средой для разработки, выполнения инженерных и математических расчетов, работы с матричными базами данных, визуализации.
MatLab как язык программирования создал в 1970-х годах Клив Моулер, декан факультета компьютерных наук в Университете Нью-Мексико. Разработка упрощала использование библиотек Linpack и EISPACK студентам, не умеющим программировать на языке Fortran. MatLab быстро распространился в других образовательных учреждениях США. После выступления в Стэнфордском университете с Кливом Моулером связался инженер Джон Литтл, который предложил учредить коммерческую компанию The MathWorks для развития языка и среды программирования.
Для чего нужен язык MatLab
MatLab включает матричные структуры данных, набор математических функций, объектно-ориентированные возможности и интерфейсы к программам, написанным на других языках программирования и пр. Среди самых часто используемых возможностей MatLab:
- математические вычисления и информационный анализ;
- визуализация данных в виде двух- и трехмерных графиков, динамических анимаций;
- программирование и разработка алгоритмов.
В основном MatLab используется в научных исследованиях и инженерных разработках. Например, он также применяется:
- в разработке автоматизированных систем управления в различных механизмах, от обычных стиральных машин до аэрокосмических комплексов;
- сборе и анализе различной финансовой информации (котировок акций, цен, процентов, доходов и т.д.), а также инвестиционной деятельности для прогнозирования ситуаций на биржах, оптимизации инвестиционных портфелей;
- проектировании и анализе нейронных сетей как в рамках фундаментальных исследований, так и для решения прикладных задач: распознавания образов, управления нелинейными системами, прогнозирования и т.д.;
- обработке и улучшении качества сигналов при разработке аудио- и видеооборудования, телекоммуникационных систем, медицинской диагностике (УЗИ, МРТ, КТ) а также в астрофизике, астрономии, геологии, геофизике и т.д.;
- в биологии, биоинформатике, генетике, эпидемиологии для построения математических моделей различных биологических процессов и организмов.
Преимущества и недостатки
Преимущества
Легкость освоения. В сравнении с C/C++, Fortran и т.д. язык достаточно легко изучать. У него простой и интуитивно понятный синтаксис, а также масса сопроводительной документации от разработчиков. Для его использования оператору не обязательно быть профессиональным программистом.
Широкий функционал. Язык MatLab включает продвинутую библиотеку для обработки и построения графиков, интегрированные функции линейной алгебры (LAPACK, BLAS), быстрого преобразования Фурье (FFTW), работы с полиномами, базовой статистики, решения дифференциальных уравнений и пр.
Обновляемость. Основные обновления языка и всей среды программирования происходят два раза в год.
Преобразования в «быстрый» код. Программы, написанные на MatLab, можно перевести на C/C++ с помощью MatLab Coder.
Интегрированность. Большой выбор прикладных приложений от официальных и сторонних разработчиков расширяет возможности языка.
Большое научное сообщество. Язык MatLab используется во многих университетах и исследовательских институтах.
Недостатки
Перегруженность. Большое число команд и операторов существенно замедляют работу программ, написанных на MatLab (в последних версиях этот недостаток практически устранен). Данные хранятся в оперативной памяти в виде векторов, поэтому на быстродействие также сильно влияет скорость векторизации — преобразования данных в векторы и обратно, операции с ними.
Узкая направленность. Использовать MatLab можно только в его замкнутой экосистеме, на других программных платформах этот язык неэффективен.
Высокая стоимость. Программная среда распространяется платно. Для покупки по минимальной стоимости нужно быть студентом образовательного учреждения. Также алгоритмы являются проприетарными, поэтому просмотр кода большей их части недоступен.
Сочетание узкой специализации и высокой стоимости — основная причина, по которой программный пакет MatLab не получил широкого распространения.
0 комментариев