Progress-servis55.ru

Новости из мира ПК
2 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Matlab что значит

В помощь математикам: обзор MATLAB

Доверь свою работу кандидату наук!

Обзор MATLAB

Те, кто имеет дело с высшей математикой, прекрасно знают, с какими математическими «чудовищами» иногда приходится сталкиваться. Например, на вычисление какого-нибудь гигантского тройного интеграла можно потратить настоящую уйму времени, душевных сил и не восстанавливающихся нервных клеток. Конечно, это очень интересно, бросить вызов интегралу, и взять его. Но, что делать, если вместо этого интеграл грозиться взять Вас? Или, что еще хуже, кубический трехчлен вышел из-под контроля и разбушевался? Такого и врагу не пожелаешь.

Что делать?

Раньше вариантов было всего два: плюнуть на все и пойти гулять или вступить в многочасовую схватку с интегралом. Ну, кому многочасовую, кому многоминутную – кто как учился. Но суть не в этом. Двадцатый век и неумолимо движущийся прогресс предлагают нам третий способ, а именно позволяют взять самый сложный интеграл «по-быстрому». То же самое касается решения всевозможных уравнений, построения графиков функций в виде кубических гиперболоидов и т.д.

Для таких неординарных, но периодически случающихся среди студентов ситуаций существует мощное математическое оружие. Встречайте, кто еще не знает – пакет программ MATLAB.

Матлаб и решит уравнение, и аппроксимирует, и построит график функции. Понимаете, что это значит, друзья?

Это значит, что MATLAB – один из мощнейших на сегодняшний день пакетов обработки данных. Название расшифровывается как Matrix Laboratory. Матричная Лаборатория, если по-русски. Возможности программы покрывают практически все области математики. Так, пользуясь матлабом, Вы сможете:

  • Производить всевозможные операции над матрицами, решать линейные уравнения, работать с векторами;
  • Вычислять корни многочленов любой степени, производить операции над многочленами, дифференцировать, экстраполировать и интерполировать кривые, строить графики любых функций;
  • Проводить статистический анализ данных с использованием цифровой фильтрации, статистической регрессии;
  • Решать дифференциальные уравнения. В частных производных, линейных, нелинейных, с граничными условиями – не важно, матлаб все решит;
  • Выполнять операции целочисленной арифметики.

MATLAB

Помимо всего этого возможности MATLAB позволяют визуализировать данные вплоть до построения трехмерных графиков и создания анимированных роликов.

Наше описание матлаб, конечно, далеко не полное. Помимо предусмотренных производителем возможностей и функций существует огромное количество инструментов матлаб, написанных просто энтузиастами или другими компаниями.

MATLAB как язык программирования

М-файл

А еще MATLAB – это язык программирования, используемый непосредственно при работе с программой. Не будем вдаваться в подробности, скажем только, что программы, написанные на языке MATLAB, бывают двух видов: функции и скрипты.

MATLAB — серьезное средство для серьезных ребят

Основной рабочий файл программы – М-файл. Это бесконечный текстовый файл, и именно в нем происходит непосредственно программирование вычислений. Кстати, пусть Вас не пугает это слово – для того, чтобы работать в MATLAB, вовсе не нужно быть профессиональным программистом.

М-файлы делятся на

  • М-сценарии. М-сценарий – самый простой тип M-файла, у которого отсутствуют входные и выходные аргументы. Данный файл используется для автоматизации многократно повторяемых вычислений.
  • M-функции. М-функции – это М-файлы, допускающие наличие входных и выходных аргументов.

