网站制作老了株洲网站建设 公司

news/2025/10/6 21:10:13/文章来源:
网站制作老了,株洲网站建设 公司,小型网站开发费用,焊接加工订单网★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★➤微信公众号#xff1a;山青咏芝#xff08;shanqingyongzhi#xff09;➤博客园地址#xff1a;山青咏芝#xff08;https://www.cnblogs.com/strengthen/#xff09;➤GitHub地址山青咏芝shanqingyongzhi➤博客园地址山青咏芝https://www.cnblogs.com/strengthen/➤GitHub地址https://github.com/strengthen/LeetCode➤原文地址https://www.cnblogs.com/strengthen/p/10989143.html ➤如果链接不是山青咏芝的博客园地址则可能是爬取作者的文章。➤原文已修改更新强烈建议点击原文地址阅读支持作者支持原创★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★  曲面法线广泛用于光照和阴影计算需要计算矢量的范数。这里显示了垂直于表面的矢量场。   使用法线C从入射角求出反射角的二维例子;  在这种情况下在从曲面镜反射的光上。快速反平方根用于将该计算推广到三维空间。        浮点数的倒数平方根用于计算标准化向量。程序可以使用标准化向量来确定入射角和反射角。3D图形程序必须每秒执行数百万次这些计算以模拟光照。当代码在20世纪90年代早期开发时大多数浮点处理能力都落后于整数处理的速度。在专门用于处理变换和照明的硬件出现之前这对3D图形程序来说很麻烦。        通过计算其欧几里德范数矢量分量的平方和的平方根来确定矢量的长度。当向量的每个分量除以该长度时新向量将是指向相同方向的单位向量。在3D图形程序所有的载体在三维空间中所以v将是一个向量v 1v 2v 3。  是向量的欧几里德范数。  是使用||的归一化单位向量 ||v|| 2代表v1^2  v2^2  v3^2。  它将单位矢量与距离分量的平方根相关联。反平方根可用于计算v因为该等式等价于  其中分数项是的平方根 ||v|| 2。当时与乘法相比浮点除法通常很昂贵; 快速逆平方根算法绕过了除法步骤赋予其性能优势。        为了计算平方根倒数的一般方法是计算一个近似为1⁄√x然后通过另一种方法修改该近似直到它来实际结果的可接受的误差范围之内。20世纪90年代早期的常用软件方法从查找表中得出近似值。快速平方根的关键是通过利用浮点数的结构直接计算近似证明比表查找更快。该算法比使用另一种方法计算平方根并计算倒数通过浮点除法快大约四倍。该算法的设计考虑了IEEE 754-1985 32位浮点规范但研究表明它可以在其他浮点规范中实现。        快速反平方根的速度优势来自于将包含浮点数的长字视为整数然后从特定常数0x5F3759DF中减去它。查看代码的人不会立即清楚常量的目的因此与代码中的其他此类常量一样它通常被称为幻数。该整数减法和位移产生长字当作为浮点数处理时该长字是输入数的反平方根的粗略近似。执行牛顿方法的一次迭代以获得一定的准确性并且代码完成。该算法使用Newton方法的唯一第一近似值生成相当准确的结果; 然而它比在1999年发布的rsqrtss x86处理器上使用SSE指令要慢得多且准确度低得多。 Talk is cheap.Show me your code (1)、平方根函数方法1-牛顿迭代法 1 func sqrt1(_ x: Float) - Float {2 //判断x是否为03 if x 0 {return 0}4 let high:Float Float(x)5 let mid:Float high/26 var y:Float (mid1) ? mid : 17 while(true)8 {9 let dy:Float (y * y high) / Float(y)/2 10 //处理float类型的取绝对值fabsf(float i) 11 if fabsf(y - dy) 0.00000001 12 { 13 return dy 14 } 15 else 16 { 17 y dy 18 } 19 } 20 } (2)、平方根函数方法2  1 func sqrt2(_ x:Float) - Float2 {3 var y:Float4 var delta:Float5 var maxError:Float6 if x 0 {return 0}7 // initial guess8 y x / 29 // refine 10 maxError x * 0.00000001 11 repeat { 12 delta ( y * y ) - x 13 y - delta / ( 2 * y ) 14 } while ( delta maxError || delta -maxError ) 15 return y 16 } (3)、快速反向平方根方法1-使用memcpy() 注意开头的导入import Foundation。 invSqrt(x)比1.0/sqrt(x)快速增加了约40 最大相对误差低于0.176  1 import Foundation2 func invSqrt1(_ x: Float) - Float {3 let halfx 0.5 * x4 var y x5 var i : Int32 06 memcpy(i, y, 4)7 i 0x5f3759df - (i 1)8 memcpy(y, i, 4)9 y y * (1.5 - (halfx * y * y)) 10 return y 11 } (4)、快速反向平方根方法2-bitPattern() 从Swift3开始memcpy()可以用bitPattern:方法替换Float相应的构造函数UInt32: 1 func invSqrt2(_ x: Float) - Float { 2 let halfx 0.5 * x 3 var i x.bitPattern 4 i 0x5f3759df - (i 1) 5 var y Float(bitPattern: i) 6 y y * (1.5 - (halfx * y * y)) 7 return y 8 } 综合(1)~(4)测试  1 let x:Float 10.02 let ans1:Float sqrt1(x)3 let ans2:Float sqrt2(x)4 let ans3:Float invSqrt1(x)5 let ans4:Float invSqrt2(x)6 print(1.0/ans1)7 //Print 0.316227768 print(1.0/ans2)9 //Print 0.31622776 10 print(ans3) 11 //Print 0.31568578 12 print(ans4) 13 //Print 0.31568578 常量0x5f3759df来自哪里为什么代码有效 快速逆平方根有时被称为快速InvSqrt()或由十六进制常数0x5F3759DF的估计1⁄√x算法的倒数或乘法逆的的平方根的32位的浮点数X在IEEE 754浮点格式。此操作用于数字信号处理以标准化矢量即将其缩放为长度1.例如计算机图形程序使用反平方根来计算入射角和反射对照明和阴影。        该算法接受32位浮点数作为输入并存储一半的值供以后使用。然后处理代表浮点数作为一个32位的整数的比特一个逻辑移位一个位权执行并且结果从减去幻数 0X 5F3759DF这是一个近似的浮点表示√2127。这导致输入的平方根的第一近似。再次将这些位作为浮点数处理它运行牛顿方法的一次迭代产生更精确的近似。 一个有效例子作为一个例子数x 0.15625可用于计算1⁄√x ≈ 2.52982.。该算法的第一步如下所示  1 0011_1110_0010_0000_0000_0000_0000_0000 Bit pattern of both x and i 2 0001_1111_0001_0000_0000_0000_0000_0000 Shift right one position: (i 1) 3 0101_1111_0011_0111_0101_1001_1101_1111 The magic number 0x5F3759DF 4 0100_0000_0010_0111_0101_1001_1101_1111 The result of 0x5F3759DF - (i 1) 使用IEEE 32位表示  1 0_01111100_01000000000000000000000 1.25 × 2−3 2 0_00111110_00100000000000000000000 1.125 × 2−65 3 0_10111110_01101110101100111011111 1.432430... × 263 4 0_10000000_01001110101100111011111 1.307430... × 21 将该最后一位模式重新解释为浮点数给出近似值y  2.61486其具有大约3.4的误差。在牛顿方法的一次迭代之后最终结果是y  2.52549误差仅为0.17。 算法描述快速反向平方根算法计算1⁄√x通过执行以下步骤。 (1)、将参数x别名为整数作为计算 log2(x)近似值的方法 (2)、使用这种近似计算的近似对数log2(1⁄√x) −1/2 log2(x) (3)、别名返回浮点数作为计算base-2指数近似值的方法 (4)、使用牛顿方法的单次迭代来细化近似。 准确度下图显示启发式快速反平方根与libstdc提供的平方根直接反转之间差异的图表。注意两个轴上的对数刻度。如上所述近似值令人惊讶地准确。右边的图表描绘了函数的误差即通过运行牛顿方法的一次迭代后的近似值的误差对于从0.01开始的输入其中标准库给出10.0作为结果而InvSqrt()给出9.982522使差值为0.017479即真值的0.175。绝对误差仅从此开始下降而相对误差保持在所有数量级的相同范围内。  转载于:https://www.cnblogs.com/strengthen/p/10989143.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/929708.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

