МАТЛАБ
Парадигма | мультипарадигмальность : функциональная , императивная , процедурная , объектно-ориентированная , массивовая. |
---|---|
Разработано | Кливский художник |
Разработчик | MathWorks |
Впервые появился | конец 1970-х годов |
Стабильная версия | R2024a Обновление 3 [1]
/ 14 мая 2024 г |
Дисциплина набора текста | динамичный , слабый |
Расширения имен файлов | .м, .п, [2] .мекс*, [3] .вместе с, [4] .инжир, [5] .mlx, [6] .mlapp, [7] .млтбх, [8] .mlappinstall, [9] .mlpkginstall [10] |
Веб-сайт | mathworks.com |
Основные реализации | |
Программное обеспечение MATLAB, GNU Octave , Sysquake | |
Под влиянием | |
Под влиянием | |
|
Разработчик(и) | MathWorks |
---|---|
Первоначальный выпуск | 1984 год |
Стабильная версия | R2024a Обновление 3 [1]
/ 14 мая 2024 г |
Написано в | Си / С++ , 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]
См. также
[ редактировать ]- Сравнение программного обеспечения для численного анализа
- Список программного обеспечения для численного анализа
Примечания
[ редактировать ]- ^ Jump up to: а б «Примечания к выпуску MATLAB®» . Проверено 13 июня 2024 г.
- ^ «Защитите свой исходный код» . Матворкс . Проверено 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 г.
- ^ Jump up to: а б с д и ж г час Чонаки, Н.; Лебедка, Д. (2005). «Обзоры Maple, Mathematica и Matlab: скоро выйдет ближайшая к вам публикация». Вычисления в науке и технике . 7 (2). Институт инженеров по электротехнике и электронике (IEEE): 9–10. Бибкод : 2005CSE.....7b...9C . дои : 10.1109/mcse.2005.39 . ISSN 1521-9615 . S2CID 29660034 .
- ^ Jump up to: а б с д и ж г час Хей, Томас. «Клив Молер: пионер математического программного обеспечения и создатель Matlab» (PDF) . IEEE Анналы истории вычислений . Компьютерное общество IEEE.
- ^ «Краткая история MATLAB» . www.mathworks.com . Проверено 4 сентября 2021 г.
- ^ Jump up to: а б с д и ж г Молер, Клив; Литтл, Джек (12 июня 2020 г.). «История MATLAB» . Труды ACM по языкам программирования . 4 (ХОПЛ). Ассоциация вычислительной техники (ACM): 1–67. дои : 10.1145/3386331 . ISSN 2475-1421 .
- ^ Jump up to: а б Сюэ, Д.; Пресс, ТУ (2020). Программирование MATLAB: решение математических задач . Грютер STEM. Грютер. стр. 21. ISBN 978-3-11-066370-9 . Проверено 16 сентября 2020 г.
- ^ Jump up to: а б Пресс, ЦПР (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.
- Собственное кроссплатформенное программное обеспечение.
- Программное обеспечение для регрессии и подбора кривых
- Язык моделирования программного обеспечения
- Статистические языки программирования
- Программное обеспечение временных рядов
- Специализированные языки программирования