论文部分内容阅读
微波管电子光学CAD软件在进行全三维数值模拟时,需要处理巨大的数据量,模拟计算时间较长,如果能对模拟软件进行优化,提高计算速度,有助于设计师进行快速设计,对进一步缩短设计周期,提高设计效率起到非常重要的作用。本论文以电子科技大学自主开发的电子光学模拟软件——电子光学模拟器(简称EOS)为研究对象,从两个方面来提高该软件的计算性能。首先,从电子光学模拟软件的物理模型和数值计算方法出发,研究模拟基本流程,分析其中能够进行性能优化的内容,并进行软件实现和准确性验证;其次,从软件的代码本身出发,运用程序的剖析技术、常用的程序优化技术、内存优化及高速缓存的应用技术等,提高软件的工作性能。主要内容为:1.详细研究了微波管电子光学CAD软件采用的物理模型,对计算流程中的各个部分分别进行了性能优化。利用局对对称计算技术减小了计算区域,从而在不损失精度的情况下大大减少了网格数量;利用二维退化技术对轴对称结构电子光学部件进行快速计算;利用LU分解方法快速求解刚度矩阵,缩短了电场计算时间;利用OpenMP技术并行求解轨迹。2.利用Microsoft Visual Studio2005性能分析工具检测程序,对程序进行有效的分析,找出程序的性能瓶颈——有限元网格中粒子快速定位算法。然后,按广度优先搜索、深度优先搜素的方式设计了两个定位电子的算法,分别为按有限元网格层次遍历的扫描法,和按方向定位的追踪法。3.对EOS中的其他重要部分也进行了优化,如计算电场电位的函数,优化中应用了基本的优化技术,如循环展开等。同时也优化了部分内存的使用,包括节约内存使用量和用高效的方式访问内存等。用性能分析工具的分析结果对比分析了性能优化前后的性能。