第一章 动力学系统数字仿真原理 1
1.1 动力学系统 1
1.2 动力学系统的数字仿真 4
1.3 动力学系统的数学模型 6
1.3.1 常微分方程描述的连续时间动力学系统 8
1.3.2 差分方程描述的离散时间动力学系统 10
1.3.3 采样数据系统数学模型 14
1.3.4 微分代数方程描述的动力学系统 14
1.3.5 建立动力学系统数学模型的实际例子 16
1.4 数字仿真算法和软件 21
1.5 仿真模型的校核和验证 23
1.5.1 数字仿真模型的校核 24
1.5.2 数字仿真模型的验证 28
第二章 数字仿真的一些通用算法 31
2.1 离散相似原理 31
2.1.1 Adams方法 33
2.1.2 局部解析方法 37
2.2 Taylor级数匹配原理 39
2.2.1 Runge-Kutta方法 40
2.2.2 线性多步方法 44
2.3 数字仿真方法的实现 48
2.3.1 单步法的误差估计和步长选取 48
2.3.2 线性多步法的起始值计算 57
2.3.3 定步长显式多步方法的计算 60
2.3.4 隐式方程组的求解方法 61
2.3.5 多步方法的预估校正计算 66
2.3.6 线性多步方法的变阶变步长的实现 70
2.4 数字仿真算法的稳定性分析 75
2.4.1 显式Runge-Kutta方法的稳定性分析 77
2.4.2 隐式Rungd-Kutta方法的稳定区域 78
2.4.3 线性多步方法的稳定性分析 79
2.5 数字仿真算法的时域误差分析 81
2.5.1 单步法的时域误差分析 82
2.5.2 线性多步方法的时域误差分析 85
2.6 微分代数系统的仿真算法 87
2.6.1 秩1微分代数系统的仿真算法 87
2.6.2 秩2微分代数系统的仿真算法 91
第三章 线性系统的数字仿真方法 96
3.1 频域分析基本知识 96
3.1.1 连续函数的频域表示 97
3.1.2 离散时间函数和线性离散时间不变系统的频域表示 104
3.1.3 连续信号频谱与采样离散信号频谱的关系 107
3.1.4 z变换 109
3.2 线性系统仿真模型建模的预处理方法 113
3.2.1 一般通用数字仿真方法的预处理 113
3.2.2 运载火箭姿态运动的数字仿真 116
3.2.3 小步合成方法 123
3.2.4 局部解析法 130
3.3 线性系统数字仿真模型的转换 135
3.4.1 变换方法 139
3.4 传递函数的数字仿真方法 139
3.4.2 零极点匹配映射法 149
3.4.3 权序列方法(时域矩阵方法) 151
3.4.4 小步合成方法 157
第四章 数字仿真模型的频域误差估计手和补偿方法 162
4.2 数字仿真模型的特征根误差 164
4.2.1 单步法的特征根误差 165
4.1 数字仿真模型的等效连续模型 167
4.2.2 多步预估校正方法的特征根误差 170
4.3 数字仿真模型的正弦离散传递函数误差 176
4.3.1 单遍算法的正弦离散传递函数的误差 178
4.3.2 单步法的正弦离散传递函数误差 181
4.3.3 多步预估校正方法的正弦离散传递函数误差 184
4.4 信号保持器的频域误差分析 187
4.4.1 一阶保持器的频域误差 187
4.4.2 二阶保持器的频域误差 191
4.4.3 三阶保持器的频域误差 192
4.4.4 多帧速计算中保持器的频域误差分析 195
4.5 数字仿真模型频率特性的测试方法 197
4.5.1 周期序列的离散Fourier级数表示 200
4.5.2 频率特性测试的相关分析方法 202
4.5.3 频率特性测试的快速Fourier变换(FFT)方法 204
4.5.4 频率特性测试的例子 206
4.6 数字仿真模型频域误差的补偿 208
4.6.1 相位增益可调的数值积分方法 209
4.6.2 零阶保持器的补偿 219
4.6.3 误差补偿的精确求解法 221
4.6.4 误差补偿的近似求解法 227
第五章 刚性问题与多速率组合方法 232
5.1 刚性问题的例子 232
5.2 刚性系统的概念 238
5.2.1 线性问题的刚性概念 238
5.2.3 几个常用的数值稳定性概念 240
5.2.2 非线性问题的刚性性质 240
5.2.4 刚性系统求解的实质 244
5.3 基本的刚性算法 246
5.3.1 向后微分公式BDF 246
5.3.2 二阶导数线性多步方法 253
5.3.3 对角隐式Runge-Kutta方法SDIRK 255
5.3.4 Rosenbrock方法 257
5.4 刚性算法的主要特点 258
5.5.1 算法提出的背景 259
5.5 组合方法 259
5.5.2 算法构造 261
5.5.3 几类通常的组合算法 264
5.6 RK-Rosenbrock组合算法 268
5.6.1 算法步骤 268
5.6.2 算法的相容阶和收敛性 269
5.6.3 几组具体计算公式 270
5.6.4 数值稳定性分析 272
5.6.5 数值试验结果 274
第六章 实时数字仿真算法 279
6.1 实时数字仿真 279
6.2 实时仿真算法的特点 281
6.3 一些基本的实时仿真算法 283
6.3.1 Adams-Bashforth(AB)型算法 283
6.3.2 Adams-Moulton(AM)型算法 284
6.3.3 实时Runge-Kutta方法 286
6.4 实时混合(Hybrid)方法 291
6.4.1 单步实时混合方法 291
6.4.2 二步实时混合方法 293
6.4.3 数值试验例子 295
6.4.4 带有线性插值的中点公式 295
6.4.5 在非步点上右函数求值的实时仿真算法 297
6.5 实时仿真多速率组合算法 299
6.6 步长选取 303
6.7 几个常用的实时数字仿真的FORTRAN程序 306
6.7.1 一阶实时RK方法RTRK1 307
6.7.2 二阶实时RK方法RTRK2 309
6.7.3 三阶实时RK方法RTRK3 311
6.7.4 二阶实时AB方法RTAB2 314
6.7.5 三阶实时AB方法RTAB3 317
6.7.6 二阶实时混合方法RTH2 321
6.7.7 三阶实时混合方法RTH3A 323
6.7.8 二阶实时AM方法RTAM2 327
6.7.9 三阶实时AM方法RTAM3 330
第七章 仿真模型中的间断处理 335
7.1 仿真模型中间断的例子 335
7.2 右函数间断的分析 337
7.2.1 右函数间断与条件函数间断 337
7.2.2 间断对数值方法阶的影响 340
7.2.3 连续延拓处理 343
7.3 非实时间断处理算法 344
7.3.1 间断处理算法的构造思想 344
7.3.2 几类实用的间断处理算法 346
7.4 实时间断处理算法 361
7.5 间断处理算法的一个FORTRAN程序 368
7.5.1 功能 368
7.5.2 使用说明 368
7.5.3 方法简介 369
7.5.4 程序 370
7.5.5 例题 379
7.5.6 程序附注 383
第八章 并行数值仿真方法 385
8.1 构造常微分方程初值问题并行算法的基本途径 385
8.1.1 系统分割的并行化方法 386
8.1.2 方法分割的并行化方法 389
8.1.3 时间分割的并行化方法 391
8.2 并行Rosenbrock方法 393
8.2.1 并行Rosenbrock公式 394
8.2.2 并行Rosenbrock方法的收敛性 395
8.2.3 并行Rosenbrock方法的稳定性 397
8.2.4 数值试验 398
8.3 并行Runge-Kutta(RK)方法 399
8.3.1 并行显式RK方法 400
8.3.2 并行多步多级显式RK方法 402
8.3.3 并行多步多级隐式RK方法 406
8.3.4 数值试验 407
8.3.5 在并行计算机上并行算法的效率分析 408
8.4 系统分割的并行算法 409
8.4.1 一类系统分割的并行组合算法 410
8.4.2 一类系统分割与方法分割相结合的并行组合算法 411
8.5 基于外插的并行算法 416
8.6 一类微分代数问题的并行数值仿真算法 420
8.6.1 并行数值仿真算法PNSA 420
8.6.2 数值稳定性分析 422
8.6.3 数值试验结果 422