【模型准备】设3?3图像中第一行3个点的灰度值依次为x1, x2, x3, 第二行3个点的灰度值依次为x4, x5, x6, 第三行3个点的灰度值依次为x7, x8, x9. 沿竖直方向的叠加值依次为1.5, 0.5, 1.5, 沿水平方向的叠加值依次为1, 1, 1.5, 沿右上方到左下方的叠加值依次为1, 0, 1, 0.5, 1. 确定x1, x2, …, x9的值.
【模型建立】由已知条件可得(含有11个方程, 9个未知数的)线性方程组
?x1?x2?x3?1??x4?x5?x6?1 ????x9?1【模型求解】在Matlab命令窗口输入以下命令
>> A = [1,1,1,0,0,0,0,0,0;0,0,0,1,1,1,0,0,0;0,0,0,0,0,0,1,1,1;
1,0,0,1,0,0,1,0,0;0,1,0,0,1,0,0,1,0;0,0,1,0,0,1,0,0,1; 1,0,0,0,0,0,0,0,0;0,1,0,1,0,0,0,0,0;0,0,1,0,1,0,1,0,0; 0,0,0,0,0,1,0,1,0;0,0,0,0,0,0,0,0,1];
>> b = [1;1;1.5;1.5;0.5;1.5;1;0;1;0.5;1]; >> x = A\\b; x’
Matlab执行后得
Warning: Rank deficient, rank = 8 tol = 4.2305e-015. ans =
1.0000 0.0000 0 -0.0000 0.5000 0.5000 0.5000 -0.0000 1.0000 可见上述方程组的解不唯一. 其中的一个特解为
x1 = 1, x2 = 0, x3 = 0, x4 = 0, x5 = 0.5, x6 = 0.5, x7 = 0.5, x8 = 0, x9 = 1.
【模型分析】上述结果表明, 仅有三个方向上的叠加值还不够.可以再增加从左上方到右下方的叠加值. 在实际情况下, 由于测量误差, 上述线性方程组可能是超定的. 这时可以将超定方程组的近似解作为重建的图像数据.
Matlab实验题
给定一个3?3图像的2个方向上的灰度叠加值: 沿左上方到右下方的灰度叠加值依次为0.8, 1.2, 1.7, 0.2, 0.3; 沿右上方到左下方的灰度叠加值依次为0.6, 0.2, 1.6, 1.2, 0.6.
(1) 建立可以确定网格数据的线性方程组, 并用Matlab求解. (2) 将网格数据乘以256, 再取整, 用Matlab绘制该灰度图像.
11
案例六. 平衡结构的梁受力计算
在桥梁、房顶、铁塔等建筑结构中, 涉及到各种各样的梁. 对这些梁进行受力分析是设计师、工程师经常做的事情.
图13埃菲尔铁塔全景 图14 埃菲尔铁塔局部
下面以双杆系统的受力分析为例, 说明如何研究梁上各铰接点处的受力情况. 【模型准备】在图15所示的双杆系统中, 已知杆1重G1 = 200牛顿, 长L1 = 2米, 与水平方向的夹角为?1 = ?/6, 杆2重G2 = 100牛顿, 长L2 = 2米, 与水平方向的夹角为?2 = ?/4. 三个铰接点A, B, C所在平面垂直于水平面. 求杆1, 杆2在铰接点处所受到的力.
C 杆1 A 杆2 ?/6 ?/4 B
图15双杆系统
【模型假设】假设两杆都是均匀的. 在铰接点处的受力情况如图16所示. 【模型建立】对于杆1:
水平方向受到的合力为零, 故N1 = N3,
竖直方向受到的合力为零, 故N2 + N4 = G1,
1以点A为支点的合力矩为零, 故(L1sin?1)N3 + (L1cos?1)N4 = (L1cos?1)G1.
2N4 N3 N2 A 杆1 N1 G1 图16 两杆受力情况
对于杆2类似地有
C C N8 G2 N5 N7 杆2 N6 B
12
1N5 = N7, N6 = N8 + G2, (L2sin?2)N7 = (L2cos?2)N8 + (L2cos?2)G2.
2此外还有N3 = N7, N4 = N8. 于是将上述8个等式联立起来得到关于N1, N2, …, N8的线性方程组:
?N1?N3?0?N?N?G?241 ????N4?N8?0【模型求解】在Matlab命令窗口输入以下命令
>> G1=200; L1=2; theta1=pi/6; G2=100; L2=sqrt(2); theta2=pi/4; >> A = [1,0,-1,0,0,0,0,0;0,1,0,1,0,0,0,0;
0,0,L1*sin(theta1),L1*cos(theta1),0,0,0,0;0,0,0,0,1,0,-1,0; 0,0,0,0,0,1,0,-1;0,0,0,0,0,0,L2*sin(theta2),-L2*cos(theta2); 0,0,1,0,0,0,-1,0;0,0,0,1,0,0,0,-1];
>> b = [0;G1;0.5*L1*cos(theta1)*G1;0;G2;0.5*L2*cos(theta2)*G2;0;0]; >> x = A\\b; x’ Matlab执行后得 ans =
95.0962 154.9038 95.0962 45.0962 95.0962 145.0962 95.0962 45.0962
【模型分析】最后的结果没有出现负值, 说明图16中假设的各个力的方向与事实一致. 如果结果中出现负值, 则说明该力的方向与假设的方向相反.
参考文献
陈怀琛, 高淑萍, 杨威, 工程线性代数, 北京: 电子工业出版社, 2007. 页码: 157- 158.
Matlab实验题
有一个平面结构如下所示, 有13条梁(图中标号的线段)和8个铰接点(图中标号的圈)联结在一起. 其中1号铰接点完全固定, 8号铰接点竖直方向固定, 并在2号, 5号和6号铰接点上, 分别有图示的10吨, 15吨和20吨的负载. 在静平衡的条件下,任何一个铰接点上水平和竖直方向受力都是平衡的. 已知每条斜梁的角度都是45o.
(1) 列出由各铰接点处受力平衡方程构成的线性方程组. (2) 用Matlab软件求解该线性方程组, 确定每条梁受力情况.
13
图17 一个平面结构的梁
14