matlab求助大神

2024-05-16 01:36

1. matlab求助大神

该问题为迭代式问题。运用matlab可以这样来解决。
1、确定迭代初值,即f(1)=0,f(2)=1,f(3)=3
2、确定迭代式,即
f(n)=f(n-1)+f(n-2)+f(n-3)
3、使用for循环语句,求解f(4)~f(100)值。
按上述方法编写程序代码,可以得到
f4=。。。
。。。
f100=。。。
执行结果

matlab求助大神

2. 求大神赐教:(用matlab解决)

%第一步:写出追赶法和gauss法的matlab程序,分别保存在M文件中
function x=zhuiganfa(A,d)
%首先说明:追赶法是适用于三对角矩阵的线性方程组求解的方法,并不适用于其他类型矩阵。
%定义三对角矩阵A的各组成单元。方程为Ax=d
%    b为A的对角线元素(1~n),a为-1对角线元素(2~n),c为+1对角线元素(1~n-1)。
%    A=[2  -1  0    0
%       -1  3  -2   0
%       0  -2  4   -3
%       0  0   -3   5]
a=[0; diag(A,-1)]';
c=[diag(A,1)]';
b=diag(A)';
n=length(b);
u0=0;y0=0;a(1)=0;
%“追”的过程
L(1)=b(1)-a(1)*u0;
y(1)=(d(1)-y0*a(1))/L(1);
u(1)=c(1)/L(1);
for i=2:(n-1)
    L(i)=b(i)-a(i)*u(i-1);
    y(i)=(d(i)-y(i-1)*a(i))/L(i);
    u(i)=c(i)/L(i);
end
L(n)=b(n)-a(n)*u(n-1);
y(n)=(d(n)-y(n-1)*a(n))/L(n);
%“赶”的过程
x(n)=y(n);
for i=(n-1):-1:1
    x(i)=y(i)-u(i)*x(i+1);
end
 
function [RA,RB,n,X]=gauss(A,b)
B=[A b]; n=length(b); RA=rank(A); 
RB=rank(B);zhica=RB-RA;
if zhica>0,
disp('请注意:因为RA~=RB,所以此方程组无解.')
return
end
if RA==RB
   if RA==n
disp('请注意:因为RA=RB=n,所以此方程组有唯一解.') 
 X=zeros(n,1); C=zeros(1,n+1);
      for p= 1:n-1
for k=p+1:n
             m= B(k,p)/ B(p,p); B(k,p:n+1)= B(k,p:n+1)-m* B(p,p:n+1);
end
end
         b=B(1:n,n+1);A=B(1:n,1:n); X(n)=b(n)/A(n,n);
      for q=n-1:-1:1
         X(q)=(b(q)-sum(A(q,q+1:n)*X(q+1:n)))/A(q,q);
      end
else
         disp('请注意:因为RA=RB<n,所以此方程组有无穷多解.')
end
end 
 
 
%第二步:首先构造矩阵A和b
n=20;
A=diag(repmat(-4,n,1),0)+diag(repmat(1,n-1,1),1)+diag(repmat(1,n-1,1),-1)
b=[-27; repmat(1,n-1,1)]
 
%第三步:比较计算的时间
tic
x0=gauss(A,b);
toc
tic
x1=zhuiganfa(A,b);
toc
 
%结果也给你吧,不同机器时间不一样
%n=20,前一个是gauss法 后一个是追赶法
Elapsed time is 0.006271 seconds.
Elapsed time is 0.007607 seconds.
 
%n=500,前一个是gauss法 后一个是追赶法
Elapsed time is 3.064019 seconds.
Elapsed time is 0.009059 seconds.

3. matlab难题,求教大神们

你好,答案如下所示。x = [200 250 300 400 500];y = [0.746 0.675 0.616 0.525 0.457];plot(x,y,'o')hold onz = polyfit(x,y,1)y2 = polyval(z,x);plot(x,y2,'r')z =   -0.0009    0.9168

希望你能够详细查看。如果你有不会的,你可以提问我有时间就会帮你解答。希望你好好学习。每一天都过得充实。

matlab难题,求教大神们

4. 求大神指点,matlab问题


5. matlab大神帮帮我

x=0:0.01:4;
y=sin(2*pi/2*x);
plot(x,y.*(y>=0))
axis equal
grid on


matlab大神帮帮我

6. matlab 大神求教

祝新年快乐,学习进步!
 
这个题本身并不困难,其实就是绘制二维曲线然后再加上标注。
 
1、对于固定的时间t=0, 4, 8,在同一张图上绘制温度沿金属球径向的分布。由于r是无因次量,所以取值在0-1之间,代码如下:
r=0:0.1:1;t=[0 4 8];[T,R]=meshgrid(t,r);Q=exp(0.2*T).*(1/3*T).*sin(3*R);plot(r,Q)legend('t=0','t=4','t=8')
 
2、对于固定的位置(半径)r = 0.1, 0.5, 1,在同一张图上绘制温度随时间变化的曲线。代码如下:
r=[0.1 0.5 1];t=0:0.1:10;[T,R]=meshgrid(t,r);Q=exp(0.2*T).*(1/3*T).*sin(3*R);plot(t,Q)legend('r=0.1','r=0.5','r=1',0)
 
不过,我觉得题中所给公式可能存在问题,请再仔细核实一下。

7. matlab高手求救

syms a d A B
[a,d]=solve('a*cos(A)-d*cos(B)=22.8','a*sin(A)-d*sin(B)=9.7');
A=40*pi/180;
B=155*pi/180;
a1=eval(a)
d1=eval(d)

更换不同的A和B的值就能计算出所有的a和d了
祝你学习愉快!

matlab高手求救

8. 急求matlab高手

列方程:
360+x1=260+x2
220+x2=292+x3
320+x3=357+x4
260+x4=251+x2
matlab中的求解过程如下:
A=[1 -1 0 0;0 1 -1 0;0 0 1 -1;1 0 0 -1];
b=[-100;72;37;9];
x=r\(q\b)
结果得到x=[169;269;197;160];
即x1=169;x2=269;x3=197;x4=160.