python动力学_用python学振动分析(一)

python动力学_用python学振动分析(一)因为最近需要重新用到pytorch,而且在颤振分析时遇到一些不理解的问题,所以用python重新学习了振动分析(程序太长就不放这里了,回头整理下放github算了),准备自己手撸一个时域结构动力学仿真程序。结构动力学基础噪音来自部分振动能量在空气中发散,故噪音和振动问题的研究方向是一致的,而振动问题的研究基础是结构动力学。静力学研究在定力作用下的位移,基础是外驱力和静刚度引起的回弹力的平衡,动力学…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

因为最近需要重新用到pytorch,而且在颤振分析时遇到一些不理解的问题,所以用python重新学习了振动分析(程序太长就不放这里了,回头整理下放github算了),准备自己手撸一个时域结构动力学仿真程序。

结构动力学

基础

噪音来自部分振动能量在空气中发散,故噪音和振动问题的研究方向是一致的,而振动问题的研究基础是结构动力学。

静力学研究在定力作用下的位移,基础是外驱力和静刚度引起的回弹力的平衡,动力学研究在非定力作用下的位移,基础是外驱力,惯性力,阻尼力,回弹力的平衡,本质上都是力的平衡(达朗贝尔原理,D’Alembert’s principle)。对力的平衡方程求解,就可以得到响应位移的公式,有了这个方程后就可以根据初始条件计算单自由度刚体响应,结合编程学习振动基本原理,并在遇到响应问题时反推可能原因。

本文公式引用自克拉夫的《结构动力学》,注意不同求解过程是基于不同的假设,这导致不同公式是适用于不同前提下。python动力学_用python学振动分析(一)

无外载自由振动

使用python结合前述位移公式描绘曲线如下图所示,与书本曲线趋势一致,这里的两个关键概念,一个是圆频率和振动频率的差别(f=w/2pi),一个是阻尼比影响衰减速度(临界阻尼时正好一周期内完成振动衰减,实际阻尼与临界阻尼之比即为阻尼比,通过调整输入参数观察程序输出,可以看到不同参数特别是阻尼比的影响):python动力学_用python学振动分析(一)python动力学_用python学振动分析(一)

单个周期载荷简谐振动

在周期载荷下的位移响应包括2部分,一个是与受力有关的稳态成分,一个是与初始状态有关的瞬态成分,在阻尼系统下一般只关注前者,但2者都会受阻尼比和频率比(载荷频率与圆频率之比)的影响,程序作图如下。python动力学_用python学振动分析(一)

有些机械松动问题,通过振动相位测量是可以发现的,已经可靠紧固的机械部件应该是与其它部件间同步运动,在各个零部件之间不应该存在显著的幅值和相位的变化,如果在相互配合的零部件之间存在振动幅值和相位的变化,那么机械松动问题的存在是值得怀疑的。而如果2个轴承座之间相位差180度,则很有可能是存在不对中。这里我有个疑问没想明白,为什么只关注0-180度的相位差,是因为对于波的合成来说270和90是一样的么?

我们通过程序可以观察到不同的阻尼比与频率比对稳态成分的振动幅值和此成分相对外驱力的滞后相位的影响。编程输出与书中图形对比如下,可以看出在频率比接近1处存在共振,而高频时响应幅值更低且不同阻尼差距在接近。python动力学_用python学振动分析(一)python动力学_用python学振动分析(一)

低刚度时响应幅值更大,特别是共振点上,而高频时响应幅值相对低且不同刚度差别不大。python动力学_用python学振动分析(一)

再次对比不同阻尼比时用不同方法计算阻尼比的精度,低阻尼比下半功率法还是不错的。python动力学_用python学振动分析(一)

对于外力冲击引起的振动,有时要考虑在硬质基座与驱动之间增加弹簧和阻尼进行缓冲隔振,这时候外力传递到基座的传导比(基座受力与外力之比)在不同频率比与阻尼比之下有所不同,共振时低阻尼的放大作用更明显,而高频激励下低阻尼更有利于隔振。python动力学_用python学振动分析(一)python动力学_用python学振动分析(一)python动力学_用python学振动分析(一)

