Index: trunk/psLib/src/math/psUnaryOp.c
===================================================================
--- trunk/psLib/src/math/psUnaryOp.c	(revision 10999)
+++ trunk/psLib/src/math/psUnaryOp.c	(revision 12431)
@@ -31,6 +31,6 @@
  *  @author Robert DeSonia, MHPCC
  *
- *  @version $Revision: 1.13 $ $Name: not supported by cvs2svn $
- *  @date $Date: 2007-01-09 22:38:53 $
+ *  @version $Revision: 1.14 $ $Name: not supported by cvs2svn $
+ *  @date $Date: 2007-03-14 00:39:50 $
  *
  *  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
@@ -45,5 +45,4 @@
  ******************************************************************************/
 #include <string.h>
-#include <complex.h>
 #include <math.h>
 #include <stdint.h>
@@ -123,7 +122,28 @@
 #define UNARY_TYPE(DIM,OUT,IN,OP) \
 switch (IN->type) { \
+case PS_TYPE_U8: \
+    DIM(OUT,IN,OP,U8); \
+    break; \
+case PS_TYPE_U16: \
+    DIM(OUT,IN,OP,U16); \
+    break; \
+case PS_TYPE_U32: \
+    DIM(OUT,IN,OP,U32); \
+    break; \
+case PS_TYPE_U64: \
+    DIM(OUT,IN,OP,U64); \
+    break; \
+case PS_TYPE_S8: \
+    DIM(OUT,IN,OP,S8); \
+    break; \
+case PS_TYPE_S16: \
+    DIM(OUT,IN,OP,S16); \
+    break; \
 case PS_TYPE_S32: \
     DIM(OUT,IN,OP,S32); \
     break; \
+case PS_TYPE_S64: \
+    DIM(OUT,IN,OP,S64); \
+    break; \
 case PS_TYPE_F32: \
     DIM(OUT,IN,OP,F32); \
@@ -131,31 +151,4 @@
 case PS_TYPE_F64: \
     DIM(OUT,IN,OP,F64); \
-    break; \
-case PS_TYPE_C32: \
-    DIM(OUT,IN,OP,C32); \
-    break; \
-case PS_TYPE_S8: \
-    DIM(OUT,IN,OP,C32); \
-    break; \
-case PS_TYPE_U8: \
-    DIM(OUT,IN,OP,C32); \
-    break; \
-case PS_TYPE_S16: \
-    DIM(OUT,IN,OP,C32); \
-    break; \
-case PS_TYPE_U16: \
-    DIM(OUT,IN,OP,C32); \
-    break; \
-case PS_TYPE_U32: \
-    DIM(OUT,IN,OP,C32); \
-    break; \
-case PS_TYPE_S64: \
-    DIM(OUT,IN,OP,C32); \
-    break; \
-case PS_TYPE_U64: \
-    DIM(OUT,IN,OP,C32); \
-    break; \
-case PS_TYPE_C64: \
-    DIM(OUT,IN,OP,C32); \
     break; \
 default: { \
@@ -174,111 +167,39 @@
 #define UNARY_OP(DIM,OUT,IN,OP) \
 if(!strncmp(OP, "abs", 3)) { \
-    if(PS_IS_PSELEMTYPE_COMPLEX(IN->type)) { \
-        UNARY_TYPE(DIM,OUT,IN,cabs((double complex)*i1)); \
-    } else { \
-        UNARY_TYPE(DIM,OUT,IN,fabs((double)*i1)); \
-    } \
+    UNARY_TYPE(DIM,OUT,IN,fabs((double)*i1)); \
 } else if(!strncmp(OP, "sqrt", 4)) { \
-    if(PS_IS_PSELEMTYPE_COMPLEX(IN->type)) { \
-        UNARY_TYPE(DIM,OUT,IN,csqrt((double complex)*i1)); \
-    } else { \
-        UNARY_TYPE(DIM,OUT,IN,sqrt((double)*i1)); \
-    } \
+    UNARY_TYPE(DIM,OUT,IN,sqrt((double)*i1)); \
 } else if(!strncmp(OP, "exp", 3)) { \
-    if(PS_IS_PSELEMTYPE_COMPLEX(IN->type)) { \
-        UNARY_TYPE(DIM,OUT,IN,cexp((double complex)*i1)); \
-    } else { \
-        UNARY_TYPE(DIM,OUT,IN,exp((double)*i1)); \
-    } \
+    UNARY_TYPE(DIM,OUT,IN,exp((double)*i1)); \
 } else if(!strncmp(OP, "ln", 2)) { \
-    if(PS_IS_PSELEMTYPE_COMPLEX(IN->type)) { \
-        UNARY_TYPE(DIM,OUT,IN,clog((double complex)*i1)); \
-    } else { \
-        UNARY_TYPE(DIM,OUT,IN,log((double)*i1)); \
-    } \
+    UNARY_TYPE(DIM,OUT,IN,log((double)*i1)); \
 } else if(!strncmp(OP, "ten", 3)) { \
-    if(PS_IS_PSELEMTYPE_COMPLEX(IN->type)) { \
-        UNARY_TYPE(DIM,OUT,IN,cpow(10.0,(double complex)*i1)); \
-    } else { \
-        UNARY_TYPE(DIM,OUT,IN,pow(10.0,(double)*i1)); \
-    } \
+    UNARY_TYPE(DIM,OUT,IN,pow(10.0,(double)*i1)); \
 } else if(!strncmp(OP, "log", 3)) { \
-    if(PS_IS_PSELEMTYPE_COMPLEX(IN->type)) { \
-        UNARY_TYPE(DIM,OUT,IN,clog((double complex)*i1)/log(10.0)); \
-    } else { \
-        UNARY_TYPE(DIM,OUT,IN,log10((double)*i1)); \
-    } \
+    UNARY_TYPE(DIM,OUT,IN,log10((double)*i1)); \
 } else if(!strncmp(OP, "sin", 3)) { \
-    if(PS_IS_PSELEMTYPE_COMPLEX(IN->type)) { \
-        UNARY_TYPE(DIM,OUT,IN,csin((double complex)*i1)); \
-    } else { \
-        UNARY_TYPE(DIM,OUT,IN,sin((double)*i1)); \
-    } \
+    UNARY_TYPE(DIM,OUT,IN,sin((double)*i1)); \
 } else if(!strncmp(OP, "dsin", 4)) { \
-    if(PS_IS_PSELEMTYPE_COMPLEX(IN->type)) { \
-        UNARY_TYPE(DIM,OUT,IN,csin((double complex)*i1*D2R)); \
-    } else { \
-        UNARY_TYPE(DIM,OUT,IN,sin((double)*i1*D2R)); \
-    } \
+    UNARY_TYPE(DIM,OUT,IN,sin((double)*i1*D2R)); \
 } else if(!strncmp(OP, "cos", 3)) { \
-    if(PS_IS_PSELEMTYPE_COMPLEX(IN->type)) { \
-        UNARY_TYPE(DIM,OUT,IN,ccos((double complex)*i1)); \
-    } else { \
-        UNARY_TYPE(DIM,OUT,IN,cos((double)*i1)); \
-    } \
+    UNARY_TYPE(DIM,OUT,IN,cos((double)*i1)); \
 } else if(!strncmp(OP, "dcos", 4)) { \
-    if(PS_IS_PSELEMTYPE_COMPLEX(IN->type)) { \
-        UNARY_TYPE(DIM,OUT,IN,ccos((double complex)*i1*D2R)); \
-    } else { \
-        UNARY_TYPE(DIM,OUT,IN,cos((double)*i1*D2R)); \
-    } \
+    UNARY_TYPE(DIM,OUT,IN,cos((double)*i1*D2R)); \
 } else if(!strncmp(OP, "tan", 3)) { \
-    if(PS_IS_PSELEMTYPE_COMPLEX(IN->type)) { \
-        UNARY_TYPE(DIM,OUT,IN,ctan((double complex)*i1)); \
-    } else { \
-        UNARY_TYPE(DIM,OUT,IN,tan((double)*i1)); \
-    } \
+    UNARY_TYPE(DIM,OUT,IN,tan((double)*i1)); \
 } else if(!strncmp(OP, "dtan", 4)) { \
-    if(PS_IS_PSELEMTYPE_COMPLEX(IN->type)) { \
-        UNARY_TYPE(DIM,OUT,IN,ctan((double complex)*i1*D2R)); \
-    } else { \
-        UNARY_TYPE(DIM,OUT,IN,tan((double)*i1*D2R)); \
-    } \
+    UNARY_TYPE(DIM,OUT,IN,tan((double)*i1*D2R)); \
 } else if(!strncmp(OP, "asin", 4)) { \
-    if(PS_IS_PSELEMTYPE_COMPLEX(IN->type)) { \
-        UNARY_TYPE(DIM,OUT,IN,casin((double complex)*i1)); \
-    } else { \
-        UNARY_TYPE(DIM,OUT,IN,asin((double)*i1)); \
-    } \
+    UNARY_TYPE(DIM,OUT,IN,asin((double)*i1)); \
 } else if(!strncmp(OP, "dasin", 5)) { \
-    if(PS_IS_PSELEMTYPE_COMPLEX(IN->type)) { \
-        UNARY_TYPE(DIM,OUT,IN,R2D*casin((double complex)*i1)); \
-    } else { \
-        UNARY_TYPE(DIM,OUT,IN,(R2D*asin((double)*i1))); \
-    } \
+    UNARY_TYPE(DIM,OUT,IN,(R2D*asin((double)*i1))); \
 } else if(!strncmp(OP, "acos", 4)) { \
-    if(PS_IS_PSELEMTYPE_COMPLEX(IN->type)) { \
-        UNARY_TYPE(DIM,OUT,IN,cacos((double complex)*i1)); \
-    } else { \
-        UNARY_TYPE(DIM,OUT,IN,acos((double)*i1)); \
-    } \
+    UNARY_TYPE(DIM,OUT,IN,acos((double)*i1)); \
 } else if(!strncmp(OP, "dacos", 5)) { \
-    if(PS_IS_PSELEMTYPE_COMPLEX(IN->type)) { \
-        UNARY_TYPE(DIM,OUT,IN,R2D*cacos((double complex)*i1)); \
-    } else { \
-        UNARY_TYPE(DIM,OUT,IN,R2D*acos((double)*i1)); \
-    } \
+    UNARY_TYPE(DIM,OUT,IN,R2D*acos((double)*i1)); \
 } else if(!strncmp(OP, "atan", 4)) { \
-    if(PS_IS_PSELEMTYPE_COMPLEX(IN->type)) { \
-        UNARY_TYPE(DIM,OUT,IN,catan((double complex)*i1)); \
-    } else { \
-        UNARY_TYPE(DIM,OUT,IN,atan((double)*i1)); \
-    } \
+    UNARY_TYPE(DIM,OUT,IN,atan((double)*i1)); \
 } else if(!strncmp(OP, "datan", 5)) { \
-    if(PS_IS_PSELEMTYPE_COMPLEX(IN->type)) { \
-        UNARY_TYPE(DIM,OUT,IN,R2D*catan((double complex)*i1)); \
-    } else { \
-        UNARY_TYPE(DIM,OUT,IN,R2D*atan((double)*i1)); \
-    } \
+    UNARY_TYPE(DIM,OUT,IN,R2D*atan((double)*i1)); \
 } else { \
     psError(PS_ERR_BAD_PARAMETER_VALUE, true, _("Specified operation, %s, is not supported."), OP); \