Для того чтобы наглядно показать, как происходит работа в MATLAB, приведем ниже пример создания функции в матлабе. Данная функция будет вычислять среднее значение вектора.
function y = average (x)
% AVERAGE Среднее значение элементов вектора.
% AVERAGE(X), где X — вектор. Вычисляет среднее значение элементов вектора.
% Если входной аргумент не является вектором, генерируется ошибка.
[m,n] = size(x);
if (

Строка определения функции сообщает системе MATLAB, что файл является М-функцией, а также определяет список входных аргументов. Так, строка определения функции average имеет вид:
function y = average(x)
Где:

  1. function — ключевое слово, определяющее М-функцию;
  2. y — выходной аргумент;
  3. average — имя функции;
  4. x — входной аргумент.

Итак, чтобы написать функцию в матлабе, необходимо помнить, что каждая функция в системе MATLAB содержит строку определения функции, подобную приведенной.

Безусловно, такой мощный пакет нужен не только для того, чтобы облегчить жизнь студентам. В настоящее время MATLAB, с одной стороны, очень популярен среди специалистов многих научных и инженерных отраслей. С другой стороны, возможность работы с большими матрицами делает MATLAB незаменимым инструментом финансовых аналитиков, позволяющим решить намного больше задач, чем, к примеру, известный всем Excel. Подробнее о том, как сделать презентацию на компьютере вы можете прочитать в обзорной статье.

Недостатки работы с MATLAB

MATLAB — хорошо, но тяжело

Какие есть трудности в работе с MATLAB? Трудность, пожалуй, всего одна. Но фундаментальная. Чтобы полностью раскрыть возможности MATLAB и с легкостью решать встающие перед Вами задачи, придется попотеть и сначала разобраться с самим матлабом (как создать файл, как создать функцию и др.). А это не так просто, ибо мощность и широкие возможности требуют жертв.

При всем желании нельзя сказать, что MATLAB – простая программа. Тем не менее, надеемся, все вышеперечисленное будет достаточным аргументом для того, чтобы взяться за ее освоение.

И напоследок. Если Вы не знаете, почему все в Вашей жизни пошло так, а не иначе, спросите об этом у матлаба. Просто наберите в командной строке “why” (почему). Он ответит. Попробуйте!

Теперь вы знаете возможности Матлаб. В области образования MATLAB часто используется в преподавании численных методов и линейной алгебры. Многим студентам не обойтись без него при обработке результатов эксперимента, проведенного в ходе лабораторной работы. Для быстрого и качественного освоения основ работы с MATLAB Вы всегда можете обратиться к нашим специалистам, в любой момент готовым ответить на любой Ваш вопрос.

Стандартные функции Matlab

Все операции в Matlab ориентированы прежде всего на работу с матрицами, но могут выть использованы при работе с векторами и скалярными переменными.

Элементарные функции Matlab. К ним относятся следующие функции:

sin(x) sinh(x) asin(x) asinh(x)

cos(x) cosh(x) acos(x) acosh(x)

tan(x) tanh(x) atan(x) atan2(x,y) atanh(x)

cot(x) coth(x) acot(x) acoth(x)

exp(x) log(x) log10(x) log2(x) pow2(x) sqrt(x)

Функции комплексного аргумента:

abs(z) – модуль комплексного числа; angle(z) – аргумент;

complex(x, y) – формирование комплексного числа x+y*i;

conj(z) – возвращает комплексно-сопряженное (по отношению к z) число;

real(z) – возвращает действительную часть; imag(z) – мнимую часть.

Функции округления и нецелочисленного деления:

fix(x) – округление в сторону к нулю, floor(x) – к –¥, ceil(x) – к +¥,

round(x) – до ближайшего целого;

mod(x, y) – остаток от деления x/y с учетом знака,

rem(x, y) – то же, без учета знака;

sign(x) – знак числа (+1/–1).

Элементарные функции, как и всякие другие, имеют один результат (массив). Элементарные функции могут быть использованы с одинаковым синтаксисом как для чисел, так и для массивов.

Пример 1. Разный тип параметров

» x=-8; X=[5 -1 -2]; A=[1 2 -3; -5 6 7]; z=3-4i;

Различают матричные и поэлементные арифметические операции.

+ – уточнение знака (унарная), сложение;

– – изменение знака (унарная), вычитание;

Поскольку математический смысл операций матричного и поэлементного сложения и вычитания идентичен:

C = A ± B означает

синтаксис матричных и поэлементных операций сложения и вычитания одинаков, в них используются одни и те же символы операций.

* – скалярное матричное умножение;

^ – матричное возведение в степень;

.^ – поэлементное возведение в степень;

– матричное деление слева;

/ – матричное деление справа;

.’ – несопряженное транспонирование (унарная).

Все арифметические операции, за исключением указанных, являются бинарными.

В операциях +, –, .*, ./ и .^ либо оба операнда должны иметь одинаковую размерность, либо один из операндов должен быть скалярной величиной.

» A=[1 2 3; 4 5 6]; B=[7 8 9; 3 2 1];

7.0000 4.0000 3.0000

0.7500 0.4000 0.1667

0.7000 0.8000 0.9000

0.3000 0.2000 0.1000

Для операции * (матричное произведение) матрица-сомножитель2 должна иметь столько строк, сколько столбцов имеет матрица-сомножитель1:

Inner matrix dimensions must agree.

Операции транспонирования ‘ и .’ для матриц с действительными коэффициентами абсолютно равнозначны:

Для комплексных чисел и матриц с комплексными коэффициентами операция ‘ дает транспонированную сопряженную матрицу, а операция .’ – транспонированную несопряженную:

» Ac=[1+2i 1+3i 1+4i; 2+3i 2+4i 2+5i];

1.0000 — 2.0000i 2.0000 — 3.0000i

1.0000 — 3.0000i 2.0000 — 4.0000i

1.0000 — 4.0000i 2.0000 — 5.0000i

1.0000 + 2.0000i 2.0000 + 3.0000i

1.0000 + 3.0000i 2.0000 + 4.0000i

1.0000 + 4.0000i 2.0000 + 5.0000i

Операция ^ (матричное возведение в степень) выполняется только для квадратных матриц, и означает умножение матрицы саму на себя заданное число раз (второй операнд обязательно скаляр):

-0.9100 — 3.5442i 0.4163 + 1.6212i

0.6244 + 2.4318i -0.2856 — 1.1124i

генерирует обратную матрицу D -1 .

Операция X/Y эквивалентна X*Y -1 , операция XY – операции X -1 *Y.

Последняя операция широко используется при решении систем линейных уравнений вида

Действительно, представив систему уравнений в матричной форме:

и умножив обе части последнего уравнения на A -1 слева, получим:

A -1 * A * X = A -1 * B,

откуда решение системы уравнений:

Пример. Решить систему уравнений

Решение сводится к набору в интерактивном режиме следующих команд:

Проверку вычисления корней можно выполнить следующим образом:

| – логическое «или» (0|0 – 0, 1|0 – 1, 0|1 – 1, 1|1 – 1);

xor – логическое исключающее «или» (0xor0 – 0, 0xor1 – 1, 1xor0 – 1, 1xor1 – 0);

Если логические операции (а также логические функции) выполняются над действительными числами, то ложью считают число нуль, а истиной – все числа, не равные нулю.

Операции отношения (сравнения)

> – больше; >= – больше или равно; 1

» A=[1 8 3; 6 2 5]; B=[4 3 1; 2 6 8];

» A d 0 , 10 dk ]. Шаг по показателю степени hd= . Отношение двух соседних элементов есть величина постоянная =10 hd .

