⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 hilbert.c

📁 seismic software,very useful
💻 C
字号:
/* Copyright (c) Colorado School of Mines, 1990./* All rights reserved.                       *//*FUNCTION: compute Hilbert transform y of xPARAMETERS:n			i length of x and yx			i function to be Hilbert transformedy			o Hilbert transform of xNOTES:The Hilbert transform is computed by convolving x with awindowed (approximate) version of the ideal Hilbert transformer.AUTHOR:  Dave Hale, Colorado School of Mines, 06/02/89*/#include "cwp.h"#define LHHALF 30			/* half-length of Hilbert transform filter */#define LH 2*LHHALF+1		/* filter length must be odd */void hilbert (int n, float x[], float y[]){	static int madeh=0;	static float h[LH];	int i;	float taper;	/* make Hilbert transform filter if not already made; use Hamming window */	if (!madeh) {		h[LHHALF] = 0.0;		for (i=1; i<=LHHALF; i++) {			taper = 0.54+0.46*cos(PI*(float)i/(float)(LHHALF));			h[LHHALF+i] = taper*(-(float)(i%2)*2.0/(PI*(float)(i)));			h[LHHALF-i] = -h[LHHALF+i];		}		madeh = 1;	}	/* convolve Hilbert transform with input array */	conv(LH,-LHHALF,h,n,0,x,n,0,y);}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -