int main() {
array double x[3][3]={0.8,0.2,0.1,
0.2,0.7,0.3,
0.1,0.3,0.6};
array double complex zx[3][3]={complex(1,1),complex(2,2),0,
3,complex(4,1),complex(2,5),
0,0,0};
array double complex zy[3][3];
array double y[3][3];
sqrtm(y,x);
printf("x = \n%5.3f",x);
printf("y = \n%5.3f",y);
printf("\n");
sqrtm(zy,zx);
printf("zx = \n%5.3f",zx);
printf("zy = \n%5.3f",zy);
}
x =
0.800 0.200 0.100
0.200 0.700 0.300
0.100 0.300 0.600
y =
0.886 0.113 0.048
0.113 0.807 0.189
0.048 0.189 0.750
zx =
complex(1.000,1.000) complex(2.000,2.000) complex(0.000,0.000)
complex(3.000,0.000) complex(4.000,1.000) complex(2.000,5.000)
complex(0.000,0.000) complex(0.000,0.000) complex(0.000,0.000)
zy =
complex(0.690,0.818) complex(1.003,0.353) complex(-3.155,0.649)
complex(1.017,-0.488) complex(1.708,0.331) complex(3.068,1.046)
complex(0.000,0.000) complex(0.000,0.000) complex(0.000,0.000)