尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

行星齿轮非线性程序:相图、庞加莱与分叉图

行星齿轮非线性程序:相图、庞加莱与分叉图
📅 发布时间:2026/6/20 21:02:57

行星齿轮非线性程序,能出相图,庞加莱,分叉图。

行星齿轮系统这玩意儿搞动力学分析,满屏都是非线性项。刚接触那会儿看着微分方程头皮发麻,后来发现直接数值求解才是真香。咱今天就拿Python撸个能出相图、庞加莱截面和分叉图的脚本,手把手看看这非线性系统能整出什么活。

先上核心代码骨架:

import numpy as np from scipy.integrate import odeint import matplotlib.pyplot as plt mu = 0.1 # 阻尼比 k = 10.0 # 刚度 omega_n = np.sqrt(k) # 固有频率 Omega = 0.8 * omega_n # 激励频率 F = 0.5 # 激励幅值 def system(y, t): x, dx = y ddx = -mu*dx - k*x + F*np.cos(Omega*t) + 0.1*x**3 # 含三次非线性项 return [dx, ddx] t = np.linspace(0, 1000, 50000) # 长时间仿真 sol = odeint(system, [0.1, 0], t)

这段代码把行星齿轮常见的非线性因素——三次刚度项给塞进去了。注意时间序列取得特别长,这是为了后面取庞加莱截面时能过滤掉瞬态响应。不过直接画相图的话得截取后面稳定段:

# 截取稳定段 x, dx = sol[-2000:,0], sol[-2000:,1] plt.plot(x, dx, ',k', alpha=0.5) plt.xlabel('Displacement') plt.ylabel('Velocity') plt.title('Phase Portrait')

跑出来的相图要是出现个极限环,说明系统在做周期性振动。但要是看到轨迹开始乱窜,那可能进入混沌状态了——这时候就该庞加莱截面出场了。

取庞加莱截面的骚操作在于按激励周期采样:

# 计算激励周期对应的采样间隔 T = 2*np.pi / Omega dt = t[1] - t[0] stride = int(T/dt) # 取截面点 poincare_x = x[::stride] poincare_dx = dx[::stride] plt.figure() plt.plot(poincare_x, poincare_dx, '.r', markersize=2) plt.title('Poincare Section')

当庞加莱截面呈现孤立点时是周期运动,出现成片的点云可能就混沌了。不过最直观的还是分叉图——看参数变化时系统如何从老实变癫狂:

bifurcation = [] omega_range = np.linspace(0.5, 2.0, 300) for Om in omega_range: # 每次微调参数重新仿真 def local_system(y, t): x, dx = y ddx = -mu*dx -k*x + F*np.cos(Om*t) + 0.1*x**3 return [dx, ddx] sol = odeint(local_system, [0.1,0], t) x = sol[-2000:,0] # 记录局部极值 peaks = (x[1:-1] > x[:-2]) & (x[1:-1] > x[2:]) bifurcation.append(x[1:-1][peaks]) plt.figure() for i, Om in enumerate(omega_range): plt.plot([Om]*len(bifurcation[i]), bifurcation[i], ',k', markersize=0.1) plt.title('Bifurcation Diagram')

这段分叉图代码有个坑:参数循环时每次都要重新定义微分方程。如果直接修改外层变量会导致闭包问题,所以得在循环内部重新定义local_system。当分叉图从单支分裂成多支,说明系统开始出现倍周期分叉——这是进入混沌的前戏。

跑完这三板斧,基本上能把行星齿轮的非线性特性摸个大概。不过实际工程中参数选择更讲究,比如阻尼比μ别超过0.3,否则啥非线性现象都给你压没了。另外激励频率Ω在固有频率附近最容易出活,调参时可以重点照顾这个区间。

相关新闻

  • 医疗健康领域应用:Linly-Talker构建智能导诊数字人
  • 智慧城市之城市环境智能监管 非法倾倒行为自动识别 环保执法证据采 垃圾倾倒倾倒物品类型识别数据据 垃圾堆识别数据集 公路垃圾识别10315期
  • 无需动捕设备!Linly-Talker通过语音驱动面部动画

最新新闻

  • 刑事合规律师事务所:企业如何选型?三大评估维度与合规服务评测 - 品牌2026
  • 嵌入式SoC隧道FIFO阈值配置与寄存器访问实战指南
  • 智能体资源激增,智能体资源发现规范(ARD)如何解决发现难题?
  • Windows和Office激活难题终极解决方案:KMS智能激活脚本完整指南
  • 2026香港装修公司哪家好?设计情报中心值得推荐 - 资讯速览
  • Unity Mod Manager:游戏模组管理的终极技术架构解决方案

日新闻

  • 信任的进化:技术实现详解——如何用JavaScript构建博弈论模拟器
  • Terrakube自定义工作流:如何集成OPA、Infracost等工具扩展IaC能力
  • grunt-concurrent快速入门:5分钟学会并行运行Grunt任务

周新闻

  • 3步解锁iOS设备:applera1n激活锁绕过完全指南
  • 39 2026 人工智能证书终极盘点,普通人选 AI 证书可以从这些方向入手
  • Redis 暴露公网有多危险?从端口检查到补救步骤

月新闻

  • 【总结】入门篇:50句话让你记住架构核心概念
  • WeChatMsg技术方案解析:实现Mac微信数据自主管理的完整解决方案
  • WeChatMsg:革新性微信数据备份方案,打造你的专属数字记忆库

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号