信号处理工程训练课训练一信号与系统函数编程训练目的1﹑学会将信号与系统函数转变成计算机程序
2﹑基本掌握将数学函数转变为程序函数的技巧与规范
3﹑了解理论函数与程序函数的差异
初步认识计算机适用范围
训练介绍1﹑数学函数转化问题把根据数学函数编写的C函数子程序称为程序函数
数学函数与程序不可能完全一致
一是计算机运算都有一个范围,所做运算超出范围便会出错;二是因为计算机不能做除零运算,这会产生一除法错,理论函数无此限制
所以要求在编写程序函数时一定要结合实际应用情形来确定如何编写,不能简单照搬数学函数
三是程序函数不象数学函数那样易于进行代数运算或者具有某种运算性质,例如理论上的冲击函数,则不易编写对应的函数子程序,所以数学函数并不能全由计算机的程序函数完全实现
一般在将一数学函数转变为一计算机上程序函数时,要具体情况具体处理
编写程序函数有一些规范和注意事项:(1)数学函数当中若有除法运算,需仔细函数奇异值的处理,须通过程序中的判断和特殊处理使程序函数返回正确值
(2)数学函数中跳变点的极限值,常取左右极限的均值,程序函数中以右极限作为函数的取值
若特殊需要,须与数学函数完全一致,则仍按数学函数规定取值
(3)所有函数子程序的输入与输出参量尽量规定为double型,建议不用float型,这是出于规范考虑
(4)所有程序函数的输入输出参量声明时写成如下形式:Doublefunction(Typeout1,Typeout2,
Typein1,Typein2,
)Doublefunction(Typeout1,Typeout2,
Typeio1,Typeio2,
Typein1,Typein2,
)即,输出变量占一行,输入输出变量占一行,输入变量占一行
输入变量的第一个参量为主变量
北京工业大学电控学院1信号处理工程训练课(5)尽量减少函数变量个数,例如si