10 100 1000 10000

1.0000 2.0000 3.0000 4.0000

zeros – матрица, состоящая из нулей; ones – матрица, состоящая из единиц;

rand – матрица, состоящая из случ. чисел с равномерным распределением;

randn – матрица, состоящая из случ. Чисел с нормальным распределением.

zeros(n) – формирует квадратную матрицу n´n, состоящую из нулей;

zeros(m, n) – формирует матрицу m´n, состоящую из нулей;

(zeros(1, n) – вектор-строка; zeros(m, 1) – вектор-столбец)

zeros(size(A)) – формирует матрицу, состоящую из нулей, той же размерности, что и матрица A.

Формат обращения к функциям ones, rand и randn аналогичный.

Разницу между функциями rand и randn можно показать графически:

» xr=rand(1,100); xrs=sort(xr); bar(xrs)

» yr=randn(1,100); yrs=sort(yr); bar(yrs)

eye(n) – формирует единичную диагональную матрицу n´n.

diag(B) (B – двухмерная матрица) – выделяет главную диагональ матрицы B и помещает ее в вектор-столбец;

diag(x) (x – вектор) – формирует диагональную матрицу, используя вектор x в качестве главной диагонали.

» A=[1 2 3; 4 5 6; 7 8 9];

Манипуляции с матрицами

tril (A) – формирует треугольную матрицу как нижнюю часть от матрицы A;

triu(A) – формирует треугольную матрицу как верхнюю часть от матрицы А.

» A=[1 2 3; 4 5 6; 7 8 9];

lu(A) – разложение Холецкого – заменяет квадратную матрицу A скалярным произведением двух треугольных матриц L и U методом Гаусса:

» A=[1 2 3; 4 5 6; 7 8 9];

0.5714 0.5000 1.0000

7.0000 8.0000 9.0000

inv(A) – возвращает матрицу A -1 , обратную заданной квадратной матрице A;

det(A) – возвращает определитель квадратной матрицы A.

fliplr(A) – поворот матрицы A на 180° в горизонтальном направлении;

flipud(A) – поворот матрицы A на 180° в вертикальном направлении;

rot90(A) – поворот матрицы A на 90° против часовой стрелки;

