怎么用matlab求解这道差分方程?

如题所述

第1个回答  2020-10-22
怎么用matlab求解这道差分方程?根据我的理解其基本思路是:
1、根据差分方程式,写出迭代式,利用for循环语句和if判断语句来书写。即
for i=3:n
if (k(i)-1)<0
uk1=0;
else
uk1=k(i)-1;
end
if (k(i)-2)<0
uk2=0;
else
uk2=k(i)-2;
end
y(i)=2*uk1-2*uk2+3*y(i-1)-2*y(i-2); %迭代求解 y(i+1)=(1-2*h*x)*y(i)+h*x*exp(-x.^2);
end;
2、确定x的变化范围,在本例中,假设k=-5:0.1:5;
3、根据初始条件,写出y(1), y(2),y(3)的具体数值。由于题主没有给出,在本例中,假设y(1)=-0.5; y(2)=-0.1;y(3)=0.3;
4、最后按上述思路编程,利用plot函数得到k与y(k)的关系图。

用matlab怎么解差分方程?
syms z n u=(1\/5)^n; %设置u为输入信号 U=ztrans(u); %z变换 y=diff_eq([1 -5 6],[0],[1 0],U); %解析解。y=simplify(y)其运行结果,y(n)=3*2^n - 2*3^n 例2:试用matlab求解差分方程,y(t+2)+y(t+1)-6y(t)=5*2^t,y(0)=1,其中y(0)=1,y(1)=0...

怎么用matlab求解这道差分方程?
怎么用matlab求解这道差分方程?根据我的理解其基本思路是:1、根据差分方程式,写出迭代式,利用for循环语句和if判断语句来书写。即 for i=3:n if (k(i)-1)<0 uk1=0;else uk1=k(i)-1;end if (k(i)-2)<0 uk2=0;else uk2=k(i)-2;end y(i)=2*uk1-2*uk2+3*y(i-1)-...

怎么用matlab求差分
调用filter函数解差分方程。1)yn=filter(B,A,xn)是计算输入向量xn的零状态响应输出信号yn,yn与xn长度相等,其中B=[b0,b1,……bn], A=[a0,a1,……an]。其中a0=1。2)yn=filter(B,A,xn,xi)是计算全响应的函数。xi是等效初始条件的输入序列,xi能由初始条件确定。此时需要调用filtic函数。

matlab如何解这个差分方程
T(t)=1\/C*G(t)+C1

关于matlab filter这个函数到底怎么用?
一、在MATLAB中,可以用函数y=filter(p,d,x)实现差分方程的仿真,即y=filter(p,d,x)用来实现差分方程,d表示差分方程输出y的系数,p表示输入x的系数,而x表示输入序列。输出结果长度数等于x的长度。 举例:实现差分方程,先从简单的说起:filter([1,2],1,[1,2,3,4,5]),实现y[k]=x[k]+2*x[k-1]...

在MATLAB中利用filter函数在给定输入和差分方程时求差分方程的解。给...
在MATLAB中,可以用函数y=filter(p,d,x)实现差分方程的仿真,也可以用函数 y=conv(x,h)计算卷积,用y=impz(p,d,N)求系统的冲激响应。实现差分方程 先从简单的说起:filter([1,2],1,[1,2,3,4,5])实现 y[k]=x[k]+2*x[k-1]y[1]=x[1]+2*0=1%(x[1]之前状态都用0)y[...

matlab利用递归求解差分方程
首先,这个不是matlab利用递归求解差分方程,而是递推;差分方程其实就是递推关系式。然后这个循环:for i=N+1:N+length(n),y(i)= -a1*y(i-N:i-1)'+ b1*x(i-N:i-N+M)';end 其实是因为:y[n]+ a1*y[n-1]+ a2*y[n-2]...+ an*y[n-N]= b0*x[n]+ b1*x[n-1]+...

用matlab画差分方程的图象,急!在线等
用MATLAB画出差分方程图像,应用for循环语句来求,当k为某值时对应的w值。然后再绘制其图形。实现方法如下:w(1)=100;for k=1:10 w(k+1)=0.975*w(k)-0.125*k+2.5;end k=1:11;plot(k,w)xlabel('k');ylabel('w(k)');...

MATLAB画出差分方程图像
用MATLAB画出差分方程图像,应用for循环语句来求,当k为某值时对应的w值。然后再绘制其图形。实现方法如下:w(1)=100;for k=1:10 w(k+1)=0.975*w(k)-0.125*k+2.5;end k=1:11;plot(k,w)xlabel('k');ylabel('w(k)');

关于matlab filter这个函数^^
差分方程 2y[k]-y[k-1]-3y[k-2]=2x[k]-x[k-1]往里面代 [1]之前的状态都为0 y[1]=1\/2*(2*x[1])=0 y[2]=1\/2*(2*x[2]-x[1]+y[1])=0 ...显示的数为差分方程的输出y 这个函数和还有其它的用法,再次我就不说了 matlab的帮助中说的比较详细,你可以自己看一下 ...

相似回答