利用Matlab进行弹簧振子运动

利用 Matlab 进行弹簧振子运动状态的仿真 第 1 页 共 8 页利用 Matlab 进行弹簧振子运动状态的仿真汪家培(安庆师范学院物理与电气工程学院 安徽 安庆 246001)指导教师:张杰摘要: 简谐振动是最基本的振动,弹簧振子是最典型的简谐振动。本文从牛顿第二定律出发推导了弹簧振子的运动学方程,从而进一步给出由两相同轻质弹簧和一个质量为 m 的小球组成的非线性弹簧振子系统的运动学方程,利用 Matlab 建立了该系统的仿真模型,研究了在不同条件下系统的的运动图像、能量图和相图,详细分析了此非线性系统的特点。关键词:弹簧振子,能量图,相图,运动图,计算机仿真1. 引言普通物理力学中 [1-2]讲振动时,常以水平弹簧振子和单摆为例作为问题的切入点,它们只是非线性振动的近似(胡克定律有一定的适用范围 )。所谓非线性振动是指恢复力与位 移不成线性比例或阻尼力与速度不成线性比例的系统的振动。一般说,线性振动只适用于小运动范围,超过此范围,就变成非线性振动。非线性系统的运动微分方程是非线性的,不能用叠加原理求解。方程中不显含时间的非线性系统称为非线性自治系统;显含时间的称为非线性非自治系统。保守非线性自治系统的自由振动仍是周期性的,但其周期依赖于振幅。对于渐硬弹簧,振幅越大,周期越短;对于渐软弹簧,振幅越大,周期越长。非保守非线性自治系统具有非线性阻尼,阻尼系数随运动而变化,因而有可能在某个中间振幅下等效阻尼为零,从而能把外界非振动性能量转变为振动激励而建立起稳定的自激振动(简称自振) 。弦乐器和钟表是常见的自振系统。周期地改变系统的某个参量而激起系统的大幅振动称参变激发非线性问题是当前物理研究中的热门问题,非线性光学、非线性声学等已成为专门的学科分支。因此在普通物理力学教学中,适当的介绍一些非线性振动及处理方法,对学生后继课程的学习及今后的研究工作都是有益的。本文用一个小球、两个弹簧设计了一个单自由度非线性振动装置,并用计算机数值计算出小球的运动图、能量图和相图,对非线性振动的特点进行了较为系统全面的分析。 2. 弹簧振子系统概述弹簧振子是一种简谐振子。它的典型结构是由一个一端固定,质量可以忽略的轻弹簧和连在它另一端(自由端)与一个跨在气垫导轨上的滑块相连,如图(1) 。这样的,以及与此类似的系统称为弹簧振子。将滑块自弹簧自由伸展时的 O 点移动一小位移至 A点,然后释放。可观察到滑块作变加速运动,由 A点通过 O 点到达 B 点,继而又经过 O 点回到 A 点。并且再度开始与上述过程完全相同的运动,如此往返。不考虑作用于滑块的空气阻力及气垫的摩擦。将滑块视作质点,弹簧自由伸展时质点的位置是平衡位置,以此为坐标原点建立坐标系 Ox。X 表示质点的位置坐标,又等于相对与原点的位移,也是弹簧的伸长(压缩)量。x 很小是,力 f 与 x 之间成线性关系,即 f=-kx, k 是弹簧劲度系数,弹簧弹性力是线性回复力,弹簧振子做简谐振动。根据牛顿第二定律有 [7]图(1)弹簧振子系统利用 Matlab 进行弹簧振子运动状态的仿真 第 2 页 共 8 页(1) 2dxmkt用 m 除上式两端,并令 ,上式可写作20k或 (2) 202dxt20dxt上式即为弹簧振子的运动方程。根据常微分方程的理论, (2)式的解可以写作(3) 0cos()xAtA 和 是待定常数,需要根据初始条件来确定。 (3)式就是简谐振动的运动学方程。由于 00cs()sin()2tt令 代入上式后再代入(3)式,得 0sin()xAt可见,简谐振动的运动规律也可以用正弦函数表示。正弦和余弦函数都是周期函数,因此简谐振动是围绕平衡位置的周期运动。按简谐振动的运动学方程,物体的最大位移不能超过 A,物体离开平衡位置的最大位移的绝对值叫做振幅。为了确定振幅 A 的大小,现对位移对时间求一阶导数,得:(4) 00sin()xdvtt将初始条件 t=0, , 代入上式后取二式平方之和,既可求出振幅,0 x20 xA(3)式表明,只有知道 A、 ω 0、 α ,才能完全决定系统的运动状态。在(3)式中我们把时间 T的线性函数 φ =ω 0t+α 叫做简谐振动的相位。由于简谐振动的位移、速度是按余弦、正弦规律变化的,所以相位是当振幅一定时进一步决定简谐振动任何瞬时运动状态的物理量。所以我们可以用比较两个系统的相位方法来比较两个简谐振动的运动状态。弹簧振子中线性回复力为弹簧的弹性力,是保守力。所以简谐振动系统的总机械能守恒。关于弹簧振子,应用质点动能公式 , ,将(3)式代入可得到:2/kEmv2001sin()kAt因为 。所以有 0k(5) 201sin()kEAt至于势能, ,将简谐振动运动学方程代入,可得/px利用 Matlab 进行弹簧振子运动状态的仿真 第 3 页 共 8 页(6) 201cos()pEkAt有(5)、(6)两式可知:弹簧振子的动能和势能按余弦或正弦的平方随时间变化。显然,动能最大时势能最小,动能最小是势能最大,简谐振动的过程正是动能与势能相互转换的过程。由于弹簧振子的运动行为已经有很多文章讨论过,我们这里就不再赘述,下面我们将讨论偶合弹簧振子的运动过程。3. 偶合弹簧振子的运动微分方程我们讨论的偶合弹簧振子 [8-9]如图 2 所示,设两相同的轻质弹簧,原长为 l,劲度系数为 k,串联相联,两端固定,中间系一个质量为 m 的小球,整个系统处于竖直平面内,形成一非线形振动系统。图 2 偶合弹簧振子示意图设系统处于静平衡时弹簧与竖直方向的夹角为 α ,弹簧长为 L,小球到两弹簧端点连线的垂直距离为 h,由图 2 可知 2(1)coskLmg即(7)22cos2()()mgghkLlhll由此可知 h 的值由 k、 l 和 m 共同决定。将 m 从静平衡位置向上托起并由静止释放的方法,托起高度 h’

