第三次数学实验作业

1、写出求f(x)=2*x^2+5*x-1=0在x0=-2附近根,附完整的实现代码;

2、求线性方程组的解

 

1.---------------函数的使用
clear;clc;close all;
f=@(x)(2.*x.^2+5.*x-1);
x=-10:0.1:10;
y=f(x);
plot(x,y,'r');
hold on;
fsolve(f,-2)
-----------------牛顿切线迭代
clear;clc;close all;
syms x
f=@(x)(2.*x.^2+5.*x-1);
x0=-2;
df=@(x)(4*x + 5);
x=x0;%初值
delta=1;
n=0;%迭代次数,下同
while abs(delta)>1e-6
delta=f(x)/df(x);
x=x-delta;
n=n+1;
end
x
n
fsolve(f,-2)
------------------二分迭代(可能有bug)
clear;clc;close all;
f=@(x)(2.*x.^2+5.*x-1);
x=-10:0.1:10;
y=f(x);
plot(x,y,'r');
hold on;
fsolve(f,-2)
disp('锁定范围-3到-2')
a=-3;b=-2;
c=0;
for i=1:100  %迭代100代
    c=(a+b)*0.5;
    if(f(c)==0)
        c;
    end
    if(f(c).*f(a)<0)
        b=c;
    end
    if(f(b).*f(c)<0)
        a=c;
    end
end
c


2.---------------
clear;clc;close all;
a=[6,5,-2,5;9,-1,4,-1;3,4,2,-2;3,-9,0,2];
b=[-4;13;1;11];
c=[a,b];
rank(a)
rank(c)
if(rank(a)==rank(c)&&rank(a)<4)
    z=null(a)
    x=pinv(a)*b
end
if(rank(a)==rank(c)&&rank(a)==4)
    x=pinv(a)*b
end

  • 6
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值