计算机
类型
可以朗读
语音朗读
223千字
字数
2024-06-01
发行日期
展开全部
主编推荐语
本书主要介绍如何使用Python来解决工程问题。
内容简介
全书涵盖了如何编码几何基元、读写文件、绘制矢量图并制作动画来展示运算结果,以及求解大型线性方程组,并在最后整合所有知识,搭建了一个求解桁架结构问题的应用程序。
目录
- 版权信息
- 译者序 The Translator's Words
- 前言 Preface
- 致谢 Acknowledgements
- 作者简介 About the Author
- 技术评审员简介 Introduction of technical assessor in foreign language
- Part 1 第一部分 基础知识
- Chapter 1 第1章 Python快速入门
- 1.1 Python包和模块
- 1.1.1 Python模块
- 1.1.2 Python包
- 1.2 运行文件
- 1.3 导入代码
- 1.4 用文档字符串注释代码
- 1.5 Python中的元素集
- 1.5.1 集合
- 1.5.2 元组
- 1.5.3 列表
- 1.5.4 字典
- 1.6 解包
- 1.7 小结
- Chapter 2 第2章 两种编程范式
- 2.1 函数式编程
- 2.1.1 纯函数
- 2.1.2 不可变性
- 2.1.3 lambda函数
- 2.1.4 高阶函数
- 2.1.5 嵌套函数
- 2.1.6 filter、map和reduce函数
- 2.1.7 列表推导式
- 2.2 面向对象编程
- 2.2.1 类
- 2.2.2 魔术方法
- 2.3 类型提示
- 2.4 小结
- Chapter 3 第3章 命令行
- 3.1 UNIX和Windows系统的命令行
- 3.2 准备好shell
- 3.2.1 安装Windows Subsystem for Linux软件
- 3.2.2 初识shell
- 3.3 文件和目录
- 3.3.1 移动命令
- 3.3.2 创建文件和目录
- 3.3.3 删除文件和目录
- 3.3.4 命令汇总
- 3.3.5 使用Windows Subsystem for Linux
- 3.4 运行Python脚本
- 3.5 给脚本传递参数
- 3.6 标准输入和输出
- 3.6.1 将输出重定向到文件
- 3.6.2 将输入重定向为文件
- 3.7 使用PyCharm自带的Python控制台
- 3.8 小结
- Part 2 第二部分 二维几何
- Chapter 4 第4章 点和向量
- 4.1 比较数字
- 4.2 创建类:Point
- 4.2.1 计算两点间的距离
- 4.2.2 加减操作
- 4.3 创建类:Vector
- 4.3.1 向量的加减
- 4.3.2 向量的缩放
- 4.3.3 用向量移动点
- 4.3.4 向量的范数
- 4.3.5 不可变的代码设计
- 4.3.6 方法的命名约定
- 4.3.7 向量的点乘
- 4.3.8 向量的投影
- 4.3.9 向量的叉乘
- 4.3.10 平行和垂直向量
- 4.3.11 向量的夹角
- 4.3.12 向量的旋转
- 4.3.13 向量的正弦和余弦
- 4.4 完善Vector类
- 4.4.1 检验相等性
- 4.4.2 字符串表示
- 4.4.3 向量的工厂函数
- 4.5 单元测试
- 4.5.1 测试距离计算方法
- 4.5.2 测试向量的加减方法
- 4.5.3 测试向量的乘法方法
- 4.5.4 测试向量的平行和垂直方法
- 4.5.5 单元测试的三个重要规则
- 4.6 小结
- Chapter 5 第5章 直线和线段
- 5.1 创建类:Segment
- 5.1.1 线段的方向
- 5.1.2 线段的长度
- 5.1.3 参数t和线段中点
- 5.1.4 计算线段上的最近点
- 5.1.5 计算线段与点的最短距离
- 5.1.6 计算线段的交点
- 5.1.7 相等和字符串表示
- 5.2 创建类:Line
- 5.3 线段的垂直平分线
- 5.4 小结
- Chapter 6 第6章 多边形
- 6.1 创建类:Polygon
- 6.1.1 多边形的边
- 6.1.2 多边形的质心
- 6.1.3 检验多边形是否包含点
- 6.1.4 多边形的工厂函数
- 6.1.5 检验多边形的相等性
- 6.2 创建类:Circle
- 6.2.1 检验圆是否包含点
- 6.2.2 圆的近似多边形
- 6.2.3 圆的相等性和字符串表示
- 6.2.4 圆的工厂函数
- 6.3 创建类:Rect
- 6.3.1 检验矩形是否包含点
- 6.3.2 检查矩形是否重叠
- 6.3.3 矩形转多边形
- 6.3.4 矩形的相等性检查
- 6.3.5 矩形的工厂函数
- 6.4 小结
- Chapter 7 第7章 仿射变换
- 7.1 初识仿射变换
- 7.2 创建类:Affine Transform
- 7.2.1 单元测试:点的变换
- 7.2.2 变换线段和多边形
- 7.2.3 组合变换
- 7.2.4 逆仿射变换
- 7.2.5 缩放变换
- 7.2.6 旋转变换
- 7.3 插值变换
- 7.3.1 插值的类型
- 7.3.2 插值的实现
- 7.4 Geom2D的最后一步
- 7.4.1 测试文件整理
- 7.4.2 同时运行所有测试文件
- 7.4.3 包的统一导入
- 7.5 小结
- Part 3 第三部分 图形和模拟
- Chapter 8 第8章 绘制矢量图
- 8.1 位图和矢量图
- 8.2 SVG格式
- 8.2.1 视框
- 8.2.2 空间变换
- 8.3 创建包:svg
- 8.3.1 模板字符串
- 8.3.2 导入模板
- 8.3.3 图像模板
- 8.3.4 属性
- 8.4 SVG的基元
- 8.4.1 直线
- 8.4.2 矩形
- 8.4.3 圆
- 8.4.4 多边形
- 8.4.5 多段线
- 8.4.6 文本
- 8.4.7 分组
- 8.4.8 箭头
- 8.5 基元总结
- 8.6 导入包
- 8.7 小结
- Chapter 9 第9章 三点画圆
- 9.1 应用程序的架构
- 9.2 初始设置
- 9.2.1 创建一个运行配置
- 9.2.2 为什么要使用运行配置
- 9.3 读取输入和配置文件
- 9.3.1 正则表达式
- 9.3.2 正则表达式备忘录
- 9.3.3 匹配点
- 9.3.4 配置文件
- 9.4 问题模型和解决方法
- 9.5 结果输出
- 9.5.1 绘制结果圆
- 9.5.2 绘制输入点
- 9.5.3 最终代码
- 9.5.4 翻转y轴方向
- 9.6 分发应用程序
- 9.6.1 理解问题所在
- 9.6.2 寻找解决方案
- 9.6.3 不用文件作为输入启动应用程序
- 9.7 小结
- Chapter 10 第10章 图形用户界面和画布
- 10.1 Tkinter包介绍
- 10.1.1 我们的第一个GUI程序
- 10.1.2 画布
- 10.2 绘制几何基元
- 10.2.1 画布的装饰器类
- 10.2.2 绘制线段
- 10.2.3 绘制多边形
- 10.2.4 绘制箭头
- 10.3 小结
- Chapter 11 第11章 动画、模拟和时间循环
- 11.1 名词解释
- 11.1.1 什么是动画
- 11.1.2 什么是系统
- 11.1.3 什么是模拟
- 11.1.4 什么是时间循环
- 11.2 我们的第一个动画
- 11.2.1 初始设置
- 11.2.2 添加帧计数标签
- 11.2.3 系统更新
- 11.2.4 创建运动
- 11.3 抽象主循环函数
- 11.4 重构模拟程序
- 11.4.1 尝试不同的多边形近似圆
- 11.4.2 尝试不同的仿射变换
- 11.5 模块简洁化
- 11.6 小结
- Chapter 12 第12章 仿射变换动画化
- 12.1 应用程序架构和图示
- 12.2 初始设置
- 12.2.1 创建运行配置文件
- 12.2.2 创建一个bash脚本
- 12.3 读取配置文件
- 12.4 读取输入文件
- 12.4.1 输入格式化
- 12.4.2 添加输入范例
- 12.4.3 解析仿射变换
- 12.4.4 解析几何基元
- 12.5 运行模拟程序
- 12.5.1 建立用户界面
- 12.5.2 实现模拟逻辑
- 12.5.3 绘制坐标轴
- 12.6 小结
- Part 4 第四部分 方程组
- Chapter 13 第13章 矩阵和向量
- 13.1 列表初始化
- 13.2 初始设置
- 13.3 向量
- 13.3.1 创建类:Vector
- 13.3.2 测试Vector类
- 13.4 矩阵
- 13.4.1 设置矩阵值
- 13.4.2 获取矩阵值
- 13.4.3 缩放矩阵值
- 13.4.4 矩阵相等性
- 13.4.5 测试Matrix类
- 13.5 小结
- Chapter 14 第14章 线性方程组
- 14.1 线性方程组简介
- 14.2 数值方法
- 14.3 Cholesky分解法
- 14.3.1 LU算法
- 14.3.2 Cholesky算法原理
- 14.3.3 因式分解过程演算
- 14.3.4 解答过程演算
- 14.3.5 实现Cholesky算法
- 14.3.6 集成测试法测试Cholesky算法
- 14.4 小结
- Part 5 第五部分 桁架结构
- Chapter 15 第15章 结构模型
- 15.1 求解结构问题
- 15.2 结构件的内力分析
- 15.2.1 弹性体受外力作用
- 15.2.2 轴向力和剪切力
- 15.2.3 弯曲和扭转力矩
- 15.3 拉伸和压缩
- 15.3.1 胡克定律
- 15.3.2 应力-应变曲线
- 15.4 平面桁架
- 15.5 二力构件
- 15.6 全局坐标中的刚度矩阵
- 15.7 结构的初始模型
- 15.7.1 创建类:StrNode
- 15.7.2 创建类:StrBar
- 15.7.3 创建类:Structure
- 15.7.4 用Python shell创建结构
- 15.8 结构的解模型
- 15.8.1 创建类:StrNodeSolution
- 15.8.2 创建类:StrBarSolution
- 15.8.3 创建类:StructureSolution
- 15.9 小结
- Chapter 16 第16章 模型求解
- 16.1 算法原理
- 16.1.1 刚度矩阵项的含义
- 16.1.2 结构初始化
- 16.1.3 结构求解的主算法
- 16.1.4 给结构的自由度编号
- 16.1.5 组合和求解方程组
- 16.1.6 创建解模型
- 16.1.7 代码汇总
- 16.2 进阶版单元测试法:测试替代技术
- 16.2.1 测试替代技术介绍
- 16.2.2 unittest.mock包
- 16.3 测试StructureSolution类
- 16.4 测试结构问题求解过程
- 16.5 小结
- Chapter 17 第17章 从文件中读取输入
- 17.1 定义输入数据格式
- 17.1.1 节点的格式
- 17.1.2 载荷的格式
- 17.1.3 杆的格式
- 17.1.4 文件格式
- 17.2 找到正则表达式
- 17.2.1 节点的正则表达式
- 17.2.2 载荷的正则表达式
- 17.2.3 杆的正则表达式
- 17.3 初始设置
- 17.4 节点解析程序
- 17.5 杆解析程序
- 17.6 载荷解析程序
- 17.7 结构解析程序
- 17.7.1 总览
- 17.7.2 设置
- 17.7.3 忽略空白和注释
- 17.7.4 解析行
- 17.7.5 拆解行和组装结构
- 17.7.6 代码汇总
- 17.7.7 程序测试
- 17.8 小结
- Chapter 18 第18章 生成SVG图像和文本文件
- 18.1 初始设置
- 18.2 从结构解到SVG
- 18.2.1 配置文件
- 18.2.2 参数设置
- 18.2.3 函数:绘制结果图
- 18.2.4 注释
- 18.2.5 绘制杆图形
- 18.2.6 绘制节点图形
- 18.2.7 节点反作用力
- 18.2.8 载荷
- 18.2.9 代码汇总
- 18.2.10 最终结果
- 18.3 从结构解到文本
- 18.3.1 结构解的字符串表示
- 18.3.2 节点
- 18.3.3 杆
- 18.3.4 Unicode字符
- 18.3.5 代码汇总
- 18.4 小结
- Chapter 19 第19章 组装应用程序
- 19.1 概述
- 19.2 设置
- 19.3 输入参数
- 19.4 生成输出文件
- 19.5 主脚本
- 19.6 尝试应用程序
- 19.6.1 尝试不同的参数输入
- 19.6.2 求解一个大型结构问题
- 19.7 小结
- 参考文献
- 推荐阅读
展开全部
出版方
机械工业出版社
机械工业出版社是全国优秀出版社,自1952年成立以来,坚持为科技、为教育服务,以向行业、向学校提供优质、权威的精神产品为宗旨,以“服务社会和人民群众需求,传播社会主义先进文化”为己任,产业结构不断完善,已由传统的图书出版向着图书、期刊、电子出版物、音像制品、电子商务一体化延伸,现已发展为多领域、多学科的大型综合性出版社,涉及机械、电工电子、汽车、计算机、经济管理、建筑、ELT、科普以及教材、教辅等领域。