计算物理学

来自计算思维百科
跳转至: 导航搜索

计算物理学是一门新兴的边缘学科。利用现代电子计算机的大存储量和快速计算的有利条件,将物理学、力学、天文学和工程中复杂的多因素相互作用过程,通过计算机来模拟。如原子弹的爆炸、火箭的发射,以及代替风洞进行高速飞行的模拟试验等。应用计算物理学的力一法,还可研究恒星,特别是太阳的演化过程。

物理定义

计算物理学是一门新兴的边缘学科。利用现代电子计算机的大存储量和快速计算的有利条件,将物理学、力学、天文学和工程中复杂的多因素相互作用过程,通过计算机来模拟。如原子弹的爆炸、火箭的发射,以及代替风洞进行高速飞行的模拟试验等。应用计算物理学的力一法,还可研究恒星,特别是太阳的演化过程。

计算物理学是研究如何使用数值方法分析可以量化的物理学问题的学科。 历史上,计算物理学是计算机的第一项应用;目前计算物理学被视为计算科学的分支。

计算物理有时也被视为理论物理的分支学科或子问题,但也有人认为计算物理与理论物理与实验物理联系紧密,又相对独立,是物理学第三大分支。

物理简介

物理最早以实验为主。1862年麦克斯韦(maxwell)将电磁规律总结为麦克斯韦方程,进而理论上预言了电磁波的存在,使得人们看到了理论物理思维的巨大威力。从此理论物理学进入研究和成熟阶段,并经历了两次重大的突破:相继诞生了量子力学和相对论。计算机的发展就产生了计算物理。

实验物理是以实验和观测为基础,揭示新的物理现象,探求物理现象后面的原因,为发现新的物理理论提供依据,或者检验理论物理推论的正确性和应用范围。

理论物理是从一系列的基本物理原理出发,列出数学方程,再用传统的数学分析方法求出解析解,通过这些解析解所得到的结论和实验观测结果进行对比分析,从而解释已知的实验现象并预测未来的发展。

计算物理学研究如何应用高速计算机为工具,去解决物理学研究中复杂的计算问题。如今已经发展以下方向,即计算机数值计算方法和计算机符号计算,以及计算机数值模拟和计算机控制。

计算物理所依赖的理论原理和数学方程由理论物理提供,结论还需要理论物理来分析检验。同时所需要的数据是由实验物理提供的,结果也需要实验来检验。对实验物理而言,计算物理可以帮助解决实验数据的分析,控制实验设备,自动化数据获取以及模拟实验过程等。对理论物理而言,计算物理可以为理论物理研究提供计算数据,为理论计算提供进行复杂的数值和接下运算的方法和手段。计算物理学研究如何使用数值方法解决已经存在定量理论的物理问题。

背景

在物理学中,要求基于各种数学模型的理论,都能够对这些理论所描述的系统的行为给出精确的描述。不幸的是,很多问题无法得到精确解(即解析解),或求精确解的过程过于复杂。(比如,经典力学中的多体问题。量子力学中,除少数极端近似的大多数问题。)此时,将会使用数值近似的方法来求解这类问题。计算物理学就是这样一门数值近似的学科,它使用计算有限的计算步数(往往计算量很大)与简单的数学方法(算法),利用计算机操作、演算,得到相应的近似解与相应的逼近误差。

物理学中的地位

计算物理学在物理学中的地位目前存在着争议。有时候它被视作理论物理的重要工具,有时也被看做一种“计算机实验”,同时也有人将其看作介于理论物理与实验物理之间的第三条物理学分支。考虑到计算机也同时被应用于记录实验数据并进行相应分析,它也可能不适于被单纯地归类为计算科学。

重要性

在物理学中,大量的问题是无法严格求解的。有的问题是因为计算过于复杂,有的问题则根本就没有解析解。比如,经典力学中,三体以上问题,一般都无法求解。量子力学中,哪怕是单粒子问题,也只有在少数几种简单势场中的运动可以严格求解。因此,在现代物理中,数值计算方法已变得越来越重要。

计算物理学在八十年代还只被作为沟通理论物理学与实验物理学之间的桥梁。但是最近几年,随着计算机技术的飞速发展和计算方法的不断完善,计算物理学在物理学进一步发展中扮演着越来越重要的不可替代的角色,计算物理学越来越经常地与理论物理学和实验物理学一起被并称为现代物理学的三大支柱。很难想象一个21世纪的物理系毕业生,不具备计算物理学的基本知识,不掌握计算物理学的基本方法。

它主要包括在传统物理课题中常用的数值计算方法(如偏微分方程的数值求解方法、计算机模拟方法中的随机模拟方法—蒙特卡罗方法和确定性模拟--分子动力学方法以及神经元网络方法)以及计算机符号处理等内容。

课程与发展

课程

计算物理学是综合大学研究生物理各专业的一门基础课.学计算物理学的目的:

(1)是使学生系统地掌握物理模型和数学模型的建立方法和数值计算方法的选取原则;

(2)是使学生获得分析和处理一些物理问题的基本方法和解决问题的能力,提高逻辑推理和插象思维的能力,为独立解决科学研究中的实际问题打下必要的数学物理基础。

在教学过程中,使用启发式教学,尽量多介绍与该课程相关的前沿科技动态,充分调动和发挥学生的主动性和创新性;提倡学生自学,培养学生的的自学能力。

发展

