File: desi01.f

package info (click to toggle)
scilab 2.2-4
  • links: PTS
  • area: non-free
  • in suites: hamm
  • size: 31,472 kB
  • ctags: 21,963
  • sloc: fortran: 110,983; ansic: 89,717; makefile: 3,016; sh: 1,892; csh: 150; cpp: 101
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