对于力传递来说,相同阻尼与驱动频率时不同刚度下传递的力是一样的,但都在共振区间被放大,且高频激励下低刚度的传递力会更小。python动力学_用python学振动分析(一)

多个周期载荷的响应(任意周期载荷的响应)

任意周期函数可根据傅里叶级数分解成稳态中值(先忽略)与多个三角函数之和,或者根据欧拉公式变为多个指数函数之和,下面的切削力图来自Tony和Scott的《machining dynamics》,我尝试用多个sin波合成了一个三角波,效果不是很好,待优化。python动力学_用python学振动分析(一)python动力学_用python学振动分析(一)

冲击载荷的响应

有些结构比如车辆和桥梁对冲击载荷更为敏感,而在冲击载荷中因为时间短,阻尼的影响远不如刚度,所以分析时只关注无阻尼情况,其响应可分为第一阶段的受迫振动与第二阶段的自由振动,受公式推导时的假设限制,只适用于频率比低于1的情况。python动力学_用python学振动分析(一)

任意载荷的响应(另文述说)

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/181511.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • QinQ、VLAN Mapping原理和配置「建议收藏」

    QinQ、VLAN Mapping原理和配置「建议收藏」我唯一知道的就是我一无所知。—苏格拉底文章目录一、QinQ基本原理二、VLANMapping基本原理三、拓扑四、配置与分析五、总结一、QinQ基本原理QinQ是指在802.1QVLAN的基础上增加一层802.1QVLAN标签,从而拓展VLAN的使用空间。在公网的传输过程中,设备只根据外层VLANTag转发报文,并根据报文的外层VLANTag进行MAC地址学习,而用户的私网VLANTag将被当作报文的数据部分进行传输。1、QinQ报文封装格式QinQ报文有.

  • meshgrid用法「建议收藏」

    meshgrid用法「建议收藏」1、meshgrid函数用两个坐标轴上的点在平面上画格。用法:  [X,Y]=meshgrid(x,y)  [X,Y]=meshgrid(x)与[X,Y]=meshgrid(x,x)是等同的  [X,Y,Z]=meshgrid(x,y,z)生成三维数组,可用来计算三变量的函数和绘制三维立体图    例如例题1:  x=-3:1:3;y=-2:1:2;  [X

  • Oracle中文全文索引[通俗易懂]

    环境Oracle9.0.2 Oracle全文索引的基本知识一、历史背景Oracle数据库的全文检索技术已经非常完美,OracleText使Oracle9i具备了强大的文本检索能力和智能化的文本管理能力。OracleText是Oracle9i采用的新名称,在Oracle8/8i中它被称作OracleinterMediaText,在Oracle8以前它的名称是Oracle

  • presentation里的reference_preference的用法

    presentation里的reference_preference的用法Perference也就是我们常说的偏好设置,首选项设置,能够自己主动保存一些数据,比如我们在上一次使用的时候的一些内容,则在下一次启动后依旧生效,而不须要再进行配置。当用户改变设置时,系统就会更新SharedPreference文件里相应的值。perference使用键值对的方式来处理,在android3.0之前,我们一般去继承Preference这个基类,去给用户呈现一个…

  • goland 激活码2020【在线破解激活】

    goland 激活码2020【在线破解激活】,https://javaforall.cn/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

  • php分享朋友圈链接变文字,微信朋友圈怎么转发别人的文章(链接、视频、图片、文字)…「建议收藏」

    php分享朋友圈链接变文字,微信朋友圈怎么转发别人的文章(链接、视频、图片、文字)…「建议收藏」小编每天都有不定时逛微信朋友圈的习惯,嘿嘿,估计正在看此文的你也跟小编一样的吧。朋友圈吸引我们的是上面常能看到很多娱乐、搞笑或有益的帖子。有福同享,独乐不如众乐嘛,SO,偶时也会手痒地转发一下别人发的好文章,与更多人分享。目前微信朋友圈里的链接文章、文字或图片不能一键转发,不过若要转发,也不是难事。如果你还不知道怎么转发别人的文章的话,此文就能帮到你。朋友圈发布的有链接资源文章/视频,图文,或纯文…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号