【等距螺旋的七个实验】实验四:等距螺旋的数学计算

若将螺旋看做是直线运动与圆周运动的叠加,每个旋转周期,直线上移动相同的距离,这样得到的螺旋曲线可以统称为等距螺旋

【等距螺旋的公式】

等距螺旋公式是从风螺旋公式引用而来,它根据直线运动速度w,圆周运动速度v,以及直线与圆周的位置关系DA(sinDA= D/r)来表示。

公式一通过余弦定理推导而来,代表从圆心到螺旋线上一点的距离,是公共部分。公式二与公式三分别代表了不同角度关系下的表达方式。然而,包含了顺逆时针的旋转方向之后,角度关系远比相像的要复杂。

【等距螺旋的突变点计算】

我们按照直线与圆相交与下部(直线距离圆心20单位,圆半径50单位)来看,我们期望的螺旋应是图1中的样子。

图1 等距螺旋的一个例子

然而,用数学软件代入公式2来实现以后却是下面的样子:

根据实验,发现公式三加上Pi(即 ??=??+??+Pi),叠加到图形里以后是下面的样子:

从上图中可以看到,在负值区间里(图中坐标系设定为:逆时针角度增大,水平向右为零度轴),螺旋线发生了明显的突变,而这个突变可以看成是从一个轨迹突变到了另一个旋转方向的轨迹上去。

既然公式二与公式三在某个点会相交,突变点一定是同时满足这两个公式的计算。于是将公式二与公式三画等号,??-??= ??+??+Pi 化简之后得到突变点出现的位

置为t= -v?(w*Cos[DA])。通过分段显曲线,突变点之前用公式一,则突变点之后用公式二,得到下面的图形:

突变点之前用公式二,则突变点之后用公式一,得到下面的图形:

通过对比可以知道,上面两条螺旋的区别就在于旋转方向的不同。

【等距螺旋的角度控制】

从直线与圆周的交点,运动到近地点(D),直线距离为r*cosDA,对应的时间长度为r*cosDA/w,这个时间段对应的圆弧长度为v*(r*cosDA/w),对应的角度为(弧度单位)2Pi*v*(r*cosDA/w)/(2Pi*r)=v*cosDA/w。用这个角度加上DA或减去DA,做为初始角度,可以实现螺旋线水平对称摆放。

Mathematica软件中的验证代码如下,无论改变半径大小或速度大小,都可以得到运动轨迹相同的效果:

通过实验可以发现,等距螺旋的关键参数包含:半径r,速度比 w/v,直线与圆心的距离h(可以用DA角度来表示)。对于公式使用来说,由两套公式共同构成一条完整的螺旋。螺旋的形态异除了参数的问题外,旋转方向也是一个很重要的因素。

【软件下载】

等距螺旋实验演示软件:

https://pan.baidu.com/s/1d7KeVKclptXuvuGI5XMFBA

扩展阅读

【等距螺旋的七个实验】实验一 阿基米德螺旋的再认识

【等距螺旋的七个实验】实验二 渐开线的再认识

史上最详细的等距螺旋公式的推导步骤

等距螺旋的数学验证

原文地址:https://www.cnblogs.com/windspiral/p/10415237.html

时间: 2024-10-09 07:14:23

【等距螺旋的七个实验】实验四:等距螺旋的数学计算的相关文章

20145123《实验报告四》

Java实验报告四:Android开发基础 实验要求: 1.安装Android Studio 2.运行安卓AVD模拟器 3.使用安卓运行出虚拟手机并显示HelloWorld以及自己的学号 实验过程 (一)SDK的安装 1. 2. 3.

操作系统实验报告四

操作系统实验4 题目1:编写页面内存的LRU替换算法 在实验3基础上考虑,如果当前分配的内存或保存页面的数据项已经被用完,这时再有新的网页请求,需要对已在内存中的网页数据进行替换,本实验内容需要使用LRU算法来对内存中的网页数据进行替换 题目2:编写页面内存的LFU替换算法 实现LFU(最少访问频率的页面替换)算法来管理内存页面 实验报告要求: 实验报告封面如下页所示. 按照题目要求,完成相关实验题目. 2.1报告中要包含完成此题目所查阅的一些关键技术材料.例如内存结构的设计.分配管理.回收方法