rot90(A, k) – поворот матрицы A на k*90° против часовой стрелки (k – целое число).

Манипуляции с векторами

cross(x, y) – векторное произведение векторов x и y в трехмерном пространстве;

cross(A, B, dim) – векторное произведение многомерных массивов A и B по размерности dim;

dot(x, y) – скалярное произведение векторов x и y;

dot(A, B, dim) – скал. произведение многомерных массивов A и B по размерности dim.

Длины векторов x и y, а также длина матриц A и B по размерности dim должны быть равны 3.

Базовые операции анализа

Пусть a,b,c – числа, х,у,z – векторы, А,В,C – матрицы.

c=max(a, b) – возвращает максимальное из двух чисел a и b (при комплексных аргументах по умолчанию сравниваются модули):

z=max(x, y) – вектор той же размерности, что x и y, составленный из максимальных элементов векторов;

C=max(A, B) – матрица той же размерности, что и , составленная из максимальных элементов матриц.

xmax=max(x) – максимальный элемент вектора x;

[xmax, imax]=max(x) – дополнительно записывает адрес максимального элемента в числовую переменную imax (если максимальных элементов несколько, возвращается адрес первого из них);

amax=max(A) – возвращает вектор-строку amax из максимальных элементов столбцов матрицы А;

[amax, imax]=max(A) – дополнительно формируется вектор-строка imax, составленный из номеров строк, в которых расположены максимальные элементы столбцов.

» a=1; b=2; x=[1 3 2]; y=[2 1 3]; A=[1 2 3; 4 5 6]; B=[3 2 1; 6 5 4];

MatLab и ООП, оптимизация

Данный пост предназначен для людей, имеющих практику программирования ООП (извините за тавтологию), волей судеб вынужденых писать на MatLab. Язык приятный, но граблей достаточно большое количество, и не обязательно каждому наступить на них все.

На написание вдохновил недавний пост об оптимизации кода на MatLab, точнее комментарии, требовавшие большего углубления в тему.

История

В MatLab ООП долгое время вообще не было.
Году в 2005 появились первые, страшно выглядящие потуги: класс — папка, метод — отдельный файл, свойства — единый метод доступа с параметром «имя свойства».
«Прекрасное» начало, к счастью от него быстро отказались.

Ещё через несколько лет сделали ООП в более привычном виде — классы, наследование, всё как у людей. Кроме нескольких деталей.

Несколько деталей

Overload

До сих пор невозможно определить несколько методов с одним именем. Сам MatLab объясняет это отсутствием типизации переменных (единственное отличие разных методов было бы количество параметров) и необязательность передачи параметров в функции (приехали).

Выход — писать множество функций с похожими именами, возможно вместе с функцией-диспетчером, анализирующую ситуацию и вызывающую одну из этих функций.

Abstract static

Невозможно определить abstract static методы или свойства. А иногда очень хочется.

Выхода пока не нашёл, MatLab в курсе, багом не считает.

Передача параметров по значению или по ссылке

Все параметры передаются по значению (что заставляет многих пользователей ратовать за отход от использования функций — ужас, ужас!), но через lazy method. То есть копирование происходит только в случае изменения переменной. Если этот механизм хорошо понимать, можно выиграть (точнее не потерять по сравнению с привычной передачей переменных по ссылке) в скорости вычислений.

Объекты «обычных» классов также передаются по значению.
Впрочем, если класс наследует от стандартного MatLab класса handle, его объекты станут передаваться по ссылке.

Генерируемая документация

После java/C++ привыкаешь, что документация должна автоматически создаваться на основе оставленных тобою в коде комментариев. MatLab предлагает мутанта под названием Publisher, который шатко-валко справляется с задачей на уровне скриптов. Помимо того, что он не работает с классами, замечу факт включения в документацию всех комментариев, а не только тех, которые я хотел бы. Что означает как отказ от комментариев для себя («А вот эту функцию срочно переписать!»), а также от очень удобной системы навигации в коде по cells, которая тоже почему-то завязана на синтаксисе комментариев.

К счастью умельцы прикрутили perl-script, конвертирующий MatLab-классы в C++ (только декларирование и комментарии, естественно), что позволяет использовать «стандартный» DOxygen со всеми его прелестями — внутренние ссылки, изображения, LaTeX и пр.

Проект (я к нему отношения не имею, но рекламирую) доступен на MatLab Central.

Скорость в ООП

