I need to solve a system of equations, without the syms command.
    8 views (last 30 days)
  
       Show older comments
    
    Petch Anuwutthinawin
 on 29 Jul 2021
  
    
    
    
    
    Edited: Cris LaPierre
    
      
 on 29 Jul 2021
            %I have a system of equations based off of Kirchoff law (e1-e6) that are
%all simultaneously true. The code works to solve for i4 which is the
%answer needed, but I have to do it without the syms command.
syms i1 i2 i3 i4 i5 i6
e1=v-R2*i2-R4*i4==0; %given equations 1-6
e2=-R2*i2+R1*i1+R3*i3==0;
e3=-R4*i4-R3*i3+R5*i5==0; 
e4=i6==i1+i2;
e5=i2+i3==i4;
e6=i1==i3+i5;
eqns=[e1,e2,e3,e4,e5,e6];
vars=[i1 i2 i3 i4 i5 i6];
[A,b] = equationsToMatrix(eqns,vars);
X=double(A\b);
i4=X(4)
%How do I change this code so I can do it without the syms command?
0 Comments
Accepted Answer
  Cris LaPierre
    
      
 on 29 Jul 2021
        8 Comments
  Cris LaPierre
    
      
 on 29 Jul 2021
				
      Edited: Cris LaPierre
    
      
 on 29 Jul 2021
  
			Sorry, I was thinking of using current loops. You can use nodes, too. You already have your equations. Just write them in matrix form. x contains the currents (i1-i6), A contains the value to multiply current by, and b contains the resulting value. Just keep track of how you multiply matrices (march across the row of A, and down the columns of x).
For example, you have the equation v-R2*i2-R4*i4==0. I'd rearrange this to be R2*i2+R4*i4=v. In matrix form, this is

To add one of your current equations, use 1s and 0s to create the math. For example, to add this equation: i6=i1+i2 to the matrix, I would rearrange it to be i1+i2-i6=0. In matrix form, that looks like this:

You have 6 unknowns, so you need six equations. Convert your remaining equations to matrix form, and then solve using left division.
More Answers (0)
See Also
Categories
				Find more on Symbolic Math Toolbox in Help Center and File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!


