椭球面积函数没有给出正确的结果
elipsoid area function not giving correct results
我已经创建了一个函数来 return 给定 椭球维度 的表面积,但我得到了奇怪的结果。
函数如下:
function elipsoid($a,$b,$c){
$ab=$a*$b;
$ab=pow($ab,1.6);
$ac=$a*$c;
$ac=pow($ac,1.6);
$bc=$b*$c;
$bc=pow($bc,1.6);
$abacbc=$ab+$ac+$bc;
$abacbc=$abacbc/3;
$prepie=pow($abacbc,0.016);
$fourpies=3.1415926535898*4;
$elipsoidarea=$prepie*$fourpies;
return $elipsoidarea;
}
如果$a
、$b
、$c
的值都是=1
,则结果是12.566370614359
,根据[=上的椭球计算器41=] 是正确的。
如果$a
、$b
、$c
的值都是=2
,则结果是13.02034823541
,根据[=上的椭球计算器41=] 应该是 50.26548.
我让我十几岁的女儿帮忙翻译了这个:
S≈4π((ab)1.6+(ac)1.6+(bc)1.63)1/1.6
(从 google 复制粘贴因此看起来不像现在的等式大声笑)。
变成我能理解的“白痴”形式。
计算翻译是否正确and/or我编码正确吗?我还质疑根据 google 一个 4m 宽的球体怎么会有 50m 的表面积? Google 以及有此计算选项的许多网站都错了吗?
你这里做错了,
$prepie = pow($abacbc,0.016);
应该是,
$prepie = pow($abacbc,0.625);
至此,
1.6
的根 -> 1/1.6
-> 0.625
我已经创建了一个函数来 return 给定 椭球维度 的表面积,但我得到了奇怪的结果。
函数如下:
function elipsoid($a,$b,$c){
$ab=$a*$b;
$ab=pow($ab,1.6);
$ac=$a*$c;
$ac=pow($ac,1.6);
$bc=$b*$c;
$bc=pow($bc,1.6);
$abacbc=$ab+$ac+$bc;
$abacbc=$abacbc/3;
$prepie=pow($abacbc,0.016);
$fourpies=3.1415926535898*4;
$elipsoidarea=$prepie*$fourpies;
return $elipsoidarea;
}
如果$a
、$b
、$c
的值都是=1
,则结果是12.566370614359
,根据[=上的椭球计算器41=] 是正确的。
如果$a
、$b
、$c
的值都是=2
,则结果是13.02034823541
,根据[=上的椭球计算器41=] 应该是 50.26548.
我让我十几岁的女儿帮忙翻译了这个:
S≈4π((ab)1.6+(ac)1.6+(bc)1.63)1/1.6
(从 google 复制粘贴因此看起来不像现在的等式大声笑)。
变成我能理解的“白痴”形式。
计算翻译是否正确and/or我编码正确吗?我还质疑根据 google 一个 4m 宽的球体怎么会有 50m 的表面积? Google 以及有此计算选项的许多网站都错了吗?
你这里做错了,
$prepie = pow($abacbc,0.016);
应该是,
$prepie = pow($abacbc,0.625);
至此,
1.6
的根 -> 1/1.6
-> 0.625