java - 如何使用 la4j 计算 3D vector 积?

标签 java vector cross-product la4j

如何使用 la4j 计算 vector (叉)积?

vector 乘积为

enter image description here

接受两个 vector 并返回 vector 。

但是他们有scalar product , product of all elements ,甚至Hadamard product ,但没有叉积!

他们有outer product ,但它会产生一个矩阵。

如何计算 3D 叉积?

最佳答案

免责声明:我是 la4j贡献者,所以我认为我的意见在这里很有值(value)。

我们的库为一系列多维矩阵和 vector 的操作提供了 API 和实现。 “多维”是指您可以安全使用任意长度的 vector 。

Cross product是仅为 3 维 vector 定义的运算。这意味着您不能将此操作与随机大小的 vector 一起使用。因此,引入org.la4j.Vector#crossProduct操作将严重违反我们库提供的设计和契约(Contract)。它具有不安全、高度特化等特点。

因此,目前我们的库中没有此操作的“快捷方式”,但在您的应用程序中编写辅助函数非常容易,该函数仅适用于 3 维 vector 并通过众所周知的公式计算叉积。

当然,您可以在我们的 GitHub repository 中自由创建功能请求和 PR ,谁知道,有一天叉积将成为 la4j 的一部分。

关于java - 如何使用 la4j 计算 3D vector 积?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42083364/

相关文章:

java - iText 的 getPageN() 和 getPageNRelease() 调用有什么区别?

algorithm - 如何在不计算所有其他项目的情况下从笛卡尔积中选择特定项目

java - 在 Eclipse 中调试 Java 代码时出现 "Source not found"

java - Android设备java中的串行通信

c++ - vector 不从 cin 获取输入

c++ - 为什么我不能访问 vector ?

math - 计算叉积的方法是否会改变左手坐标?

javascript - 如何在 2 个单位向量之间弯曲单位网格

java - 如果发现已知错误(异常),是否应该打印堆栈跟踪?

c++ - vector C++ 98 错误