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