10、MATLAB程序设计与应用刘卫国(第三版)课后实验十:方程数值求解

目录

 一、

 二、

 三、

 四、

 五、


一、

分别用3种不同的数值方法解线性方程组。

  ---------------------------------------示例代码---------------------------------------------

A=[6,5,-2,5;9,-1,4,-1;3,4,2,-2;3,-9,0,2];
b=[-4;13;1;11];
x1=A\b
x2=inv(A)*b
[L,U]=lu(A);
x3=U\(L\b)

---------------------------------------运行结果---------------------------------------------

 二、

求代数方程的数值解。

(1)3x +sin x-ex=0在x0=1.5附近的根。

(2)在给定的初值x0=1,y0=1,z0=1下,求方程组的数值解。

  ---------------------------------------示例代码---------------------------------------------

%1
z=fzero(@(x) 3*x+sin(x)-exp(x),1.5)
%2
function F=myfun(X)
x=X(1);
y=X(2);
z=X(3);
F(1)=sin(x)+y^2+log(z)-7;
F(2)=3*x+2^y-z^3+1;
F(3)=x+y+z-5;

---------------------------------------运行结果---------------------------------------------

 

 三、

(1)在(0,1)内的最小值。

(2)f(x1, x2)= 2x13 +4x1x23-10x1x2+x22在[0, 0]附近的最小值点和最小值。

   ---------------------------------------示例代码---------------------------------------------

%1
f=@(x) (x^3+cos(x)+x*log(x))/exp(x);
fminbnd(f,0,1)
%2
function f=test10_3_2(u)
x1=u(1);
x2=u(2);
f=2*x1.^3+4*x1*x2.^3-10*x1.*x2+x2.^2;

---------------------------------------运行结果---------------------------------------------

 

 四、

求微分方程的数值解。

    ---------------------------------------示例代码---------------------------------------------

function yy=ztf(x,y)
yy=[(5*y(1)-y(2))/x;y(1)];

[x,y]=ode23(@ztf,[0,5],[0;0])

五、

求微分方程组的数值解,并绘制解的曲线。

  ---------------------------------------示例代码---------------------------------------------

function yy = test10_5(~,y)
yy=[y(2)*y(3);-y(1)*y(3);-0.51*y(1)*y(2)];
end
[t,y]=ode23(@test10_5,[0,5],[0;1;1]);
plot3(y(:,1),y(:,2),y(:,3))

---------------------------------------运行结果---------------------------------------------

猜你喜欢

转载自blog.csdn.net/weixin_46698113/article/details/128292038