CAE初学者 发表于 2016-3-4 14:26:39

计算已成为科学研究的主要手段

  20世纪末软件危机引发的软件革命使计算科学成为科学领导地位。理论、实验和计算是人类认识世界的三种手段。在十八世纪之前,实践经验和科学实验是人类认识世界的主要手段,一切真知来源于实践。十八世纪,牛顿、莱布尼兹等科学家发明了微积分与力学,从而人类有了第二种手段-理论研究。用理论分析去认识客观世界,这些理论多需要建立微分方程并进行理论求解。到了二十世纪,产生了第三种手段,通过算法及其软件,用电子计算机数值求解数学物理模型。随着计算机硬件的进步、算法的进步及计算机语言的进步,到了二十一世纪,计算科学已成为科学领导地位,人类运用这一手段认识世界,比前两种手段更有效,更没有局限性。这一变化首先发生在军事、国防、航空、航天领域,在工程与科学的其它领域,科学计算的重要意义也在逐渐显现。2005年6月在美国总统信息技术咨询委员会关于提升美国竞争力的报告中指出:“计算科学已成为科学领导地位、经济竞争力和国家安全关的键。”
  这种变化的发生主要是基于以下重大进步:
  计算机硬件的进步:万亿次及以上计算机的出现,从1964年集成电路问世以来,把计算机的性能提高了1万倍以上,价格却降至当初的万分之一以下。
  算法的进步:大型线性方程组的求解算法,35年间提高了七个数量级。
  计算机语言的进步:从第一代计算机语言到第四代计算机语言,编程代码量减少了大约三个数量级以上。
  计算机语言的发展经历了机器语言、汇编语言、高级语言和面向对象编程等发展阶段,每一个阶段都以明显提高编程效率为特征,一般可使编程效率提高一个数量级以上。面向对象编程相对于高级语言并没有使编程效率明显提高,从提高编程效率意义上讲,不能算作一个发展阶段。作为第四代语言的代表,是模型语言和软件自动生成技术,相对于高级语言它把编程代码量减少了一个数量级以上,它使动辄几百万行的手工编程成为历史。特定领域的专家用模型语言写出要做的事情,然后再运用软件生成器,生成你所需要的源程序代码。生成器以计算机的速度运行,比人要快约10亿倍,精确性提高10亿倍,这样手工编写程序将被机器生成程序所代替,这就是第四代语言的特征。
  有限元方法的基本思想是著名数学家Courant在四十年代提出,五十年代工程师们又**的发展了这种方法,六十年代起为数众多的数学家参与了有限元理论的研究,为有限元方法奠定了基础,并进一步推动了它的发展。现在,这一方法已相当成熟和普及,应用于工程计算相当有效。有限元方法和CAD相结合正在成为工程设计的一种主要手段。随着有限元方法的广泛应用,一大批通用和专用软应运而生,其中一些软件的用户已遍及全世界。随着计算机尤其是微机的迅速发展和普及,计算机费用过高的障碍已不复存在。有限元方法理应被各个领域的工程师和科学家普遍采用。但实际情况并非如此,至今有限元还只为少数工程师和科学家采用,还未普遍成为他们的有力工具,其原因何在?这主要是由于有限元程序的复杂性。
  由于有限元方法的通用性造成了其应用的广泛性,但也带来了程序的复杂及困难。任何一个功能较完善的有限元程序起码要上万条程序,按照目前的编程技术,一万条程序需要花费好几个人年的劳动才能完成。这对于一个普通的工程师和科学家来说显然是难以接受的。为了克服这一困难,只能由一部分人编制有限元程序来提供工程师和科学家使用。这就是各种各样名目繁多的有限元程序及有限元程序系统纷纷问世的原因。
  这些有限元程序虽然解决了部分工程师和科学家的某些需要,但距离满足他们大多数人的普遍需要来说相差甚远。其原因是,首先,一个有限元程序,不管它多么庞大,通用性多强,也只能解决很少一部分问题。用户往往要修改或加进一部分程序才能达到自己的目的,而这些工作如果没有原程序编制者的参加一般是十分困难甚至是办不到的。第二,有限元程序并不象算法语言那样有统一文本,按某种语言写出来的程序在不同的编译器下都可运行,而不同的有限元程序要求用户填写的数据文件完全不同。用户要理解、信任和习惯任何一个有限元程序都需输出代价,花费许多金钱和精力。这就是为什麽大多数用户愿意采用旧的(落后的)但自己熟悉的有限元程序系统而不愿意接受新的先进的但不熟悉的有限元程序的一个重要原因。第三,通用性越强的程序按理越容易满足用户的需要,然而,对于这样的程序,用户也越难理解和掌握,也越难修改,填写的数据也会越多。这是限制有限元程序通用性的一个重要因素。程序越专用,使用越方便,但所能解决的问题也就越少。
  因此,向工程师和科学家普及有限元的最后方法显然不是简单地让他们去使用别人编好的有限元程序系统,而是帮助他们建立自己的有限元程序或程序系统。当然,这种“帮助”要十分有效,使他们在很短的时间内就能建立自己的有限元程序系统,并且很容易维护和修改。这正是元计算科技发展有限公司研究和编制有限元语言和有限元语言及其编辑器的主要动机。
  经过八年潜心研究,元计算公司的首席专家梁国平研究员1990年自主研制开发了一套可以自动生成有限元程序的“有限元语言及其编译器”,采用组件化程序设计方法和人工智能技术,根据有限元方法统一的数学原理和内在规律,以类似于数学公式推理的方式,通过填写各种数学物理微分方程和算法表达式,自动产生用户所需的有限元(有限体积)及有限差分并行计算源程序,突破了其它并行有限元软件高复杂性和高难度性,以及只适用于特殊领域和特殊问题的难题,填补了我国在高性能计算领域的空白。不仅使大型数值计算的编程效率提高一个数量级以上,并可广泛适用于各个领域,尤其是军事和国防领域,使许多仍无法实现或有困难实现的各种大型复杂的工程和科学计算问题得以快速、低成本的解决。
  更多详情请扫描元计算官方微信二维码获得更多资讯


页: [1]
查看完整版本: 计算已成为科学研究的主要手段