专业网站开发软件做一个网站的总结

responseBody注解的作用是将controller的方法返回的对象通过适当的转换器转换为指定的格式之后,写入到response对象的body区,通常用来返回JSON数据或者是XML数据,需要注意的呢,在使用此注解之后不会再走视图处理器,而是…

爱站网长尾词挖掘工具建站网址导航hao123

💢欢迎来到张胤尘的开源技术站 💥开源如江河,汇聚众志成。代码似星辰,照亮行征程。开源精神长,传承永不忘。携手共前行,未来更辉煌💥 文章目录 通道通道声明初始化缓冲机制无缓冲通道代码示例 带…

建构网站婚礼网站有哪些

9月16日消息,锦欣生殖近日宣布已完成新一轮的战略投资,本轮融资由原战略股东华平投资及新引入的中信银行旗下信银投资领投,红杉资本中国基金、药明康德等跟投。完成本轮融资后,华平投资及信银投资分别成为锦欣生殖的第二及第三大股…

深入解析:【C++项目】负载均衡在线OJ系统-1

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

网站制作中文版wordpress放广告

戳蓝字“CSDN云计算”关注我们哦!作者 | 成全责编 | 阿秃转自 | 美团技术团队企业博客前言mpvue是一款使用Vue.js开发微信小程序的前端框架。使用此框架,开发者将得到完整的 Vue.js 开发体验,同时为H5和小程序提供了代码复用的能力。如果想将…

