summaryrefslogtreecommitdiff
path: root/src/elementaryFunctions/asinh/casinhs.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/elementaryFunctions/asinh/casinhs.c')
-rw-r--r--src/elementaryFunctions/asinh/casinhs.c32
1 files changed, 20 insertions, 12 deletions
diff --git a/src/elementaryFunctions/asinh/casinhs.c b/src/elementaryFunctions/asinh/casinhs.c
index c191de36..c2647ea8 100644
--- a/src/elementaryFunctions/asinh/casinhs.c
+++ b/src/elementaryFunctions/asinh/casinhs.c
@@ -1,18 +1,26 @@
/*
-** -*- C -*-
-**
-** casinhs.c
-** Made by Bruno JOFRET <bruno.jofret@inria.fr>
-**
-** Started on Fri Jan 5 11:29:45 2007 jofret
-** Last update Thu Sep 6 11:23:00 2007 bruno
-**
-** Copyright INRIA 2007
-*/
+ * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
+ * Copyright (C) 2007-2008 - INRIA - Bruno JOFRET
+ *
+ * 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
+ *
+ */
+
+//
+// METHOD
+// based on the formula asinh(z) = -i asin(i z)
+//
#include "asinh.h"
+#include "asin.h"
floatComplex casinhs(floatComplex z) {
- /* FIXME: Dummy... */
- return z;
+ floatComplex i_z = FloatComplex(-cimags(z), creals(z));
+ floatComplex asin_i_z = casins(i_z);
+
+ return FloatComplex(cimags(asin_i_z), creals(asin_i_z));
}