Packet Tracer 5.2实验(十四) 网络地址转换NAT配置

Packet Tracer 5.2实验(十四) 网络地址转换NAT配置 一.实验目标 理解NAT网络地址转换的原理及功能: 掌握静态NAT的配置,实现局域网访问互联网: 二.实验背景 公司欲发布WWW服务,现要求将内网Web服务器IP地址映射为全局IP地址,实现外部网络可访问公司内部Web服务器. 三.技术原理 网络地址转换NAT(Network Address Translation),被广泛应用于各种类型Internet接入方式和各种类型的网络中.原因很简单,NAT不仅完美解决了IP地址不足

【黑金原创教程】【FPGA那些事儿-驱动篇I 】实验十四:储存模块

实验十四比起动手笔者更加注重原理,因为实验十四要讨论的东西,不是其它而是低级建模II之一的模块类,即储存模块.接触顺序语言之际,“储存”不禁让人联想到变量或者数组,结果它们好比数据的暂存空间. 1. int main() 2. { 3. int VarA; 4. char VarB; 5. VarA = 20; 6. VarB = 5; 7. } 代码14.1 如代码14.1所示,主函数内一共声明两个变量VarA与VarB(第3~4行).VarA是两个字节的整型变量,VarB是一个字节的字符变量

实验报告四

实验报告四 学   号201421450035   中国人民公安大学 Chinese people' public security university 网络对抗技术 实验报告   实验四 恶意代码技术     学生姓名 王雪洁 年级 2014级 区队 5 指导教师 高见     信息技术与网络安全学院 2016年11月7日   实验任务总纲 2016-2017 学年 第 一 学期 一.实验目的 1.通过对木马的练习,使读者理解和掌握木马传播和运行的机制:通过手动删除木马,掌握检查木马和删除木

实验十四 Swing图形界面组件

实验十四  Swing图形界面组件 实验时间 20178-11-29 1.实验目的与要求 (1) 掌握GUI布局管理器用法: (2) 掌握各类Java Swing组件用途及常用API: 2.实验内容和步骤 实验1: 导入第12章示例程序,测试程序并进行组内讨论. 测试程序1 在elipse IDE中运行教材479页程序12-1,结合运行结果理解程序: 掌握各种布局管理器的用法: 理解GUI界面中事件处理技术的用途. 在布局管理应用代码处添加注释: 测试结果: 这个程序是一个网格布局,网格布局像一

第七章数组实验实验报告(第一部分)

实验项目:第七章数组实验 姓名:谢丽萍  时间:2019年5月29号   地点:514教室 一.实验目的与实验要求 ①7.3.1-1本实验旨在巩固学生对数组这种数据结构的理解,增强程序设计能力.在这个实验中,学生将练习:定义一个一维整形数组,其大小为10,即它能存放10个数据:使用循环语句,利用随机函数生产10个整数放在数组中:编写排序函数sort1()使用循环语句,将排好序的10个数依次存放在数组中.在强化练习中,学生将练习:将数组定义为全局数组或局部数组:在主函数中,用随机函数生成10个元素

第七章 数组实验

实验项目: 1.一维数组的运用 2.二维数组的应用 3.字符数组的应用 姓名:陈福洲  实验地点:教学楼514教室  实验时间:2019.5.29 一.实验目的与要求 1.掌握一维和多维数组的定义和数组元素的引用方法. 2.了解一维和多维数组初始化方法. 3.学习一维和多维数组的基本算法. 4.掌握数组的定义.初始化方法及其元素的引用方法. 5.掌握c语言提供的对字符串进行处理的基本函数库. 二.实验内容 一维数组的应用(7.3.1) 实验练习1:(1)问题的简单描述:编写程序,利用随机函数产生

实验5 简单嵌入式WEB服务器实验 实验报告 20135303 20135326

北京电子科技学院(BESTI) 实     验    报     告 课程:信息安全系统设计基础                班级:  1353 姓名:20135303 魏昊卿 学号:20135326 王亦可 成绩:             指导教师: 娄嘉鹏             实验日期:2015.12.03 实验密级:         预习程度:                     实验时间:15:30~18:00 仪器组次:          必修/选修:必修