SYNOPSIS

PERL PROGRAM NAME:

AUTHOR: Juan Lorenzo (Perl module only)

DATE:

DESCRIPTION:

Version:

USE

NOTES

Examples

SYNOPSIS

SEISMIC UNIX NOTES SUATTRIBUTES - instantaneous trace ATTRIBUTES

 suattributes <stdin >stdout mode=amp					



 Required parameters:							

 	none								



 Optional parameter:							

 	mode=amp	output flag 					

 	       		=amp envelope traces				

 	       		=phase phase traces				

 	       		=freq frequency traces				

			=bandwith Instantaneous bandwidth		

			=normamp Normalized Phase (Cosine Phase)	

 	       		=fdenv 1st envelope traces derivative		

 	       		=sdenv 2nd envelope traces derivative		

 	       		=q Ins. Q Factor				

 ... unwrapping related options ....					

	unwrap=		default unwrap=0 for mode=phase			

 			default unwrap=1 for freq, uphase, freqw, Q	

 			dphase_min=PI/unwrap				

       trend=0		=1 remove the linear trend of the inst. phase	

 	zeromean=0	=1 assume instantaneous phase is zero mean	



			=freqw Frequency Weighted Envelope		

			=thin  Thin-Bed (inst. freq - average freq)	

	wint=		windowing for freqw				

			windowing for thin				

			default=1 					

 			o--------o--------o				

 			data-1	data	data+1				



 Notes:								

 This program performs complex trace attribute analysis. The first three

 attributes, amp,phase,freq are the classical Taner, Kohler, and	

 Sheriff, 1979.							



 The unwrapping algorithm is the "simple" unwrapping algorithm that	

 searches for jumps in phase.						



 The quantity dphase_min is the minimum change in the phase angle taken

 to be the result of phase wrapping, rather than natural phase	 

 variation in the data. Setting unwrap=0 turns off phase-unwrapping	

 alltogether. Choosing  unwrap > 1 makes the unwrapping function more	

 sensitive to instantaneous phase changes.				

 Setting unwrap > 1 may be necessary to resolve higher frequencies in	

 data (or sample data more finely).					



 Examples:								

 suvibro f1=10 f2=50 t1=0 t2=0 tv=1 | suattributes2 mode=amp | ...	

 suvibro f1=10 f2=50 t1=0 t2=0 tv=1 | suattributes2 mode=phase | ...	

 suvibro f1=10 f2=50 t1=0 t2=0 tv=1 | suattributes2 mode=freq | ...	

 suplane | suattributes mode=... | supswigb |...       		





 Credits:

	CWP: Jack K. Cohen

      CWP: John Stockwell (added freq and unwrap features)

	UGM (Geophysics Students): Agung Wiyono

	   email:aakanjas@gmail.com (others) added more attributes

					



 Algorithm:

	c(t) = hilbert_tranform_kernel(t) convolved with data(t)  



  amp(t) = sqrt( c.re^2(t) + c.im^2(t))

  phase(t) = arctan( c.im(t)/c.re(t))

  freq(t) = d(phase)/dt



 Reference: Taner, M. T., Koehler, A. F., and  Sheriff R. E.

 "Complex seismic trace analysis", Geophysics,  vol.44, p. 1041-1063, 1979



 Trace header fields accessed: ns, trid

 Trace header fields modified: d1, trid

User's notes (Juan Lorenzo) untested

CHANGES and their DATES

Import packages

instantiation of packages

Encapsulated hash of private variables

sub Step

collects switches and assembles bash instructions by adding the program name

sub note

collects switches and assembles bash instructions by adding the program name

sub clear

sub default

sub dphase_min

sub f1

sub mode

sub trend

sub unwrap

sub wint

sub zeromean

sub get_max_index

max index = number of input variables -1