int main() {
array double complex a[3][3] = {complex(3,0), 0, 6,
0, 2, 1,
1, 0, 1};
array double complex a2[4][3] = {complex(3,2), 0, 6,
0, 2, 1,
1, 0, 1,
4, 5, 2};
array double complex b[3] = {2,
13,
25};
array double complex b2[4] = {2,
13,
25,
1};
array double complex x[3], x2[4];
int status;
llsqsolve(x, a, b);
printf("llsqsolve(x, a,b) = \n%f\n", x);
llsqsolve(x2, a2, b2);
printf("llsqsolve(x2, a2,b2) = \n%f\n", x2);
status = llsqsolve(x, a, b);
if(status == 0)
printf("llsqsolve(x,a,b) is ok\n");
else
printf("error: numerical error in llsqsolve()\n");
}
llsqsolve(x, a,b) =
complex(49.333333,0.000000) complex(18.666667,0.000000) complex(-24.333333,0.000000)
llsqsolve(x2, a2,b2) =
complex(-2.168462,3.047992) complex(1.264447,-1.755142) complex(3.141691,-0.838394)
complex(-26.154553,0.679496)
llsqsolve(x,a,b) is ok