При переходе от обычного скрипта/функции к классу я однажды обнаружил падение производительности в 40 раз. Простое copy-paste с парочкой причёсываний, чтобы было похоже на класс — и всё, код становится в 40 раз медленнее.

Покопавшись, обнаружил, что MatLab тормозит во время доступа к переменным класса из методов того же класса. Возьмём следующий класс, единственный метод которого в разы медленнее аналогичной функции:

MatLab считает это «разумным overhead» при переходе на ООП. То есть на каждой итерации они проверяют, не изменилась ли переменная каким-то сторонним процессов, имеем ли мы до сих пор доступ к ней (как будто кто-то реально может написать такой morphe-код на MatLab) и т.п. «полезные» операции.

После долгого разговора с несколькими вменяемыми людьми MatLab вроде как согласился подумать над более приличной реализацией.

В ожидании чуда выход — определять на входе в метод локальные переменные:

Потеря производительности по сравнению со скриптом становится пренебрежимо малой.

MATLAB: инструмент будущего или дорогая игрушка

Использование

Начнём не со стандартного экскурса в историю и обсуждения плюсов и минусов языка, а с программной среды MATLAB/Simulink — единственного места, где герой этого текста может быть полезен. Просто представьте себе графический редактор, в котором вы сможете реализовать любую свою задумку, не имея за плечами нескольких лет опыта и соответствующего образования. И создав один раз схему взаимодействия инструментов, получить качественный скрипт для многократного использования.

MATLAB — именно такой редактор в мире данных. Область его применения безгранично широка: IoT, финансы, медицина, космос, автоматика, робототехника, беспроводные системы и многое-многое другое. В общем почти неограниченные возможности по сбору и визуализации данных, а также прогнозированию, но только если есть возможность купить соответствующий пакет.

Что касается цены, то в верхней границы почти нет, а вот нижняя находится в район 99$. Чтобы урвать столь мощный продукт за относительно небольшие деньги, вам необходимо быть студентом ВУЗа. И конечно же вы получите довольно ограниченный продукт.

Особенности языка

Язык MATLAB — инструмент, обеспечивающий взаимодействие оператора (часто даже не программиста) со всеми доступными возможностями анализа, сбора и представления данных. У него есть очевидные плюсы и минусы, свойственные языку живущему в замкнутой экосистеме.

Медленный и перегруженный операторами, командами, функциями язык, основной целью которого является улучшение визуального восприятия.

Узконаправленный. Нет никакой больше программной платформы, где бы MATLAB был полезен.

Дороговизна ПО. Если вы не студент — либо готовьтесь опустошить карманы или перейти границу закона. И даже если студент — цена приличная.

Невысокий спрос. Несмотря на большой интерес к MATLAB практически во всех сферах, фактически и легально его используют лишь немногие.

Язык легок для изучения, обладает простым и понятным синтаксисом.

Огромные возможности. Но это скорее преимущество всего продукта в целом.

Частые обновления, как правило заметные положительные преобразования происходят не реже пары раз в год.

Программная среда позволяет преобразовывать его в “быстрый” код на С, С++.

Целевая аудитория

Разумеется, MATLAB нужен далеко не всем. Несмотря на широчайшую область применения, трудно представить, что рядовому разработчику приложений может понадобиться знание этого языка. MATLAB крайне полезен в областях, требующих особой надёжности при обработке данных, например, в системах автопилота в автомобилях или бортовых электронных системах самолёта.

То есть если вы не очень программист, но так или иначе ваша профессия связана с необходимостью программной обработки данных, то продукт MATLAB/Simulink с соответствующим языком способны сильно упростить ваши каждодневные задачи.

Литература

Завершаем обзор языка как всегда списком учебной литературы. Само-собой среди них вы не отыщите книг исключительно по языку, но от этого восприятие языка будет только проще:

MATLAB Step-by-Step — как всегда нет ничего лучше, чем официальный туториал, с примерами и подробными разъяснениями.

MATLAB for Beginners: A Gentle Approach, Питер Каттан — книга, рассчитанная на новичков не только в работе с MATLAB, но и с принципами обработки данных.

Matlab for Newbies: The bare essentials, Сидарта Верма — ещё одна книга рассчитанная на новичков, описывающая лишь среду программирования и основные команды языка.

MATLAB. Полный самоучитель, Дьяконов В.П. — одна из базовых университетских книг на русском языке.

