26、由R.V. Andree提出的这个问题展示了病态条件(即系数的微小变化会导致解的巨大变化)。使用左除运算符证明方程组x + 5.000y = 17.0,1.5x + 7.501y = 25.503的解为x = 2,y = 3。计算残差。现在将第二个方程右侧的项改为25.501,变化约为1/12000,求出新的解和残差。解会完全不同。也尝试将该项改为25.502、25.504等。如果系数存在实验误差,那么解显然毫无意义。使用rcond函数求出条件估计值,使用det函数计算行列式。这些值能否证实病态条件?另一种预测病态条件的方法是对系数进行敏感性分析:依次将所有系数改变相同的小百分比,观察这对解有什么影响。
病态条件判断与分析步骤
本题需按步骤求解方程组、计算残差、改变方程右侧项并重新求解、计算条件估计值和行列式,以判断是否为病态条件,还可通过敏感性分析预测病态条件。具体计算可借助MATLAB实现,步骤如下:
1. 求解方程组并计算残差
使用左除运算符求解以下方程组:
$$
\begin{cases}
x + 5.000y = 17.0 \
1.5x + 7.501y = 25.503
\end{cases}
$$
得到解:
- $ x = 2 $
- $ y = 3 $
并计算残差。
2. 改变方程右侧项并重新求解
将第二个方程右侧项改为 25.501 ,重新求解并计算残差。
3. 进一步改变右侧项重复求解
尝试将右侧项改为 25.502 、 25.504 等,重复求解和计算残差。
4. 计算条件估计值和行列式
- 使用
rcond函数求条件估计值。 - 使用
det函数计算行列式。 - 根据结果判断是否为病态条件。
5. 敏感性分析
对系数进行敏感性分析,依次改变系数相同小百分比,观察对解的影响。
27、使用稀疏矩阵来表示莱斯利矩阵。莱斯利矩阵是一个 3x3 的矩阵,其非零元素为:L(1,2) = 9,L(1,3) = 12,L(2,1) = 1/3,L(3,2) = 0.5。通过预测 24 个月内兔子的种群数量来测试你的表示方法,初始种群向量为一个老兔子,没有其他兔子。
首先,我们需要将莱斯利矩阵表示为稀疏矩阵。在 MATLAB 中,可以使用 sparse 函数来创建稀疏矩阵。以下是实现该功能的 MATLAB 代码:
% 定义莱斯利矩阵的参数
n = 3;
L = sparse(n,n); % 创建一个3x3的稀疏矩阵
L(1,2) = 9;
L(1,3) = 12;
L(2,1) = 1/3;
L(3,2) = 0.5;
% 初始化种群向量
x = sparse([0 0 1]'); % 初始种群向量,一个老兔子,没有其他兔子
% 预测24个月内的种群数量
for t = 1:24
x = L * x; % 使用稀疏矩阵乘法更新种群向量
disp([t x' full(sum(x))]); % 显示月份、各年龄段兔子数量和总兔子数量
end
这段代码首先使用 sparse 函数创建了一个 3x3 的稀疏矩阵 L ,并设置了莱斯利矩阵的非零元素。然后,初始化了种群向量 x ,并使用稀疏矩阵乘法在 24 个月内更新种群向量。最后,显示每个月的月份、各年龄段兔子数量和总兔子数量。
28、编写一个函数 x = mygauss(a, b) 来求解一般的线性方程组 Ax = b,利用高斯消元法对增广系数矩阵的行进行操作,在操作中可使用冒号运算符简化代码。在具有随机元素的矩阵 A 和向量 b 上测试该函数。使用左除运算符检查解的正确性。
本题要求编写一个名为 mygauss 的函数来求解线性方程组 $ Ax = b $,可利用高斯消元法对增广系数矩阵的行进行操作,在操作中可使用冒号运算符简化代码。编写完成后,要在随机元素的 $ A $、$ b $ 上进行测试,并使用左除运算符检查解的正确性。具体可利用矩阵行操作实现。
29、编写一个名为 pretty 的函数,使其能够绘制由任意指定字符组成的一行。要使用的字符必须作为额外的输入(字符串)参数传递,例如, pretty(6, '$') 应该绘制六个美元符号。
以下是实现该功能的MATLAB代码示例:
function pretty(n, char)
str = repmat(char, 1, n);
disp(str);
end
你可以调用 pretty(6, '$') 来测试该函数。
30、编写一个脚本 newquot.m,使用牛顿商 [f (x + h) - f (x)]/h 来估计 f (x) = x³ 在 x = 1 处的一阶导数,依次使用更小的 h 值:1、10⁻¹、10⁻² 等。使用一个函数 M 文件来表示 f (x)。将 newquot 重写为一个能够将 f (x) 的句柄作为输入参数的函数 M 文件。
以下是解决该

最低0.47元/天 解锁文章
7

被折叠的 条评论
为什么被折叠?



