Блокноты MuPAD® будут демонтированы в будущем релизе. Используйте live скрипты MATLAB® вместо этого.
Live скрипты MATLAB поддерживают большую часть функциональности MuPAD, хотя существуют некоторые различия. Для получения дополнительной информации смотрите, Преобразовывают Notebook MuPAD в Live скрипты MATLAB.
Когда вы используете матрицы в вычислениях MuPAD®, и вычислительное использование эффективности и памяти может зависеть от того, является ли матрица разреженной или плотной. Разреженные матрицы содержат большое количество элементов с нулевым знаком. Внутренняя память матриц в MuPAD оптимизирована для разреженных данных. MuPAD сохраняет ненулевые элементы и их индексы. Когда вы используете разреженные матрицы, MuPAD принимает, что все незаданные элементы являются нулями. При работе с большими разреженными матрицами рассмотрите следующие методы для лучшей производительности:
Чтобы создать матрицы, используйте функцию matrix
или конструктора Dom::Matrix()
, когда это возможно. И конструктор и функция создают матрицы по звонку произвольных выражений MuPAD Dom::ExpressionField()
.
При решении систем уравнений, представленных разреженными матрицами, избегайте вычислительных обратных матриц. Вместо этого используйте linalg::matlinsolve
, чтобы найти, что точные символьные решения или numeric::matlinsolve
находят числовые приближения.
Постарайтесь не создавать большие пустые матрицы, и затем использовать индексированные присвоения для ненулевых значений. Индексируемые присвоения в MuPAD являются дорогими операциями. Указывание элементов одновременно, когда вы создаете матрицу, более эффективно. Например, команда
matrix(10, 10, [-1, 2, -1], Banded):
более эффективно, чем
A := matrix(10, 10): for i from 1 to 10 do A[i, i] := 2: end_for: for i from 1 to 9 do A[i, i + 1] := -1: A[i + 1, i] := -1: end_for:
Плотные матрицы содержат только некоторых или никакие элементы с нулевым знаком. MuPAD обеспечивает специальную матричную область для плотных матриц. Чтобы создать такие матрицы, используйте функцию densematrix
, которая является ярлыком для конструктора Dom::DenseMatrix()
. Также можно использовать конструктора самостоятельно. Для матриц области Dom::DenseMatrix()
, индексированного чтения и записи быстрее, чем для матриц области Dom::Matrix()
.