列车-轨道-桥梁交互仿真研究(Matlab代码实现)

简介: 列车-轨道-桥梁交互仿真研究(Matlab代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥

💥💥💞💞欢迎来到本博客❤️❤️💥💥

🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。

⛳️座右铭:行百里者,半于九十。

💥1 概述

TTB-2D 软件以 2D 表示形式模拟列车-轨道-桥梁系统的动态响应。火车表示为多个车辆的连续。轨道包括轨道不规则性,并对轨道、垫、枕木、道砟和子道砟进行建模。该桥被建模为具有可定制支撑条件的有限元公式的梁,从而有效地表示各种结构配置。这个经过验证的数值模型考虑了车辆-基础设施的相互作用。

参考文献1:

image.gif 编辑

摘要:

本文研究了关于铰接高速列车在桥梁上的动力相互作用系统的问题。建立了桥梁-铰接列车系统的动力相互作用模型,该模型由铰接车辆元素模型和有限元桥梁模型组成。根据铰接车辆的结构和悬挂特性建立了车辆模型,并编制了计算机仿真程序。以塔力斯铰接列车沿巴黎-布鲁塞尔高铁线上的Antoing桥通过为例,对桥梁和车辆的动态响应进行了计算分析。通过比较计算结果和实地测量数据验证了提出的分析模型和解决方法。讨论了铰接列车的振动行为。

参考文献2:

image.gif 编辑

摘要:

本文讨论了火车在一系列简支铁路桥上行驶的二维稳态响应和乘坐舒适度,以及轨道和桥梁的冲击响应。通过之前开发的凝结技术解决了车辆-轨道-桥梁相互作用系统的动态响应。为了使行驶的火车达到稳态响应,应考虑由最少单元组成的桥梁段。通过使用功率谱密度(PSD)函数来考虑具有随机性质的轨道不平整。计算和讨论了火车、轨道和桥梁的稳态响应,以及响应的快速傅里叶变换(FFT)。利用冲击系数研究了不同火车速度下轨道和桥梁的冲击响应。确定了由于火车-轨道-桥梁共振引起的火车的最大响应。最后,使用斯伯林骑行指数评估了行驶在不同不规则等级轨道上的火车的乘坐舒适度。

参考文献3:

image.gif 编辑

摘要

本文考虑了具有非线性轮轨接触力的模型,用于分析高速列车与桥梁之间的动态相互作用,以研究由耦合引起的桥梁和车辆中的动态效应。在评估诸如列车跨越强横风吹袭的桥梁或发生地震时车辆翻车等情况下的行车稳定性和安全性时,可能需要使用非线性接触模型。为了研究列车和桥梁的耦合动态响应,车辆采用多体动力学模型,结构采用有限元方法。本文特别强调了铁路车辆和轨道之间接触相互作用力的考虑。本文比较了四种不同的相互作用模型:(1)车辆轮对被认为与轨道刚性耦合的模型;(2)交错解耦方法,在该方法中分别分析车辆和结构;(3)线性接触模型,在该模型中,允许轨道和列车车轮之间的横向相对位移,假设双圆锥车轮和轨道剖面,以及Kalker理论的正接触的线性理论;(4)非线性模型,其中使用实际的车轮和轨道剖面,Hertz的非线性理论用于法向接触,Kalker的非线性理论用于切向接触。不同模型应用并与中国高速列车的一项实验测量进行比较。

一、研究背景与核心概念

列车-轨道-桥梁交互仿真(Train-Track-Bridge Interaction, TTBI)是高速铁路与重载铁路安全设计的核心技术,旨在分析列车通过桥梁时三者的动态耦合效应。其核心是通过多学科融合(车辆动力学、结构力学、接触力学)预测系统在运行荷载下的振动响应,评估行车安全性(脱轨风险)、乘坐舒适性(振动加速度)及结构耐久性(疲劳损伤)。

理论基础

  1. 多体系统动力学:列车视为刚体/柔性体组合系统,考虑车体、转向架、轮对的自由度与悬挂非线性。
  2. 有限元理论:轨道与桥梁采用梁/壳/实体单元离散化,模拟弹性变形与波动传播。
  3. 轮轨接触模型:法向力采用Hertz接触理论,切向力采用FASTSIM算法,考虑蠕滑与几何非线性。

二、系统建模方法与关键技术

(1) 子系统建模

子系统 建模方法 关键参数 技术挑战
列车 多体动力学(27自由度车辆模型) 簧上质量、悬挂刚度/阻尼、轮径 非线性悬挂与轮轨接触力求解
轨道 有限元梁单元或离散支撑模型 扣件刚度、道床阻尼、轨道不平顺谱 道砟颗粒离散性与长期沉降
桥梁 有限元模态叠加法 模态阻尼比、材料本构关系、支座边界条件 大跨度桥梁风致振动与地震响应

(2) 耦合机制与算法

  • 轮轨耦合:空间动态轮轨接触模型,求解垂向力与横向蠕滑力。
  • 轨桥耦合:通过弹簧-阻尼单元模拟扣件系统,传递振动能量。
  • 求解算法
  • 直接耦合法:整体系统方程联立求解(精度高,计算量大)。
  • 迭代耦合法:子系统独立求解+界面力迭代(效率高,需收敛控制)。
  • 显-隐式积分:车辆用显式(如Runge-Kutta),桥梁用隐式(如Newmark)。

(3) 激励源建模

激励类型 模型 影响
轨道不平顺 功率谱密度(PSD)如德国低干扰谱 引发轮轨冲击振动,降低舒适性
风荷载 脉动风场模拟(Davenport谱) 导致桥梁横向摆动,威胁行车安全
地震波 时程加速度输入(El-Centro波等) 激发桥梁低频共振,加剧脱轨风险

三、仿真软件工具与验证

(1) 主流仿真平台

软件名称 核心技术 适用场景 验证案例
TTBSIM 显-隐式混合积分+轮轨空间耦合 高速铁路桥梁动力响应预测 京沪高铁桥梁试验
SIMPACK-OpenSees联合平台 多体动力学+非线性有限元 地震工况下车桥耦合(考虑材料非线性) 高铁桥梁抗震设计
LS-DYNA RAIL模块 显式动力学+接触算法 冲击荷载(如脱轨碰撞) 重载铁路桥梁安全评估
UM (Universal Mechanism) 多体系统参数化建模 轨道不平顺敏感性分析 轨道维护策略优化

image.gif 编辑

(2) 参数设置要点

  • 车辆参数:CRH380A列车质量(45t/车厢)、转向架间距(18m)、一系悬挂刚度(1.5MN/m)。
  • 轨道模型:无砟轨道采用双块式轨枕,扣件刚度(50 kN/mm)。
  • 桥梁边界:墩台约束模拟为弹簧(刚度1×10⁹ N/m)或固定支座。

(3) 实验验证方法

  • 现场试验:测量桥梁跨中加速度、轮轨力(如秦沈客运专线实测数据)。
  • 缩尺模型:1:10比例列车-桥梁振动台试验(同济大学,2024)。

四、工程应用与典型案例

(1) 安全评估与优化设计

  • 沪昆高铁北盘江大桥(主跨445m拱桥):
  • 问题:风荷载引起横向振幅超标(>4.5mm)。
  • 仿真方案:TTBSIM模拟风-车-桥耦合,优化抗风支座参数。
  • 结果:振幅降至2.3mm,脱轨系数<0.8(安全阈值)。
  • 瑞典博特尼亚线既有桥梁改造
  • 问题:50%桥梁竖向加速度超标(>3.5 m/s²)。
  • 方案:引入轨桥耦合模型修正,考虑道砟阻尼效应。
  • 结果:加速度降低35%,节省加固成本40%。

(2) 极端工况分析

工况 仿真方法 结论
地震(8度烈度) OpenSees非线性时程分析 列车速度>200km/h时脱轨风险增加3倍
强风(25m/s) 湍流风场CFD+TTBI耦合 侧风下车体横向加速度限值0.13g
紧急制动 多体动力学+轮轨黏滑模型 制动距离增加20%,桥面动应力超静载30%

五、研究趋势与挑战

  1. 精细化建模
  • 轨道:离散元(DEM)模拟道砟颗粒流动。
  • 桥梁:混凝土开裂与钢筋锈蚀时变模型。
  1. 智能仿真技术
  • 机器学习:LSTM预测轨道不平顺演化。
  • 数字孪生:基于BIM的实时监测-仿真闭环。
  1. 多灾害耦合
  • 风-雨-地震联合作用下列车运行安全阈值。
  1. 标准化挑战
  • 欧洲规范(EN 1991-2)桥面加速度限值(3.5 m/s²)未考虑无砟轨道差异。

六、权威文献与机构推荐

  • 核心著作
  • 《列车-轨道-桥梁动力相互作用理论与工程应用》(翟婉明等,2011)。
  • "Train–track–bridge dynamic interaction: state-of-the-art review"(Zhai et al., 2019)。
  • 研究机构
  • 西南交通大学(牵引动力国家重点实验室):TTBSIM开发者。
  • 北京交通大学:风-车-桥耦合试验平台。

结论:TTBI仿真技术已从简单力-桥模型发展为多物理场耦合的智能系统,其精度依赖于精细化子模型高效耦合算法多源激励表征。未来需突破实时仿真与多灾害耦合的瓶颈,推动铁路基础设施全生命周期安全管理。

📚2 运行结果

image.gif 编辑

image.gif 编辑

image.gif 编辑

image.gif 编辑

image.gif 编辑

部分代码:

% Input processing

if calc_type == 0

   out_field = 'StaticShear';

   in_field = 'StaticU';

elseif calc_type == 1

   out_field = 'Shear';

   in_field = 'U';

end % if calc_type == 0

   

% Initialize variables

Sol.Beam.(out_field).xt = zeros(Beam.Mesh.Nodes.Tnum,Calc.Solver.num_t);

% In-line functions (more efficient alternative to subfunctions)

B32_Beam_ele_HS = ...

   @(L,E,I) double(E*I*[[12/L^3,6/L^2,-12/L^3,6/L^2];[12/L^3,6/L^2,-12/L^3,6/L^2]]);

% ---- NO average nodal values ----

if Calc.Options.Shear_calc_mode == 0

   

   for ele = 1:Beam.Mesh.Ele.Tnum

       aux1 = B32_Beam_ele_HS(Beam.Mesh.Ele.a(ele),Beam.Prop.E_n(ele),Beam.Prop.I_n(ele));

       Sol.Beam.(out_field).xt(ele,:) = aux1(1,:) * ...

           Sol.Model.Nodal.U(Model.Mesh.DOF.beam(Beam.Mesh.Ele.DOF(ele,:)),:);

   end %for ele

   ele = Beam.Mesh.Nodes.Tnum;

   aux1 = B32_Beam_ele_HS(Beam.Mesh.Ele.a(ele-1),Beam.Prop.E_n(ele-1),Beam.Prop.I_n(ele-1));

   Sol.Beam.(out_field).xt(ele,:) = aux1(2,:) * ...

       Sol.Model.Nodal.(in_field)(Model.Mesh.DOF.beam(Beam.Mesh.Ele.DOF(ele-1,:)),:);

   

% ---- AVERAGE nodal values ----

elseif Calc.Options.Shear_calc_mode == 1

   

   for ele = 1:Beam.Mesh.Ele.Tnum

       Sol.Beam.(out_field).xt([1,2]+(ele-1),:) = Sol.Beam.(out_field).xt([1,2]+(ele-1),:) + ...

           B32_Beam_ele_HS(Beam.Mesh.Ele.a(ele),Beam.Prop.E_n(ele),Beam.Prop.I_n(ele)) * ...

           Sol.Model.Nodal.(in_field)(Model.Mesh.DOF.beam(Beam.Mesh.Ele.DOF(ele,:)),:);

   end %for ele

   % Average of nodes with multiple calculations

   Sol.Beam.(out_field).xt(2:end-1,:) = Sol.Beam.(out_field).xt(2:end-1,:)/2;

   

end % Calc.Options.Shear_calc_mode

% ---- Additional Outputs ----

% Maximum Shear Force

[Sol.Beam.(out_field).max,aux1] = max(Sol.Beam.(out_field).xt);

[Sol.Beam.(out_field).max,aux2] = max(Sol.Beam.(out_field).max);

Sol.Beam.(out_field).max_node = aux1(aux2);

Sol.Beam.(out_field).max_COP = Beam.Mesh.Nodes.acum(Sol.Beam.(out_field).max_node);

Sol.Beam.(out_field).max_pCOP = Sol.Beam.(out_field).max_COP/Beam.Prop.L*100;

Sol.Beam.(out_field).max_t_crit = Calc.Solver.t(aux2);

if Sol.Beam.(out_field).max_pCOP < 50

   Sol.Beam.(out_field).max_supp = max(Sol.Beam.(out_field).xt(1,:));

else

   Sol.Beam.(out_field).max_supp = max(Sol.Beam.(out_field).xt(end,:));

end % if Sol.Beam.(out_field).max_pCOP < 50

% Minimum Shear Force

[Sol.Beam.(out_field).min,aux1] = min(Sol.Beam.(out_field).xt);

[Sol.Beam.(out_field).min,aux2] = min(Sol.Beam.(out_field).min);

Sol.Beam.(out_field).min_node = aux1(aux2);

Sol.Beam.(out_field).min_COP = Beam.Mesh.Nodes.acum(Sol.Beam.(out_field).min_node);

Sol.Beam.(out_field).min_pCOP = Sol.Beam.(out_field).min_COP/Beam.Prop.L*100;

Sol.Beam.(out_field).min_t_crit = Calc.Solver.t(aux2);

if Sol.Beam.(out_field).min_pCOP < 50

   Sol.Beam.(out_field).min_supp = min(Sol.Beam.(out_field).xt(1,:));

else

   Sol.Beam.(out_field).min_supp = min(Sol.Beam.(out_field).xt(end,:));

end % if Sol.Beam.(out_field).min_pCOP < 50

% ---- End of function ----

🎉3 参考文献

部分理论来源于网络,如有侵权请联系删除。

[1]He Xia, Nan Zhang, Guido De Roeck,Dynamic analysis of high speed railway bridge under articulated trains,Computers & Structures,Volume 81, Issues 26–27,2003,Pages 2467-2478,ISSN 0045-7949.

[2]Yean-Seng Wu, Yeong-Bin Yang,Steady-state response and riding comfort of trains moving over a series of simply supported bridges,Engineering Structures,Volume 25, Issue 2,2003,

Pages 251-265,ISSN 0141-0296.

[3]Pablo Antolín, Nan Zhang, José M. Goicolea, He Xia, Miguel Á. Astiz, Javier Oliva, Consideration of nonlinear wheel–rail contact forces for dynamic vehicle–bridge interaction in high-speed railways,Journal of 资料获取,更多粉丝福利,MATLAB|Simulink|Python资源获取【请看主页然后私信】

相关文章
|
设计模式 JSON 前端开发
SpringBoot中对LocalDateTime进行格式化并解析
SpringBoot中对LocalDateTime进行格式化并解析
1126 0
|
Android开发 iOS开发 开发者
windows打包uniapp应用p12证书和证书profile文件的制作方法
uniapp打包app,无论是android还是ios,都需要证书。其中ios打包最麻烦,需要p12证书和证书profile文件。而uniapp官网的教程,创建p12证书需要苹果电脑,这里我们不用uniapp官网推荐的教程。因为我们大部分用户使用的是windows电脑,没必要因为打包一个ios应用花7K买一台mac电脑。
1560 0
windows打包uniapp应用p12证书和证书profile文件的制作方法
|
机器学习/深度学习 数据可视化 数据挖掘
初学者该如何选择最适合自己的图像分类模型
初学者该如何选择最适合自己的图像分类模型
1748 0
初学者该如何选择最适合自己的图像分类模型
|
2月前
|
存储 缓存 前端开发
《解锁前端数据持久化与高效查询:IndexedDB深度剖析》
本文深入剖析了前端开发中IndexedDB在数据持久化存储与高效查询方面的核心价值。首先对比传统存储方案的局限,凸显IndexedDB在大容量、复杂数据类型支持上的优势;接着阐述其异步操作、事务支持、索引系统、版本控制等核心特性;随后详解数据持久化策略,包括结构设计、读写更新、清理机制;还介绍了高效查询技巧,如索引优化、游标运用、复杂查询组合;并结合离线应用、数据缓存等案例说明实际价值,最后提及跨浏览器兼容等挑战及应对思路。全文为前端开发者提供了系统化的IndexedDB应用指南,助力提升数据管理能力。
|
10月前
|
供应链 数据挖掘 Java
电商API接口介绍
‌电商API接口‌是指一组用于访问电商平台中数据的编程接口,通过这些接口,开发者可以以编程方式获取商品信息、订单信息、用户信息等,实现电商平台数据的对接和交互。
292 5
|
11月前
|
SQL 数据库
DBeaver执行sql文件
本文介绍了DBeaver这款支持多种数据库的通用数据库管理工具和SQL客户端,它具备查看数据库结构、执行SQL查询和脚本、浏览和导出数据等功能。
1368 1
DBeaver执行sql文件
|
数据安全/隐私保护
加速度、速度、位移互相转换,加速度转位移matlab程序,任意数据类型
地震波格式转换、时程转换、峰值调整、规范反应谱、计算反应谱、计算持时、生成人工波、时频域转换、数据滤波、基线校正、Arias截波、傅里叶变换、耐震时程曲线、脉冲波合成与提取、三联反应谱、地震动参数、延性反应谱、地震波缩尺、功率谱密度
|
Java Linux Shell
Nacos安装指南
`Nacos`安装指南包括Windows和Linux两部分。在Windows上,下载Nacos服务端安装包,解压到非中文目录,修改配置文件(如需)并启动服务。通过`startup.cmd -m standalone`启动,然后在浏览器访问`http://127.0.0.1:8848/nacos`。Linux安装涉及安装JDK,上传Nacos安装包,解压并启动服务,使用`sh startup.sh -m standalone`命令。Nacos作为Spring Cloud Alibaba的依赖,需要在项目中引入相关依赖。
668 1
|
JavaScript Java
kkFileView在线文件预览与项目集成
kkFileView在线文件预览与项目集成
|
存储 缓存 算法
C++从入门到精通:4.6性能优化——深入理解算法与内存优化
C++从入门到精通:4.6性能优化——深入理解算法与内存优化
780 1