早期的结构设计中,工程师们主要研究结构的强度、刚度等内容,客户也更多的关注结构的安全性及稳定性。随着技术的发展及竞争,在安全可靠的前提下,客户越来越看重产品的舒适性,因此有必要进行结构振动与噪声控制优化设计工作。
合理的开展结构减振降噪优化工作的前提是:正确识别噪声源,分析其振动能量的分布和主要传播途径。而结构振动强度的功率流分析方法可使结构的能量传递路径和振源可视化。
本期小编将给大家介绍基于ABAQUS的结构振动功率流可视化方法。
2. 结构振动分析
开展结构振动功率流可视化工作的第一步对结构开展模态分析及振动分析。小编使用ABAQUS软件对平板进行了模态分析及简谐振动分析。平板结构形式、某阶模态及简谐激励作用下的响应如下图。
3. 功率流可视化脚本
小编按照以下步骤开展结构振动功率流可视化工作:
1. 从ODB文件中读取节点位移和节点力。
2. 按照下列公式计算平板的在x方向及y方向的结构声强(公式的具体来源及推导见参考文献)。
3. 将计算得到的结果写入ODB文件。
本模型的python开发无法参考abaqus生成的rpy文件,具有一定难度,建议大家详细阅读abaqus用户手册中python二次开发相关内容。
小编为大家提供了部分代码如下,如需完整代码或者python开发教学可联系小编(qq1871858827)。
从ODB中读取数据 | from odbAccess import* odb=openOdb('Job-1.Odb') # Get fields from output database. step1 = odb.steps['Step-1'] frame1=step1.frames[-1] U=frame1.fieldOutputs['U'] fieldValues=U.values # For each U value, print the nodeLabel # and data members. MyUFile = open('U-data.txt','w') for v in fieldValues: MyUFile.write('%d,%6.4f,%6.4f,%6.4f,%6.4f\n' %(v.elementLabel,v.data[0],v.data[1],v.data[2],v.data[3])) odb.close() MyUFile.close() |
计算结构声强 | 该部分按照公式编程做乘法运算即可 |
将计算得到的结果写入ODB | from odbAccess import * from abaqusConstants import * #open odb odb=openOdb(path='Job-1.odb') # Create a step and a frame. step1 = odb.steps['Step-1'] frame1 = step1.frames[-1] instance1 = odb.rootAssembly.instances['PART-1-1'] # Write structure intensity SIField=frame1.FieldOutput(name='StructuralIntresity3', description='SI', type=VECTOR, componentLabels=('SI1', 'SI2', 'SI3'), validInvariants=(MAGNITUDE,)) # nodeLabelData,SIData=tupledata() # SIField.addData(position=NODAL, instance=instance1, labels=nodeLabelData, data=SIData) # Make this the default deformed field for this step. step1.setDefaultDeformedField(SIField) odb.save() odb.close()4. 效果演示 |
小编应用自己开发的脚本生成了平板的功率流云图及功率流矢量图,如下图。
同样的方法,可以生成圆柱壳的功率流云图及矢量图。
免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删