统计能量分析软件 基于Matlab/Octave开放源代码的开发和实现外文翻译资料
2022-09-30 11:39:38
统计能量分析软件
基于Matlab/Octave开放源代码的开发和实现
声振硕士论文
DANIEL JOHANSSON
PETER COMNELL
土木与环境工程
应用声学部
声振组
查尔姆斯理工大学
瑞典哥德堡
摘要
统计能量分析计算软件一般是封闭源代码编写,用户定义一些数据输入系统,系统会给出结果,但是并没有给出结如何计算的信息。软件就像“黑匣子”一样。通常也有有限的可能性来修改计算的细节。因此软件有必要用开放源代码编写,给用户修改计算方法的可能,并且使用户更好的理解如何得到计算结果。
现在的SEA计算软件另一个问题是他们经常与其他软件捆绑成一个程序包,使得价格昂贵而且会迫使用户购买他们并不使用的软件。使用开放源代码编写,软件是免费的,任何人都可以使用。
本论文的目的是基于Matlab构建一个开放源代码的SEA计算软件,关键组件被设计出来,会使得未来更容易发展。
本论文的焦点在于实现SEA计算软件系统建立一边连接的各向同性板。建立区域连接去计算单叶或双叶墙分隔房间的声音传递。文献研究和Matlab编程使这个方法成为可能。
通过对比文献和商业软件AutoSEA v.1.5的三个算例进行结果的验证。这三个算例是:两块平板通过一边连接耦合,单叶墙中声音的传递和双叶墙中声音的传递。
结论是计算结果与文献和商业软件基本一致,除了双叶墙的非共振传递需要进一步评估和验证。
关键词:统计能量分析,SEA,耦合损耗因子,模型重叠,模型密度,传递系数,辐射效率,开放源代码
前言
本文工作作为瑞典哥德堡查尔姆斯理工大学应用声学部硕士毕业项目的一部分在2010年春秋期间完成。主要工作包括文献研究和Matlab编程。
我们想借此机会感谢为这个工作做了一定程度贡献的人。
首先我们要感谢我们查尔默斯的导师Patrik Andersson,他乐于助人为我们提供了有效的建议。我们还要感谢我们的A2Zound导师Lars Ivarsson和Henrik Marberg,对于软件的设计和操作,他们提供了建设性意见和建议,特别需要感谢的是Lars,因为他的想法,我们才开始了这个项目。非常感谢Jens Forssen愿意花时间回答我们的问题。同样的感谢Borje Wijk向我们提供高价值的技术帮助,节省了我们大量的时间。
符号
罗马大写字母
A 总吸收量
B 弯曲刚度
E 能量
Ey 杨氏模量
F 力(N)
K 弹性系数(N/m)
L 边长(m)
L, 周长(m)
MF 图4.2中的牵引力
NF 图4.2中的牵引力
P 功率
Q 体积速度(m3/s)
R 还原指数
Rrad 辐射阻抗
S 面积
S, 体表面积
SF 图4.2中的牵引力
T60 混响时间
TF 图4.2中的牵引力
V 体积(m3)
Y 迁移率
Z 阻抗
罗马小写字母
c0 流体波速(m/s)
cg 波群速度(m/s)
d 空腔宽度(m)
f 频率(HZ)
fc 临界频率(HZ)
f11 一阶振型(HZ)
fdw 双叶墙共振频率(HZ)
fd 空腔停止弹性刚度频率(HZ)
h 高度(m)
k 波数
l 长度l1ge;l2(m)
m 质量(kg)
n 模态密度
p 压强(Pa)
t 时间(s)
ud 图4.2中的位移
v 速度(m/s)
vd 图4.2中的位移
wd 图4.2中的位移
希腊小写字母
alpha; 波幅
alpha;, 吸收系数
eta; 损耗因子
eta;ij 从子系统i到j的耦合损耗因子
eta;i 子系统i的总损耗因子
eta;id 子系统i的内部损耗因子
theta; 板间的夹角
theta;d 图4.2中的位移
mu; 泊松比
lambda; 波长(m)
rho; 面积密度(kg/m2)
rho;0 流体密度(kg/m3)
sigma; 辐射效率
tau; 透射系数
phi; 波浪入射角
omega; 角频率
向量和矩阵
K 动态刚度矩阵
R 几何矩阵
F 力
a 位移
b 位移
f 动态载荷
缩略词
CLF 耦合损耗因子
SEA 统计能量分析
1 引言
自从在1960年中期第一次出现以来,统计能量分析一直作为中高频率振动和声音传递的评估技术。统计能量分析,简称SEA。证明成功后,现在有一个广泛的应用范围,从建筑延伸到宇宙飞船。
1.1背景
可用的SEA计算软件经常使用封闭源代码,这意味着用户不知道该软件如何计算出结果,软件就像一个“黑匣子”,举个例子:如用户加载的输入数据、软件的返回结果和中间的一切是对用户隐藏的。
促使本文的另一个因素是商业SEA软件经常与其他软件捆绑成一个程序包,这样的程序包的许可证书是很昂贵的,而且很可能捆绑软件对于用户来说是无用的。
1.2目的
本论文的目的是构建和实现一个SEA计算软件,这个软件命名为SEAlab,可以基于Matlab编程,程序编写过程可以被记录并对用户开放,SEAlab应该设计为未来修改更容易实现。作为软件的开始,应该能够处理各向同性板的传递和单叶或双叶墙分隔的空间的声传递。
1.3目标
本文的目标是创建一个用户友好的Matlab程序进行SEA计算。软件应该可以根据用户的技术参数容易地修改。这将通过使用程序的函数实现。函数可以很容易地观察和修改。函数的使用允许用户创建新的函数并集成在软件中。
2 软件源代码
所有的软件都有源代码,源代码对于用户一般是开放或者封闭的,意思是用户是否可以访问源代码。软件里有许多类型的许可证书控制用户的观察和修改权限。SEAlab的源代码对所有用户开放,通过BSD许可证书进行控制:[11] 2010年版权(c),DANIEL JOHANSSON和PETER COMNELL保留所有权利。
·无论是否修改,源代码和二进制的使用和再发布须遵守下面的条件:
·源代码的再发布必须保留上述版权声明,这个列表的条件以及之后的免责声明。
·二进制的再发布必须保留上述版权声明,这个列表的条件以及之后的免责声明和其他分布的材料。
·无论哥德堡查尔默斯科技大学的名字,还是贡献者的名字可能用来支持或促进软件衍生的产品,这没有特定的书面许可。
软件是由现在明示或暗示担保的版权所有者和贡献者提供,包括但不限于适销性的暗示担保,不含特殊目的的。在任何情况下,版权持有人和贡献者应承担直接、间接、附带、特别、典型、或间接损害的责任(包括但不限于购买替代物品或服务;使用损失、数据或利润;营运中断) 无论是在合同,严格责任或侵权(包括疏忽或其他)以任何方式使用这个软件,即使劝告过这种损害的可能性,应承担责任。
开放源代码的优点是用户可以检查代码并且可以看到软件如何处理输入数据。开放源也使得用户更容易根据自己的技术参数修改和创建自己的应用程序。
Matlab被选为编程语言,是因为它被广泛使用,并且相较于SEA软件更便宜。它还与自由软件Octave密切关联。在SEAlab中许多重要的函数是在Octave环境下运行的。
3 统计能量分析理论
统计能量分析或者说SEA是一个广泛使用的结构声方法。60年代,航空航天行业在宇宙飞船设计阶段开始使用SEA预报飞船的振动。在这段时期,计算方法是可用的,但由于处理模型的尺寸,和运算速度的限制,只有少数低阶模态可以预报。[1]此外,在传统的机械振动分析中,通常关注低阶模态,因为这些模态一般有最大位移响应。但是在设计和建造大型和轻量级的航空航天结构时可以明显看出,在预报结构疲劳,设备故障,噪音产生的过程中,高频宽频段载荷是很重要的。[2]SEA的开发和使用证明这是一个预报高频载荷的好方法,自从分析技术被应用以来,越来越多的应用程序延伸和发展开来。例如,它已经被用于建筑,汽车、飞机、船舶和火车的模型声音和振动的传递。[3]
SEA这个名字指出了方法的几个方面。 Statistical强调系统被认为是总体的一部分,而且与已知子系统参数相似。Energy关注的是变量。它描述了系统在存储,消散,交换能量方面的振动。其他经常使用的声音和结构振动变量,如位移、压力等都来源于振动的能量。Analysis强调的是一个框架而不是一个特定的技术。[2]
为建立系统内振动能量的交换模型,关键是将系统分为几个子系统。SEA通过功率平衡方程建立系统内声音传递的模型和子系统内能量分布的模型。这边总输入功率和另一边总耗散功率是相等的。
为了解子系统间传递功率与平均能量的关系,需要估计某些传输系数。现在有三种主要方法来估计这些系数,这三种方法是模态方法,波动方法和导纳方法。模态方法控制子系统非耦合模态的交互。边界条件表示解耦使表达多态功率传输系数。这种方法非常适合在封闭空间,涉及声交互的声振问题。模态方法并不适合固体结构之间的耦合,而第二种波动方法却能派上用场。波动方法是基于波在子系统界面的透射和反射将振动域建立为子系统间的行进波与传递功率叠加的模型。第三种方法是导纳方法。导纳方法是利用动态导纳或阻抗的概念来表达耦合子系统的交互。[1]
波动方法用于结构的耦合,对于体积的耦合是利用一个标准化的方法,使用这种方法的原因是工程师常用的一种标准化的方法。
3.1 系统定义
声音在建筑传递例如一堵墙仅仅是“系统”整个建筑有限的的一部分。重要的是模型有可能显著影响部分建筑提供可靠地结果,然而为了不增加错误的机会和计算时间,需要处理不是必须的部分。
在SEA中,每个系统都被封为若干适合尺寸的物理单元,这些单元可以被划分使得它们的声振特性是相似的,例如如阻尼,激励,耦合特性。这些单元称为子系统。例如一块各项同性板可以看做是三个子系统,对应于板中三种波型(弯曲波,纵向波和剪切波)。波型在能量传递,耗散,存储中扮演重要角色,需要作为子系统包含在模型中。例如在流体中对于声音传递而言只有纵向波是重要的,因此流体可以被视为一个单独的子系统。
3.2常用SEA方程
SEA的原则可以用下图3.1说明。这个系统包括两个子系统连接。
能量在子系统流动时,能量输出包括耗散(Pid和Pjd),辐射和传递到其他子系统中(Pij和Pji)。能量输入包括外部激励源(Pi和Pj)和从其他子系统传递过来的(Pij和Pji)。
子系统耗散功率如公式3.1所示:
Pid=omega;eta;idEi (3.1)
式中eta;id是阻尼损耗因子,Ei是频率f下模态总振动能量
i和j子系统间网格传递功
剩余内容已隐藏,支付完成后下载完整资料
英语原文共 89 页,剩余内容已隐藏,支付完成后下载完整资料
资料编号:[150136],资料为PDF文档或Word文档,PDF文档可免费转换为Word