Академический Документы
Профессиональный Документы
Культура Документы
ADAPT
Adaptive model subtraction Level: 4116 Last update: July 2008
FUNCTION
General
The module subtracts adaptively a model dataset m or several models (up to 4) from an input dataset d, by estimating an adaptation filter f to increase the resemblance between m and d, under the minimum energy criterion. The module works on 2D spatio-temporal independent sliding windows (see Figure 1). Typical application is the subtraction of a multiple model from the recorded data. However, the module is more versatile. It can be applied to any case where you want to separate signal and (coherent) noise in the data and when a model of the noise is available (which differ from the exact noise by the amplitude spectrum, a time-shift, phase rotations, and so on). In the context of multiple attenuation, the "signal" stands for the primaries, and the "noise" stands for the multiples.
Geocluster
Users Manual
ADAPT
CGGVeritas
Input data
The module processes t-x trace gathers on input. The Y flag must be set at the end of each gather. The module outputs as many traces as input.
ADAPT
Users Manual
Geocluster
CGGVeritas
FUNCTION CALL
Description
Column 1 3-7 9-10 Contents * ADAPT First option: GA: Global Adaptation LS: Local Subtraction 12-13 Second option: Blank: standard least-squares adaptation, AS: A fast amplitude spectrum adaptation (zero-phase adaptation) is applied. Second option AS can be selected only with first option GA. SR: A fast adaptation is applied. Second option SR can only be coded with first option GA. 15-16 23-24 31-80 Input buffer: contains the t-x data. Output buffer: contains the data after subtraction (first option LS) or the input data (first option GA). Parameters.
Geocluster
Users Manual
ADAPT
CGGVeritas
Parameter relative to the model IS1=xx xx = Name of the auxiliary input buffer containing the model m(t,x) to subtract. It must be synchronous with the main input buffer.
Optional parameters
Computation parameters WORDXc c = Additional header word used to check the synchronicity between the main input buffer and the auxiliary input buffers. If LOPX is greater than 1, the regularity of the WORDX variations is also tested. Limits: c > 0 (integer) Parameters defining the sliding windows NCXd d = Number of traces in an elementary sliding window. If parameter FSPLIT is coded, NCX applies to the lower frequency band only (see Options and Parameters). Limits: 0 < d < YMX (integer) GS option: Default value: d= 50 LS option: Default value: d= 5 NCTe e = Length, in milliseconds, of an elementary sliding window. If FSPLIT is coded, NCT applies to the lower frequency band only. Limits: 0 < e < Trace Length (integer) GA option: Default value: e = 250 SI LS option: Default value: e = 25 SI PERADVi i = Percentage of advance on the sliding windows, relative to the window size. It applies to both the time and spatial axis. This defines the overlap between two adjacent windows. Tapers are applied to merge the processed windows. For more information on sliding window management see Remarks and Figure 1. If FSPLIT is coded, PERADV applies to both the lower and higher frequency sliding windows. Limits: 1 i 100 (integer) Default value: i = 50 Parameters defining the models to subtract IS2=aa, IS3=bb, IS4=cc (aa,bb,cc) = Names of the auxiliary input buffers containing the additional models m2, m3, and m4 to subtract at the same time as the model m input in IS1 = (multiple model subtraction).
4 ADAPT Users Manual Geocluster
CGGVeritas
Note: IS3= can be coded only if IS2= is coded. IS4= can be coded only if IS2= and IS3= are coded. Parameters defining the output models OS1=dd, OS2=ee, OS3=ff, OS4=gg (dd,ee,ff,gg) = Names of the auxiliary output buffers containing the adapted models, respectively fm, f2m2, f3m3, f4m4. A given auxiliary output buffer OSx can be coded only if the corresponding ISx input buffer is coded. They are all synchronous with the main output buffer. Warning: The adapted models differ fundamentally according to whether first option GA or LS is selected (see Remarks). NOADAPx x = Input model number not to adapt. This parameter is used to deactivate adaptation of the model x (integer). In this case, the model traces in buffer OSx are then directly copied from that of buffer ISx (see Remarks). Note: Several NOADAP parameter definitions can be coded in the same call of module ADAPT.
Geocluster
Users Manual
ADAPT
CGGVeritas
Parameters relative to adaptive filters LOPXi i = Length, in number of traces, of the adaptive filters (1D time-filters only). The value of LOPX must be an odd number. Note: LOPX > 1 assumes a regular spatial sampling (see Remarks). Limits: 0 < i < NCX Option GA: Default value: i = 5 Option LS: i = 1 Default value: i = 1 LOPTh h = Length, in milliseconds, of the adaptive filters. Limits: 0 < h < NCT (integer) LOPT/SI must be odd (see Remarks) Option GA: Default value: h = 51 SI Option LS: Default value: h = 5 SI. LOPXHj j = Length, in number of traces, of the adaptive filters for the higher frequency band, if parameter FSPLIT is coded. The value of parameter LOPXH must be an odd number. Limits: 0 < j < NCXH (integer) Default value: j = LOPX LOPTHk k = Length, in milliseconds, of the adaptive filters if parameter FSPLIT is coded. The value of LOPTH/SI must be an odd number. Limits: 0 < k < NCTH (integer) Default value: k = LOPT Computation parameters XFm m = Prewhitening factor for the adaptive filter estimation, expressed as a fraction (Real) (see Options and Parameters). Default value: m = 0.002 NORML1 Flag controlling the minimization function. If this parameter is coded, the L1 norm is used for the minimization function instead of the L2 norm (see Remarks). n = Number of iterations for the filter estimation on the first timewindow. If n = 0, the module uses a direct solver instead of an iterative solver. This is not possible if L1NORM or ZEF are coded or if several models are input with the LS option. Limits: n > 0 (integer) Default value: n = 20
NITERIn
ADAPT
Users Manual
Geocluster
CGGVeritas
Warning: If n is greater than the value LOPT/SILOPX, parameter NITERI is set to the value LOPT/SILOPX. NITERAp p = Number of iterations for the filter estimation on other windows. The initial estimation of the filter is the filter computed from the previous time-window, unless NITERA equals NITERI, in which case there is no initial estimation (see Options and Parameters). If p = 0, the module uses a direct solver instead of an iterative solver. This is not possible if L1NORM or ZEF are coded or if several models are input with the LS option. If p is greater than 0 there will be no initial estimation and ITERA will be equal to NITERI. Limits: 0 < p NITERI (integer) Default value: p = 3
Geocluster
Users Manual
ADAPT
CGGVeritas
Parameters specific to first option LS and second option blank Optional parameters
Parameter defining the subtraction window
Start time of the subtraction window
TIa
a = Start time, in milliseconds, of the window in which the subtraction is applied. Limits: a > 0 (integer) Default value: a = 0 b = Header word number containing the initial time, expressed in milliseconds, of the window in which the trace-by-trace subtraction is applied. Limits: b > 0 (integer)
or TIWORDb
TFc
c = Final time, in milliseconds, of the window in which the subtraction is applied. Limits: c > 0 (integer) Default value: c = trace length
or TFWORDd d = Header word containing the final time, in milliseconds, of the window in which the trace-by-trace subtraction is applied. Limits: d > 0 (integer) Note: TF and TFWORD are mutually exclusive.
Taper length
TAPIFe
e = Length, in milliseconds, of the internal taper applied at times defined by TI and TF. Limits: e 0 (integer) Default value: e = 10 SI (if parameters TI and/or TF are coded).
Parameter relative to filters XEFr r = Additional constraint factor, expressed as a fraction, designed to keep the energy of adapted models close to the energy of the input. This factor limits the magnification of the model to prevent the model from being adapted to strong primaries.
ADAPT
Users Manual
Geocluster
CGGVeritas
For example: r = 0: constraint factor has no effect. r = 1: constraint factor has a strong effect. Limits: r 0 Default value: r = 0.0 Important: The use of parameter XEF makes sense only if the amplitudes of the input model are close to the amplitudes of the input data. If this is not the case, the results will be unpredictable. Note: XEF can be coded if there is only one model input. Other parameter MEDFF Flag for median filtering of adaptation filters (see Example 2). If this parameter is coded, the program applies a median filtering of the adaptation filter samples, using the filters from the adjacent windows. This can help eliminating an isolated anomalous filter.
Geocluster
Users Manual
ADAPT
CGGVeritas
TRACE HEADER
Status of the output trace header
1 WORDS 1 to 10 WORDS 11 to 20 WORDS 21 to 30 WORDS 31 to 40 WORDS 41 to 50 WORDS 51 to 60 WORDS 61 to 64 X = updated word 0 = zeroed word blank = directly transcribed 2 3 4 5 6 7 8 9 0
10
ADAPT
Users Manual
Geocluster
CGGVeritas
RECOMMENDATIONS
Remarks Sliding windows management (see Figure 1)
A given window is always composed of NC points (either NCX traces or NCT ms). After the computations with the NC points, the output curve (weighting coefficients between 0 and 1) contains the following zones: The central points that are output "as is", with a coefficient equal to 1. Tapered areas of length TAP (not a parameter), where the coefficient varies from 1 to 0. "Shoulders" of length SH (not a user parameter), with a coefficient equal to 0 (the traces are not output). The geophysical justification of the shoulders is that the edges of the windows might miss the input information beyond the window. The module first computes the advancing number of traces (ADV) from one window to the next: ADV = NCPERADV/100 (with a minimum of 1 and a maximum of NC 2 (LOP/2)). Two different cases can be described: if ADV > NC/2 - LOP/2, then: SH = LOP/2 TAP = NC ADV 2*SH Note: If the computed taper is smaller than a hard-coded minimum taper value, the module automatically reduces the advance value. The hard-coded values are: TAPTmin = 10 SI, TAPXmin = 5 If ADV NC/2 - LOP/2, then: SH = NC/2 +1 ADV TAP = ADV-1 Note: The computed taper can be as small as 1 (which means no taper at all), due to the strong overlap between the adjacent windows. With such a mechanism, the tapers are decoupled from the overlaps. The quality of the results will depend mainly on the advancement percentage (parameter PERADV). Example 1 NCX51, LOPX5. If ADVX=23, then SH=2, TAPX=24
Geocluster Users Manual ADAPT 11
CGGVeritas
If ADVX=42, then SH=2, TAPX=5 If ADVX=45, t then ADVX is reduced to 42 If ADVX=10, then SH=16, TAPX=9 If ADVX=1, then SH=25, TAPX=0 Example 2 NCX7, LOPX1 If ADVX=5, then ADVX is reduced to 3 If ADVX=3, then SH=1, TAPX=2 If ADVX=1, then SH=3, TAPX=0 Important: All these useful but hidden parameters are printed in the job listing. Therefore, if you simply want to check the relevance of these parameters before the execution phase, submit your job in analysis phase only.
Standard or fast adaptation (first option GA, second option blank or SR)
The fast adaptations are attractive because they are fast. The adaptation with long (and costly) filters in the GA+blank options can be broken into simpler and faster tasks. Their combination is sub-optimal but the local subtraction (LS option) should achieve the job. These simple tasks are (in order): Amplitude spectrum adaptation (ASA, second option AS) Constant phase rotation + global time-shift (second option SR)
12 ADAPT Users Manual Geocluster
CGGVeritas
Scalar adaptation (parameter AMPADAP in SR). This step is optional provided that the ASA has been applied. Note: The ASA works better if multiple energy is dominant.
Geocluster
Users Manual
ADAPT
13
CGGVeritas
The adapted model output by the first pass serves as the input model for the second pass. The first pass corresponds to first option GA, the second pass corresponds to second option LS: ADAPT first pass: option GA ADAPT second pass: option LS
Spatial sampling
The spatial sampling can be arbitrary (random) except when multichannel filters are used (LOPX is greater than 1, which implies 2D convolutions). In this case, the spatial sampling should be regular, or at least locally regular. Consequently, it is recommended to avoid gathering input data in 3D bin gathers as they are likely irregular. It is recommended to code in parameter WORDX the header word that contains the true position within the collection (for instance, the offset in the shot gathers) so that the module can test the regularity.
14
ADAPT
Users Manual
Geocluster
CGGVeritas
A subtraction that is too aggressive can result in undesired attenuation of some signals in the data. This is particularly true with a local adaptation (small windows, for example with first option LS). To better preserve the signal without limiting the efficiency, you can: increase XEF Warning: the use of XEF makes sense only if the amplitudes of the input model are close to the actual amplitudes of the input data, otherwise you will obtain unpredictable results. Select NORML1 (data dependant) Select MEDFF Note also that reducing NITERA has the side effect of damping the variations of the estimated filters from one window to another, which can be favorable to a better preservation of the signal.
CPU resources
The parameters that have the most influence on the CPU resources are: PERADV LOPX and LOPT NITERA FSPLIT
Geocluster
Users Manual
ADAPT
15
CGGVeritas
EXAMPLES
Example 1: Two-pass subtraction of multiple models
************************************************************************* ** 2 pass subtraction of two multiple model, one from 2D ** convolutive SRME, the other one from 3D WE SRME, in shot points ** First pass in W17 domain, 2ND pass in CMP domain ** 2 PASSES ADAPT : FIRST PASS IN W17 DOMAIN, 2ND PASS IN CMP DOMAIN ************************************************************************* ** LVI 01 *READ /nfs/DIRECTORY/LIBRIS/LVI/LVI.lvi ************************************************************************* ** LMU 79 *READ /nfs/DIRECTORY/LIBRIS/LMU/LMU79.lvi ******************************************************************* * BOUCL 1 ** RAW DATA * RUNET IN FILE=local:/nfs/DIRECTORY/DATA/+ FILE=RAW_CMP.cst * RUNET I2 FILE=local:/nfs/Rproj/135snbd/DATA/+ FILE=RAW_CMP.cst **************** ** TIME OF MUTE PUT IN W39 : APPLIED IN 2ND PASS OF ADAPT (TIWORD39) * HFNMO I2 J2 LVI01,FMAX100,STRETCH-1,NOGAP, * MUTES J2 K2 LMU79 * HFNMO K2 IA LVI01,FMAX100,STRETCH-1,NOGAP,DENMO, * MODET IA IB *MOT39=MOT6 * EVERY TR IN AA IS1=IB,WORD39 **************** END TIME OF MUTE * RESTR AA AB ** MOD MULT 01 (RAMUR APPLIED ON MODEL FROM SMMOD) * RUNET M1 FILE=local:/nfs/Rproj/135snbd/DATA/+ FILE=SMMOD_RAMUR_CMP.cst * RESTR M1 Q1 ** MOD MULT 02 (RAMUR APPLIED ON MODEL FROM MOMUL) * RUNET M2 FILE=local:/nfs/Rproj/135snbd/DATA/+ FILE=MOMUL_RAMUR_CMP.cst * RESTR M2 Q2 * MERGE CT AB UU IS1=Q1,IS2=Q2,WORDX17,WORDY2, * BSORT UU B2 SORT=ONE17,TWO4,NT500000,PROCS=YB2, ************************************************************************* ****** * BOUCL 2 * HISTA B2 P1 DP6000,RL6000 * HISTA B2 P2 DP12000,RL6000 * HISTA B2 VV RL6000 * ADAPT GA VV B3 B3,IS1=P1,IS2=P2,OS1=R1,OS2=R2, WORDX2,WORD17,YMX2000, NCX200,NCT1200,PERADV50, FSPLIT20, LOPX5,LOPT204, XF0.002, NITERI10,NITERA3, * ENDLP ****************************************************************** * DLOOP 3
16
ADAPT
Users Manual
Geocluster
CGGVeritas
* MERGE CT B3 JJ IS1=R1,IS2=R2,WORDX17,WORDY2, * BSORT JJ B5 SORT=ONE9,TWO4,TROIS21,NT500000,PROCS=YB5, ************************************************************************* ****** * BOUCL 5 * HISTA B5 S1 DP6000,RL6000 * HISTA B5 S2 DP12000,RL6000 * HISTA B5 SV RL6000 * ADAPT LS SV B4 B4,IS1=S1,IS2=S2,WORDX17,WORD9,YMX2000, NCX30,NCT200,PERADV50, NCXH70,NCTH80, FSPLIT20, LOPX1,LOPT20, XF0.002, NITERI10,NITERA3, XEF0.0, TIWORD39,TAPIF20, * ENDLP ****************************************************************** * DLOOP 4 * WUNET B4 FILE=local:/nfs/DIRECTORY/DATA/+ FILE=CMP_AFTER_ADAPT.cst * FINBO * ENDLP ******************************************************************* * PROCS X(YB1)
Geocluster
Users Manual
ADAPT
17
CGGVeritas
18
ADAPT
Users Manual
Geocluster
CGGVeritas
Example 3: Two-pass subtraction of an SRME multiple model and a RAMUR model in shotpoint
************************************************************************* ** 2 pass subtraction of a SRME multiple model and a RAMUR model in shot ** points. The RAMUR model is not adapted in the first pass. ** traces RL=8000 ************************************************************************* * DLOOP 1 * RUNET M1 FILE=local:+ FILE=/extfs1/DATA_GVT/GVTEST/DATA/srme_model_SP.cst,WORD2 * RUNET M2 FILE=local:+ FILE=/extfs1/DATA_GVT/GVTEST/DATA/ramur_model_SP.cst,WORD2 * RUNET ++ FILE=local:+ FILE=/extfs1/DATA_GVT/GVTEST/DATA/data_SP.cst,WORD2 * ADAPT GA == 02 B2,YMX240,WORD2,IS1=M1,IS2=M2,NOADAP2,WORDX20 OS1=N1,OS2=N2, ************************************************************************* * DLOOP 2 * ADAPT LS == 03 B3,YMX240,WORD2,IS1=N1,IS2=N2 ************************************************************************* * DLOOP 3 * WUNET == FILE=local:+ FILE=/extfs1/DATA_GVT/GVTEST/DATA/primaries_SP.cst, ************************************************************************* * PROCS X(B1)
Geocluster
Users Manual
ADAPT
19
CGGVeritas
FIGURES
Figure 1: Sliding window management
Figure 1 shows the management of the sliding window process when the advance (ADV) is less than or equal to NC/2LOP/2 (top) or greater than NC/2LOP/2 (bottom). See Remarks.
20
ADAPT
Users Manual
Geocluster