summaryrefslogtreecommitdiff
path: root/src/elementaryFunctions
diff options
context:
space:
mode:
authorjofret2008-06-16 15:32:15 +0000
committerjofret2008-06-16 15:32:15 +0000
commit5dcc4dcac910a4fc82d037e899f960ef2dc7cf3f (patch)
tree42f05e91adaa39275efeaa25d8dead865027a3ea /src/elementaryFunctions
parent88d321a2a30f1dda7c4e3ac2db5831614ef9bbe0 (diff)
downloadscilab2c-5dcc4dcac910a4fc82d037e899f960ef2dc7cf3f.tar.gz
scilab2c-5dcc4dcac910a4fc82d037e899f960ef2dc7cf3f.tar.bz2
scilab2c-5dcc4dcac910a4fc82d037e899f960ef2dc7cf3f.zip
10^p <=> exp(p * log(10))
Diffstat (limited to 'src/elementaryFunctions')
-rw-r--r--src/elementaryFunctions/exp10/Makefile.am5
-rw-r--r--src/elementaryFunctions/exp10/Makefile.in10
-rw-r--r--src/elementaryFunctions/exp10/cexp10s.c7
-rw-r--r--src/elementaryFunctions/exp10/testDoubleExp10.c11
-rw-r--r--src/elementaryFunctions/exp10/zexp10s.c9
5 files changed, 26 insertions, 16 deletions
diff --git a/src/elementaryFunctions/exp10/Makefile.am b/src/elementaryFunctions/exp10/Makefile.am
index a54ef9c6..99ebe78e 100644
--- a/src/elementaryFunctions/exp10/Makefile.am
+++ b/src/elementaryFunctions/exp10/Makefile.am
@@ -40,12 +40,15 @@ check_INCLUDES = -I $(top_builddir)/elementaryFunctions/includes \
check_LDADD = $(top_builddir)/type/libDoubleComplex.la \
$(top_builddir)/type/libFloatComplex.la \
$(top_builddir)/lib/lapack/libscilapack.la \
+ $(top_builddir)/elementaryFunctions/pow/libPow.la \
+ $(top_builddir)/elementaryFunctions/exp/libExp.la \
+ $(top_builddir)/elementaryFunctions/log/libLog.la \
+ $(top_builddir)/elementaryFunctions/log1p/libLog1p.la \
$(top_builddir)/elementaryFunctions/cos/libCos.la \
$(top_builddir)/elementaryFunctions/sin/libSin.la \
$(top_builddir)/elementaryFunctions/cosh/libCosh.la \
$(top_builddir)/elementaryFunctions/sinh/libSinh.la \
$(top_builddir)/elementaryFunctions/exp10/libExp10.la \
- $(top_builddir)/elementaryFunctions/exp/libExp.la \
$(top_builddir)/elementaryFunctions/sqrt/libSqrt.la \
$(top_builddir)/auxiliaryFunctions/abs/libAbs.la \
$(top_builddir)/auxiliaryFunctions/pythag/libPythag.la \
diff --git a/src/elementaryFunctions/exp10/Makefile.in b/src/elementaryFunctions/exp10/Makefile.in
index f6fa046a..29078f42 100644
--- a/src/elementaryFunctions/exp10/Makefile.in
+++ b/src/elementaryFunctions/exp10/Makefile.in
@@ -69,12 +69,15 @@ testDoubleExp10_OBJECTS = $(am_testDoubleExp10_OBJECTS)
am__DEPENDENCIES_1 = $(top_builddir)/type/libDoubleComplex.la \
$(top_builddir)/type/libFloatComplex.la \
$(top_builddir)/lib/lapack/libscilapack.la \
+ $(top_builddir)/elementaryFunctions/pow/libPow.la \
+ $(top_builddir)/elementaryFunctions/exp/libExp.la \
+ $(top_builddir)/elementaryFunctions/log/libLog.la \
+ $(top_builddir)/elementaryFunctions/log1p/libLog1p.la \
$(top_builddir)/elementaryFunctions/cos/libCos.la \
$(top_builddir)/elementaryFunctions/sin/libSin.la \
$(top_builddir)/elementaryFunctions/cosh/libCosh.la \
$(top_builddir)/elementaryFunctions/sinh/libSinh.la \
$(top_builddir)/elementaryFunctions/exp10/libExp10.la \
- $(top_builddir)/elementaryFunctions/exp/libExp.la \
$(top_builddir)/elementaryFunctions/sqrt/libSqrt.la \
$(top_builddir)/auxiliaryFunctions/abs/libAbs.la \
$(top_builddir)/auxiliaryFunctions/pythag/libPythag.la
@@ -243,12 +246,15 @@ check_INCLUDES = -I $(top_builddir)/elementaryFunctions/includes \
check_LDADD = $(top_builddir)/type/libDoubleComplex.la \
$(top_builddir)/type/libFloatComplex.la \
$(top_builddir)/lib/lapack/libscilapack.la \
+ $(top_builddir)/elementaryFunctions/pow/libPow.la \
+ $(top_builddir)/elementaryFunctions/exp/libExp.la \
+ $(top_builddir)/elementaryFunctions/log/libLog.la \
+ $(top_builddir)/elementaryFunctions/log1p/libLog1p.la \
$(top_builddir)/elementaryFunctions/cos/libCos.la \
$(top_builddir)/elementaryFunctions/sin/libSin.la \
$(top_builddir)/elementaryFunctions/cosh/libCosh.la \
$(top_builddir)/elementaryFunctions/sinh/libSinh.la \
$(top_builddir)/elementaryFunctions/exp10/libExp10.la \
- $(top_builddir)/elementaryFunctions/exp/libExp.la \
$(top_builddir)/elementaryFunctions/sqrt/libSqrt.la \
$(top_builddir)/auxiliaryFunctions/abs/libAbs.la \
$(top_builddir)/auxiliaryFunctions/pythag/libPythag.la \
diff --git a/src/elementaryFunctions/exp10/cexp10s.c b/src/elementaryFunctions/exp10/cexp10s.c
index 340e3f4c..479909a7 100644
--- a/src/elementaryFunctions/exp10/cexp10s.c
+++ b/src/elementaryFunctions/exp10/cexp10s.c
@@ -11,11 +11,8 @@
*/
#include "exp10.h"
+#include "pow.h"
floatComplex cexp10s(floatComplex z) {
- float real = creals(z);
- float imag = cimags(z);
-
- /* FIXME : Let's code... */
- return FloatComplex(real, imag);
+ return cpows(FloatComplex(10.0f, 0.0f), z);
}
diff --git a/src/elementaryFunctions/exp10/testDoubleExp10.c b/src/elementaryFunctions/exp10/testDoubleExp10.c
index 4fdb2d07..4f59dbbb 100644
--- a/src/elementaryFunctions/exp10/testDoubleExp10.c
+++ b/src/elementaryFunctions/exp10/testDoubleExp10.c
@@ -27,12 +27,21 @@ void dexp10sTest(void) {
printf("dexp10s(-PI/6) = %e\n", dexp10s(-DPI/6));
}
+void zexp10sTest(void) {
+ doubleComplex result;
+
+ printf(">> Double complex scalar\n");
+ result = zexp10s(DoubleComplex(1.0, 1.0));
+ printf("dexp10s(0) = %e + %e i\n", zreals(result), zimags(result));
+
+}
+
int testExp10(void) {
printf("\n>>>> Double 10-Base Exponential Tests\n");
dexp10sTest();
+ zexp10sTest();
/* FIXME : Implement some test here ... */
/*
- zexp10sTest();
dexp10aTest();
zexp10aTest();
*/
diff --git a/src/elementaryFunctions/exp10/zexp10s.c b/src/elementaryFunctions/exp10/zexp10s.c
index ef0aba8d..6d1ebfd6 100644
--- a/src/elementaryFunctions/exp10/zexp10s.c
+++ b/src/elementaryFunctions/exp10/zexp10s.c
@@ -11,13 +11,8 @@
*/
#include "exp10.h"
-#include "cos.h"
-#include "sin.h"
+#include "pow.h"
doubleComplex zexp10s(doubleComplex z) {
- double real = zreals(z);
- double imag = zimags(z);
-
- return DoubleComplex(dexp10s(real)*dcoss(imag),
- dexp10s(real)*dsins(imag));
+ return zpows(DoubleComplex(10.0, 0.0), z);
}