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

📄 testtifowler.c

📁 su 的源代码库
💻 C
字号:
/* Copyright (c) Colorado School of Mines, 2006.*//* All rights reserved.                       *//* TESTTIFOWLER: $Revision: 1.2 $ ; $Date: 95/05/03 12:57:25 $	*/#include "su.h"#include "segy.h"/*********************** self documentation **********************/char *sdoc[] = {"								"," TESTTIFOWLER - make a small spike data set 			","								"," testtifowler [optional parameters] > out_data_file  		","								"," Creates a common offset su data file with up to four spikes	"," for impulse response studies for sutifowler			","								"," Optional parameters:						","	nt=250 		number of time samples			","	ntr=33		number of traces			"," 	dt=0.001 	time sample rate in seconds		"," 	offset=400 	offset					","       v=10000         velocity                                ","	nspk=2		number of spikes			","	ix1= 17		trace number (from left) for spike #1	","	t1= 0.100 	time s spike #1			","	ix2 = 17	trace for spike #2			","	t2 = 0.200 	time s for spike #2			","	ix3 = 17;	trace for spike #3			","	t3 = 0.100;	time for spike #3			","	ix4 = 17;	trace for spike #4			","	t4 = 0.200;	time s for spike #4			","								",NULL};/* Credits: *	CWP: Shuki Ronen, Chris Liner *      modified from SUSPIKE by John Anderson, April, 1994, *      to have appropriate trace header words and default  *      values for SUTIFOWLER tests *//**************** end self doc ***********************************/segy tr;main(int argc, char **argv){	int nt,ntr,itr;	int nspk,ix1,it1,ix2,it2;	int ix3,it3,ix4,it4;	float dt,offset,v,t1,t2,t3,t4;	/* Initialize */	initargs(argc, argv);	requestdoc(0); /* stdin not used */	nt = 250;	getparint("nt", &nt);		ntr = 33;	getparint("ntr", &ntr);	dt = 0.001;	getparfloat("dt", &dt);			offset = 400;	getparfloat("offset", &offset);	v=10000;	getparfloat("v", &v);		nspk = 2;	getparint("nspk", &nspk);	ix1 = 17;	getparint("ix1", &ix1); 	t1 = 0.100;	getparfloat("t1", &t1);	ix2 = 17;	getparint("ix2", &ix2);	t2 = 0.200;	getparfloat("t2", &t2);	ix3 = 17;	getparint("ix3", &ix3);	t3 = 0.100;	getparfloat("t3", &t3);	ix4 = 17;	getparint("ix4", &ix4);	t4 = 0.200;	getparfloat("t4", &t4);		t1=sqrt(t1*t1 + (offset*offset)/(v*v) );	it1=t1/dt;	t2=sqrt(t2*t2 + (offset*offset)/(v*v) );	it2=t2/dt;	t3=sqrt(t3*t3 + (offset*offset)/(v*v) );	it3=t3/dt;	t4=sqrt(t4*t4 + (offset*offset)/(v*v) );	it4=t4/dt;	fprintf(stderr," it1,it2,it3,it4=%d %d %d %d \n",it1,it2,it3,it4);	for (itr = 0; itr < ntr; itr++) {		memset((void *) tr.data, (int) '\0', nt * FSIZE);		if (itr == ix1-1 && it1<nt) tr.data[it1] = 1.0;  		if (nspk > 1 && itr == ix2-1 && it2<nt) tr.data[it2] = 1.0;		if (nspk > 2 && itr == ix3-1 && it3<nt) tr.data[it3] = 1.0;		if (nspk > 3 && itr == ix4-1 && it4<nt) tr.data[it4] = 1.0;		tr.tracl = itr + 1;		tr.cdp = tr.tracl;		tr.offset = offset;		tr.ns = nt;		tr.dt = dt*1000000;		tr.offset = offset;		tr.f1=0;		tr.d1=dt;		tr.f2=-.4;		tr.d2=.025;		puttr(&tr);	}	return EXIT_SUCCESS;}

⌨️ 快捷键说明

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