内容简介
《计算物理基础》以计算软件MATLAB为编程语言,通过实例讲解了计算物理基础知识,如:数据拟合,数值微积分,解常微分方程与偏微分方程,蒙特卡洛方法等。选取的内容基本上遵照了教育部物理学与天文学教学指导委员会所建议的“计算物理基础”教学规范的要求并略有增加。
《计算物理基础》在内容编排与讲解方法上有独特的风格,突出了计算物理是编程语言学习、物理建模、计算方法应用以及用物理思想分析计算结果等四位一体的训练。着重强调了学习编程思路和训练编程技巧,重视实践操作,还增加了物理研究中很有用的可视化技巧如矢量场的可视化、动画技巧和图形界面的设计等。所选用的例子既有科研中的经典案例如混沌、分形等,也有教学中的疑难问题如陀螺、电磁场问题等,全部例子都附有参考程序,以及程序运行所得的图形,使版面显得生动,有利于提高初学者的兴趣。
《计算物理基础》是国家精品课程“计算物理基础”所采用的教材,其中的教学成果曾获2005年国家教学成果二等奖,它反映了我们多年来教改的成果,也是师生之间能者为师,教学相长的见证。
《计算物理基础》不仅适合于作基础课的教材,也可用于自学计算物理。对于需要使用计算物理作为工具的科研人员,也是一本很有价值的参考书。
内页插图
目录
第一章 MATLAB简介
§1.1 MATLAB的操作界面
§1.1.1 操作界面介绍
§1.1.2 指令窗中的功能
§1.1.3 数据存储与显示
§1.2 数据格式与算符
§1.2.1 向量的输入
§1.2.2 矩阵
§1.2.3 列阵
§1.2.4 数据网格
§1.2.5 基元列阵
§1.2.6 结构数组
§1.2.7 字符和文本
§1.3 编程
§1.3.1 编辑程序
§1.3.2 调试程序
§1.3.3 设置搜索路径
§1.3.4 两类序文件
§1.3.5 流程控制
§1.3.6 数据输入与输出
§1.4 作图
§1.4.1 作图功能概述
§1.4.2 二维曲线作图指令
§1.4.3 复数作图
§1.4.4 基本的三维图
§1.4.5 四维数据的表现——切片函数slice
§1.4.6 复变函数图形
§1.4.7 动画
§1.5 画物理场的专用指令
§1.5.1 等值线表现二维标量场
§1.5.2 等值面表现三维标量场
§1.5.3 用箭头、流线表现二维矢量场
§1.5.4 用箭头、流线、锥体、流管、流带表现三维矢量场
§1.6 图形窗口的编辑功能
§1.7 制作图形用户界面(GUI)
§1.8 浮点运算与数值计算的误差
§1.9 物理应用:Logistic模型的周期分岔与混沌现象
§1.10 练习
第二章 迭代一分形图形
§2.1 迭代与分形
§2.1.1 分形树
§2.1.2 Sierpinski_角形
§2.1.3 科赫雪花曲线
§2.1.4 L系统
§2.2 复变函数迭代
§2.2.1 Julia集
§2.2.2 Mandelbrot集
§2.3 分形与分形维
§2.4 练习
第三章 数值微分与数值积分
§3.1 数值微分与数值积分
§3.1.1 数值微分的算法
§3.1.2 数值积分的算法
§3.2 MATLAB指令
§3.2.1 差分运算(difr)
§3.2.2 梯度计算(gradient)
§3.2.3 离散拉普拉斯算符(del2)
§3.2.4 梯形积分(trapz)
§3.2.5 累计梯形积分(cumtrapz)
§3.2.6 函数积分(quad,quadl)
§3.2.7 函数的二重积分(dblquad)
§3.2.8 函数的三重积分(triplequad)
§3.3 用符号工具箱计算微积分
§3.4 环形电流的磁场——物理场的可视化
§3.5 分子振动的半经典量子化
§3.6 练习
……
第四章 数据处理
第五章 解常微分方程
第六章 混沌
第七章 解偏微分方程
第八章 蒙特卡罗方法
参考文献
前言/序言
自从2004年教育部物理学与天文学教学指导委员会建议开设本科生必修基础课“计算物理基础”以来,我们积极地响应并付诸实践。此前,我们已经为研究生开设了计算物理课,并有一些本科生旁听该门课程。在此基础上,通过检索国外大学相同课程的教学内容与教材,参照教学指导委员会提出的《计算物理基础课程教学规范》,经过数年教学与教改的实践,编写了这本教材。期间我们还出版了《理论力学计算机模拟》和《数学物理方程的MATLAB解法与可视化》两本书,我们的教改成果曾获2005年国家级教学成果二等奖等多种奖项,“计算物理基础”也被评为国家精品课。这几本书记录了我们的教改实践,是师生互教互学,能者为师,共同提高的见证。北京师范大学物理系历届听过此课的学生们为建设这门课程作出了创造性的贡献。唐朝大文学家韩愈在《师说》中说过,“弟子不必不如师,师不必贤于弟子。闻道有先后,术业有专攻,如是而已”。我们对此深有体会。
计算物理借助于计算机来做计算与研究。它涉及建立模型,选择计算方法,用语言编程以及结果分析。这个系统过程缺一不可,只有掌握了这四个方面的技能。才能独立地完成任务。过去这些训练分散在不同的课程中,不利于学生掌握使用这种方法。所以StevenE.Konnin说:“进行计算的本领很难通过标准的大学生物理系课程安排来培养,因为它需要三方面训练(物理学,数值分析和计算机程序设计)的综合,很少有物理系学生毕业时知道如何进行计算;那些具有这种知识的学生通常是在独立工作的过程中,比如通过学习一项研究课题或者一篇毕业论文,而学到一些有限的技巧。”①我们赞同这种看法,在编写本书时特别注意这几种技能的综合训练。
本教材定位于普及计算物理基础知识,内容包括数据处理(拟合,插值,快速傅里叶变换等),数值微积分,解线性与非线性方程,解常微分方程与偏微分方程,蒙特卡洛方法等,都是最基本的计算技巧。此外还增加了物理研究中很有用的可视化技巧,如矢量场的可视化,动画技巧和图形界面的设计等。众所周知,计算已经与理论、实验并列为物理研究的主要手段。正如不学微积分是无法学习物理一样,在今天如果不会用计算机做计算也很难真正学好物理。更何况通过学习计算物理,还能学到与其他课程不同的分析方法与研究方法。所以,教学指导委员会才会把计算物理课列为本科生必修课。
经典力学导论:理论、方法与应用 本书旨在为物理学、工程学及相关交叉学科的初学者和进阶学习者提供一套全面、深入且富有启发性的经典力学知识体系。 经典力学是理解宏观世界运动规律的基石,它不仅是理论物理学的核心组成部分,更是后续学习量子力学、电动力学、统计物理学乃至现代场论的必备阶梯。本书摒弃了传统教材中过于侧重繁琐数学推导的弊端,力求在严谨的数学框架内,紧密结合物理直觉与实际应用,引导读者真正掌握力学分析的精髓。 --- 第一部分:基础与概念的重构(The Foundational Framework) 本部分着重于建立坚实的牛顿力学基础,并逐步过渡到更抽象、更具普适性的分析力学视角。 第一章:运动学的精确描述与参考系 质点运动学的复习与深化: 速度、加速度的矢量分析,瞬时中心与瞬时轴的概念在平面运动中的应用。 坐标系的变换与约束: 笛卡尔、柱面、球坐标系下的微分算符的表达。对约束力的引入及其分类(主动约束与被动约束)。 惯性系与非惯性系: 伽利略变换的物理意义。深入探讨惯性系的概念及其局限性。 非惯性系中的虚拟力: 详细推导和分析科里奥利力(Coriolis Force)和离心力(Centrifugal Force)的物理效应,通过地球上的运动实例(如傅科摆)展示其重要性。 第二章:牛顿定律的深刻理解与动量、能量守恒 牛顿定律的现代诠释: 质量的概念、冲量与动量定理的矢量形式。动量守恒在多体系统中的应用。 功、功率与保守力场: 势能的概念引入,如何通过势能函数判断力的保守性。 机械能守恒定律: 在保守力场中,机械能作为守恒量的物理意义。能量分析法在解决复杂动力学问题中的优越性。 非保守力做功与系统能量的耗散或增加: 探讨摩擦力、空气阻力等非保守力对系统能量的影响。 第三章:刚体动力学基础 刚体的运动描述: 刚体运动的欧拉角参数化。转动惯量的定义及其几何依赖性。 转动定理与角动量守恒: 力矩的矢量定义。牛顿第二定律在刚体转动中的推广——欧拉方程(仅限于主轴情况)。 转动惯量计算的特殊技巧: 深入讲解平行轴定理和垂直轴定理,并提供复杂几何体转动惯量计算的实例解析。 --- 第二部分:分析力学的构建(The Analytical Mechanics) 本部分是本书的核心,它将力学从依赖于具体坐标系的牛顿方法,提升到基于能量泛函的广义坐标方法,为高等物理打下坚实基础。 第四章:拉格朗日力学I:变分原理与最小作用量 变分法的初步介绍: 欧拉-拉格朗日方程的推导。对函数空间中“最短路径”的理解。 约束系统的处理: 广义坐标的选择与自由度。拉格朗日量 $L = T - V$ 的构造方法。 拉格朗日方程的建立与应用: 给出若干经典问题(如单摆、耦合振子、斜面上的质点)的拉格朗日方程求解过程,强调其简洁性。 约束力的消除: 广义力与约束力之间的关系,以及如何利用拉格朗日形式自然地回避计算约束力。 第五章:拉格朗日力学II:守恒量与诺特定理 循环坐标与守恒量: 深入探讨拉格朗日量对某一广义坐标的偏导数为零时对应的守恒量(动量守恒、角动量守恒)。 诺特定理(Noether's Theorem)的物理阐释: 详细解释了时间平移不变性对应能量守恒,空间平移不变性对应动量守恒,空间转动不变性对应角动量守恒的深刻联系。本书将以物理直观而非纯粹的群论语言来阐述其原理。 泊松括号与正则变换的预备知识: 为下一部分汉密尔顿力学做铺垫。 第六章:哈密顿力学:相空间与正则结构 勒让德变换: 从拉格朗日量到哈密顿量 $H(q, p, t)$ 的数学构造。哈密顿量在保守系统中的能量意义。 哈密顿正则方程: 推导和应用 $dot{q} = partial H / partial p$ 和 $dot{p} = -partial H / partial q$。 相空间的概念: 轨迹在二维或高维相空间中的几何意义。泊松括号的定义及其在时间演化中的作用。 正则变换: 识别不同的正则坐标集。生成函数法及其在简化哈密顿量中的应用(如转化为可积分系统)。 --- 第三部分:进阶专题与应用(Advanced Topics and Applications) 本部分将所学的分析力学工具应用于更复杂、更具挑战性的物理系统。 第七章:微扰论在力学中的应用 含时微扰理论基础: 周期性外力驱动下的振动系统(受迫振动)。 共振现象的深入分析: 探讨共振时系统的响应特性,并引入阻尼对共振峰的影响。 定态微扰理论: 处理微小、非时变的修正势能对系统能级(频率)的影响。 第八章:经典力学中的连续介质与场论 从离散系统到连续系统: 从有限自由度系统过渡到无限自由度系统(场)。 弹性波与声波: 一维链的离散模型在极限情况下的连续介质描述。拉格朗日密度与哈密顿密度。 流体力学基础: 欧拉方程(Euler’s Equation)的推导和应用,以及伯努利定律的导出。 第九章:专题讨论:从经典到量子的桥梁 泊松括号与量子对易关系: 阐述经典泊松括号 ${cdot, cdot}$ 如何通过 $hbar$ 对应到量子力学的对易子 $[ cdot, cdot ]$。 可积性与混沌的初步概念: 简要介绍 KAM 定理的思想,以及系统在相空间中表现出稳定轨道和混沌运动的条件。 --- 教学特色与学习资源 本书在叙述过程中,始终坚持“物理图像优先于数学形式”的原则。每章末尾均附有“深入思考”栏目,引导读者对概念进行批判性反思,并提供“计算工具箱”,推荐读者使用数值方法(如编程模拟)来验证解析解或探究解析解难以处理的非线性问题。本书旨在培养学生将理论工具应用于解决实际工程和物理问题的能力,使读者在完成学习后,不仅能“解题”,更能“建构模型”。 目标读者: 大学物理系本科高年级学生、应用物理与工程力学专业学生,以及需要系统回顾和深化经典力学基础的研究生。