Блокноты MuPAD® будут демонтированы в будущем релизе. Используйте live скрипты MATLAB® вместо этого.
Live скрипты MATLAB поддерживают большую часть функциональности MuPAD, хотя существуют некоторые различия. Для получения дополнительной информации смотрите, Преобразовывают Notebook MuPAD в Live скрипты MATLAB.
Наборы представляют неупорядоченные математические структуры. Наборы могут содержать произвольные объекты MuPAD®. Например, числа, символы, строки или функции могут быть элементами набора. Чтобы создать набор, разделите объекты MuPAD запятыми и заключите структуру в фигурные скобки:
set1 := {a, 3, b, c, d, 180, -15}
Кроме того, можно создать последовательность и преобразовать ее в набор. Чтобы преобразовать последовательность в набор, заключите последовательность в фигурные скобки. Как ярлык для создания последовательности, используйте генератор последовательности $
или его функциональная форма _seqgen
. Заключите последовательность в фигурные скобки:
{i*(i-1) $ i = 1..10}
Порядок элементов в наборе не зависит от порядка, в который вы вставляете их. Если порядок элементов важен, используйте список вместо набора:
[a, 3, b, c, d, 180, -15]
MuPAD не обязательно сортирует элементы набора в алфавитном порядке:
set2 := {cos, tan, sin}
Набор не может содержать дублирующиеся элементы. При создании набора MuPAD автоматически удаляет копии:
set3 := {2, 6, 7, a, 6, 2, 2, a, b}
Набор может быть пустым:
empty_set := {}
Положение элемента набора в выходной области может отличаться от внутреннего положения элемента в наборе. Чтобы получить доступ к элементу в наборе его внутренним положением, используйте команду op
:
set2 := {[c,a,b], [b,c,a], [a,b,c]}; op(set2, 1), op(set2, 2), op(set2, 3)
При использовании блокнота в интерактивном режиме, можно получить доступ к элементу набора его положением в выходной области. Чтобы получить доступ к элементу положением, когда вы видите его на экране, используйте скобки или _index
:
set2 := {[c,a,b], [b,c,a], [a,b,c]}: set2[1]; _index(set2, 3)
Можно получить доступ к конкретным решениям от набора, возвращенного командой solve
. Чтобы использовать порядок элементов набора, когда они появляются на экране, используйте скобки или _index
:
solutions := solve(x^4 = 1, x); solutions[3]; _index(solutions, 2..4)
Если вы используете индексируемое присвоение, не создавая набор, MuPAD генерирует таблицу вместо набора:
set[1] := x: set
Наборы MuPAD поддерживают следующие операции:
Определение объекта как член набора
Проверка, что набор содержит конкретный объект
Используя набор как функция в вызове функции
Применение функции ко всем элементам набора
Извлечение записей набора
Вычисление пересечения множеств
Деление набора согласно конкретным свойствам его элементов
Чтобы задать объект как члена набора, используйте команду in
:
x in {1, 2, 3, a, d, 5}
Чтобы проверять, принадлежит ли объект набору, используйте команду contains
:
set := {a, 3, b, c, d, 180, -15}: contains(set, d); contains(set, e);
Если вы используете набор в качестве функции в вызове функции, MuPAD возвращает набор соответствующих вызовов функции:
{sin, cos, tan, f}(x); {sin, cos, tan, f}(0.1)
Чтобы применить функцию ко всем элементам набора, используйте функциональный map
:
map({x, 0.1, 1/5, PI}, sin)
Чтобы извлечь элементы с конкретными свойствами от набора, используйте команду select
:
select({{a, x, b}, {a}, {x, 1}}, contains, x)
Чтобы найти пересечение множеств, используйте команду intersect
:
S := {1,2,3}: S intersect {2,3,4};
Чтобы разделить набор на три набора согласно конкретным свойствам, используйте команду split
:
split({{a, x, b}, {a}, {x, 1}}, contains, x)
Получившиеся три набора содержат:
Элементы с необходимыми свойствами
Элементы без необходимых свойств
Элементы, для которых необходимые свойства неизвестны.
Добавить элементы в набор:
Создайте набор, содержащий элементы, которые вы хотите добавить.
Объедините старое и новые наборы с помощью команды union
.
set := {a, b, c}: set := set union {d, e, f}
Чтобы заменить элемент набора, используйте команду subs
. Новый элемент не обязательно появляется вместо старого:
set4 := {a, b, 2, 6, 7}; subs(set4, a = 1)
Когда вы заменяете и удаляете элементы набора, порядок его элементов может измениться, даже если вы удаляете или заменяете последний элемент.
Когда заменяющий или удаляющий элемент, всегда проверяйте, что вы получаете доступ к элементу в правильном положении:
set4; op(set4, 4)
Команда subs
не изменяет исходный набор:
set4 := {a, b, 2, 6, 7}: subs(set4, a = 1); set4
Чтобы удалить элементы из набора, используйте команду minus
. Можно одновременно удалить несколько элементов набора:
set5 := {1, 2, 6, 7, b}: set5 minus {1, b}