Честно говоря, перечислять большое количество книг нет никакого толка, потому что все они охватывают примерно один и тот же материал, но с небольшой разницей в подаче и примерах. Но если для вас и такая разница существенно или есть желание почитать про MATLAB на более продвинутом уровне, то хорошую подборку можно найти вот на этом ресурсе: MATLAB.Exponenta.

А у вас есть опыт работы с MATLAB? И какой?

Несмотря на достаточно высокую популярность языка MATLAB, большинство разработчиков с трудом представляет, как его синтаксис, так и возможности. Всё дело в том, что язык напрямую связан с популярным программным продуктом, стоимость которого может достигать потрясающих воображение значений. Итак, главный вопрос: так ли хорош непосредственно язык Matlab? И может ли он быть полезен именно вам.

Использование

Начнём не со стандартного экскурса в историю и обсуждения плюсов и минусов языка, а с программной среды MATLAB/Simulink — единственного места, где герой этого текста может быть полезен. Просто представьте себе графический редактор, в котором вы сможете реализовать любую свою задумку, не имея за плечами нескольких лет опыта и соответствующего образования. И создав один раз схему взаимодействия инструментов, получить качественный скрипт для многократного использования.

MATLAB — именно такой редактор в мире данных. Область его применения безгранично широка: IoT, финансы, медицина, космос, автоматика, робототехника, беспроводные системы и многое-многое другое. В общем почти неограниченные возможности по сбору и визуализации данных, а также прогнозированию, но только если есть возможность купить соответствующий пакет.

Что касается цены, то в верхней границы почти нет, а вот нижняя находится в район 99$. Чтобы урвать столь мощный продукт за относительно небольшие деньги, вам необходимо быть студентом ВУЗа. И конечно же вы получите довольно ограниченный продукт.

Особенности языка

Язык MATLAB — инструмент, обеспечивающий взаимодействие оператора (часто даже не программиста) со всеми доступными возможностями анализа, сбора и представления данных. У него есть очевидные плюсы и минусы, свойственные языку живущему в замкнутой экосистеме.

Медленный и перегруженный операторами, командами, функциями язык, основной целью которого является улучшение визуального восприятия.

Узконаправленный. Нет никакой больше программной платформы, где бы MATLAB был полезен.

Дороговизна ПО. Если вы не студент — либо готовьтесь опустошить карманы или перейти границу закона. И даже если студент — цена приличная.

Невысокий спрос. Несмотря на большой интерес к MATLAB практически во всех сферах, фактически и легально его используют лишь немногие.

Язык легок для изучения, обладает простым и понятным синтаксисом.

Огромные возможности. Но это скорее преимущество всего продукта в целом.

Частые обновления, как правило заметные положительные преобразования происходят не реже пары раз в год.

Программная среда позволяет преобразовывать его в “быстрый” код на С, С++.

Целевая аудитория

Разумеется, MATLAB нужен далеко не всем. Несмотря на широчайшую область применения, трудно представить, что рядовому разработчику приложений может понадобиться знание этого языка. MATLAB крайне полезен в областях, требующих особой надёжности при обработке данных, например, в системах автопилота в автомобилях или бортовых электронных системах самолёта.

То есть если вы не очень программист, но так или иначе ваша профессия связана с необходимостью программной обработки данных, то продукт MATLAB/Simulink с соответствующим языком способны сильно упростить ваши каждодневные задачи.

Литература

Завершаем обзор языка как всегда списком учебной литературы. Само-собой среди них вы не отыщите книг исключительно по языку, но от этого восприятие языка будет только проще:

MATLAB Step-by-Step — как всегда нет ничего лучше, чем официальный туториал, с примерами и подробными разъяснениями.

MATLAB for Beginners: A Gentle Approach, Питер Каттан — книга, рассчитанная на новичков не только в работе с MATLAB, но и с принципами обработки данных.

Matlab for Newbies: The bare essentials, Сидарта Верма — ещё одна книга рассчитанная на новичков, описывающая лишь среду программирования и основные команды языка.

MATLAB. Полный самоучитель, Дьяконов В.П. — одна из базовых университетских книг на русском языке.

Честно говоря, перечислять большое количество книг нет никакого толка, потому что все они охватывают примерно один и тот же материал, но с небольшой разницей в подаче и примерах. Но если для вас и такая разница существенно или есть желание почитать про MATLAB на более продвинутом уровне, то хорошую подборку можно найти вот на этом ресурсе: MATLAB.Exponenta.

А у вас есть опыт работы с MATLAB? И какой?

Читать еще:  Matlab математические функции
Ссылка на основную публикацию
Adblock
detector