论文部分内容阅读
本文研究了面向对象的程序设计方法。利用此种程序设计方法编制了结构计算软件。此结构计算软件分为两部分:建模模块和结构计算模块。 建模部分继承了PKPM中“接力棒”的思路。通过将图形数据文件生成纯数据文件下传,将此数据文件作为下一模块的计算输入文件;此模块也可成为其它结构计算软件的建模平台。为了避开了PKPM中PK整体结构建模的烦琐,本模块将结构力学建模所需要的梁、柱、各种荷载和各种支座作为基本元件。建模模块完全采用二维图形软件标准实现了图形交互模式。同时,借助于VC++6.0中强大的FMC技术,加快该模块在最终代码执行过程中的速度。 在具体实现过程中,利用面向对象的程序设计方法将建模中所需要的元件定义为类,通过类的思想来实现彼此之间的数据交流。本程序具有结构形式明确,思路清晰,完全体现了面向对象的程序设计思路。由于时间仓促本模块未能提供实体建模平台,只不过是对交互式图形处理领域内的尝试;但是花一些时间本模块完全能具备此项功能。 结构内力计算部分通过建模部分传递下来的数据文件,以梁元作为基本单元,将荷载对恒荷载和活荷载分工况利用有限元法进行计算,并进行内力组合。通过绘图函数实现计算简图,以及各工况计算所得到的内力图。对于活荷载最不利计算采用每跨分别计算的方式,最后挑选绝对值最大者作为最终最不利的内力值。内力的组合采用《规范》中的公式进行组合。 在有限元计算方法中采用“面向对象”的程序设计思路。此思路避免了普通程序设计中数组占用太多内存,是对传统程序设计的一种挑战;也是未来有限元程序设计的必然发展趋势。 在具体实现过程中,自己编制了有限元计算中常用的矩阵类;在矩阵类中给出了矩阵的常用计算函数。在内存分配中利用了指针,使得矩阵的定义实现了动态化。此方法的优点是占用内存小,执行效率高;并避免了数组无法动态定义的缺点;从而很大程度上提高了程序的运行速度。 在有限元计算中对梁元进行了扩充,将三类桁架单元引入到梁元中。实现了框架和排架以及连续梁单元刚度矩阵的统一。同时对总刚阵存储中利用了一维压缩存储的方法,减少了许多空间。本模块程序也是面向对象的程序哈尔滨工程大学硕士学位论文设计方法在结构计算机计算领域内的尝试。 本程序基本达到了预期目标,具有一定的实用价值和商业价值。