File: hammin.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 (43 lines) | stat: -rw-r--r-- 1,262 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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
C/MEMBR ADD NAME=HAMMIN,SSI=0
      subroutine hammin(ordr,demi,ieo,alph,win)
c!
c sous-programme:  hammin
c fenetre de hamming generalisee
c en double precision
c acheve le 05/12/85
c ecrit par philippe touron
c
c
c                  parametres entrants
c                 -------------------
c demi, ordre de la demi-fenetre (entier)
c ordr, ordre du filtre (entier)
c ieo, indicateur de parite (entier)
c alph, 1ere constante de la fenetre de hamming (reelle)
c
c                  parametres sortants
c                 -------------------
c win, les valeurs de la demi-fenetre (tableau de reels qui doit
c    dans un programme appelant etre dimensionne a ordr)
c
c                  variables internes
c                 ------------------
c xcompt,ycompt,compt, compteur de boucle et indice de tableau en reel
c         (resp en entier)
c
c sous programmes appeles: aucun
c!
      double precision win(*),pi,twopi,xcompt,ycompt,alph,beta
      integer ordr,compt,demi,ieo
c
      pi=acos(-1.0d+0)
      twopi=2.0d+0*pi
      beta=1.0d+0-alph
      ycompt=dble(ordr)-1.0d+0
      do 10 compt=1,demi
      xcompt=dble(compt)-1.0d+0
      if(ieo.eq.0)xcompt=xcompt+0.50d+0
      win(compt)=alph+beta*cos((twopi*xcompt)/ycompt)
10    continue
      return
      end