int main() { array double x[3][3]={1,2,3, 3,4,5, 6,7,8}; 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]; expm(y,x); printf("x = \n%f",x); printf("y = \n%f",y); printf("\n"); expm(zy,zx); printf("zx = \n%5.1f",zx); printf("zy = \n%5.1f",zy); }
x = 1.000000 2.000000 3.000000 3.000000 4.000000 5.000000 6.000000 7.000000 8.000000 y = 157372.953093 200034.605129 242697.257164 290995.910241 369883.552084 448769.193928 491431.845963 624654.472518 757878.099072 zx = complex( 1.0, 1.0) complex( 2.0, 2.0) complex( 0.0, 0.0) complex( 3.0, 0.0) complex( 4.0, 1.0) complex( 2.0, 5.0) complex( 0.0, 0.0) complex( 0.0, 0.0) complex( 0.0, 0.0) zy = complex(-44.9, 56.8) complex(-87.5, 70.9) complex(-101.5,-18.9) complex(-12.5,118.7) complex(-57.4,175.5) complex(-155.5, 67.8) complex( 0.0, 0.0) complex( 0.0, 0.0) complex( 1.0, 0.0)