## linsolve time-consuming

### Fikret Dogru (view profile)

on 22 Jun 2019
Latest activity Commented on by Torsten

on 27 Jun 2019

### Stephan (view profile)

Hello all,
Here is my code and it is running more than 2 days. Z1, Z2, A, B, D and E are known 1 X 1.000.000 vector and C and F are constant values 1X1. I am trying to estimate X and Y but the program is still working. Is there any chance to find when will it finish with these matrices? Any help will be great. Thanx all.
syms X Y
Z1=X.*A-Y.*B*C;
Z2=X.*D-Y.*E*F;
[A,B]=equationsToMatrix([Z1,Z2], [X,Y]);
X = linsolve(A,B);

### Stephan (view profile)

on 23 Jun 2019

Get rid of symbolic calculation - this makes code very slow and solve numeric:
clear X Y
% This works if your values are of size 1 x 1.000.000
X = linsolve([A', (-B.*C)'; D.' (-E.*F)'],[Z1'; Z2'])

Fikret Dogru

### Fikret Dogru (view profile)

on 27 Jun 2019
Thanks Stephan,
it helped but which method is this? It is the first time I have seen solving problem like that.
Fikret
Stephan

### Stephan (view profile)

on 27 Jun 2019
You should thank Torsten - but here is an explaination of what he did:
syms X Y A B C D E F Z1 Z2
eq(1) = Z1==X.*A-Y.*B*C;
eq(2) = Z2==X.*D-Y.*E*F;
sol = solve(eq,[X,Y]);
sol.X
sol.Y
Torsten

### Torsten (view profile)

on 27 Jun 2019
@ Fikret Dogru:
The method is called "Cramer's rule".