matlab 四面体体积
2017-03-04 16:06
2955 查看
计算方法:
已知四面体顶点坐标分别为(x1,y1,z1),
(x2,y2,z2),
(x3,y3,z3),
(x4,y4,z4),
可以通过如下两种方法求四面体体积:
1. 利用向量的混和积
过一顶点的三向量设为a,b,c, 所求四面体的体积为:**|(a×b)·c|/6**. 假设(x1,y1,z1)为四面体顶点,则 a = (x2 - x1, y2 - y1, z2 -z1) b = (x3 - x1, y3 - y1, z3 - z1) c = (x4 - x1, y4 - y1, z4 - z1) 将上述向量带入上面公式即可求出四面体体积
2. 利用行列式计算
| 1 1 1 1 | v =1/6 * det | x1 x2 x3 x4 | | y1 y2 y3 y4 | | z1 z2 z3 z4 |
注意事项: ----- 1. 注意舍入方式(0.5的舍入方向);防止输出-0. 2. 几何题注意多测试不对称数据. 3. 整数几何注意xmult和dmult是否会出界; 符点几何注意eps的使用. 4. 避免使用斜率;注意除数是否会为0. 5. 公式一定要化简后再代入. 6. 判断同一个2*PI域内两角度差应该是 abs(a1-a2)<beta||abs(a1-a2)>pi+pi-beta; 相等应该是 abs(a1-a2)<eps||abs(a1-a2)>pi+pi-eps; 7. 需要的话尽量使用atan2,注意:atan2(0,0)=0, atan2(1,0)=pi/2,atan2(-1,0)=-pi/2,atan2(0,1)=0,atan2(0,-1)=pi. 8. cross product = |u|*|v|*sin(a) dot product = |u|*|v|*cos(a) 9. (P1-P0)x(P2-P0)结果的意义: 正: <P0,P1>在<P0,P2>顺时针(0,pi)内 负: <P0,P1>在<P0,P2>逆时针(0,pi)内 0 : <P0,P1>,<P0,P2>共线,夹角为0或pi
相关文章推荐
- hdoj 1411 校庆神秘建筑 【四面体体积】
- 计算四面体体积
- hdu 1411(四面体的体积)
- POJ 2208 Pyramids(求四面体体积)
- hdu1411(四面体体积)
- 奥数题-求空间4点构成的四面体体积
- Matlab画图技巧之保存超大体积图
- HDU 1411 校庆神秘建筑 (求四面体体积)
- MATLAB求解四面体球心
- 求边长为一的正方体中,面对角线组成的正四面体体积.
- POJ 2208 已知空间四面体六条边长度,求体积
- hdu 1411 (四面体体积)
- 已知六条边的边长,求四面体体积
- 给定4个点坐标求四面体体积
- HDU1411-欧拉四面体体积
- HDU 1141 校庆神秘建筑 知六边长求四面体体积
- 求四面体的体积
- hdu1411知六边长求四面体体积
- POJ 2208 Pyramids 计算几何 四面体体积
- hdu1411求四面体体积