编辑推荐
Python是一种迅速得到科学界广泛认可的计算机编程语言。《Python物理建模初学者指南》的目的在于为Python学习者提供帮助,使他们可以通过自学掌握足以开展物理建模工作的编程技能,包括设置开源Python的编程环境,以及使用Python完成一些常见的科学运算任务,例如数据的导入和导出、数据的可视化、数值分析和模拟等。《Python物理建模初学者指南》无需读者具备任何的编程经验。
《Python物理建模初学者指南》侧重于基础性内容,并介绍了一些广泛适用的技术,包括:
●Python编程基础与脚本;
●数值数组;
●二维和三维绘图;
●蒙特卡洛模拟;
●数值方法,包括常微分方程求解;
●图像处理;
●动画。
为了清晰地阐述新的知识点,《Python物理建模初学者指南》提供了丰富的代码例子和练习,并给出了相应的解答。《Python物理建模初学者指南》的示例代码和数据集,可以从www.epubit.com.cn下载。内容简介
Python是一种得到广泛应用的编程语言。《Python物理建模初学者指南》旨在帮助Python学习者掌握足够的Python编程技能以进行物理建模。
《Python物理建模初学者指南》《Python物理建模初学者指南》分为8章和5个附录,包括Python基础知识、数据结构与程序控制、数据输入和输出、Python高级知识和高级技术等,其中贯穿了三次不同方向和难度的物理建模上机实验。附录部分介绍了Python的安装、错误消息、版本差异以及可供深入学习的话题。
《Python物理建模初学者指南》《Python物理建模初学者指南》适合Python初学者阅读,尤其适合想要用Python进行科学计算和物理建模的读者学习参考。作者简介
作者简介
JesseM.Kinder拥有宾州大学的物理学和天文学博士学位,并在康奈尔大学完成了量子化学方向上的博士后工作,曾在凯斯西储大学教授物理课程,目前在新墨西哥州的里约兰町担任顾问。
PhilipNelson是宾州大学的物理学教授。他也是BiologicalPhysics和PhysicalModelsofLivingSystems两《Python物理建模初学者指南》的作者。
译者简介
盖磊,物理学硕士,计算机博士。当前是一名科研人员,具有丰富的Python科学建模实践经验,也是一位科技图书译者。目录
第1章Python入门1
1.1 算法与算法思想1
1.1.1 算法思想2
1.1.2 状态3
1.1.3 “a=a+1”是什么意思4
1.1.4 符号和数字的对比5
1.2 启动Python6
1.2.1 IPython控制台7
1.2.2 错误信息13
1.2.3 如何获取帮助13
1.2.4 好的做法:记录日志15
1.3 Python模块15
1.3.1 import15
1.3.2 from...import16
1.3.3 NumPy和PyPlot模块17
1.4 Python表达式18
1.4.1 数字18
1.4.2 算术操作和预定义函数19
1.4.3 好的做法:变量命名21
1.4.4 更多的函数相关信息22
第2章数据结构与程序控制24
2.1 对象和方法24
2.2 列表、元组和数组27
2.2.1 创建列表和元组28
2.2.2 NumPy数组28
2.2.3 为数组填充值30
2.2.4数组的连接32
2.2.5 访问数组元素33
2.2.6 数组和赋值34
2.2.7 数组切片35
2.2.8 数组展平37
2.2.9 更改数组形状38
2.2.10 以列表和数组为索引38
2.3 字符串39
2.3.1 使用format方法格式化字符串41
2.3.2 使用“%”格式化字符串43
2.4 循环43
2.4.1 for循环44
2.4.2 while循环46
2.4.3 循环长时间运行46
2.4.4 死循环47
2.5数组操作47
2.5.1 矢量化数学48
2.5.2数组化简50
2.6 脚本51
2.6.1 Editor窗格52
2.6.2 其他编辑器53
2.6.3 调试的第一步54
2.6.4 好的做法:做注释57
2.6.5 好的做法:使用命名参数61
2.6.6 好的做法:注意单位问题62
2.7 或有行为:分支63
2.7.1 if语句64
2.7.2 真值的处理65
2.8 嵌套65
第3章数据输入、结果输出67
3.1 导入数据68
3.1.1 获取数据68
3.1.2 将数据导入Python70
3.2 导出数据73
3.2.1 脚本73
3.2.2 数据文件74
3.3 数据可视化77
3.3.1 plot及相关命令77
3.3.2 绘图的调整与装饰81
3.3.3误差条83
3.3.4 3D图形84
3.3.5 多重绘图85
3.3.6 子绘图87
3.3.7 保存图形87
3.3.8 在其他应用中使用图形88
第4章首次上机实验90
4.1 艾滋病病毒载量模型90
4.1.1 探究模型91
4.1.2 匹配实验数据92
4.2 细菌实验93
4.2.1 探究模型93
4.2.2 匹配实验数据94
第5章Python进阶96
5.1 自定义函数97
5.1.1 定义Python函数97
5.1.2 更新函数100
5.1.3 参数、关键字和缺省值101
5.1.4 返回值102
5.1.5 函数式编程103
5.2 随机数和模拟105
5.2.1 模拟抛硬币105
5.2.2 生成轨迹线106
5.3 直方图和条形图107
5.4 等势线绘图和曲面109
5.4.1 生成绘图点网格109
5.4.2 等势线绘图110
5.4.3 曲面绘图111
5.5 非线性方程的数学求解111
5.5.1 一般实函数112
5.5.2 多项式的复数根113
5.6 求解线性等式114
5.7 数值积分115
5.7.1 对预定义函数积分116
5.7.2 对自定义函数积分117
5.7.3 对震荡函数积分117
5.7.4 参数依赖性118
5.8 微分方程的数值解118
5.8.1问题重构119
5.8.2 ODE求解120
5.8.3 参数依赖122
5.9 向量场和流线图123
5.9.1 向量场123
5.9.2 流型124
第6章第二次上机实验126
6.1 生成和绘制轨迹126
6.2 绘制位移分布127
6.3 少见事件129
6.3.1 泊松分布129
6.3.2 等待时间131
第7章更多的技术133
7.1 图像处理133
7.1.1 图像和数字数组134
7.1.2 操作图像135
7.2 动画135
7.2.1 创建动画136
7.2.2 保存动画137
7.3 分析计算141
7.3.1 SymPy软件包141
7.3.2 WolframAlpha142
第8章第三次上机实验145
8.1 卷积146
8.1.1 Python的图像处理工具146
8.1.2 图像平均148
8.1.3 使用高斯滤波器做平滑149
8.2 图像去噪149
8.3 特征强调150
继续努力152
附录A 安装Python154
A.1 安装Python和Spyder154
A.1.1 图形界面安装155
A.1.2 命令行安装156
A.2 设置Spyder159
A.2.1 工作目录159
A.2.2 交互图形159
A.2.3 脚本模块159
A.2.4 重启160
A.3 加速160
A.4 保持版本最新161
A.5 安装FFmpeg161
附录B 错误和错误消息164
B.1 Python错误概述165
B.2 一些常见的错误166
附录C 比较Python2与Python3170
C.1 除法171
C.2 用户输入171
C.3 打印命令172
C.4 更多帮助173
附录D 深入学习174
D.1 赋值语句174
D.2 内存管理177
D.3 函数177
D.4 作用域178
D.4.1 命名冲突180
D.4.2作为参数传递变量181
D.5 总结182
附录E 练习的解答183
致谢189
参考文献190