Обратить Матрицу | %. 2 _ 2 | Разделить Матрицы |
Если y невырожденная матрица, то %.y дает
матрицу, обратную к ней. Например:mp=: +/ . * NB. Произведение матриц (%. ; ] ; %. mp ]) i. 2 2 +--------+---+---+ |_1.5 0.5|0 1|1 0| | 1 0|2 3|0 1| +--------+---+---+Более общо, глагол %.y определен через свой диадный случай с левым аргументом =i.{:$y (единичная матрица) или (эквивалентно) отношением (%.y)mp x ↔ x %. y . Размерность %.y равна |.$y . Векторный и скалярный случаи определены через матрицу ,.y, но размерность результата равна $y . Для ненулевого вектора y, %.y дает коллинеарный вектор с длиной, обратной длине y; это называется инверсией y по отношению к единичному кругу (или сфере). Таким образом: (%. ,: ] % %.) 2 3 4 0.0689655 0.103448 0.137931 29 29 29 |
Если y невырожденная матрица, то x%.y
равно (%.y) mp x .
Более общо, если столбцы y линейно независимы,
а #x и #y совпадают, то x%.y минимизирует
разность:d=: x - y mp x %. yв смысле того, что отклонение +/d*+d минимально. Скалярные и векторные y рассматриваются как матрица-столбец ,.y . Геометрически, y mp x%.y дает проэкцию вектора x на пространство столбцов y , ближайшую к x точку в векторном пространстве с базисом из столбцов y . Обычно %. применяется для решения систем линейных уравнений и приближения функций многочленами, как в c=: (f x)%. x ^ / i.4 . |
sin=: 1&o. NB. Функция, которую мы будем приближать x=: 5 %~ i. 6 c=: (sin x) %. x ^/ i.4 NB. Использование деления матриц ,.&.>@(] ; c"_ ; sin ; c&p. ; >./@:|@(sin-c&p.)) x +---+-----------+--------+-----------+-----------+ | 0|_5.30503e_5| 0|_5.30503e_5|0.000167992| |0.2| 1.00384|0.198669| 0.198826| | |0.4| _0.018453|0.389418| 0.389321| | |0.6| _0.143922|0.564642| 0.564523| | |0.8| |0.717356| 0.717524| | | 1| |0.841471| 0.841416| | +---+-----------+--------+-----------+-----------+