1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
|
/*
* Copyright (c) 2010 by
* Ralf Corsepius, Ulm/Germany. All rights reserved.
*
* Permission to use, copy, modify, and distribute this software
* is freely granted, provided that this notice is preserved.
*/
/*
* Try to compile and link against POSIX complex math routines.
*/
#include <complex.h>
#include <stdio.h>
void
docomplexf (void)
{
#ifndef NO_FLOAT
complex float ca, cb, cc;
float f1;
ca = 1.0 + 1.0 * I;
cb = 1.0 - 1.0 * I;
f1 = cabsf (ca);
fprintf (stdout, "cabsf : %f\n", f1);
cc = cacosf (ca);
fprintf (stdout, "cacosf : %f %fi\n", crealf (cc),
cimagf (cc));
cc = cacoshf (ca);
fprintf (stdout, "cacoshf: %f %fi\n", crealf (cc),
cimagf (cc));
f1 = cargf (ca);
fprintf (stdout, "cargf : %f\n", f1);
cc = casinf (ca);
fprintf (stdout, "casinf : %f %fi\n", crealf (cc),
cimagf (cc));
cc = casinhf (ca);
fprintf (stdout, "casinhf: %f %fi\n", crealf (cc),
cimagf (cc));
cc = catanf (ca);
fprintf (stdout, "catanf : %f %fi\n", crealf (cc),
cimagf (cc));
cc = catanhf (ca);
fprintf (stdout, "catanhf: %f %fi\n", crealf (cc),
cimagf (cc));
cc = ccosf (ca);
fprintf (stdout, "ccosf : %f %fi\n", crealf (cc),
cimagf (cc));
cc = ccoshf (ca);
fprintf (stdout, "ccoshf : %f %fi\n", crealf (cc),
cimagf (cc));
cc = cexpf (ca);
fprintf (stdout, "cexpf : %f %fi\n", crealf (cc),
cimagf (cc));
f1 = cimagf (ca);
fprintf (stdout, "cimagf : %f\n", f1);
cc = clogf (ca);
fprintf (stdout, "clogf : %f %fi\n", crealf (cc),
cimagf (cc));
cc = conjf (ca);
fprintf (stdout, "conjf : %f %fi\n", crealf (cc),
cimagf (cc));
cc = cpowf (ca, cb);
fprintf (stdout, "cpowf : %f %fi\n", crealf (cc),
cimagf (cc));
cc = cprojf (ca);
fprintf (stdout, "cprojf : %f %fi\n", crealf (cc),
cimagf (cc));
f1 = crealf (ca);
fprintf (stdout, "crealf : %f\n", f1);
cc = csinf (ca);
fprintf (stdout, "csinf : %f %fi\n", crealf (cc),
cimagf (cc));
cc = csinhf (ca);
fprintf (stdout, "csinhf : %f %fi\n", crealf (cc),
cimagf (cc));
cc = csqrtf (ca);
fprintf (stdout, "csqrtf : %f %fi\n", crealf (cc),
cimagf (cc));
cc = ctanf (ca);
fprintf (stdout, "ctanf : %f %fi\n", crealf (cc),
cimagf (cc));
cc = ctanhf (ca);
fprintf (stdout, "ctanhf : %f %fi\n", crealf (cc),
cimagf (cc));
#endif
}
|