function [v1 v2 v3 v4]=resistor_solve(r12,r13,r14,r23,r25,r34,r35,r45,vs) r=[r12,r13,r14,r23,r25,r34,r35,r45] if sum(r>zeros(1,8))<8 fprintf('non-negative resistor values\n'); else g=1./r; G=[g(1)+g(2)+g(3),-g(1),-g(2),-g(3);-g(1), g(1)+g(4)+g(5),-g(4),0;-g(2),-g(4),g(2)+g(4)+g(6)+g(7),-g(6);-g(3),0,-g(6),g(3)+g(6)+g(8)]; c=[0 0 g(7)*vs 0]'; v=G\c; v1=v(1); v2=v(2); v3=v(3); v4=v(4); end