是否有人知道一个简单且可微的函数,该函数将3D vector u = (x, y, z)转换为与u正交的另一个 vector 。

更准确地说,我正在寻找三个可微​​函数{f, g, h},以便 vector u = (x, y, z)v = (f(x,y,z), g(x,y,z), h(x,y,z))正交,而v仅在u为零时为零。

函数{f, g, h}应该尽可能简单。我更喜欢它们是线性的,但我认为不存在这样的线性函数。低阶多项式也很好。

附言我找到了这样的函数,但它们不是多项式。例如:

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)的叉积。除了多项式之外,它满足所有要求。但是它们很简单。

最佳答案

没有这样的连续功能。这是"hairy ball"定理的结果,该定理指出在球体上不能定义连续的永不消失的切线场(如果您可以使F(v)非零,连续并且始终与v正交,则可以使用v-F(v)轻松定义连续的球面的切线场永不消失)。

另一方面,如果函数不需要连续,则问题很容易解决。我通常要做的是选择v的Y和Z分量之间的较大值(以绝对值表示),然后如果Z分量较大,则计算v(0, 1, 0)之间的叉积;如果Y分量较大,则计算(0, 0, 1)之间的叉积。这避免了奇异性。

关于math - 可微正交向量,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4850906/

10-10 10:05