File: desi01.f

package info (click to toggle)
scilab 4.0-12
  • links: PTS
  • area: non-free
  • in suites: etch, etch-m68k
  • size: 100,640 kB
  • ctags: 57,333
  • sloc: ansic: 377,889; fortran: 242,862; xml: 179,819; tcl: 42,062; sh: 10,593; ml: 9,441; makefile: 4,377; cpp: 1,354; java: 621; csh: 260; yacc: 247; perl: 130; lex: 126; asm: 72; lisp: 30
file content (26 lines) | stat: -rw-r--r-- 665 bytes parent folder | download | duplicates (14)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
C/MEMBR ADD NAME=DESI01,SSI=0
      subroutine desi01(maxdeg,iapro,edeg,ndeg,adelp,adels,
     *vsn,adeg,gd1,gd2,acap12,ierr)
c!purpose
c design of butterworth, chebyshev (passband or stopband), and
c elliptic filters
c!
      implicit double precision (a-h,o-z)
c
      call parcha (iapro,adeg,adelp,adels,vsn,gd1,gd2,acap12)
      call degree (iapro,vsn,acap12,adeg)
      q = adeg*(1.0d+0+edeg) + 0.50d+0
      n = int(q)
      m = int(adeg)
      if (real(m).lt.adeg) m = m + 1
      n = max0(m,n)
      if (ndeg.eq.0) go to 10
      if (ndeg.ge.n) go to 20
      ierr=15
c
  10  ndeg = n
c
  20  if (ndeg.le.maxdeg) return
      ierr=25
      return
      end