编写程序,求解含有边界条件(本质)的线性方程组
一、编写程序思路:拟编写一MATLAB 程序函数,来处理边界条件(a x k =), 将原线性方程组转化为形如:
???????
?????????----=????????????????????????????????a A b a A b a A b a a A b x x x x x A A A A A A A A A A A A A A A A 5254243231215432155545351454443
41
3534333115141311000000100 (边界条件为a x =2), 然后调用作业(一)中解线性方程组函数x=gauss(A,b),求解该线性方程组。
一、变量说明:
解含边界条件(a x k =)线性方程组Ax=b ,其中:
A -线性方程组系数矩阵;b -列向量
n -系数矩阵行数; m -系数矩阵列数; x -未知解向量 i -系数矩阵的行变量; k -解向量x 的下标变量;
三、基于MATLAB 软件平台编写程序,如下:
function tr=boundary(A,b,k,a) %定义边界条件处理函数
[n,m]=size(A); %获得系数矩阵A 的行、列数 A(k,:)=0; %系数矩阵第k 行化为0
for i=1:n %使向量b 转化为[b(i)-A(i,k)*a]向量 b(i)=b(i)-A(i,k)*a;
end
A(:,k)=0; %系数矩阵第k 列化为0
A(k,k)=1;b(k)=a; %使k x 所对应系数矩阵中主对角元
素化为1