Python 科学计算

所需积分/C币:19 2018-09-20 16:59:31 5.62MB PDF

第 1 章 软件包的安装和介绍....................1 1.1 Python 简介......................................1 1.2 安装软件包......................................2 1.2.1 Python(x,y)..................................... 2 1.2.2 Enthought Python Distribution (EPD)............................................. 3 1.3 方便的开发工具....
内容简介 本书介绍如何用 开发科学计算的应用程序,除了介绍数值计算之外,还着重介绍如何制作交 互式的 图像,如何设计精巧的程序界面,如何与语言编写的高速计算程序结合,如何编写声音 图像处理算法等内容。书中涉及的 扩展库包括 等,涉及的应用领域包括数值运算、符号运算、二维图表、 三维数据可视化、三维动画演示、图像处理以及界面设计等。 书中以大量实例引导读者逐步深入学习,每个实例程序都有详尽的解释,并都能在本书推荐的运行环 境中正常运行。此外,本书附有大量的图表和插图,力求减少长篇的理论介绍和公式推导,以便读者通过 实例和数据学习并掌握理论知识。 本书封面贴有清华大学出版社防伪标签,无标签者不得销售。 版权所有,侵权必究。侵权举报电话: 图书在版编目数据 科学计算张若愚著一北京:清华大学出版社, Ⅱ张…Ⅲ软件工具一程序设计Ⅳ 中国版本图书馆数据核字第 责任编辑:王军李维杰 装帧设计:牛艳敏 责任校对:成凤进 责任印制: 出版发行:清华大学出版社 地址:北京清华大学学研大厦座 邮编 社总机: 邮购: 投稿与读者服务: 质量反馈: 印刷者: 装订者 经销:全国新华书店 开本:× 印张: 字数 千字 附光盘张 版次 年月第版 印次 年月第次印刷 印数: 定价: 产品编号: 前言 是一种面向对象的、动态的程序设计语言,具有非常简洁而清晰的语法,既可以用 于快速开发程序脚本,也可以用于开发大规模的软件,特别适合于完成各种高层任务。 随着 等众多程序库的开发 越来越适合于做科学 计算。与科学计算领域最流行的商业软件 相比, 是一门真正的通用程序设计 语 比 所采用的脚本语言的应用范围更广泛,有更多程序库的支持,适用于 和等多种平台,完全免费并且开放源码。虽然 中的某些高级功能目 前还无法替代,但是对于基础性、前瞻性的科硏工作和应用系统的开发,完全可以用 来完成。 本书介绍如何用 开发科学计算的应用程序,除了介绍数值计算之外,还着重介绍 了如何制作交互式二维、三维图像,如何设计精巧的程序界面,如何与语言编写的高速计算 程序结合,如何编写声音、图像处理算法等内容。 由于 的相关资源非常多,本书不可能全部涉及,相信读者在掌握本书所介绍的一 些相关知识之后,只要充分利用互联网的搜索功能,就一定能够很快地找到合适的解决 方案。此外,由于绝人多数 资源都开放源代码,因此读者将会很容易地对感兴趣的内容 进行深度挖掘和研究。 本书适合于工科高年级本科生、研究生、工程技术人员以及计算机开发人员阅读。实例篇 以信号处理为主,通过简单易懂的 源程序,实际演示信号处理的一些基础知识和原理, 因此特别适合于相关专业的学生作为扩展视野的补充阅读教材 阅读本书的读者需要掌握 语言的一些基础知识,下面是一个“自我检测列表”, 如果读者熟悉下述内容,阅读本书的实例源代码就应该没有困难。此外由于程序简单易 读,即使读者没有接触过,也可以边阅读本书边通过其他书籍或免费教程学习 基本语法:库的载入 循环 判断、函数定义 ●基本数据类型的用法:列表、字典元组 字符串 面向对象的基本语法:类 继承 ●语言编程的基础知识≌ 有关语言的基础知识,可以参考啄木鸟社区的 图书简介。 啄木鸟社区的 图书概览 木书所有演示程序,均在 系统下采用 通过测试。如果读者觉得安 装众多的 程序库很麻烦,不妨下载安装 或者直接使用木书所附光盘中的 安装程序。 ①全称为 是 公司开发的开源科学计算应用程序开发包。 ②为了提高程序的运行效率,有时需要使用语言编写 的扩展模块,第章“用语言提高计算效率”中介绍的内容 需要读者熟悉语言编程。 Preface system administration, and general purpose business applications. It's has earned this reputation well ats operating system, and Python's primary strength is that it allows developers Python's scientific computing roots actually go quite deep. Guido van Rossum created the bridged thc gap bctwccn shell scripting and C. Opcrating systcm tools arc not cvcn in the samc Python gained a fast and powerful number crunching tool that solidified Pythons role as a leading For some, the term"scientific programming"conjures up visions of intricate algorithms described from "Numerical Recipes in C" or forged in late night programming sessions by graduate students It's truly gratifying to scc all of thcsc topics aggregated into a singlc volumc. It providcs a 序 理所当然地被视为一门通用的程序没计语言,非常适合于网站开发、系统管理以及 通用的业务应用程序。它为诸如 这样的网站系统、 操作系统中不可或缺的 安装工具以及从云管理到投资银行等大型企业的系统提供技术支持,从而赢得了如此高的 声誉。 还在科学计算领域建立了牢固的基础,覆盖了从石油勘探的地震薮据处理到量子 物理等围广泛的应用场景。 这种广泛的适用性在于,这些看似不同的应用领域通常在 某些重要的方面是重叠的。易于与数据库连接、在网络上发布信息并高效地进行复杂计算的应 用程序对于许多行业是至关重要的,而 最主要的长处就在于它能让开发者迅速地创建这 样的工具。 实际上, 与科学计算的关系源远流长。吉多·范罗苏姆创建这门语言,还是在他在 荷兰阿姆斯特丹的国家薮学和计算机科学研究学会的时候。当时只是作为“课余”的开 发,但是很快其他人也开始为之做出贡献。从年开始的头几次 研讨会,都是在大 洋彼岸的科研机构举行的。例如国家标准技术研究所 美国地质学会以及劳伦斯利福摩 尔国家实验室 ,所有这些都是以科研为中心的机构。当时 刚刚发布,与会者 们就已经开始打造 的数学计算工具。多年过去了,我们欣喜地看到,我们在开发具 有惊人能力的工具集以及建设多彩的社区方面做出了如此多的成绩。很合时宜的是,就我所知 的第一本涵盖了 的主要科学计算工具的综合性著作,在另一个海洋之遥的中国编著并出 版了。展望今后的十几年,我迫不及待地想看到我们能共同创建出怎样的未来。 吉多他木人并不是科学家或工程师。他在的计算机科学部门时,为了缓解为阿米巴 操作系统创建系统管理工具的痛苦,他创建了 。当时那些系统管理工具都是用 语言编写的。于是 就成了填补脚本和语言之间空白的工具。操作系统工具与 计算逆矩阵或快速傅立叶变换是完全不同的领域,但是从诞牛开始,世界各地的许多科 学家就成了它最早期的采用者。吉多成功地创建了一门能与他们的和 代码完美结合 的、具有优雅表现力的程序语言。并且,吉多是一位愿意听取建议并添加关键功能的语言设计 师,例如支持复数就是专门针对科学领域的。随着 的前身 的诞生, 获得了一个高效且强大的数值运算工具,它巩固了在未来几十年中, 作为领先的科学计 算语言的地位。 对于一些人来说,“科学计算编程”会让人联想起 中描述的那些复 杂算法,或是研究生们在深夜中努力打造程序的场景。但是真实情况所涵盖的范围更广泛 从底层的算法设计到具有高级绘图功能的用户界面开发。而后者的重要性却常常被忽视了。幸 运的是在本书中,作者为我们介绍了科学计算编程所需的各个方面。从 库和 算 法工具库的基础开始,介绍了任何科学计算应用程序所需的基本工具。然后,本书很恰当地介 绍了二维绘图以及三维可视化库 用 和 进行应 用程序和界面开发,以及用 和 等与传统的语言库相互结合等 内容在书中也有很好的介绍。除了这些核心的工具之外,本书还介绍了使用 进行数学 符号运算以及其他的各种有用的主题。 所有这些主题都破汇编到一本书中真是一件令人欣喜的事情。本书所提供的一站式服务, 能够指导读者从最初的入门直到创建一个漂亮的、全功能的分析与模拟应用程序。 年月日 关于序言作者 序 是 公司的 他在工程和软件开发领域拥有广泛的背景,指导 公司的产品工程和软件设计。在共同创建 公司之前,他在杜克大学电机工 程学系从事数值电磁学以及遗传优化算法方面的硏究,并获得了该系的硕士和博士学位。他教 授过许多用 做科学计算的课程,并且是 软件基金会的成员。 关于 公司 是一家位于美国得克萨斯州首府奥斯汀的软件公司,主要使用 从事科学 计算工具的开发。本书中介绍的 以及 均为该公司开发或维扩的开源程序库。 目录 第章软件包的安装和介绍 下标对象 简介 整数数组作为下标 安装软件包 个复杂的例子 布尔数组作为下标 庞大的函数库 求和、平均值、方差 方便的开发工具 最值和排序 多项式函数 分段函数 统计函数 函数库介绍 线性代数 数值计算库 各种乘积运算 符号计算库 解线性方程组 界面设计 掩码数组 绘图与可视化 文件存取 图像处理和计算机视觉 内存映射数组 第章 —快速处理数据 第章 —数值计算库 对象 常数和特殊函数 创建数组 优化 存取元素 最小二乘拟合 多维数组 函数最小值 结构数组 非线性方程组求解 内存结构 插值 运算 样条曲线插值 四则运算 外推和拟合 比较和布尔运算 二维插值 自定义函数 数值积分 广播 球的体积 函数的方法 解常微分方程组 多维数组的下标存取 信号处理 科学计算 中值滤波 对象 滤波器设计 对象的属性 图像处理 容器 膨胀和腐蚀 容器 容器 统计一 对象的关系 连续和离散概率分布 坐标变换和注释 二项、泊松、伽玛分布 种坐标系 嵌入语言程序一 坐标变换的步骤 第章 符号运算好帮手 制作阴影效果 添加注释 从例子开始 公图函数简介 录 封面上的经典公式 对数坐标图 球体体积 极坐标图 数学表达式 柱状图 符号 散列图 数值 图像 运算符和函数 等值线图 符号运算 三维绘图 表达式变换和化简 方程 第章 为 添加类型 微分 定义 微分方程 开发背景 积分 属性的功能 其他功能 类型对象 平面几何 的元数据 绘图 预定义的类型 第章 —绘制精美 属性 属性监听 的图表 和 属性 快速绘图 属性的从属关系 使用模块绘图 动态添加属性 以面向对象方式绘图 创建自己的类型 配置属性 从 继 绘制多个子图 使用 配置文件 定义 类 在图表中显示中文

...展开详情
img
yanghefeng22

关注 私信 TA的资源

上传资源赚积分,得勋章
最新资源