File: desia.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 (39 lines) | stat: -rw-r--r-- 1,397 bytes parent folder | download
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
27
28
29
30
31
32
33
34
35
36
37
38
39
C/MEMBR ADD NAME=DESIA,SSI=0
      subroutine desia(nmaxi,maxdeg,ityp,iapro,om,norma,
     *edeg,ndeg,adelp,adels,
     *nbn,nzero,nzm,vsn,a,adelta,adeg,
     *sm,pren,pimn,ugc,ogc,ack,zm,zzr,zzi,rom,
     *b2,b1,b0,dk,dks,dcap02,dcap04,vsnn,ndegn,nh,vd,nze,ierr)
c!purpose
c filter design -- first section
c!
c
      implicit double precision (a-h,o-z)
      dimension sm(maxdeg,4),nzero(*),pren(*),pimn(*)
      dimension rom(*),nzm(*),zm(maxdeg,4),nze(*)
      double precision  om(*)
      double precision  zzr(*),zzi(*),b0(*),b1(*),b2(*)
c
      sfa = 0.
      call desi00 (ityp,om,norma,edeg,ndeg,adeg,vsn,vd,a)
      call desi01 (maxdeg,iapro,edeg,ndeg,adelp,adels,vsn,
     *adeg,gd1,gd2,acap12,ierr)
      go to (10, 20, 20, 30), iapro
  10  call desi11(nmaxi,maxdeg,vsn,ndeg,gd1,gd2,adelta,nzm,
     *sm,nzero,pren,pimn,ugc,ogc,nj,nh)
      go to 40
  20  call desi12 (nmaxi,maxdeg,iapro,ndeg,vsn,gd1,gd2,adelta,
     *nzm,sm,nzero,pren,pimn,ugc,ack,nj,nh)
      go to 40
  30  call desi14 (nmaxi,maxdeg,ndeg,vsn,gd1,gd2,adelta,nzm,sm,nzero,
     *pren,ugc,ogc,ack,nj,nh,dk,dks,dcap02,dcap04)
c
  40  vsnn = vsn
      ndegn = ndeg
      nbn = nj
      call tranze (nmaxi,maxdeg,ityp,ndeg,nzm,a,vd,sm,nzero)
      call trbize (nmaxi,maxdeg,nzm,nzero,sm,zm,zzr,zzi)
      call blnumz (nzm,nzero,zzr,zzi,b2,b1,b0,nze)
      call romeg (nmaxi,maxdeg,ityp,nzm,zm,rom)
      return
      end