各种快速SQRT

原创 2004年10月21日 18:30:00
float mysqrt(float x)
{
        union
       {
                    int intPart;
                          float floatPart;
         } convertor;
          union
         {
                        int intPart;
                             float floatPart;
          } convertor2;

          convertor.floatPart = x;
          convertor2.floatPart = x;
          convertor.intPart = 0x1FBCF800 + (convertor.intPart >> 1);
          convertor2.intPart = 0x5f3759df - (convertor2.intPart >> 1);
          return 0.5f*(convertor.floatPart + (x * convertor2.floatPart));
}

float InvSqrt_Lomont(float x)

         float xhalf = 0.5f*x;
         int i = *(int*)&x;
         i = 0x5f375a86 - (i>>1);
         x = *(float*)&i;
         x = x*(1.5f-xhalf*x*x);
         // x = x*(1.5f-xhalf*x*x); // added precision
         return x;
} // InvSqrt_Lomont

float InvSqrt (float x)
{
    float xhalf = 0.5f*x;
    int i = *(int*)&x;
    i = 0x5f3759df - (i >> 1);
    x = *(float*)&i;
    x = x*(1.5f - xhalf*x*x);
    return x;
}

〖数学算法〗开平方的七种算法

sqrt()函数,是绝大部分语言支持的常用函数,它实现的是开方运算;开方运算最早是在我国魏晋时数学家刘徽所著的《九章算术》被提及。今天写了几个函数加上国外大神的几个神级程序带大家领略sqrt的神奇之处...
  • nash_
  • nash_
  • 2012年11月23日 21:01
  • 21512

sqrt的快速算法 --- (参考)

在3D图形编程中,经常要求平方根或平方根的倒数,例如:求向量的长度或将向量归一化。C数学函数库中的sqrt具有理想的精度,但对于3D游戏程式来说速度太慢。我们希望能够在保证足够的精度的同时,进一步提高...
  • zymill
  • zymill
  • 2017年10月10日 08:38
  • 167

来自QuakeIII的惊人算法 InvSqrt

昨天在网上看到一 个求1/sqrt(x)的算法,该算法来自QuakeIII游戏的源码,有测试表明该算法比普通的先求平方根再求倒数的方法快4倍左右,而且相当精确。更 为惊奇的是该算法中一个令人不解的常量...
  • Jofee
  • Jofee
  • 2007年02月26日 16:38
  • 1645

平方根的快速算法(sqrt)

在我们的产品上要对数据进行FFT运算,之后要进行开方运算。但使用TI提供的sqrt函数运算速度较慢,因此从网上找到这篇介绍sqrt快速算法的文章。 经我的测算,迭代两次的快速sqrt算法是TI提...
  • redriver81
  • redriver81
  • 2011年11月28日 12:10
  • 1205

快速pow和sqrt的小技巧 hdu4282

http://acm.hdu.edu.cn/showproblem.php?pid=4282 今年网络赛。。天津赛区。。有道题。。是这样的。。。X^Z + Y^Z + XYZ = K  给出K ,求...
  • liuqiyao_01
  • liuqiyao_01
  • 2013年01月07日 20:12
  • 3312

笔试题之sqrt函数重写

sqrt函数重写加扩张 个人信息:就读于燕大本科软件工程专业 目前大三; 本人博客:google搜索“cqs_2012”即可; 个人爱好:酷爱数据结构和算法,希望将来搞科研为人民作出自己的贡...
  • cqs_2012
  • cqs_2012
  • 2014年04月01日 16:39
  • 960

sqrt定点代码

  • 2013年06月03日 17:24
  • 6KB
  • 下载

Sqrt Bo

Sqrt Bo Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 131072/131072 K (Java/Others) Tota...
  • qq_33362864
  • qq_33362864
  • 2016年07月27日 09:03
  • 280

各种快速SQRT

float mysqrt(float x){         union       {                    int intPart;                        ...
  • Nhsoft
  • Nhsoft
  • 2004年10月21日 18:30
  • 2303

快速开根号的C程序

  • 2014年08月11日 14:48
  • 820B
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:各种快速SQRT
举报原因:
原因补充:

(最多只允许输入30个字)