test_complex.c z=(1.5,-3.5) z=(1.5,-3.5) real(z) 1.5 =1.5 imag(z) -3.5 =-3.5 cxconj(z) (1.5,3.5) =(1.5,3.5) cxneg(z) (-1.5,3.5) =(-1.5,3.5) cxconj(cxneg(z)) (-1.5,-3.5) =(-1.5,-3.5) cxabs(z) =3.80789 cxarg(z) =-1.1659 cxadd(z,z) =(3.-7) cxsub(z,z/2.0) =(0.75,-1.75) cxmul(z,z) = (-10,-10.5) cxdiv(z*z,z) = (1.5,-3.5) cxsqrt(z*z) = (1.5,-3.5) cxsqrt(1.5,-3.5)=(1.62909,-1.07422), squared=(1.5,-3.5) cxsqrt(1.5,3.5)=(1.62909,1.07422), squared=(1.5,3.5) cxsqrt(-1.5,3.5)=(1.07422,1.62909), squared=(-1.5,3.5) cxsqrt(-1.5,-3.5)=(1.07422,-1.62909), squared=(-1.5,-3.5) cxexp(z) = (-4.19691,1.5721) cxlog(z) = (1.33707,-1.1659) z=(1.5,-3.5), cxlog(cxexp(z)) = (1.5,2.78319) z=(1.5,-3.5), cxexp(cxlog(z)) = (1.5,-3.5) cxexp(z) = (-4.19691,-1.5721) cxlog(z) = (1.33707,1.1659) z=(1.5,3.5), cxlog(cxexp(z)) = (1.5,-2.78319) z=(1.5,3.5), cxexp(cxlog(z)) = (1.5,3.5) cxexp(z) = (-0.208952,-0.0782703) cxlog(z) = (1.33707,1.97569) z=(-1.5,3.5), cxlog(cxexp(z)) = (-1.5,-2.78319) z=(-1.5,3.5), cxexp(cxlog(z)) = (-1.5,3.5) cxexp(z) = (-0.208952,0.0782703) cxlog(z) = (1.33707,-1.97569) z=(-1.5,-3.5), cxlog(cxexp(z)) = (-1.5,2.78319) z=(-1.5,-3.5), cxexp(cxlog(z)) = (-1.5,-3.5) cxsin(z) = (16.5313,-1.17018) cxcos(z) = (1.17232,-16.5012) cxtan(z) = (0.141375,0.991782) cxatan(z) = (-1.33162,-0.0980105) cxsinh(z) = (-1.99398,0.825186) cxcosh(z) = (-2.20293,0.746916) cxtanh(z) = (0.925733,-0.0607109) cxatanh(z) = (0.0980105,-1.33162) random matrix A A[0][0]=(0.644295,0.791078) A[0][1]=(0.957703,0.665851) A[0][2]=(0.589843,0.122365) A[0][3]=(0.50605,0.486435) A[1][0]=(0.878225,0.175098) A[1][1]=(0.162039,0.324696) A[1][2]=(0.315824,0.383371) A[1][3]=(0.800055,0.0513358) A[2][0]=(0.586334,0.522317) A[2][1]=(0.125557,0.522647) A[2][2]=(0.370815,0.233734) A[2][3]=(0.841835,0.285705) A[3][0]=(0.327585,0.715257) A[3][1]=(0.868966,0.722727) A[3][2]=(0.833338,0.705529) A[3][3]=(0.190564,0.91469) random vector X A[0]=(0.41123,0.809925) A[1]=(0.783902,0.537561) A[2]=(0.578543,0.0366263) A[3]=(0.121769,0.566021) Y = A*X cxmvmul(n,A,X,Y) A[0]=(0.140106,2.322) A[1]=(0.408855,1.8174) A[2]=(-0.217684,1.82697) A[3]=(-0.190166,2.25107) cxsimeq(n,A,Y,XX) solve for XX=X check computed solution XX A[0]=(0.41123,0.809925) A[1]=(0.783902,0.537561) A[2]=(0.578543,0.0366263) A[3]=(0.121769,0.566021) TT=XX-X should be near zero A[0]=(1.66533e-16,-2.10942e-15) A[1]=(-8.88178e-16,1.22125e-15) A[2]=(1.88738e-15,-7.14706e-16) A[3]=(-8.18789e-16,1.88738e-15) norm of all zero vector near zero 8.77585e-08 YY=A*X cxmvmul(n,A,XX,YY) YY is A[0]=(0.140106,2.322) A[1]=(0.408855,1.8174) A[2]=(-0.217684,1.82697) A[3]=(-0.190166,2.25107) check computed solution YY-Y should be near zero A[0]=(0,0) A[1]=(5.55112e-17,-2.22045e-16) A[2]=(1.38778e-16,0) A[3]=(5.55112e-17,0) norm of all zero vector near zero 2.0571e-08 cxinv(n,A,AA) is AA A[0][0]=(4.60804,1.92241) A[0][1]=(6.43544,-2.27089) A[0][2]=(-7.1662,4.12984) A[0][3]=(-3.18778,-1.2661) A[1][0]=(-1.95053,-2.98118) A[1][1]=(-4.66475,0.753665) A[1][2]=(5.00797,-1.82406) A[1][3]=(1.99173,1.97764) A[2][0]=(0.234672,4.58685) A[2][1]=(4.28883,1.46683) A[2][2]=(-5.73311,-1.79178) A[2][3]=(-0.0449562,-3.36664) A[3][0]=(-3.56638,-3.41763) A[3][1]=(-6.01382,0.576551) A[3][2]=(8.31072,-1.70674) A[3][3]=(2.16002,2.09054) should be identity matrix BB A[0][0]=(1,4.44089e-16) A[0][1]=(-4.44089e-16,-8.88178e-16) A[0][2]=(-8.88178e-16,4.44089e-16) A[0][3]=(-2.77556e-16,8.88178e-16) A[1][0]=(1.33227e-15,0) A[1][1]=(1,-4.16334e-16) A[1][2]=(0,-3.33067e-16) A[1][3]=(2.22045e-16,0) A[2][0]=(0,0) A[2][1]=(-8.88178e-16,-6.66134e-16) A[2][2]=(1,-4.44089e-16) A[2][3]=(2.22045e-16,0) A[3][0]=(4.44089e-16,4.44089e-16) A[3][1]=(-6.66134e-16,-8.88178e-16) A[3][2]=(-4.44089e-16,0) A[3][3]=(1,0) should be all zero matrix inv(A)*A-I A[0][0]=(1.11022e-15,4.44089e-16) A[0][1]=(-4.44089e-16,-8.88178e-16) A[0][2]=(-8.88178e-16,4.44089e-16) A[0][3]=(-2.77556e-16,8.88178e-16) A[1][0]=(1.33227e-15,0) A[1][1]=(8.88178e-16,-4.16334e-16) A[1][2]=(0,-3.33067e-16) A[1][3]=(2.22045e-16,0) A[2][0]=(0,0) A[2][1]=(-8.88178e-16,-6.66134e-16) A[2][2]=(8.88178e-16,-4.44089e-16) A[2][3]=(2.22045e-16,0) A[3][0]=(4.44089e-16,4.44089e-16) A[3][1]=(-6.66134e-16,-8.88178e-16) A[3][2]=(-4.44089e-16,0) A[3][3]=(0,0) norm of all zero matrix near zero 1.07183e-07 cxdet(n,A)=(-0.0184326,0.0766478) cxdet(inv(A))=(-2.966,-12.3334) and product (1,-8.04573e-16) end test_complex.c