summaryrefslogtreecommitdiff
path: root/src/c/signalProcessing/%sn/dmodsns.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/c/signalProcessing/%sn/dmodsns.c')
-rw-r--r--src/c/signalProcessing/%sn/dmodsns.c93
1 files changed, 0 insertions, 93 deletions
diff --git a/src/c/signalProcessing/%sn/dmodsns.c b/src/c/signalProcessing/%sn/dmodsns.c
deleted file mode 100644
index 06d0a6f..0000000
--- a/src/c/signalProcessing/%sn/dmodsns.c
+++ /dev/null
@@ -1,93 +0,0 @@
-/* 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: Ankit Raj
- Organization: FOSSEE, IIT Bombay
- Email: toolbox@scilab.in
- Reference:- Abramowitz, Milton and Stegun, Irene A
- Handbook of Mathematical Functions, Dover, 1965
- Chapter 16 (Sections 16.4, 16.13 and 16.15)
- Link for FORTRAN code:-http://www.aip.de/groups/soe/local/numres/bookfpdf/f6-11.pdf
-*/
-
-#include<stdio.h>
-#include<math.h>
-#define CA 0.0003
-#include "modsn.h"
-double dmodsns(double uu, double emmc)
-{
- double a,b,c,d,emc,u;
- double em[14],en[14];
- int i,ii,l,bo;
- double sn,cn,dn;
- emc=1-emmc;
- u=uu;
- if(emc)
- {
- bo=(emc<0.0);
- if(bo)
- {
- d=1.0-emc;
- emc/=-1.0/d;
- u*=(d=sqrt(d));
- }
- a=1.0;
- dn=1.0;
- for(i=1;i<=13;i++)
- {
- l=i;
- em[i]=a;
- en[i]=(emc=sqrt(emc));
- c=0.5*(a+emc);
- if(fabs(a-emc)<=CA*a)break;
- emc*=a;
- a=c;
- }
- u*=c;
- sn=sin(u);
- cn=cos(u);
- if(sn)
- {
- a=cn/sn;
- c*=a;
- for(ii=l;ii>=1;ii--)
- {
- b=em[ii];
- a*=c;
- c*=dn;
- dn=(en[ii]+a)/(b+a);
- a=c/b;
- }
- a=1.0/sqrt(c*c+1.0);
- sn=(sn>=0.0?a:-a);
- cn=c*(sn);
- }
- if(bo)
- {
- a=dn;
- dn=cn;
- cn=a;
- sn/=d;
- }
- }
- else
- {
- cn=1.0/cosh(u);
- dn=cn;
- sn=tanh(u);
- }
- return sn;
-}
-/*
-int main()
-{
- double u,k;
- u=4;
- k=0.7;
- sn(u,k);
-}
-*/