Кто-нибудь знает простую и дифференцируемую функцию, которая преобразует трехмерный вектор u = (x, y, z)
в другой вектор, ортогональный u
.
Точнее, я ищу три дифференцируемые функции {f, g, h}
, чтобы вектор u = (x, y, z)
был ортогонален v = (f(x,y,z), g(x,y,z), h(x,y,z))
, а v
равен нулю, только если u
равен нулю.
Функции {f, g, h}
должны быть максимально простыми. Я предпочитаю их линейные, но я думаю, что таких линейных функций не существует. Полиномы низкой степени также хороши.
P.S. Я нашел такие функции, но они не полиномы. Например:
f(x, y, z) = y*(exp(x) + 3) - z*(exp(x) + 2)
g(x, y, z) = z*(exp(x) + 1) - x*(exp(x) + 3)
h(x, y, z) = x*(exp(x) + 2) - y*(exp(x) + 1)
Это просто перекрестное произведение (x, y, z) на (exp (x) +1, exp (x) +2, exp (x) +3). Он удовлетворяет всем требованиям, кроме того, чтобы быть полиномами. Но они довольно просты.