%%HP: T(3)A(R)F(.); @ @ @ VYPOCET AMPLITUDOVE OBALKY @ List ENVCALC(List waveform); \<< AXL @ [wave] FFT @ [spec] AXL @ {spec} DUP @ {spec} {spec} SIZE @ size {spec} DUP @ size size {spec} 2. @ 2. size size {spec} / @ half size {spec} \-> size half \<< DUP @ {spec} {spec} 1. @ 1. {spec} {spec} GET @ s[1] {spec} SWAP @ {spec} s[1] half @ half {spec} s[1] 1. @ 1. half {spec} s[1] + @ beg {spec} s[1] size @ end beg {spec} s[1] SUB @ {hi} s[1] REVLIST @ {hi} s[1] 2. @ 2. {hi} s[1] * @ 2*{hi} s[1] SWAP @ s[1] 2*{hi} 0. @ 0. s[1] 2*{hi} half @ half 0. s[1] 2*{hi} 1. @ 1. half 0. s[1] 2*{hi} - @ count 0. s[1] 2*{hi} NDUPN @ count 0. 0. ... 0. s[1] 2*{hi} 1. @ 1. count 0. 0. ... 0. s[1] 2*{hi} + @ half 0. 0. ... 0. s[1] 2*{hi} \->LIST @ {lo} 2*{hi} SWAP @ 2*{hi} {lo} + @ {hilb} AXL @ [hilb] FFT @ [cmplx] AXL @ {cmplx} ABS @ {abs} size @ size {abs} / @ {envel} \>> \>>