matlab 弹簧,利用Matlab进行弹簧振子运动相关推荐

  1. Matlab:利用Matlab编程实现模拟分子布朗运动的动画展示

    Matlab:利用Matlab编程实现模拟分子布朗运动的动画展示 目录 输出结果 实现代码 输出结果 实现代码 %Brownian motion clf; n=20; s=0.02; x = rand ...

  2. Matlab:利用Matlab实现布朗运动模拟

    Matlab:利用Matlab实现布朗运动模拟 目录 输出结果 实现代码 输出结果 实现代码 n=40 s=0.04 x=rand(n,1)-0.5; y=rand(n,1)-0.5; h=plot( ...

  3. 环形网络潮流计算matlab,利用matlab编程计算任意环形网络牛拉法潮流计算程序

    环形网络潮流计算matlab,利用matlab编程计算任意环形网络牛拉法潮流计算程序,程序通用性强,通过修改参数可以得到任意节点和网络的环形网络牛拉法潮流计算. YID:696064261479453 ...

  4. 幅度调制信号 matlab,《利用MATLAB实现信号的幅度调制与解调.doc

    <利用MATLAB实现信号的幅度调制与解调 课程设计论文 姓名:姜勇 学院:机电与车辆工程学院 专业:电子信息工程2班 学号:1665090208 安徽科技学院 学年第 学期 < > ...

  5. 坎蒂雷赋权法 matlab,干货 | 利用MATLAB实现FMCW雷达中的常用角度估计方法

    其中在介绍角度估计中,通过对接收差频信号在快慢时间维度的扩展,增加了空域的信息.扩展后的接收差频信号可以表示为 其中k表示接收天线的个数,d为天线间距. 在"干货|利用MATLAB实现FMC ...

  6. matlab text黑体,MATLAB论文利用MATLAB研究黑体辐射规律.doc

    PAGE PAGE 1<MATLAB语言>课程论文利用MATLAB研究黑体辐射规律姓名:陈清源 学号:12010245332 专业:电子信息工程 班级:2010级1班指导老师:汤全武 学院 ...

  7. matlab rawdata,利用 Matlab 和 Dcraw 处理数码相机 Raw 文件的完整流程 _ Capbone.pdf

    利用 Matlab 和 Dcraw 处理数码相机 Raw 文件的完整流程 _ Capbone 2015/10/20 利用 Matlab 和 Dcraw 处理数码相机 Raw 文件的完整流程 | Cap ...

  8. 用matlab能带图,利用Matlab绘制Materials studio能带图

    [原创]利用Matlab绘制Materials studio能带图 作者: xianggui7895(站内联系TA)收录: 2011-04-06 发布: 2011-03-30 Materials St ...

  9. matlab复数向极坐标转换_[matlab 极坐标]利用MATLAB函数文件,实现直角坐标(x,y)与极坐标(ρ,θ)之间的转换。谁能写出函数和调用语句?...

    利用MATLAB函数文件,实现直角坐标(x,y)与极坐标(ρ,θ)之间的转换.谁能写出函数和调用语句? 问题补充:利用MATLAB函数文件,实现直角坐标(x,y)与极坐标(ρ,θ)之间的转换.谁能写出 ...

  10. 牛顿法的matlab实现,利用matlab基础语句实现牛顿法matlab潮流计算

    问题描述 现代电力系统分析课程留了用计算机进行潮流计算的作业,可以使用各种软件实现,matlab就包含在其中,按老师的意思应该是使用matlab中的某个app. 可是我头铁,app是什么,当然要自己写 ...

最新文章

  1. ISME:微生物网络构建与分析面临的挑战
  2. ollections 库中常用的 4 个数据结构
  3. python单例模式基于__new__方法实现的单例模式(推荐使用,方便)
  4. 关于高阶导数的一个不等式估计
  5. php算出文件相对路径,php计算两个文件相对路径的方法
  6. SQL Server 查询性能优化——覆盖索引(二)
  7. 您拒绝了位置共享服务器,共享服务器拒绝访问
  8. 关于 Node.js scoped module 的一些理解
  9. adf开发_ADF BC:创建绑定到业务组件的UI表
  10. 当 IDENTITY_INSERT 设置为 OFF 时,不能向表 中的标识列插入显式值错误的解决方法...
  11. 使用Mfuzz包进行基因表达的时间趋势分析并划分聚类群
  12. java操作数据库 jdbc
  13. 对shell的简单认识
  14. pp助手苹果版本_pp 助手停止服务/共享 ID 结束,旧版应用还能这样下载
  15. 配置文件报错:不允许有匹配 [xX][mM][lL] 的处理指令目标
  16. c语言 程序设计一篇,用c语言编程任务br/请编写一个程序,从输入中读取一篇中文文 爱问知识人...
  17. 网站PHP框架之Laravel5.5(十一)数据库版本控制数据迁移工具migration详解
  18. 交叉验证stratified k-fold cv与shuffle等常用cv方法
  19. IIS 请求报503
  20. Oracle Database 12c Security - 6. Real Application Security

热门文章

  1. 2018年 数据挖掘“泰迪杯” C题 第二问
  2. ATmega128定时器
  3. 电磁场关于静电场和恒定磁场的思维导图及引申时变电磁场
  4. Visual Studio 2022 WinForm/Wpf打包安装程序
  5. 聚类分析软件操作流程
  6. 图文并茂全面总结上百个Android Studio好用的插件(IDE通用)
  7. 全新帝国CMS7.5大气科技感网站建设+网络公司网站源码
  8. 【STM32 + HAL库】倒立摆
  9. java date 默认值_Java程序将java.util.Date转换为ZonedDateTime
  10. [19保研]厦门大学软件学院暑期夏令营招生简章