1-2 基于MATLAB的空间曲线曲率挠率的数值计算

1.工具

  1. 向量函数:设曲线r(s)=(x(s),y(s))r(s)=(x(s),y(s))r(s)=(x(s),y(s))是一条正则曲线,其中sss是弧长参数。r(s)r(s)r(s)是以向量形式表示的,所以称为向量函数。
  2. 向前差商:导数通过 lim⁡Δx→0ΔyΔx\lim_{\Delta x \to 0} \frac{\Delta y}{\Delta x} \quadlimΔx→0​ΔxΔy​定义的,所以在MATLAB中我们选定步长Δx\Delta xΔx(一般小于0.1)后令f′(x)=lim⁡Δx→0ΔyΔxf'(x)=\lim_{\Delta x \to 0} \frac{\Delta y}{\Delta x}f′(x)=limΔx→0​ΔxΔy​.

2.空间曲线曲率及挠率公式

  1. 由于空间曲线存在切向量和法向量,且设α(s)\alpha (s)α(s)是r(s)r(s)r(s)的单位切向量场,则∣α(s)∣=1|\alpha (s)|=1∣α(s)∣=1,由微分几何知识β=α′(s)∣α′(s)∣\beta=\frac{\alpha' (s)}{|\alpha'(s)|}β=∣α′(s)∣α′(s)​是r(s)r(s)r(s)的单位主法向量,令γ=α(s)×β\gamma=\alpha (s)\times\betaγ=α(s)×β是r(s)r(s)r(s)的单位次法向量。对这些几何量做若干次微商和内积运算后得到空间曲线曲率计算公式:k(s)=∣r′(t)×r′′(t)∣∣r′(t)∣3(1)k(s)=\frac{|r'(t)\times r''(t)|}{|r'(t)|^3}\tag {1}k(s)=∣r′(t)∣3∣r′(t)×r′′(t)∣​(1)
  2. 挠率表示曲线相对平面曲线的扭曲程度,由∣dγds∣|\frac{d\gamma}{ds}|∣dsdγ​∣刻画,而这个几何量由主法向量等几何量的若干次微商运算及内积运算后得到挠率计算公式:τ(t)=k(s)=(r(t),r′(t),r′′(t))∣r′(t)×r′′(t)∣2(2)\tau(t)=k(s)=\frac{(r(t),r'(t),r''(t))}{|r'(t)\times r''(t)|^2}\tag {2}τ(t)=k(s)=∣r′(t)×r′′(t)∣2(r(t),r′(t),r′′(t))​(2)

3.MATLAB程序实现

例 \quad 计算r(t)=(5sint,5cost,3t),t∈(0,2π)r(t)=(5sint,5cost,3t),t\in(0,2\pi)r(t)=(5sint,5cost,3t),t∈(0,2π)的数值曲率与数值挠率
解 \quad直接对公式(1)和公式(2)离散化计算结果即可

clc,clear
h=0.01;                          %定义步长
t=0:h:2*pi;                      %定义域
x=5*cos(t);
y=5*sin(t);
z=3*t;
r=[x;y;z];                         %表示函数
r1=gradient(r)./h;            %求一阶导
r2=gradient(r1)./h;           %二阶导
r3=gradient(r2)./h;           %三阶导
r1=r1';r2=r2';r3=r3';
%% 曲率、挠率
v=cross(r1,r2,2);              %一阶导与二阶导做外积
e=dot(r3,v,2);                   %(r',r'',r''')混合积
c=zeros(length(t),1);        %定义矩阵c储存一阶导二阶导叉乘模长,d储存一阶导模长
d=c;
for i=1:length(r)c(i)=norm(v(i,:));           %一阶导二阶导外积的模长d(i)=norm(r1(i,:));          %一阶导模长
end
k=c./(d.^3);                     %曲率
tt=e./c.^2;                       %挠率

从计算结果我们可以发现端点值用此方法处理效果不好,更好的处理结果见知网论文资料。

1-2 基于MATLAB的空间曲线曲率挠率的数值计算相关推荐

  1. matlab空间球与空间圆求解,基于MATLAB的球管相贯空间曲线焊缝的数学模型

    第 3 2 卷 第 8 期2 0 1 1 年 8 月 焊 接 学 报 TRANSACTIONS OF THE CHINA WELDING INSTITUTION Vol. 32 No. 8 Augus ...

  2. 古塔问题matlab,基于 Matlab 对古塔变形趋势探究的数学模型

    第31卷第 2期 2014年 6月 阜阳师范学院学报(自然科学版) Journal of Fuyang Teachers Co~ege(Natural Science) Vo1.31,No.2 Jun ...

  3. matlab龙格库塔法求通解,基于matlab及龙格库塔法求解布拉修斯方程.doc

    基于matlab及龙格库塔法求解布拉修斯方程 Runge-Kutta法求解布拉修斯解 摘要 薄剪切层方程主要有三种解法,即相似解,非相似条件下对偏微分方程组的数值解和近似解.布拉修斯解是布拉修斯于19 ...

  4. matlab光顺拐点,基于MATLAB的最大误差双圆弧逼近曲线的算法及实现.pdf

    基于MATLAB的最大误差双圆弧逼近曲线的算法及实现.pdf 第31卷第6期 基于MⅢB的最大误差双圆弧逼近曲线的算法及实现 文章编号:1004-2539120町]06一唧一∞ 基于MAⅡ.AB的最大 ...

  5. matlab怎么利用圆形度提取园,基于Matlab+GUI图像处理的物料粒度与圆形度测试.pdf...

    基于Matlab+GUI图像处理的物料粒度与圆形度测试.pdf 第36卷第2期 中国农机化学报 Vol_36No.2 2015年3月 JournalofChinese Mechanization Ma ...

  6. 如何用matlab画旋转面,基于MATLAB在旋转面及其方程教学中应用的教学设计

    汝强 [摘 要]在空间解析几何教学中,MATLAB不仅能将复杂的空间曲面方程精准.直观地用三维图形表现出来,还能以动画的形式将空间复杂曲面任意旋转,使学生能直观地.全方位地观察.理解空间曲面方程所表示 ...

  7. MATLAB 仿真 n年后的比例,基于Matlab的比例导引弹道仿真分析.PDF

    基于Matlab的比例导引弹道仿真分析.PDF ·60· 战术导弹技术Ta(·ti(·alMissile TechnologyMay,2009,(3):60-64 [文章编号]1009.1300(20 ...

  8. 基于MATLAB的多进制数字调制信号的矢量星座图分析

    1 前言 通信即传输信息,进行信息的时空转移.通信系统的作用就是将信息从信源发送到一个或多个目的地.实现通信的方式和手段很多,如手势.语言.旌旗.烽火台和击鼓传令,以及现代社会的电报.电话.广播.电视 ...

  9. 基于matlab的图像形状与分类毕业设计(含源文)

    基于matlab的图像形状与分类 摘 要 数字图像处理是一门新兴技术,随着计算机硬件的发展,数字图像的实时处理已经成为可能,由于数字图像处理的各种算法的出现,使得其处理速度越来越快,能更好的为人们服务 ...

最新文章

  1. SEO那些事:一句代码一键分享网站
  2. Parallel Old收集器
  3. h.264 html播放,浏览器 – 我如何播放H264视频?
  4. cocos2d-x3.6 连连看连通画线
  5. ios html高度自适应,iOS UILabel高度自适应终结篇
  6. 桥接模式和路由模式区别_联通创维光猫DT541-CSF改桥接模式方法
  7. java对mysql的简单操作的综合运用——修改密码系统
  8. java servlet 注册登录,JSP+JavaBean+Servlet实现用户登录与注册
  9. 在arm上运行x86动态库_苹果官宣:Arm取代英特尔
  10. ssh免密码远程执行sudo命令
  11. jsPDF介绍与兼容IE的补丁
  12. docker CI部署样例
  13. 佳能2780打印机老出5100错误
  14. 学习 Linux 有哪些好处?
  15. svg怎么转换成png格式?
  16. c语言求最大公约数多一个负号,C语言 求最大公约数
  17. c语言大学程序设计题库,大连理工大学c语言...程序设计题库.doc
  18. 最佳实践 | 用腾讯云AI人像变换给自己一次“跨越年龄的体验”
  19. Unity鼠标控制物体360°旋转和点击移动
  20. C语言--确定到底谁是凶手

热门文章

  1. shell脚本写hive代码
  2. 【教师证学习笔记006】中学生心理辅导
  3. 【9.30】日常运维——rsync、系统日志
  4. 算法作业2-轮流取石头游戏
  5. java下将汉字转换为拼音
  6. java编程中竖杆怎么打出来_JAVA实现竖体汉字输出
  7. python飞机大战设计(论文+程序+源代码)
  8. 融云猿桌派: 35 岁程序员,正值当打之年,尚有星辰大海
  9. 动力节点 Java 基础练习题(day10)
  10. ORA-12514: TNS:listener does not currently know of service requested in connect descri