在MATLAB中求解线性方程组 [英] Solve Systems of Linear Equations in MATLAB

查看:110
本文介绍了在MATLAB中求解线性方程组的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有以下等式

T2+T4-3.615*T1=0;
T1+10+2*T5-5.752*T2=0;
T1+38+2*T5-4*T4=0;
83+T4+T2+10-4*T5=0;

我尝试了以下方法来找到T1,T2,T4,T5的值

i've tried the following to find the values of T1,T2,T4,T5

syms T1 T3 T4 T2 T5 positive
T2+T4-3.615*T1=0;
T1+10+2*T5-5.752*T2=0;
T1+38+2*T5-4*T4=0;
83+T4+T2+10-4*T5=0;
sol=solve(T1,T2,T3,T4)

但无法正常工作.

推荐答案

您有4个方程式和4个未知数.在MATLAB中,使用方程式AT = b可以很容易地解决此问题,其中 T = A\b .

You have 4 equations and 4 unknowns. This is very easily solved in MATLAB using the equation AT = b, where T = A\b.

首先将所有常数值移至RHS.然后,将等式重新排序为下面的形式(但是不要在MATLAB中写a11 = -3.615等,只是为了使其可视化,以便于在下面创建A矩阵更容易).如果您有更多的方程式和未知数,那么在MATLAB中创建矩阵之前,使用笔和纸进行此操作可能是最简单的,因为很容易弄错符号或忽略某个地方的值.

First move all the constant values over to the RHS. Then, reorder the equations to the form below (but don't write a11 = -3.615 etc in MATLAB, it's just to visualize it so that it's easier to create the A matrix below). If you have more equations and unknowns it might be easiest to do this with pen and paper before you create the matrix in MATLAB, as it's easy to get a sign wrong, or overlook a value somewhere.

a11*T1 + a12*T2 + a13*T3 + a14*T4 
a21*T1 + a22*T2 + a23*T3 + a24*T4
... and so on. 

使用值a11, a12 ... all the way to a44创建一个矩阵A.现在,您可以使用 \ 找到T.像这样:

Create a matrix A with the values a11, a12 ... all the way to a44. Now you can find the T's by using \ like this:

A = [-3.615  1       1    0;
     1      -5.752   0    2;
     1       0      -4    2;
     0       1       1   -4];
b = [0; -10; -38; -83];
T = A\b

T =  
   11.8878
   14.7558
   28.2188
   31.4936

这篇关于在MATLAB中求解线性方程组的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