如何找到平行六面体的 4d 模拟的超体积?
How to find the hyper-volume of the 4d analogue of a parallelepiped?
首先,上述类似物是否存在?
其次,如何找到它的 4d-volume/hyper-volume 给定 4 个边向量,最好使用点、叉积等
第三,表面积的三维模拟是什么?例如。 1D-弧长,2D-表面积,3D-体积,4D-?
你所描述的是使用行列式概括的。
nD 对象嵌入 nD space
对于使用所有维度的对象,例如 2D 中的平行四边形或 3D 中的平行六面体,将定义(超)平行六面体边的 n
向量作为矩阵的行并计算行列式:
2D 3D 4D 5D
|x1 y1| |x1 y1 z1| |x1 y1 z1 w1| (Repeat the same pattern)
|x1 y2| |x2 y2 z2| |x2 y2 z2 w2|
|x3 y3 z3| |x3 y3 z3 w3|
|x4 y4 z4 w4|
请注意,根据向量的方向,获得的(超)体积是有符号的。因此有可能出现负交易量。
(n-1)D 对象嵌入 nD space
对于使用比其所在 space 小一维的对象,例如 3D 中的平行四边形 space,您可以使用叉积(从行列式得出)或叉积的推广。例如,由两个 3D 向量 (x1,y1,z1)
和 (x2,y2,z2)
定义的嵌入 3D 的平行四边形的面积是根据包含两个向量作为行的矩阵计算的:
[x1 y1 z1]
[x2 y2 z2]
根据这个矩阵,只需创建 2x2 子矩阵的所有组合,计算每个矩阵的行列式,然后将它们放入一个向量中
[|y1 z1|, |z1 x1|, |x1 y1|] = (y1*z2-z1*y1, z1*x2-x1*z2, x1*y2-y1*x2)
[|y2 z2| |z2 x2| |x2 y2|]
你得到一个向量,这个向量的长度就是平行四边形的面积:sqrt((y1*z2-z1*y1)^2 + (z1*x2-x1*z2)^2 + (x1*y2-y1*x2)^2)
.
(几乎)终极泛化
从最后一个示例,我们可以创建适用于嵌入任何维度的任何对象的通用方法(是的,您可以计算嵌入 17D space 的 3D 平行六面体的体积):
- 将描述对象的所有向量作为(可能是非正方形)矩阵的行。
- 枚举所有可能的子方阵组合。
- 计算所有这些子矩阵的行列式并将它们放在一个列表中(如果你想要的只是体积,顺序并不重要)。
- 分别对这些行列式求平方。
- 把它们全部加起来。
- 对结果取平方根。
请注意,最后一个方法给出了无符号的体积,因为你平方然后取平方根。
最后说明:显然,这个答案更像是一个秘诀,而不是解释 为什么 所有这些计算都有效。有关此主题的更多信息,我建议您查看 Exterior Algebra,这是一种使用 楔积 (叉积的推广)来定义这些的形式主义以非常普遍的方式进行超卷。
首先,上述类似物是否存在?
其次,如何找到它的 4d-volume/hyper-volume 给定 4 个边向量,最好使用点、叉积等
第三,表面积的三维模拟是什么?例如。 1D-弧长,2D-表面积,3D-体积,4D-?
你所描述的是使用行列式概括的。
nD 对象嵌入 nD space
对于使用所有维度的对象,例如 2D 中的平行四边形或 3D 中的平行六面体,将定义(超)平行六面体边的 n
向量作为矩阵的行并计算行列式:
2D 3D 4D 5D
|x1 y1| |x1 y1 z1| |x1 y1 z1 w1| (Repeat the same pattern)
|x1 y2| |x2 y2 z2| |x2 y2 z2 w2|
|x3 y3 z3| |x3 y3 z3 w3|
|x4 y4 z4 w4|
请注意,根据向量的方向,获得的(超)体积是有符号的。因此有可能出现负交易量。
(n-1)D 对象嵌入 nD space
对于使用比其所在 space 小一维的对象,例如 3D 中的平行四边形 space,您可以使用叉积(从行列式得出)或叉积的推广。例如,由两个 3D 向量 (x1,y1,z1)
和 (x2,y2,z2)
定义的嵌入 3D 的平行四边形的面积是根据包含两个向量作为行的矩阵计算的:
[x1 y1 z1]
[x2 y2 z2]
根据这个矩阵,只需创建 2x2 子矩阵的所有组合,计算每个矩阵的行列式,然后将它们放入一个向量中
[|y1 z1|, |z1 x1|, |x1 y1|] = (y1*z2-z1*y1, z1*x2-x1*z2, x1*y2-y1*x2)
[|y2 z2| |z2 x2| |x2 y2|]
你得到一个向量,这个向量的长度就是平行四边形的面积:sqrt((y1*z2-z1*y1)^2 + (z1*x2-x1*z2)^2 + (x1*y2-y1*x2)^2)
.
(几乎)终极泛化
从最后一个示例,我们可以创建适用于嵌入任何维度的任何对象的通用方法(是的,您可以计算嵌入 17D space 的 3D 平行六面体的体积):
- 将描述对象的所有向量作为(可能是非正方形)矩阵的行。
- 枚举所有可能的子方阵组合。
- 计算所有这些子矩阵的行列式并将它们放在一个列表中(如果你想要的只是体积,顺序并不重要)。
- 分别对这些行列式求平方。
- 把它们全部加起来。
- 对结果取平方根。
请注意,最后一个方法给出了无符号的体积,因为你平方然后取平方根。
最后说明:显然,这个答案更像是一个秘诀,而不是解释 为什么 所有这些计算都有效。有关此主题的更多信息,我建议您查看 Exterior Algebra,这是一种使用 楔积 (叉积的推广)来定义这些的形式主义以非常普遍的方式进行超卷。