МАТЛАБ
Парадигма | мультипарадигмальность : функциональная , императивная , процедурная , объектно-ориентированная , массивовая. |
---|---|
Разработано | Кливский художник |
Разработчик | MathWorks |
Впервые появился | конец 1970-х годов |
Стабильная версия | Р2024б [ 1 ] ![]() |
Дисциплина набора текста | динамичный , слабый |
Расширения имен файлов | .м, .п, [ 2 ] .мекс*, [ 3 ] .вместе с, [ 4 ] .инжир, [ 5 ] .mlx, [ 6 ] .mlapp, [ 7 ] .млтбх, [ 8 ] .mlappinstall, [ 9 ] .mlpkginstall [ 10 ] |
Веб-сайт | mathworks.com |
Основные реализации | |
Программное обеспечение MATLAB, GNU Octave , Sysquake | |
Под влиянием | |
Под влиянием | |
|
![]() L-образный мембранный логотип [ 19 ] | |
Разработчик(и) | MathWorks |
---|---|
Первоначальный выпуск | 1984 год |
Стабильная версия | Р2024б [ 1 ] ![]() |
Написано в | Си / С++ , MATLAB |
Операционная система | Windows , macOS и Linux [ 20 ] [ 21 ] |
Платформа | ИА-32 , x86-64 , ARM64 |
Тип | Численные вычисления |
Лицензия | Собственное коммерческое программное обеспечение |
Веб-сайт | mathworks.com |
MATLAB (аббревиатура «MAtrix LABoratory»). [ 22 ] ) — это собственный многопарадигмальный язык программирования и среда числовых вычислений, разработанный MathWorks . MATLAB позволяет манипулировать матрицами , строить графики функций и данных, реализовывать алгоритмы , создавать пользовательские интерфейсы и взаимодействовать с программами, написанными на других языках.
Хотя MATLAB предназначен в первую очередь для числовых вычислений, дополнительный набор инструментов использует MuPAD символьный механизм , обеспечивающий доступ к возможностям символьных вычислений . Дополнительный пакет Simulink добавляет графическое многодоменное моделирование и проектирование на основе моделей для динамических и встроенных систем .
По состоянию на 2020 год [update]MATLAB имеет более четырех миллионов пользователей по всему миру. [ 23 ] Они имеют разное образование в области техники , науки и экономики . По состоянию на 2017 год [update]Более 5000 колледжей и университетов по всему миру используют MATLAB для поддержки обучения и исследований. [ 24 ]
История
[ редактировать ]Происхождение
[ редактировать ]MATLAB был изобретен математиком и программистом Кливом Молером . [ 25 ] Идея MATLAB была основана на его докторской диссертации 1960-х годов. [ 25 ] Молер стал профессором математики в Университете Нью-Мексико и начал разрабатывать MATLAB для своих студентов. [ 25 ] как хобби. [ 26 ] Он разработал первоначальное программирование линейной алгебры MATLAB в 1967 году вместе со своим бывшим научным руководителем Джорджем Форсайтом . [ 25 ] За этим последовал код Фортрана для линейных уравнений в 1971 году. [ 25 ]
До версии 1.0 MATLAB «не был языком программирования; это был простой интерактивный матричный калькулятор. Не было ни программ, ни наборов инструментов, ни графики. И никаких ОДУ или БПФ ». [ 27 ]
Первая ранняя версия MATLAB была завершена в конце 1970-х годов. [ 25 ] Программное обеспечение было впервые представлено публике в феврале 1979 года в Военно-морской аспирантуре в Калифорнии. [ 26 ] Ранние версии MATLAB представляли собой простые матричные калькуляторы с 71 встроенной функцией. [ 28 ] В то время MATLAB распространялся бесплатно. [ 29 ] [ 30 ] в университеты. [ 31 ] Молер оставлял копии в университетах, которые он посещал, и у этого программного обеспечения появилось много последователей на математических факультетах университетских кампусов. [ 32 ] : 5
В 1980-х Клив Молер познакомился с Джоном Н. Литтлом . Они решили перепрограммировать MATLAB на C и продавать его для настольных компьютеров IBM, которые в то время заменяли мэйнфреймы. [ 25 ] Джон Литтл и программист Стив Бангерт перепрограммировали MATLAB на C, создали язык программирования MATLAB и разработали функции для наборов инструментов. [ 26 ]
альтернатива с открытым исходным кодом: GNU Octave (в основном совместимая с Matlab) и scilab С 1993 года доступна (похожая на Matlab).
Коммерческое развитие
[ редактировать ]MATLAB был впервые выпущен как коммерческий продукт в 1984 году на конференции по автоматическому управлению в Лас-Вегасе . [ 25 ] [ 26 ] Компания MathWorks , Inc. была основана для разработки программного обеспечения. [ 30 ] и был выпущен язык программирования MATLAB. [ 28 ] Первая продажа MATLAB состоялась в следующем году, когда Ник Трефетен из Массачусетского технологического института купил десять копий. [ 26 ] [ 33 ]
К концу 1980-х годов несколько сотен копий MATLAB было продано университетам для использования студентами. [ 26 ] Программное обеспечение получило популяризацию во многом благодаря наборам инструментов, созданным специалистами в различных областях для решения специализированных математических задач. [ 29 ] Многие из наборов инструментов были разработаны студентами Стэнфорда , которые использовали MATLAB в академических кругах, а затем принесли программное обеспечение с собой в частный сектор. [ 26 ]
Со временем MATLAB был переписан для ранних операционных систем, созданных Digital Equipment Corporation , VAX , Sun Microsystems , а также для компьютеров Unix. [ 26 ] [ 28 ] Версия 3 была выпущена в 1987 году. [ 34 ] Первый компилятор MATLAB был разработан Стивеном Джонсоном в 1990-х годах. [ 28 ]
В 2000 году MathWorks добавила основанную на Фортране библиотеку для линейной алгебры в MATLAB 6, заменив исходные функции LINPACK и EISPACK, которые были в C. [ 28 ] Пакет инструментов параллельных вычислений MATLAB был выпущен на конференции по суперкомпьютерам 2004 года, а в 2010 году к нему была добавлена поддержка графических процессоров (GPU). [ 28 ]
Новейшая история
[ редактировать ]Некоторые особенно большие изменения в программное обеспечение были внесены в версию 8 в 2012 году. [ 35 ] Пользовательский интерфейс был переработан [ нужна ссылка ] и Simulink была расширена. функциональность [ 36 ] К 2016 году MATLAB представила несколько улучшений технического и пользовательского интерфейса, включая блокнот MATLAB Live Editor и другие функции. [ 28 ]
Синтаксис
[ редактировать ]Приложение MATLAB построено на языке программирования MATLAB. Обычное использование приложения MATLAB включает использование «Командного окна» в качестве интерактивной математической оболочки или выполнение текстовых файлов, содержащих код MATLAB. [ 37 ]
"Привет, мир!" пример
[ редактировать ]Пример сообщения «Привет, мир!» программа существует в MATLAB.
disp('Hello, world!')
Это отображается так:
Hello, world!
Переменные
[ редактировать ]Переменные определяются с помощью оператора присваивания, =
. MATLAB — слабо типизированный язык программирования, поскольку типы преобразуются неявно. [ 38 ] Это язык с выведенной типизацией, поскольку переменным можно присваивать без объявления их типа, за исключением случаев, когда их следует рассматривать как символические объекты. [ 39 ] и что их тип может измениться. Значения могут поступать из констант , из вычислений, включающих значения других переменных, или из выходных данных функции. Например:
>> x = 17
x =
17
>> x = 'hat'
x =
hat
>> x = [3*4, pi/2]
x =
12.0000 1.5708
>> y = 3*sin(x)
y =
-1.6097 3.0000
Векторы и матрицы
[ редактировать ]Простой массив определяется с использованием синтаксиса двоеточия: начальный :
приращение :
терминатор . Например:
>> array = 1:2:9
array =
1 3 5 7 9
определяет переменную с именем array
(или присваивает новое значение существующей переменной с именем array
), который представляет собой массив, состоящий из значений 1, 3, 5, 7 и 9. То есть массив начинается с 1 ( начальное значение), увеличивается с каждым шагом от предыдущего значения на 2 ( значение приращения ), и останавливается, когда достигает (или почти превышает) 9 ( значение терминатора ).
Значение приращения фактически можно исключить из этого синтаксиса (вместе с одним из двоеточий), чтобы использовать значение по умолчанию 1.
>> ari = 1:5
ari =
1 2 3 4 5
присваивает переменной с именем ari
массив со значениями 1, 2, 3, 4 и 5, поскольку в качестве приращения используется значение по умолчанию 1.
Индексирование основано на единице, [ 40 ] это обычное соглашение для матриц в математике, в отличие от индексации с отсчетом от нуля, обычно используемой в других языках программирования, таких как C, C++ и Java.
Матрицы можно определить, разделив элементы строки пробелом или запятой и используя точку с запятой для разделения строк. Список элементов должен быть заключен в квадратные скобки. []
. Круглые скобки ()
используются для доступа к элементам и подмассивам (они также используются для обозначения списка аргументов функции).
>> A = [16, 3, 2, 13 ; 5, 10, 11, 8 ; 9, 6, 7, 12 ; 4, 15, 14, 1]
A =
16 3 2 13
5 10 11 8
9 6 7 12
4 15 14 1
>> A(2,3)
ans =
11
Наборы индексов могут быть заданы такими выражениями, как 2:4
, который оценивается как [2, 3, 4]
. Например, подматрицу, взятую из строк со 2 по 4 и столбцов с 3 по 4, можно записать как:
>> A(2:4,3:4)
ans =
11 8
7 12
14 1
Квадратная единичная матрица размера n может быть сгенерирована с помощью функции eye
, а матрицы любого размера с нулями или единицами могут быть сгенерированы с помощью функций zeros
и ones
, соответственно.
>> eye(3,3)
ans =
1 0 0
0 1 0
0 0 1
>> zeros(2,3)
ans =
0 0 0
0 0 0
>> ones(2,3)
ans =
1 1 1
1 1 1
Транспонирование вектора или матрицы выполняется либо функцией transpose
или добавив точку-простое число после матрицы (без точки простое число выполнит сопряженное транспонирование для сложных массивов):
>> A = [1 ; 2], B = A.', C = transpose(A)
A =
1
2
B =
1 2
C =
1 2
>> D = [0, 3 ; 1, 5], D.'
D =
0 3
1 5
ans =
0 1
3 5
Большинство функций принимают массивы в качестве входных данных и работают с каждым элементом поэлементно. Например, mod(2*J,n)
умножит каждый элемент в J на 2, а затем уменьшит каждый элемент по модулю n . MATLAB включает стандартные for
и while
циклы, но (как и в других подобных приложениях, таких как APL и R ), использование векторизованной записи приветствуется и часто выполняется быстрее. Следующий код, взятый из функции Magic.m , создает магический квадрат M для нечетных значений n (функция MATLAB meshgrid
здесь используется для создания квадратных матриц I и J, содержащих ):
[J,I] = meshgrid(1:n);
A = mod(I + J - (n + 3) / 2, n);
B = mod(I + 2 * J - 2, n);
M = n * A + B + 1;
Структуры
[ редактировать ]MATLAB поддерживает типы данных структуры. [ 41 ] Поскольку все переменные в MATLAB являются массивами, более подходящим названием является «массив структур», где каждый элемент массива имеет одинаковые имена полей. Кроме того, MATLAB поддерживает динамические имена полей. [ 42 ] (поиск полей по имени, манипуляции с полями и т. д.).
Функции
[ редактировать ]При создании функции MATLAB имя файла должно совпадать с именем первой функции в файле. Допустимые имена функций начинаются с буквенного символа и могут содержать буквы, цифры или символы подчеркивания. Переменные и функции чувствительны к регистру. [ 43 ]
rgbImage = imread('ecg.png');
grayImage = rgb2gray(rgbImage); % for non-indexed images
level = graythresh(grayImage); % threshold for converting image to binary,
binaryImage = im2bw(grayImage, level);
% Extract the individual red, green, and blue color channels.
redChannel = rgbImage(:, :, 1);
greenChannel = rgbImage(:, :, 2);
blueChannel = rgbImage(:, :, 3);
% Make the black parts pure red.
redChannel(~binaryImage) = 255;
greenChannel(~binaryImage) = 0;
blueChannel(~binaryImage) = 0;
% Now recombine to form the output image.
rgbImageOut = cat(3, redChannel, greenChannel, blueChannel);
imshow(rgbImageOut);
Дескрипторы функций
[ редактировать ]MATLAB поддерживает элементы лямбда-исчисления путем введения указателей на функции, [ 44 ] или ссылки на функции, которые реализованы либо в файлах .m, либо анонимно. [ 45 ] /вложенные функции. [ 46 ]
Классы и объектно-ориентированное программирование
[ редактировать ]MATLAB поддерживает объектно-ориентированное программирование, включая классы, наследование , виртуальную диспетчеризацию, пакеты, семантику передачи по значению и семантику передачи по ссылке . [ 47 ] Однако синтаксис и соглашения о вызовах существенно отличаются от других языков. MATLAB имеет классы значений и ссылочные классы, в зависимости от того, имеет ли класс дескриптор суперкласса (для ссылочных классов) или нет (для классов значений). [ 48 ]
Поведение вызова метода различается для классов значений и ссылочных классов. Например, вызов метода:
object.method();
может изменить любой член объекта, только если объект является экземпляром ссылочного класса, в противном случае методы класса значения должны возвращать новый экземпляр, если ему необходимо изменить объект.
Ниже приведен пример простого класса:
classdef Hello
methods
function greet(obj)
disp('Hello!')
end
end
end
При помещении в файл с именем hello.m
, это можно выполнить с помощью следующих команд:
>> x = Hello();
>> x.greet();
Hello!
Программирование графики и графического интерфейса пользователя
[ редактировать ]![]() | Графики недоступны по техническим причинам. Дополнительную информацию можно найти на Phabricator и на MediaWiki.org . |
MATLAB имеет тесно интегрированные функции построения графиков. Например, график функции можно использовать для создания графика из двух векторов x и y . Код:
x = 0:pi/100:2*pi;
y = sin(x);
plot(x,y)
дает следующую фигуру синусоидальной функции :
MATLAB также поддерживает трехмерную графику:
[X,Y] = meshgrid(-10:0.25:10,-10:0.25:10);
f = sinc(sqrt((X/pi).^2+(Y/pi).^2));
mesh(X,Y,f);
axis([-10 10 -10 10 -0.3 1])
xlabel('{\bfx}')
ylabel('{\bfy}')
zlabel('{\bfsinc} ({\bfR})')
hidden off
|
[X,Y] = meshgrid(-10:0.25:10,-10:0.25:10);
f = sinc(sqrt((X/pi).^2+(Y/pi).^2));
surf(X,Y,f);
axis([-10 10 -10 10 -0.3 1])
xlabel('{\bfx}')
ylabel('{\bfy}')
zlabel('{\bfsinc} ({\bfR})')
| |
Этот код создает каркасный трехмерный график двумерной ненормализованной функции sinc : | Этот код создает поверхностный трехмерный график двумерной ненормализованной функции sinc : | |
![]() |
![]() |
MATLAB поддерживает разработку с графическим пользовательским интерфейсом (GUI). приложений [ 49 ] Пользовательские интерфейсы могут создаваться либо программно, либо с использованием сред визуального проектирования, таких как GUIDE и App Designer . [ 50 ] [ 51 ]
MATLAB и другие языки
[ редактировать ]MATLAB может вызывать функции и подпрограммы, написанные на языках программирования C или Fortran . [ 52 ] Создается функция-оболочка, позволяющая передавать и возвращать типы данных MATLAB. Файлы MEX (исполняемые файлы MATLAB) представляют собой динамически загружаемые объектные файлы, созданные путем компиляции таких функций. [ 53 ] [ 54 ] двустороннее взаимодействие с Python . С 2014 года было добавлено [ 55 ] [ 56 ]
Библиотеки, написанные на Perl , Java , ActiveX или .NET, можно вызывать напрямую из MATLAB. [ 57 ] [ 58 ] и многие библиотеки MATLAB (например, поддержка XML или SQL ) реализованы как оболочки вокруг библиотек Java или ActiveX. Вызов MATLAB из Java более сложен, но его можно выполнить с помощью набора инструментов MATLAB. [ 59 ] который продается отдельно MathWorks или с использованием недокументированного механизма под названием JMI (Java-to-MATLAB Interface), [ 60 ] [ 61 ] (который не следует путать с несвязанным интерфейсом метаданных Java , который также называется JMI). Официальный API MATLAB для Java был добавлен в 2016 году. [ 62 ]
В качестве альтернативы символическому Math Toolbox на основе MuPAD , доступному в MathWorks, MATLAB можно подключить к Maple или Mathematica . [ 63 ] [ 64 ]
Также существуют библиотеки для импорта и экспорта MathML . [ 65 ]
Отношения к санкциям США
[ редактировать ]В 2020 году MATLAB прекратила оказывать услуги двум китайским университетам из-за санкций США. Университеты заявили, что на это будут реагировать более широким использованием альтернатив с открытым исходным кодом и разработкой отечественных альтернатив. [ 66 ]
См. также
[ редактировать ]- Сравнение программного обеспечения для численного анализа
- Список программного обеспечения для численного анализа
Примечания
[ редактировать ]- ^ Перейти обратно: а б https://www.mathworks.com/company/newsroom/mathworks-announces-release-2024b-of-matlab-and-simulink.html . Проверено 15 сентября 2024 г.
{{cite web}}
: Отсутствует или пусто|title=
( помощь ) - ^ «Защитите свой исходный код» . Матворкс . Проверено 1 ноября 2019 г.
- ^ «Совместимость платформы MEX» . Матворкс . Проверено 1 ноября 2019 г.
- ^ «Версии MAT-файла» . Матворкс . Проверено 1 ноября 2019 г.
- ^ «Сохраните рисунок, чтобы позже открыть его в MATLAB» . Матворкс . Проверено 1 ноября 2019 г.
- ^ «Формат файла живого кода (.mlx)» . Матворкс . Проверено 1 ноября 2019 г.
- ^ «Дизайнер приложений MATLAB» . Матворкс . Проверено 1 ноября 2019 г.
- ^ «Распространение набора инструментов» . Матворкс . Проверено 1 ноября 2019 г.
- ^ «Файл установщика приложения MATLAB» . Матворкс . Проверено 1 ноября 2019 г.
- ^ «Установка пакета поддержки» . Матворкс . Проверено 1 ноября 2019 г.
- ^ «Интервью с КЛИВОМ МОЛЕРОМ, проведенное Томасом Хейгом 8 и 9 марта 2004 г., Санта-Барбара, Калифорния» (PDF) . Музей истории компьютеров. Архивировано из оригинала (PDF) 27 декабря 2014 года . Проверено 6 декабря 2016 г.
Таким образом, APL, Speakeasy, LINPACK, EISPACK и PL0 были предшественниками MATLAB.
- ^ Безансон, Джефф; Карпински, Стефан; Шах, Вирал; Эдельман, Алан (14 февраля 2012 г.). «Почему мы создали Джулию» . Юля Язык . Проверено 1 декабря 2016 г.
- ^ Итон, Джон В. (21 мая 2001 г.). «Октава: прошлое, настоящее и будущее» (PDF) . Техасско-Висконсинский консорциум моделирования и управления . Архивировано из оригинала (PDF) 9 августа 2017 года . Проверено 1 декабря 2016 г.
- ^ «История» . Сцилаб. Архивировано из оригинала 1 декабря 2016 года . Проверено 1 декабря 2016 г.
- ^ SM Rump: INTLAB - INterval LAboratory. Тибор Цендес, редактор, «Развития в области надежных вычислений», страницы 77–104. Kluwer Academic Publishers, Дордрехт, 1999.
- ^ Мур, Р.Э., Кирфотт, РБ, и Клауд, MJ (2009). Введение в интервальный анализ. Общество промышленной и прикладной математики .
- ^ Рамп, С.М. (2010). Методы проверки: строгие результаты с использованием арифметики с плавающей запятой. Acta Numerica , 19, 287–449.
- ^ Харгривз, GI (2002). Интервальный анализ в MATLAB. Численные алгоритмы, (2009.1).
- ^ «Г-образная мембрана» . Матворкс. 2003 . Проверено 7 февраля 2014 г.
- ^ «Системные требования и доступность платформы» . Матворкс . Проверено 14 августа 2013 г.
- ^ «Дорожная карта платформы для семейств продуктов MATLAB и Simulink» . de.mathworks.com . Проверено 22 декабря 2021 г.
- ^ «Матрицы и массивы — MATLAB и Simulink» . www.mathworks.com . Проверено 21 мая 2022 г.
- ^ MathWorks (февраль 2020 г.). «Обзор компании» (PDF) .
- ^ «Текущее количество пользователей Matlab во всем мире» . Математические работы . 9 ноября 2017 г. Проверено 26 апреля 2023 г.
- ^ Перейти обратно: а б с д и ж г час Чонаки, Н.; Лебедка, Д. (2005). «Обзоры Maple, Mathematica и Matlab: скоро выйдет ближайшая к вам публикация». Вычисления в науке и технике . 7 (2). Институт инженеров по электротехнике и электронике (IEEE): 9–10. Бибкод : 2005CSE.....7b...9C . дои : 10.1109/mcse.2005.39 . ISSN 1521-9615 . S2CID 29660034 .
- ^ Перейти обратно: а б с д и ж г час Хей, Томас. «Клив Молер: пионер математического программного обеспечения и создатель Matlab» (PDF) . IEEE Анналы истории вычислений . Компьютерное общество IEEE.
- ^ «Краткая история MATLAB» . www.mathworks.com . Проверено 4 сентября 2021 г.
- ^ Перейти обратно: а б с д и ж г Молер, Клив; Литтл, Джек (12 июня 2020 г.). «История MATLAB» . Труды ACM по языкам программирования . 4 (ХОПЛ). Ассоциация вычислительной техники (ACM): 1–67. дои : 10.1145/3386331 . ISSN 2475-1421 .
- ^ Перейти обратно: а б Сюэ, Д.; Пресс, ТУ (2020). Программирование MATLAB: решения математических задач . Грютер STEM. Грютер. стр. 21. ISBN 978-3-11-066370-9 . Проверено 16 сентября 2020 г.
- ^ Перейти обратно: а б Пресс, ЦПР (2008). Решение прикладных математических задач с помощью MATLAB . ЦРК Пресс. п. 6. ISBN 978-1-4200-8251-7 . Проверено 16 сентября 2020 г.
- ^ Вудфорд, К.; Филлипс, К. (2011). Численные методы с проработанными примерами: Matlab Edition . SpringerLink: Бюхер. Спрингер Нидерланды. п. 1. ISBN 978-94-007-1366-6 . Проверено 16 сентября 2020 г.
- ^ Транквилло, СП (2011). MATLAB для инженерии и наук о жизни . Электронная библиотека по инженерным наукам и информатике «Синтез». Издательство Морган и Клейпул. ISBN 978-1-60845-710-6 . Проверено 17 сентября 2020 г.
- ^ ЛоТурко, Лори (28 января 2020 г.). «Ускорение темпов инженерного дела» . Новости МТИ . Массачусетский технологический институт . Проверено 16 сентября 2020 г.
- ^ Гатто, Марино; Риццоли, Андреа (1993). «Обзор MATLAB, версия 4.0». Моделирование природных ресурсов . 7 (1). Уайли: 85–88. Бибкод : 1993NRM.....7...85G . дои : 10.1111/j.1939-7445.1993.tb00141.x . ISSN 0890-8575 .
- ^ Чо, MJ; Мартинес, WL (2014). Статистика в MATLAB: Учебник . Чепмен и Холл / CRC Информатика и анализ данных. ЦРК Пресс. ISBN 978-1-4665-9657-3 . Проверено 17 сентября 2020 г.
- ^ Сюэ, Д.; Чен, Ю. (2013). Методы системного моделирования с помощью MATLAB и Simulink . Больше не используется. Уайли. п. 17. ISBN 978-1-118-69437-4 . Проверено 15 октября 2020 г.
- ^ «Документация MATLAB» . Матворкс . Проверено 14 августа 2013 г.
- ^ «Сравнение MATLAB с другими объектно-ориентированными языками» . МАТЛАБ . Матворкс . Проверено 14 августа 2013 г.
- ^ «Создание символических переменных и выражений» . Символьный математический набор инструментов . Матворкс . Проверено 14 августа 2013 г.
- ^ «Матричное индексирование» . Матворкс . Проверено 14 августа 2013 г.
- ^ «Структуры» . Матворкс . Проверено 14 августа 2013 г.
- ^ «Сгенерировать имена полей из переменных» . Матворкс . Проверено 14 августа 2013 г.
- ^ «Регистральная и пространственная чувствительность» . Матворкс . Проверено 1 ноября 2019 г.
- ^ «Диспетчеры функций» . Матворкс . Проверено 14 августа 2013 г.
- ^ «Анонимные функции» . Матворкс . Проверено 14 августа 2013 г.
- ^ «Вложенные функции» . Матворкс.
- ^ «Объектно-ориентированное программирование» . Матворкс . Проверено 14 августа 2013 г.
- ^ «Сравнение классов дескрипторов и значений» . Матворкс.
- ^ «МАТЛАБ ГИП» . МатВоркс. 30 апреля 2011 года . Проверено 14 августа 2013 г.
- ^ «Создание простого графического интерфейса пользователя» . Матворкс . Проверено 14 августа 2014 г.
- ^ «Дизайнер приложений MATLAB» . Матворкс . Проверено 1 ноября 2019 г.
- ^ «Интерфейсы прикладного программирования для MATLAB» . Матворкс. Архивировано из оригинала 15 сентября 2017 года . Проверено 14 августа 2013 г.
- ^ «Создание MEX-файлов» . Матворкс. Архивировано из оригинала 3 марта 2014 года . Проверено 14 августа 2013 г.
- ^ Спилман, Дэн (10 февраля 2004 г.). «Соединение C и Matlab» . Йельский университет, факультет компьютерных наук . Проверено 20 мая 2008 г.
- ^ «движок MATLAB для Python» . Матворкс . Проверено 13 июня 2015 г.
- ^ «Вызов библиотек Python» . Матворкс . Проверено 13 июня 2015 г.
- ^ «Внешние языковые интерфейсы программирования» . Матворкс. Архивировано из оригинала 11 марта 2014 года . Проверено 14 августа 2013 г.
- ^ «Вызов сценария Perl, используя соответствующий исполняемый файл операционной системы» . Матворкс . Проверено 7 ноября 2013 г.
- ^ «МАТЛАБ Строитель JA» . Матворкс . Проверено 7 июня 2010 г.
- ^ Альтман, Яир (14 апреля 2010 г.). «Интерфейс Java-Matlab» . Недокументированный Матлаб. Архивировано из оригинала 5 сентября 2015 года . Проверено 7 июня 2010 г.
- ^ Каплан, Джошуа. «матлабконтроль JMI» .
- ^ «API MATLAB Engine для Java» . Матворкс . Проверено 15 сентября 2016 г.
- ^ Гермундссон, Роджер (30 сентября 1998 г.). «МаМа: вызов MATLAB из Mathematica с помощью MathLink» . Вольфрам Исследования . Архив библиотеки Вольфрама.
- ^ рсменон; сжорват (2013). «MATLink: связь с MATLAB из Mathematica» . Проверено 14 августа 2013 г.
- ^ Вайцель, Майкл (1 сентября 2006 г.). «Импорт/экспорт MathML» . MathWorks — обмен файлами. Архивировано из оригинала 25 февраля 2011 года . Проверено 14 августа 2013 г.
- ^ «Военный запрет США лишает два китайских университета доступа к популярному программному обеспечению» . Южно-Китайская Морнинг Пост . 12 июня 2020 г. Проверено 6 ноября 2020 г.
Дальнейшее чтение
[ редактировать ]- Гилат, Амос (2004). MATLAB: Введение в приложения, 2-е издание . Джон Уайли и сыновья. ISBN 978-0-471-69420-5 .
- Квартерони, Альфио ; Салери, Фаусто (2006). Научные вычисления с MATLAB и Octave . Спрингер. ISBN 978-3-540-32612-0 .
- Феррейра, AJM (2009). Коды MATLAB для анализа методом конечных элементов . Спрингер. ISBN 978-1-4020-9199-5 .
- Линч, Стивен (2004). Динамические системы с приложениями, использующими MATLAB . Биркхойзер. ISBN 978-0-8176-4321-8 .
Внешние ссылки
[ редактировать ]- Программное обеспечение для обработки изображений
- программное обеспечение 1970-х годов
- Внедрения, связанные с компьютером, в 1970-е годы
- Языки программирования массивов
- Собственное программное обеспечение, написанное на языке C.
- Программное обеспечение системы компьютерной алгебры для Linux
- Программное обеспечение системы компьютерной алгебры для macOS
- Программное обеспечение системы компьютерной алгебры для Windows
- Системы компьютерной алгебры
- Программное обеспечение для компьютерного зрения
- Кроссплатформенное программное обеспечение
- Программное обеспечение для интеллектуального анализа данных и машинного обучения
- Программное обеспечение для визуализации данных
- Языки программирования, ориентированные на данные
- Динамически типизированные языки программирования
- Программное обеспечение для эконометрики
- Языки программирования высокого уровня
- Программное обеспечение IRIX
- Линейная алгебра
- Программное обеспечение для математической оптимизации
- Программное обеспечение для численного анализа для Linux
- Программное обеспечение для численного анализа для macOS
- Программное обеспечение для численного анализа для Windows
- Численная линейная алгебра
- Языки числового программирования
- Числовое программное обеспечение
- Параллельные вычисления
- Программное обеспечение для печати
- Проприетарное коммерческое программное обеспечение для Linux.
- Собственное кроссплатформенное программное обеспечение.
- Программное обеспечение для регрессии и подбора кривых
- Язык моделирования программного обеспечения
- Статистические языки программирования
- Программное обеспечение временных рядов
- Специализированные языки программирования