上篇 工程数值算法应用程序编程基础 1
1编写数值计算程序的一般步骤 1
1.1明确编写程序的目的和搞清楚相关的计算公式 2
【例1.1】插值计算齿轮应力修正系数Ysa的计算程序简单界面 2
1.2在简单的界面上用BASIC编写计算程序并完成调试 2
2数值计算程序常用界面 6
2.1下拉式菜单 7
2.2 RichTextBox控件 8
2.3弹出式菜单 9
2.4数值计算程序常用的用户界面的重要工具——通用对话框 10
2.5通用对话框的基本属性与显示通用对话框的方法 12
2.6具有保存计算结果功能的常用界面的程序 15
【例2.1】插值计算齿轮应力修正系数的常用界面 15
3编制参数化界面的插值计算齿轮应力修正系数 19
3.1关于二维规则函数表的插值计算 19
【例3.1】把人工插值过程转化为计算机程序处理过程,查询齿轮应力修正系数Ysa 19
3.2设计一个参数化界面的用户界面 21
3.3运行程序、调试 22
3.4设计一个在常用界面中的参数化界面的插值计算齿轮应力修正系数Ysa程序 23
3.5编写各过程代码指令 23
3.6运行程序、调试 25
3.7参数化界面源程序生成应用程序即被生成.exe执行文件 25
3.8生成的执行文件.exe文件中的帮助系统和纠错系统 26
3.9编制数值计算程序的要点 33
下篇 工程数值算法应用实例 34
4用“另存为”建立常用界面的拉格朗日插值计算程序 34
4.1关于拉格朗日插值 34
【例4.1】对函数f(x) =cosx和f(x)=ex, cosx的区间是(0,π),ex的区间是(0,1.0),进行拉格朗日插值编程计算 35
4.2用另存为的办法建立常用界面的计算程序 35
4.3对窗体设计窗口、工程资源管理器、窗体文件属性编辑器窗口进行改写,建立常用界面的计算程序 37
4.4在改建完成的窗体里改写源代码 39
4.5运行结果及分析 43
5有理函数插值法 44
5.1关于有理函数插值 44
【例5.1】对以下已知函数F(x)作插值编程计算 45
5.2对已知有理函数F(x)作插值计算的程序编制 45
5.3程序运行结果及分析 48
5.4关于子程序 49
【例5.2】编制传址调用程序 51
【例5.3】编制传值调用程序 53
6高斯法解系数矩阵及验证 55
6.1关于高斯-约当消去法 55
【例6.1】已知某预测产值方程组的系数矩阵及右端向量调用高斯法子过程求出其解 55
6.2高斯法解系数矩阵及验证的程序编制 56
6.3程序运行结果及分析 60
7梯形求积法 62
7.1关于梯形求积法 62
【例7.1】对以下已知函数F(x)作数值积分 63
7.2对已知函数F(x)数值积分计算程序进行编制 63
7.3程序运行结果及分析 65
8计算伽玛函数Γ函数值 67
8.1关于Γ函数 67
【例8.1】计算x=0.2,0.4,...,1.0,1.2,...,10.0,20.0,...的Γ函数值 67
8.2对Γ函数值计算程序进行编制 68
8.3程序运行结果及分析 70
【例8.2】由例8.1计算得已知x、 Γ(x)值,用MATLAB绘制Γ函数图形 70
8.4用MATLAB绘制计算所得Γ函数图形 71
9计算不完全伽玛函数、误差函数 73
9.1关于不完全伽玛函数、误差函数 73
【例9.1】计算x<0,或x<a+1时的不完全Γ函数值 75
9.2对不完全Γ函数值计算程序的编制 75
9.3程序运行结果及分析 79
10调用不完全伽玛函数计算传动轴强度可靠度 81
10.1关于可靠性设计计算 81
10.2传动轴强度概率可靠性计算 83
10.3传动轴强度概率可靠性计算的程序编制 87
【例10.1】调用不完全伽玛函数传动轴正态分布可靠性计算 87
10.4采用查表法和采用调用不完全伽玛函数法求得可靠度的结果对比 94
10.5传动轴疲劳强度的概率可靠性计算的程序编制 97
【例10.2】调用不完全伽玛函数传动轴对数正态分布可靠性计算 97
10.6采用查表法和采用调用不完全伽玛函数法求得传动轴对数分布可靠度的结果对比 104
11调用不完全伽玛函数实现变厚齿强度的概率可靠性调优计算 107
11.1可靠性调优计算的介绍 107
【例11.1】对某5t商用车转向器变厚齿齿扇的齿根弯曲强度进行校核的调优计算与概率可靠性的调优计算 115
11.2编制可实现变厚齿概率可靠性调优计算的程序 115
11.3程序的运行结果及分析 132
11.4概率可靠性设计的安全系数和传统的强度校核的安全系数的不同 136
【例11.2】对例11.1的结果编程计算求出安全系数nR、 n′R 139
12用蒙特卡洛法求膜簧优化计算一组实根 148
12.1蒙特卡洛法对膜片弹簧非线性方程组优化解的介绍 148
【例12.1】用蒙特卡洛法求膜片簧的三个主参数一组根的A-L式各系数 152
12.2求三根的蒙特卡洛法的各系数计算程序的编制 152
12.3各系数计算程序的运行结果 155
【例12.2】用蒙特卡洛法求膜片簧的三个主参数一组根 156
12.4蒙特卡洛法优化求三根的程序的编制 156
12.5求三根程序的运行结果及分析 159
【例12.3】对一组根值的验证 161
12.6蒙特卡洛法优化三根值的验证程序编制 161
12.7三根验证程序的运行结果及分析 168
13威布尔分布(二参数估计)用于某晶体管的可靠性分析 171
13.1威布尔分布分析法的性质和优缺点 171
13.2威布尔分布分析二参数图估计法 172
【例13.1】对晶体管的寿命试验数据作威布尔分布分析(二参数估计) 172
13.3 VB平台上的威布尔分布分析数值计算法 174
13.4晶体管威布尔分析程序运行结果分析 180
13.5用MATLAB的威布尔分布程序对本例的计算结果 182
14威布尔分布(三参数图估计)用于某产品的可靠性分析 184
14.1威布尔分布分析三参数图估计法 184
【例14.1】对某产品定数截尾试验,作三参数图估计和辅助计算 184
14.2基于MATLAB平台威布尔分布三参数图估计的辅助编程计算 186
14.3基于VB平台威布尔分布三参数图估计辅助计算的程序编制 190
14.4威布尔分布分析三参数图估计辅助程序运行结果 195
15 威布尔分布假设检验 197
15.1二参数威布尔分布假设检验方法的程序编制 197
【例15.1】二参数威布尔分布假设检验对某特种轴承的寿命数据做检验 197
15.2二参数威布尔分布假设检验计算结果及分析 200
15.3威布尔分布异常值检验方法的程序编制 202
【例15.2】根据某产品的一组寿命数据检验其是否来自同一个二参数威布尔分布 203
15.4威布尔分布异常值检验计算结果及分析 206
16用布伦特法求一个根优化膜片弹簧生产线上的最佳磨削厚度 208
16.1用布伦特法求根优化离合器膜片弹簧厚度的介绍 208
【例16.1】用布伦特法求膜片弹簧的最佳厚度 211
16.2布伦特法求根优化离合器膜片弹簧厚度的程序编制 212
16.3程序的运行结果 215
17单纯形法解决生产计划线性规划问题 216
【例17.1】用单纯形法解决某企业的生产计划的线性规划问题 216
17.1用单纯形法优化生产计划的程序编制 218
17.2程序运行结果及分析 223
18用迭代法对超声波振动加工变幅杆的优化设计 225
18.1超声波加工变幅杆的介绍 225
【例18.1】已知45钢的圆锥形变幅杆的初设定长度、两端直径、中孔直径,求符合谐振要求的精确长度及放大系数 227
18.2用迭代法对超声加工变幅杆(带中孔)的优化设计的程序编制 227
18.3对超声加工圆锥形变幅杆(带中孔)优化的计算结果及分析 231
19傅里叶变换算法 233
19.1关于傅里叶分析 233
19.2关于在机械振动中的傅里叶变换 233
19.3关于在VB平台实现傅里叶变换的算法 237
【例19.1】采样点数NN=32,含2×NN个元素的一组实型数组DATA(),作输入、输出参数,进行复数据快速傅里叶变换 240
19.4复数据快速傅里叶变换算法的程序编制 241
19.5程序运行结果及分析 252
20快速傅里叶变换与直接计算法的比较 256
20.1提高信号分析的计算速度 256
【例20.1】快速傅里叶变换与直接计算法相比较快速法比直接法快多少倍 256
20.2对快速傅里叶变换与直接计算法相比较快速法比直接法快多少倍的计算程序编制 258
20.3程序计算的结果及分析 261
21从特征根的共轭复根求得振动的固有频率 263
21.1某无阻尼二自由度系统 263
【例21.1】用MATLAB对某无阻尼二自由度系统作固有频率的计算 263
21.2编制计算某无阻尼二自由度系统的MATLAB程序 264
21.3计算及结果分析 264
附录 267
参考文献 278