实用指南:SCDN如何同时保障网站加速与DDoS防御?

实用指南:SCDN如何同时保障网站加速与DDoS防御?pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas",…

二分查找模板:基础二分与进阶二分

二分查找模板:基础二分与进阶二分 本人在学习到 @灵茶山艾府 的二分查找专题时,收获颇多,故借助大模型记录一些学习心得。 根据目标不同,二分查找可以分为 基础二分(情况1:查找任意一个目标值)和 进阶二分(查找…

【设计模式-4.5】行为型——迭代器模式 - 教程

【设计模式-4.5】行为型——迭代器模式 - 教程pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", &q…

阿里云centos7做网站免费psd模板网站

win7输入密码界面背景怎么更改?win7开机的登录密码界面想要换张图不晓得如何改,下面是小编介绍win7登录界面换背景的技巧,有需要的小伙伴一起来下文看看吧,希望可以帮助到大家! win7输入密码界面背景怎么更改 按windowss键R键打开运行&…

运动鞋建设网站前的市场分析企业免费oa管理系统

系统架构 Flink运行时架构Standalone会话模式为例 1)作业管理器(JobManager) JobManager 是一个 Flink 集群中任务管理和调度的核心,是控制应用执行的主进程。每个应用都应该被唯一的 JobManager 所控制执行。 JobManger 又包含…

浅谈并查集

带权并查集 Luogu P2024 经典例题食物链。 题意:\(n\) 个动物,可能是三个物种之一,给出若干描述,形如两个动物是同类或是吃与被吃的关系,确定出矛盾的描述。 考虑建图,有边相连代表确定一个确定另一个关系,这是…

SP6950 CTOI10D3 - A HUGE TOWER 题解

按照 $ h $ 降序依次放每个积木,此时如果有 \(2\) 块积木,那么一定满足条件。因为 \(h_{\text{now}} - h_{\text{pre}} \leq 0 \leq D\)。 继续往下想,再加一块,也要满足 $ h_{\text{next}} - h_{\text{now}} \le…

如何免费搭建网站wordpress安装完怎么恢复数据

引用 亲爱的读者们,您是否在寻找某个特定的数据集,用于研究或项目实践?欢迎您在评论区留言,或者通过公众号私信告诉我,您想要的数据集的类型主题。小编会竭尽全力为您寻找,并在找到后第一时间与您分享。 …

Kubernetes 定时备份etcd数据

Kubernetes 定时备份etcd数据Posted on 2025-10-06 20:54 清欢也野 阅读(0) 评论(0) 收藏 举报个人笔记、与各位的环境不同、自行修改 编写dockfile镜像 1、首先我利用的是k8s自带的基础容器镜像 [root@qinghuany…

蒲县网站建设长沙中小企业做网站

1.简介 1.1单例模式 C单例模式被广泛应用于需要全局唯一实例的场景。以下是一些常见的使用场景: 日志记录器 在大多数应用程序中,需要一个全局的日志记录器来记录系统运行时的事件和错误。使用单例模式可以确保只有一个日志记录器实例,并能…

16_AiAgentMCP简单教程

ai mcp AI Agent与MCP简单教程:从入门到实践 总起:开启AI Agent与MCP之旅 什么是AI Agent? AI Agent(人工智能代理)是能够自主感知环境、做出决策并执行行动的智能实体。与传统的被动式AI不同,AI Agent具有主动性…

17_AiAgentMCP实现技术选型

ai mcp AI Agent与MCP实现技术选型:全面指南与最佳实践 总起:技术选型的重要性与挑战 为什么MCP技术选型至关重要? 在AI Agent快速发展的时代,Model Context Protocol(MCP)作为连接AI模型与外部资源的关键桥梁,…

谷歌chrome浏览器优化网络搜索引擎

def 将一个列表中的几个字典改成二维列表(original_list,headersToRemove_list):# 初始化一个列表用于存储遇到的键,保持顺序ordered_keys []# 遍历data中的每个字典,添加其键到ordered_keys,如果该键还未被添加for d in original_list:for …

JVM_XMS 和 java_opts哪种写法对?如何在JVM中设置JVM_XMS和java_opts?

JVM_XMS 和 java_opts哪种写法对? JVM_XMS与JAVA_OPTS是两种不同的JVM参数设置方式,具体写法需根据使用场景选择: JVM_XMS(初始堆大小)‌写法‌::ml-search-more[-Xms]{text="-Xms"}(如-Xms512m) ‌…