[COLOR=#a020f0]program[/color] complex_function
[COLOR=#2e8b57][b]implicit[/b][/color] [COLOR=#2e8b57][b]none[/b][/color]
[COLOR=#2e8b57][b] real[/b][/color], [COLOR=#2e8b57][b]parameter[/b][/color] :: pi [COLOR=#804040][b]=[/b][/color] [COLOR=#008080]acos[/color]([COLOR=#804040][b]-[/b][/color][COLOR=#ff00ff]1.0[/color])
[COLOR=#2e8b57][b] real[/b][/color] :: re_Z, im_Z
[COLOR=#2e8b57][b]complex[/b][/color] :: Z, ZRSLT, cacos
[COLOR=#2e8b57][b]complex[/b][/color], [COLOR=#2e8b57][b]parameter[/b][/color] :: J [COLOR=#804040][b]=[/b][/color] ([COLOR=#ff00ff]0.0[/color], [COLOR=#ff00ff]1.0[/color])
[COLOR=#0000ff]! complex arccos(z)[/color]
cacos (Z) [COLOR=#804040][b]=[/b][/color] [COLOR=#804040][b]-[/b][/color]J [COLOR=#804040][b]*[/b][/color] [COLOR=#008080]clog[/color](Z [COLOR=#804040][b]+[/b][/color] J[COLOR=#804040][b]*[/b][/color][COLOR=#008080]csqrt[/color]([COLOR=#ff00ff]1[/color] [COLOR=#804040][b]-[/b][/color] Z[COLOR=#804040][b]*[/b][/color]Z))
[COLOR=#0000ff]! real argument[/color]
Z [COLOR=#804040][b]=[/b][/color] ([COLOR=#804040][b]-[/b][/color][COLOR=#ff00ff]1[/color],[COLOR=#ff00ff]0[/color])
ZRSLT [COLOR=#804040][b]=[/b][/color] cacos(Z)
[COLOR=#804040][b]write[/b][/color]([COLOR=#804040][b]*[/b][/color],[COLOR=#ff00ff]100[/color]), Z, ZRSLT
Z [COLOR=#804040][b]=[/b][/color] ([COLOR=#804040][b]-[/b][/color][COLOR=#ff00ff]0.5[/color],[COLOR=#ff00ff]0[/color])
ZRSLT [COLOR=#804040][b]=[/b][/color] cacos(Z)
[COLOR=#804040][b]write[/b][/color]([COLOR=#804040][b]*[/b][/color],[COLOR=#ff00ff]100[/color]), Z, ZRSLT
Z [COLOR=#804040][b]=[/b][/color] ([COLOR=#ff00ff]0[/color],[COLOR=#ff00ff]0[/color])
ZRSLT [COLOR=#804040][b]=[/b][/color] cacos(Z)
[COLOR=#804040][b]write[/b][/color]([COLOR=#804040][b]*[/b][/color],[COLOR=#ff00ff]100[/color]), Z, ZRSLT
Z [COLOR=#804040][b]=[/b][/color] ([COLOR=#ff00ff]0.5[/color],[COLOR=#ff00ff]0[/color])
ZRSLT [COLOR=#804040][b]=[/b][/color] cacos(Z)
[COLOR=#804040][b]write[/b][/color]([COLOR=#804040][b]*[/b][/color],[COLOR=#ff00ff]100[/color]), Z, ZRSLT
Z [COLOR=#804040][b]=[/b][/color] ([COLOR=#ff00ff]1[/color],[COLOR=#ff00ff]0[/color])
ZRSLT [COLOR=#804040][b]=[/b][/color] cacos(Z)
[COLOR=#804040][b]write[/b][/color]([COLOR=#804040][b]*[/b][/color],[COLOR=#ff00ff]100[/color]), Z, ZRSLT
[COLOR=#0000ff]! complex argument[/color]
Z [COLOR=#804040][b]=[/b][/color] ([COLOR=#ff00ff]0[/color],[COLOR=#804040][b]-[/b][/color][COLOR=#ff00ff]1[/color])
ZRSLT [COLOR=#804040][b]=[/b][/color] cacos(Z)
[COLOR=#804040][b]write[/b][/color]([COLOR=#804040][b]*[/b][/color],[COLOR=#ff00ff]100[/color]), Z, ZRSLT
re_Z [COLOR=#804040][b]=[/b][/color] [COLOR=#008080]cos[/color](pi[COLOR=#804040][b]/[/b][/color][COLOR=#ff00ff]4.0[/color])
im_Z [COLOR=#804040][b]=[/b][/color] [COLOR=#008080]sin[/color](pi[COLOR=#804040][b]/[/b][/color][COLOR=#ff00ff]4.0[/color])
Z [COLOR=#804040][b]=[/b][/color] [COLOR=#008080]cmplx[/color](re_Z, im_Z)
ZRSLT [COLOR=#804040][b]=[/b][/color] cacos(Z)
[COLOR=#804040][b]write[/b][/color]([COLOR=#804040][b]*[/b][/color],[COLOR=#ff00ff]100[/color]), Z, ZRSLT
re_Z [COLOR=#804040][b]=[/b][/color] [COLOR=#008080]cos[/color](pi[COLOR=#804040][b]/[/b][/color][COLOR=#ff00ff]6.0[/color])
im_Z [COLOR=#804040][b]=[/b][/color] [COLOR=#008080]sin[/color](pi[COLOR=#804040][b]/[/b][/color][COLOR=#ff00ff]6.0[/color])
Z [COLOR=#804040][b]=[/b][/color] [COLOR=#008080]cmplx[/color](re_Z, im_Z)
ZRSLT [COLOR=#804040][b]=[/b][/color] cacos(Z)
[COLOR=#804040][b]write[/b][/color]([COLOR=#804040][b]*[/b][/color],[COLOR=#ff00ff]100[/color]), Z, ZRSLT
Z [COLOR=#804040][b]=[/b][/color] ([COLOR=#ff00ff]0[/color],[COLOR=#ff00ff]1[/color])
ZRSLT [COLOR=#804040][b]=[/b][/color] cacos(Z)
[COLOR=#804040][b]write[/b][/color]([COLOR=#804040][b]*[/b][/color],[COLOR=#ff00ff]100[/color]), Z, ZRSLT
[COLOR=#6a5acd]100[/color] [COLOR=#804040][b]format[/b][/color] ([COLOR=#ff00ff]'Arccos('[/color],[COLOR=#008080]f6.3[/color],[COLOR=#ff00ff]' + J*'[/color],[COLOR=#008080]f6.3[/color],[COLOR=#ff00ff]') = '[/color],[COLOR=#008080]f10.8[/color],[COLOR=#ff00ff]' + J*'[/color],[COLOR=#008080]f10.8[/color])
[COLOR=#a020f0]end program[/color] complex_function