没有合适的资源?快使用搜索试试~ 我知道了~
【MATLAB】实验五:数值微积分与方程数值求解.pdf
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 108 浏览量
2022-12-17
14:50:11
上传
评论
收藏 308KB PDF 举报
温馨提示
试读
11页
...
资源推荐
资源详情
资源评论
实验五 数值微积分与方程数值求解
一、实验目的
1. 掌握求数值导数和数值积分的方法。
2. 掌握代数方程数值求解的方法。
3. 掌握常微分方程数值求解的方法。
二、实验内容
要求:命令手工 ( )输入
1. 求函数在指定点的数值导数。
x x
2
x
3
f (x) 1 2x 3x
2
, x 1,2,3
0 2
解:需要建立 M 脚本文件:
clc
clear
x=1.0
i=1
f=inline('det([x x^2 x^3;1 2*x 3*x^2;0 2 6*x])') % 内联函数
while x<=3.01
g(i)=f(x); % 对于每个 x,计算 f(x)的行列式,然后赋给 g
i=i+1; % 为 g 增加一列做准备
x=x+0.01; % x 从 1.0 开始,以 0.01 的步长增加,一直到 3.01 为止。
end
g
t=1:0.01:3.01;
dx=diff(g)/0.01 %差分法近似求导
f1=dx(1) %x=1 的数值导数
f2=dx(101) %x=2 的数值导数
f3=dx(length(g)-1) %x=3 的数值导数 ,即 dx 的第 201 个(最后一个)元素值。
运行结果:
f1 =
6.0602
6x
f2 =
24.1202
f3 =
54.1802
2. 用数值方法求定积分。
(1)
I
1
(2)
I
2
2
0
cos t
2
4sin(2 t)
2
1dt
的近似值。
2
0
ln(1 x)
dt
2
1 x
解:M 文件:
clc;clear;
f=inline('sqrt(cos(t.^2)+4*sin(2*t).^2+1)') % 内联函数
I1=quad(f,0,2*pi) % quad( ) 函数是高精度的数值积分。
g=inline('log(1+x)./(1+x.^2)')
I2=quad(g,0,2*pi)
运行结果:
I1 =
10.4285
I2 =
0.9997
3. 分别用三种不同的数值方法解线性方程组。
6x 5y 2z 5u 4
9x y 4z u 13
3x 4 y 2z 2u 1
3x 9 y 2u 11
解:M 文件:
clc;clear;
A=[6 5 -2 5;9 -1 4 -1;3 4 2 -2;3 -9 0 2]
b=[-4 13 1 11]'
x=A\b % 第一种方法,左除
y=inv(A)*b % 第二种方法,求逆矩阵 A
-1
后,乘 b
[L,U]=lu(A) % 第三种方法,矩阵的三角分解
z=U\(L\b)
运行结果:
x =
0.6667
-1.0000
1.5000
-0.0000
y =
0.6667
-1.0000
1.5000
-0.0000
z =
0.6667
-1.0000
1.5000
-0.0000
4. 求非齐次线性方程组的通解。
2x
1
7x
2
3x
3
x
4
6
3x
1
5x
2
2x
3
2x
4
4
9x 4x x 7x 2
2 3 4
1
解:先建立 M 函数文件,然后命令窗口中写命令。
%% 此部分需要建立 M 函数文
function [x,y]=line_solution(A,b)
[m,n]=size(A);
y=[ ];
if norm(b)>0 %非齐次方程组,norm()函数是计算矩阵范数
if rank(A)==rank([A,b])
if rank(A)==n
disp('有唯一解 x');
x=A\b;
else
disp('有无穷个解,特解 x,基础解系 y');
x=A\b;
y=null(A,'r');
剩余10页未读,继续阅读
资源评论
G11176593
- 粉丝: 6643
- 资源: 3万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功