И другие программы этой серии
Решение систем линейных уравнений с ограничениями
Теперь рассмотрим функции, введенные для решения систем линейных уравнений с ограничениями, методом наименьших квадратов:
• X =lscov(A,B,V) – возвращает вектор X решения СЛУ вида A*X=B+e, где å – вектор шумов, который имеет ковариационную матрицу V. Реализуется метод наименьших квадратов в присутствии шумов c известной ковариаци-ей. Прямоугольная матрица À должна быть размера m×n, где m>n. При решении минимизируется следующее выражение: (AX-b)\'*inv(V)*(AX-b). Решение имеет вид X= inv(A\'* inv(V)*A)*A\'*inv(V)*B. Алгоритм решения, однако, построен так, что операция инвертирования матрицы V не проводится;
• [X,dX] = lscov(A,B,V) – возвращает также стандартную погрешность X, помещая ее в переменную dX. Статистическая формула для стандартной погрешности вычисления коэффициентов имеет следующий вид:
mse = B\'*(inv(V)–inv(V)*A*inv(A\'*inv(V)*A)*A\'*inv(V)) *B./(m–n) dX = sqrt(diag(inv(A\'*inv(V)*A)*mse))
• X =isqnonneg(A,B) – решение СЛУ ÀX=B методом наименьших квадратов с неотрицательными ограничениями. À – действительная прямоугольная матрица, B – действительный вектор. Вектор X содержит неотрицательные элементы Xj ≥ 0, где j = 1, 2,… n. Критерий: минимизация второй нормы вектора B–AX;
• X = lsqnonneg(A,B,X0) – решение СЛУ с явно заданным неотрицательным начальным значением X для итераций;
• [X,W] = lsqnonneg(…) – вместе с решением возвращает вторую норму вектора остатков в квадрате;
• [X,W,W1] = lsqnonneg(…) – вместе с решением возвращает вторую норму вектора остатков в квадрате и вектор остатков W1;
• [X,W,W1,exitflag] = lsqnonneg(…) – вместе с решением возвращает вторую норму вектора остатков в квадрате, вектор остатков W1 и флаг exitflag, равный 1, если решение сходится после заданного по умолчанию числа итераций, и 0 в противном случае;
• [X,W,W1,exitflag,output] = lsqnonneg(…) – дополнительно возвращает число итераций в output;
• [X,W,W1,exitflag,output,lambda] = lsqnonneg(…) – дополнительно возвращает вектор lambda, минимизирующий произведение lambda W1 на последнем шаге итераций решения.
Начало в части 1