欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

通信系统仿真(一些简单的MATLAB函数学习)(符号变量及计算)(二)

程序员文章站 2022-07-01 13:54:02
...

一、符号表达式

符号表达式的代数运算

(1).主要通过符号函数来实现。

(2).所有符号函数作用到符号表达式后,返回符号表达式。

(3).有时结果看起来像数字,但其实是一个内部用字符串表示的符号表达式

与数值运算的区别:
(1).数值型运算受到计算机内部有效位数的限定,每次运算有截取误差;
(2).符号运算不需要进行数值运算,没有截取误差,非常准确;
(3).符号运算可以得出完全的封闭解;
(4).符号运算比数值运算时间长。

1.符号积分、微积分以及函数求和

(1).符号极限
limit函数
(2). 符号微分
diff函数
(3). 符号积分
int函数
(4). 符号级数求和
symsum函数
taylor函数

例子:

>> f=sym('1/x');
>> limit(f)
>> limit(f,'x','0','right')
>> limit(f,'x','0','left')
>> g=sym('a*x^3+b*x^2+c*x+d');
>> diff(g)
>> diff(g,2)
>> diff(g,'a')
>> f=sym('cos(x)')
>> int(f)
>> int(f,0,pi/3)
>> int(int(f))
>> syms x k
>> symsum(1/k^2,1,10)
>> symsum(1/k^2,1,inf)
>> taylor(exp(x),8)

2.符号积分变换

(1). 傅里叶变换及反变换
fourier 与 ifourier
(2). 拉普拉斯变换及反变换
laplace 与 ilaplace
(3). Z变换及反变换
ztrans 与 iztrans

例:

>> syms t w
>> T=fourier(1/t,t,w)
>> ifourier(T,t)
>> syms a t s
>> L1= laplace('sin(a*t)',t,s)
>> laplace(sym('heaviside(t)'))
>> ilaplace(L1,s,t)

3.符号函数的可视化

(1). ezplot和ezplot3函数
(2). funtool

例:

>> ezplot('heaviside(t)')
>> ezplot('heaviside(t)',[-5 5])
>> funtool

例:

syms A t beta w;
pi=sym('pi')
beta=sym('beta','positive');
f=A*exp(-beta*t^2);
F=fourier(f,t,w); %F=simple(F)
F1=subs(F,[A beta],[4 2])
ezplot(F1,[-10,10])