угол между гиперплоскостями

WALERA32

как посчитать cos(X, H1 п H2 п H3 п ... п Hk п - пересечение, X,H1,...,Hk - гиперплоскости в k+1 мерном пространстве?

topboy84

берешь единичную нормаль к X и проецируешь на пространство натянутое на нормали к H-ам.
длина проекции и получается этот косинус

WALERA32

а как это сделать, нужно задачу лп решать?

kachokslava

пересечение гиперплоскостей [в общем случае]- плоскость меньшей размерности, разве нет?

topboy84

находишь с помощью процесса ортогонализации Грамма-Шмидта ортонормированный базис
в пространстве натянутом на нормали к H-ам.
Пусть это e_1, ..e_m, x -единичная нормаль к X
тогда cos = (x, e_1)^2 + (x,e_2)^2+...+=(x,e_m)^2

WALERA32

спасибо

WALERA32

а зачем нужно ортогонализировать?

topboy84

скорее для удобства.
когда у тебя есть ортогональный базис в подпространстве, то не сложно разложить проекцию какого-то вектора по этому базису: нужно просто посчитать скалярное произведение с вектором базиса и поделить на длину вектора базиса.
Если не ортогонализовать, то надо бы брать какой-то базис в подпространстве, дополнять его до базиса всего пространства, разлагать по этому базису данный вектор(т.е. решать систему
линейных уравнений). Когда получим коэффициенты для разложения по такому кривому базису, то для нахождения длины проекции надо знать еще матрицу Грамма этого базиса.
(ее посчитать - еще довольно много операций)
Процесс ортогонализации достаточно быстрый, не знаю как можно сделать более быстро для обычного неортогонального базиса.
в общем, я бы лучше ортоганализировал сначала на твоем месте.
Оставить комментарий
Имя или ник:
Комментарий: