численная проблема при вычислении дополнительной проекции
Я использую Matlab для вычисления следующей проблемы:
A
B
дваm
отn
ортогональные матрицы,A'*A = I
а такжеB'*B = I
гдеI
это единичная матрица. А такжеm
намного больше чемn
, Я вычисляюC = (2B*B'-I)*A
, который также является ортогональной матрицей.
Но в Matlab точность числа приводит к следующей проблеме:
max(max(abs(A'*A-I))) = e0 > 0
max(max(abs(B'*B-I))) = e0 > 0
И вычислилC
имеетmax(max(abs(C'*C-I))) = e1 > e0
Если я повторю вышеупомянутый процесс, вычисляяD = (2C*C'-I)*B
эта ошибка связана поднять наD
С увеличением числа таких итераций эта ошибка взрывается.
Есть ли способ вычисления без увеличения этой ошибки?
Спасибо!