#define N 2 #define M 3 double complex func(double complex x) { return x*x; } int main() { array float complex y2[N][M], x2[N][M]; /* diff data types, diff dim */ array int mask1[N][M] = {1, 0, 1, 0, 1, 1}; linspace(x2, 1, N*M); x2[1][2]=complex(2,3); cfevalarray(y2, func, x2); printf("y2 = %5.2f\n", y2); cfevalarray(y2, func, x2, mask1, -1); printf("y2 = %5.2f\n", y2); }
y2 = complex( 1.00, 0.00) complex( 4.00, 0.00) complex( 9.00, 0.00) complex(16.00, 0.00) complex(25.00, 0.00) complex(-5.00,12.00) y2 = complex( 1.00, 0.00) complex(-1.00, 0.00) complex( 9.00, 0.00) complex(-1.00, 0.00) complex(25.00, 0.00) complex(-5.00,12.00)