图书介绍
代码本色 用编程模拟自然系统PDF|Epub|txt|kindle电子书版本网盘下载
- (美)希夫曼著 著
- 出版社: 北京:人民邮电出版社
- ISBN:9787115369475
- 出版时间:2015
- 标注页数:406页
- 文件大小:60MB
- 文件页数:425页
- 主题词:程序语言-程序设计
PDF下载
下载说明
代码本色 用编程模拟自然系统PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第0章 引言1
0.1 随机游走1
0.2 随机游走类2
0.3 概率和非均匀分布6
0.4 随机数的正态分布9
0.5 自定义分布的随机数12
0.6 Perlin噪声(一种更平滑的算法)14
0.6.1 映射噪声16
0.6.2 二维噪声18
0.7 前进21
第1章 向量23
1.1 向量24
1.2 Processing中的向量26
1.3 向量的加法28
1.4 更多的向量运算31
1.4.1 向量的减法32
1.4.2 向量加减法的运算律33
1.4.3 向量的乘法34
1.4.4 更多的向量运算律36
1.5 向量的长度36
1.6 单位化向量38
1.7 向量的运动:速度39
1.8 向量的运动:加速度43
1.9 静态函数和非静态函数47
1.10 加速度的交互49
第2章 力54
2.1 力和牛顿运动定律54
2.1.1 牛顿第一运动定律54
2.1.2 牛顿第三运动定律55
2.1.3 牛顿第三运动定律(从Processing的角度表述)56
2.2 力和Processing的结合:将牛顿第二运动定律作为一个函数57
2.3 力的累加58
2.4 处理质量59
2.5 制造外力61
2.6 地球引力和力的建模65
2.7 摩擦力67
2.8 空气和流体阻力70
2.9 引力75
2.10 万有引(斥)力83
第3章 振荡86
3.1 角度86
3.2 角运动88
3.3 三角函数92
3.4 指向运动的方向93
3.5 极坐标系和笛卡儿坐标系96
3.6 振荡振幅和周期98
3.7 带有角速度的振荡101
3.8 波104
3.9 三角函数和力:钟摆107
3.10 弹力114
第4章 粒子系统122
4.1 为什么需要粒子系统122
4.2 单个粒子123
4.3 使用ArrayList127
4.4 粒子系统类132
4.5 由系统组成的系统134
4.6 继承和多态的简介136
4.7 继承基础138
4.8 用继承实现粒子类142
4.9 多态基础144
4.10 用多态实现粒子系统145
4.11 受力作用的粒子系统147
4.12 带排斥对象的粒子系统151
4.13 图像纹理和加法混合156
第5章 物理函数库160
5.1 Box2D及其适用性161
5.2 获取Processing中的Box2D162
5.3 Box2D基础163
5.3.1 SETUP164
5.3.2 DRAW164
5.3.3 Box2D世界的核心元素164
5.4 生活在Box2D的世界165
5.5 创建一个Box2D物体167
5.5.1 第1步:定义一个物体167
5.5.2 第2步:设置物体的定义168
5.5.3 第3步:创建物体168
5.5.4 第4步:为物体的初始状态设置其他属性169
5.6 三要素:物体、形状和夹具169
5.6.1 第1步:定义形状169
5.6.2 第2步:创建夹具169
5.6.3 第3步:用夹具将形状连接到物体上170
5.7 Box2D和Processing的结合171
5.7.1 第1步:在主程序(即setup()和draw()函数)中添加Box2D173
5.7.2 第2步:建立Processing盒子对象和Box2D物体对象之间的联系173
5.8 固定的Box2D对象176
5.9 弯曲的边界177
5.9.1 第1步:定义一个物体177
5.9.2 第2步:定义形状177
5.9.3 第3步:配置形状177
5.9.4 第4步:使用夹具将形状连接到物体上178
5.10 复杂的形状180
5.11 Box2D关节186
5.11.1 步骤1:确保有两个物体189
5.11.2 步骤2:定义关节189
5.11.3 步骤3:配置关节的属性190
5.11.4 步骤4:创建关节190
5.12 回到力的话题195
5.13 碰撞事件196
5.13.1 步骤1:Contact对象,你能否告诉我哪两个物体发生了碰撞198
5.13.2 步骤2:夹具对象,你能否告诉我你连接在哪个物体上198
5.13.3 步骤3:物体,你能否告诉我你连接在哪个粒子对象上198
5.14 小插曲:积分法200
5.15 toxiclibs的Verlet Physics物理库202
5.15.1 获取toxiclibs203
5.15.2 VerletPhysics的核心元素203
5.15.3 toxiclibs中的向量203
5.15.4 构建toxiclibs的物理世界204
5.16 toxiclibs中的粒子和弹簧205
5.17 整合代码:一个简单的交互式弹簧207
5.18 相连的系统Ⅰ:绳子209
5.19 相连的系统Ⅱ:力导向图211
5.20 吸引和排斥行为214
第6章 自治智能体218
6.1 内部的力218
6.2 车辆和转向219
6.3 转向力220
6.4 到达行为226
6.5 你的意图:所需速度229
6.6 流场231
6.7 点乘236
6.8 路径跟随239
6.9 多段路径跟随246
6.10 复杂系统250
6.11 群体行为(不要碰到对方)251
6.12 结合256
6.13 群集257
6.14 算法效率(为什么程序跑得这么慢)263
6.15 最后的几个注意事项:优化技巧265
6.15.1 长度的平方(或距离的平方)266
6.15.2 正弦余弦查询表266
6.15.3 创建不必要的PVector对象267
第7章 细胞自动机270
7.1 什么是细胞自动机270
7.2 初等细胞自动机271
7.3 如何编写初等细胞自动机276
7.4 绘制初等CA281
7.5 Wolfram分类283
7.6 生命游戏285
7.7 编写生命游戏288
7.8 面向对象的细胞实现292
7.9 传统CA的变化294
第8章 分形297
8.1 什么是分形298
8.2 递归300
8.3 用递归函数实现康托尔集304
8.4 科赫曲线和ArrayList技术306
8.5 树313
8.6 L系统320
第9章 代码的进化327
9.1 遗传算法:启发自真实现象327
9.2 为什么使用遗传算法328
9.3 达尔文的自然选择330
9.4 遗传算法,第一部分:创建种群330
9.5 遗传算法,第二部分:选择332
9.6 遗传算法,第三部分:繁殖334
9.7 创建种群的代码336
9.7.1 第1步:初始化种群336
9.7.2 第2步:选择338
9.7.3 第3步:繁殖340
9.8 遗传算法:整合代码342
9.9 遗传算法:创建自己的遗传算法345
9.9.1 第1点:更改变量345
9.9.2 第2点:适应度函数346
9.9.3 第3点:基因型和表现型348
9.10 力的进化:智能火箭350
9.11 智能火箭:整合代码354
9.12 交互式选择360
9.13 生态系统模拟363
9.13.1 基因型和表现型366
9.13.2 选择和繁殖367
第10章 神经网络371
10.1 人工神经网络:导论和应用372
10.2 感知器374
10.3 用感知器进行简单的模式识别376
10.4 实现感知器377
10.5 转向感知器383
10.6 还记得这是个“网络”吗388
10.7 神经网络图390
10.8 实现前馈动画394
10.9 结语400
参考文献401
索引404