论文部分内容阅读
有限单元法是现代工程设计和分析的重要数值方法之一,用有限单元法结构分析软件对工程问题进行数值分析己成为大型工程设计必须的环节。但要对这些大型或超大型复杂结构进行有效的结构分析,需要有高性能的计算资源、有效的算法和先进的软件编制手段。并行机的出现为复杂结构精细分析提供了硬件基础,但由于高层次并行软件的缺乏使得并行计算机往往只能由专业程序员使用。目前处理器价格低廉使得中小型的多处理机较普及,为普通程序员研究并行计算提供了条件,然而面向应用领域的并行应用软件开发远未达到实用程度。面向对象方法是公认的编制复杂软件系统的有效方法,Java是一种纯面向对象的编程语言,它的多线程技术是构建并行系统的有效手段,所以基于Java多线程技术研究有限元并行计算具有良好的应用前景。
本文主要研究基于多线程技术的有限元并行计算方法。传统有限元软件是采用面向过程方法编写的,这些代码包含了许多复杂的数据结构,并且通过过程来访问,这就大大制约了程序的可维护性,而与之对应的面向对象方法成功地解决了这个难题。与此同时,由于结构分析软件的异常复杂性,使得我们在软件开发时不能像编写一段小程序那样随意,而必须遵循软件工程的方法进行。
本文首先阐述了面向对象方法与软件工程方法在有限元结构分析软件开发中的必要性,并将这两者紧密地结合在一起,融入到软件开发的每一个过程中。在分析面向对象方法的基础上,探讨了该方法是如何从根本上解决大型复杂软件的可维护性(含可扩充性)难题的问题。深入地剖析了面向对象方法的类、继承层次结构、多态这三个最基本的特征。同时,利用Java面向对象程序设计技术,结合工程结构分析的有限单元法,研究和探讨了基于Java核心类库的有限元计算抽象架构,并结合有限元并行计算方法设计了可复用的有限元并行计算框架,在此基础上,使用Java多线程技术实现了一个在多处理机环境下的有限元并行计算应用系统。最后,本文编制了一个求解线性方程组的并行求解器,并将其运用到计算实例中。运算结果表明:采用多线程技术实现的有限元并行计算程序在速度和效率上得到了显著改善。