由于计算方法的深入发展和过去几十年中高速计算机的出现和普及,随着物理学基础理论的进一步突破,物理学家们逐步可以应用一些更严格和更全面的复杂模型,来定量研究实际的复杂体系的物理性质。基于物理学基本原理的数值计算和模拟已经成为将理论物理和实验物理紧密联系在一起的一座重要桥梁:它不仅能够弥补简单的解析理论模型难以完全描述复杂物理现象的不足,而且可以克服实验物理中遇到的许多困难,例如直接模拟实验上不能实现或技术条件要求很高、实验代价昂贵的物理系统等。计算机模拟技术已经渗透到物理学的各个领域,包括凝聚态物理、核物理、粒子物理、天体物理等,导致了计算物理这一新学科的突破性发展和成熟。从20世纪40年代开始,计算物理学家们已经发展了大量新数值方法(如MonteCarlo方法、分子动力学方法、快速Fourier变换等),由此发现了很多未曾预料到的新现象,并给理论和实验物理学提出了许多新问题。总之,计算物理已成为物理学家揭示多层次复杂体系的物理规律的重要手段,同时也广泛应用于处理实验结果和提出物理解释。对一个成功的物理学家来说,掌握必要的计算物理学知识和手段已变得越来越重要。越来越多的大学已针对将要从事物理学及相关学科研究的研究生和本科生开设了计算物理课程。

方法与算法

由于计算物理学可以研究的问题十分广泛,人们通常按照其解决的数学问题或使用的数学方法来分类,一般可归类如下:

数学问题 算法或方法举例 物理问题举例
积分的计算 数值积分或蒙特卡洛积分 求质心位置、场的叠加
常微分方程的求解 龙格-库塔法(初值问题)、打靶法(边值问题)[3] 经典力学中的刚体运动、多体问题
偏微分方程的求解 差分法、有限元分析和伪谱法 波动问题、输运问题、静场问题、对流问题
矩阵的特征值和特征向量的求解 矩阵分析相关方法,如精确对角化法、密度矩阵重整化群 量子力学系统中能量本征值和本征态的求解
大量系列随机事件的相互作用 蒙特卡罗方法 分子动力学、等离子体的动力学方程

这些方法被用来研究所建模系统的物理特性。

计算物理学也时常受到计算化学的影响,比如固体物理学家利用密度泛函理论研究固体的物理特性的方式,与化学家研究分子行为的方式基本一致。

此外,计算物理学研究也需要相应的软件与硬件来支撑,有时会需要超级计算机和高性能运算的相关技术支持。比如热核聚变的研究中就使用了超级计算机来模拟等离子体行为。

问题与挑战

即使使用了计算物理方法,物理问题也时常难以求解。这通常由如下几个(数学)原因造成:缺少相应算法、无法对数值解进行相应分析、复杂度过高和混沌现象。比如,斯塔克效应现象中电子波函数的求解(量子力学中,当原子处在强电场时,电子行为会发生相应变化),将需要一套很复杂的算法才能求解(目前只能求解其中的一部分情况);有些问题,则必须使用暴力计算或者时间空间复杂度很高的算法,比如一些复杂方程的求解和图形化方法。有时也会需要使用数学中的摄动理论(如量子力学中的微扰理论)进行近似求解,比如上面提到的斯塔克效应。

此外,量子力学中很多问题的解是指数形式的,其数值解也会相应地发生指数爆炸;此外,宏观系统往往具有1023数量级的分子个数,也提高了模拟计算的难度。

最后,很多物理系统本质上是非线性的,甚至使混沌的。这也使得我们难以确定计算机得到的“解”是否是由数值近似带来的逼近误差本身造成的。

分支与交叉

几乎所有物理学的主要分支都能在计算物理学的应用中找到一席之地,比如计算力学、计算电动力学、计算等离子体等。计算力学又由计算流体力学(CFD)、计算固体力学、计算接触力学组成。而计算流体力学与计算电动力学又共同促成了计算磁流体力学。量子力学N体问题中,当N趋近于无穷大时就变成了计算化学问题。 作为计算物理重要分支的计算固体物理,又直接应用于材料科学。

一个与计算凝聚态物质特性相关的分支叫做计算统计力学,用于解决其他方法难以解决的一些问题(比如渗透过滤、磁旋等)。

计算天体物理学,乃是对于天体物理学问题所进行的技术与方法。

应用

主要用于解决计算物理学的问题,应用在物理学不同领域皆,现代物理学研究的重要组成部分。如:加速器物理学、天体物理学、流体力学(含:计算流体力学)、晶体场理论/格点规范理论(尤其是格点量子色动力学)、等离子体(见:等离子体模拟)、模拟物理系统(应用在分子动力学)、蛋白质结构预测、固体物理学、软物质等诸多物理学之领域。

计算化学在固体物理学,例如用密度泛函理论计算固体的特性,是一种类借助于计算化学理念研究来研究固体分子的物理特性的策略,以及参与其他大量的固体物理学计算。又如电子能带结构和磁性能,电荷密度可以通过这几种方法计算,包括卢京格尔科恩–模型/K·p微扰理论和从头计算法。

应用软件

计算物理常用软件主要为Matlab,和Mathematica和Maple等数值计算软件,这些软件提供了大量求解常见计算物理问题的工具,供使用者直接应用。常见的高级语言也可以实现相同的计算功能,有时甚至能够更高速完成任务,但这也需要相应的编程技巧与计算物理知识作支撑。

参考文献

百度百科:计算物理学

维基百科:计算物理学