欧拉四面体公式

转载注明出处:http://blog.csdn.net/archibaldyangfan/article/details/8035332

欧拉四面体用来求四面体的体积。。

1,建立x,y,z直角坐标系。设A、B、C少拿点的坐标分别为(a1,b,1,c1),(a2,b2,c2),(a3,b3,c3),四面体O-ABC的六条棱长分别为l,m,n,p,q,r;


2,四面体的体积为,由于现在不知道向量怎么打出来,我就插张图片了,


将这个式子平方后得到:


3,根据矢量数量积的坐标表达式及数量积的定义得


又根据余弦定理得


4,将上述的式子带入(1),就得到了传说中的欧拉四面体公式


Code:

// 求四面体的体积,欧拉公式.
// p, q, r 为AB,AC,AD, n, m, l 为BC, BD, CD
double V(double p, double q, double r, double n, double m, double l)
{
    double rr = r * r, mm = m * m, nn = n * n;
    double pp = p * p, qq = q * q, ll = l * l;
    // 求3 * 3 的行列式..
    double x1 = (pp + qq - nn) / 2.0, x2 = (pp + rr - mm) / 2.0, x3 = (qq + rr - ll) / 2.0;
    double v = pp * (qq * rr - x3 * x3) - x1 * (x1  * rr - x2 * x3) + x2 * (x1 * x3 - qq * x2);
    return sqrt(v) / 6.0;
}



  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值