summaryrefslogtreecommitdiff
path: root/src/c/elementaryFunctions
diff options
context:
space:
mode:
Diffstat (limited to 'src/c/elementaryFunctions')
-rw-r--r--src/c/elementaryFunctions/includes/isinf.h35
-rw-r--r--src/c/elementaryFunctions/interfaces/int_isinf.h20
-rw-r--r--src/c/elementaryFunctions/isinf/disinfs.c24
-rw-r--r--src/c/elementaryFunctions/isinf/sisinfs.c24
4 files changed, 103 insertions, 0 deletions
diff --git a/src/c/elementaryFunctions/includes/isinf.h b/src/c/elementaryFunctions/includes/isinf.h
new file mode 100644
index 0000000..6752c37
--- /dev/null
+++ b/src/c/elementaryFunctions/includes/isinf.h
@@ -0,0 +1,35 @@
+ /* Copyright (C) 2017 - IIT Bombay - FOSSEE
+
+ This file must be used under the terms of the CeCILL.
+ This source file is licensed as described in the file COPYING, which
+ you should have received as part of this distribution. The terms
+ are also available at
+ http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+ Author: Brijesh Gupta C R
+ Organization: FOSSEE, IIT Bombay
+ Email: toolbox@scilab.in
+ */
+
+#ifndef __ISINF_H__
+#define __ISINF_H__
+
+#include "dynlib_elementaryfunctions.h"
+#include "floatComplex.h"
+#include "doubleComplex.h"
+#include "types.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+char disinfs(double x);
+char sisinfs(float x);
+
+
+#ifdef __cplusplus
+} /* extern "C" */
+#endif
+
+
+#endif /* !__ISINF_H__ */
+
diff --git a/src/c/elementaryFunctions/interfaces/int_isinf.h b/src/c/elementaryFunctions/interfaces/int_isinf.h
new file mode 100644
index 0000000..9eefa65
--- /dev/null
+++ b/src/c/elementaryFunctions/interfaces/int_isinf.h
@@ -0,0 +1,20 @@
+ /* Copyright (C) 2017 - IIT Bombay - FOSSEE
+
+ This file must be used under the terms of the CeCILL.
+ This source file is licensed as described in the file COPYING, which
+ you should have received as part of this distribution. The terms
+ are also available at
+ http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+ Author: Brijesh Gupta C R
+ Organization: FOSSEE, IIT Bombay
+ Email: toolbox@scilab.in
+ */
+
+#ifndef __INT_ISINF_H__
+#define __INT_ISINF_H__
+
+#define d0isinfg0(in) disinfs(in)
+#define s0isinfg0(in) sisinfs(in)
+
+
+#endif /* !__INT_ISINF_H__ */
diff --git a/src/c/elementaryFunctions/isinf/disinfs.c b/src/c/elementaryFunctions/isinf/disinfs.c
new file mode 100644
index 0000000..1d94005
--- /dev/null
+++ b/src/c/elementaryFunctions/isinf/disinfs.c
@@ -0,0 +1,24 @@
+/* Copyright (C) 2016 - IIT Bombay - FOSSEE
+
+ This file must be used under the terms of the CeCILL.
+ This source file is licensed as described in the file COPYING, which
+ you should have received as part of this distribution. The terms
+ are also available at
+ http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+ Author: Brijesh Gupta C R
+ Organization: FOSSEE, IIT Bombay
+ Email: toolbox@scilab.in
+*/
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <math.h>
+#include "isinf.h"
+
+char disinfs(double x)
+{
+ char o = 'F';
+ if (x == INFINITY || x == - INFINITY)
+ o = 'T';
+ return o;
+}
diff --git a/src/c/elementaryFunctions/isinf/sisinfs.c b/src/c/elementaryFunctions/isinf/sisinfs.c
new file mode 100644
index 0000000..c36c0a5
--- /dev/null
+++ b/src/c/elementaryFunctions/isinf/sisinfs.c
@@ -0,0 +1,24 @@
+/* Copyright (C) 2016 - IIT Bombay - FOSSEE
+
+ This file must be used under the terms of the CeCILL.
+ This source file is licensed as described in the file COPYING, which
+ you should have received as part of this distribution. The terms
+ are also available at
+ http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
+ Author: Brijesh Gupta C R
+ Organization: FOSSEE, IIT Bombay
+ Email: toolbox@scilab.in
+*/
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <math.h>
+#include "isinf.h"
+
+char sisinfs(float x)
+{
+ char o = 'F';
+ if (x == INFINITY || x == - INFINITY)
+ o = 'T';
+ return o;
+}