public final class SegyTraceHeader extends Object
Modifier and Type | Class and Description |
---|---|
static class |
SegyTraceHeader.CoordinateUnit |
static class |
SegyTraceHeader.DataUsage |
static class |
SegyTraceHeader.GainType |
static class |
SegyTraceHeader.Overtravel |
static class |
SegyTraceHeader.SourceType |
static class |
SegyTraceHeader.SourceUnit |
static class |
SegyTraceHeader.TimeType |
static class |
SegyTraceHeader.TraceType |
static class |
SegyTraceHeader.TraceValueUnit |
Constructor and Description |
---|
SegyTraceHeader(int traceSequenceNo,
int traceSequenceNoReel,
int originalFieldRecordNo,
int originalFieldRecordTraceNo,
int energySourcePointNo,
int cmpEnsamble,
int ensambleTraceNo,
SegyTraceHeader.TraceType traceType,
int nVerticallySummedTraces,
int nHorizontallyStackedTraces,
SegyTraceHeader.DataUsage dataUsage,
int sourceReceiverDistance,
double receiverElevation,
double surfaceElevation,
double sourceDepth,
double datumElevationReceiver,
double datumElevationSource,
double waterDepthSource,
double waterDepthReceiver,
double x,
double y,
double xGroup,
double yGroup,
SegyTraceHeader.CoordinateUnit coordinateUnit,
int weatheringVelocity,
int subweatheringVelocity,
double upholeTimeAtSource,
double upholeTimeAtReceiver,
double sourceStaticsCorrection,
double groupStaticsCorrection,
double totalStaticsApplied,
double lagTimeA,
double lagTimeB,
double recordingTimeDelay,
double muteTimeStart,
double muteTimeEnd,
int nSamples,
int sampleInterval,
SegyTraceHeader.GainType fieldGainType,
int instrumentGainConstant,
int instrumentEarlyGain,
boolean isCorrelated,
int sweepFrequencyAtStart,
int sweepFrequencyAtEnd,
int sweepLength,
SegyFileHeader.SweepType sweepType,
int sweepTaperLengthAtStart,
int sweepTaperLengthAtEnd,
SegyFileHeader.SweepTaperType sweepTaperType,
int aliasFilterFrequency,
int aliasFilterSlope,
int notchFilterFrequency,
int notchFilterSlope,
int lowCutFrequency,
int highCutFrequency,
int lowCutSlope,
int highCutSlope,
int year,
int dayOfYear,
int hour,
int minute,
int second,
SegyTraceHeader.TimeType timeType,
int traceWeightingFactor,
int geophoneGroupNoOfRollSweepPosition,
int geophoneGroupNoOfOriginalTraceNo,
int geophoneGroupNoOfLastTrace,
int gapSize,
SegyTraceHeader.Overtravel overtravelTaper,
double xCdp,
double yCdp,
int inlineNo,
int crosslineNo,
double shotPoint,
SegyTraceHeader.TraceValueUnit traceValueUnit,
double transductionConstant,
SegyTraceHeader.TraceValueUnit transductionUnit,
int deviceId,
SegyTraceHeader.SourceType sourceTypeAndOrientation,
double[] sourceEnergyDirection,
double sourceMeasurement,
SegyTraceHeader.SourceUnit sourceUnit) |
Modifier and Type | Method and Description |
---|---|
int |
getAliasFilterFrequency()
Return the alias filter frequency (if used) of this trace.
|
int |
getAliasFilterSlope()
Return the alias filter slope of this trace.
|
int |
getCmpEnsamble()
Return the ensamble number of this trace.
|
SegyTraceHeader.CoordinateUnit |
getCoordinateUnit()
Return the coordinate unit of this trace.
|
int |
getCrosslineNo()
Return the crossline number of this trace.
|
SegyTraceHeader.DataUsage |
getDataUsage()
Return the data usage of this trace.
|
double |
getDatumElevationReceiver()
Return the data elevation receiver of this trace.
|
double |
getDatumElevationSource()
Return the datum elevation at source of this trace.
|
int |
getDeviceId()
Return the device identifier of this trace.
|
int |
getEnergySourcePointNo()
Return the energy point source number of this trace.
|
int |
getEnsambleTraceNo()
Return the trace number within the ensamble.
|
SegyTraceHeader.GainType |
getFieldGainType()
Return the gain type of field instruments for this trace.
|
int |
getGapSize()
Return the gap size of this trace.
|
int |
getGeophoneGroupNoOfLastTrace()
Return the geophone group number of last trace of this trace.
|
int |
getGeophoneGroupNoOfOriginalTraceNo()
Return the geophone group no of original trace no of this trace.
|
int |
getGeophoneGroupNoOfRollSweepPosition()
Return the geophone group no of roll sweep position of this trace.
|
double |
getGroupStaticsCorrection()
Return the group static correction of this trace.
|
int |
getHighCutFrequency()
Return the high-cut frequency (if used) of this trace.
|
int |
getHighCutSlope()
Return the high-cut slope of this trace.
|
int |
getInlineNo()
Return the inline number of this trace.
|
int |
getInstrumentEarlyGain()
Return the instrument early or initial gain of this trace.
|
int |
getInstrumentGainConstant()
Return the instrument gain constant of this trace.
|
double |
getLagTimeA()
Return the lag time A of this trace.
|
double |
getLagTimeB()
Return the lag time B of this trace.
|
int |
getLowCutFrequency()
Return the low-cut frequency (if used) of this trace.
|
int |
getLowCutSlope()
Return the low-cut slope of this trace.
|
double |
getMuteTimeEnd()
Return the mute end time of this trace.
|
double |
getMuteTimeStart()
Return the mute start time of this trace.
|
int |
getNHorizontallyStackedTraces()
Return the number of horizontally stacked traces yielding this trace.
|
int |
getNotchFilterFrequency()
Return the notch filter frequency of this trace.
|
int |
getNotchFilterSlope()
Return the notch filter slope of this trace.
|
int |
getNSamples()
Return the number of samples in this trace.
|
int |
getNVerticallySummedTraces()
Return the number of vertically summed traces yielding this trace.
|
int |
getOriginalFieldRecordNo()
Return the original file record number of this trace.
|
int |
getOriginalFieldRecordTraceNo()
Return the trace number within the original field record.
|
SegyTraceHeader.Overtravel |
getOvertravelTaper()
Return the taper overtravel of this trace.
|
double |
getReceiverElevation()
Return the receiver elevation of this trace.
|
Date |
getRecordingTime()
Return the time of recording of this trace.
|
double |
getRecordingTimeDelay()
Return the recording time delay of this trace.
|
int |
getSampleInterval()
Return the sample interval for this trace.
|
double |
getShotPoint()
Return the shot point number of this trace.
|
double |
getSourceDepth()
Return the source depth of this trace.
|
double[] |
getSourceEnergyDirection()
Return the source energy direction of this trace.
|
double |
getSourceMeasurement()
Return the source measurement of this trace.
|
int |
getSourceReceiverDistance()
Return the source receiver distance of this trace.
|
double |
getSourceStaticsCorrection()
Return the source statics correction of this trace.
|
SegyTraceHeader.SourceType |
getSourceTypeAndOrientation()
Return the source type / orientation of this trace.
|
SegyTraceHeader.SourceUnit |
getSourceUnit()
Return the unit of the source measurement of this trace.
|
int |
getSubweatheringVelocity()
Return the subweathering velocity of this trace.
|
double |
getSurfaceElevation()
Return the surface elevation of this trace.
|
int |
getSweepFrequencyAtEnd()
Return the sweep frequency at end of this trace.
|
int |
getSweepFrequencyAtStart()
Return the sweep frequency at start of this trace.
|
int |
getSweepLength()
Return the sweep length of this trace.
|
int |
getSweepTaperLengthAtEnd()
Return the sweep trace taper length at end of this trace.
|
int |
getSweepTaperLengthAtStart()
Return the sweep trace taper length at start of this trace.
|
SegyFileHeader.SweepTaperType |
getSweepTaperType()
Return the sweep taper type of this trace.
|
SegyFileHeader.SweepType |
getSweepType()
Return the of this trace.
|
SegyTraceHeader.TimeType |
getTimeType()
Return the time type of this trace.
|
double |
getTotalStaticsApplied()
Return the total static applied of this trace.
|
int |
getTraceSequenceNo()
Return the sequence number of this trace.
|
int |
getTraceSequenceNoReel()
Return the trace sequence number within the SEG Y file.
|
SegyTraceHeader.TraceType |
getTraceType()
Return the type of this trace.
|
SegyTraceHeader.TraceValueUnit |
getTraceValueUnit()
Return unit for the trace values of this trace.
|
int |
getTraceWeightingFactor()
Return the trace weighting factor of this trace.
|
double |
getTransductionConstant()
Return the transduction constant of this trace.
|
SegyTraceHeader.TraceValueUnit |
getTransductionUnit()
Return the transduction unit of this trace.
|
double |
getUpholeTimeAtReceiver()
Return the uphole time at group of this trace.
|
double |
getUpholeTimeAtSource()
Return the uphole time at source of this trace.
|
double |
getWaterDepthReceiver()
Return the water depth at receiver group of this trace.
|
double |
getWaterDepthSource()
Return the water depth at suorce of this trace.
|
int |
getWeatheringVelocity()
Return the weathering velocity of this trace.
|
double |
getX()
Return the source coordinate X of this trace.
|
double |
getXCdp()
Return the CDP X coordinate of this trace.
|
double |
getXGroup()
Return the group coordinate X of this trace.
|
double |
getY()
Return the source coordinate Y of this trace.
|
double |
getYCdp()
Return the CDP Y coordinate of this trace.
|
double |
getYGroup()
Return the group coordinate Y of this trace.
|
boolean |
isCorrelated()
Return if the trace is correlated the of this trace.
|
String |
toString() |
public SegyTraceHeader(int traceSequenceNo, int traceSequenceNoReel, int originalFieldRecordNo, int originalFieldRecordTraceNo, int energySourcePointNo, int cmpEnsamble, int ensambleTraceNo, SegyTraceHeader.TraceType traceType, int nVerticallySummedTraces, int nHorizontallyStackedTraces, SegyTraceHeader.DataUsage dataUsage, int sourceReceiverDistance, double receiverElevation, double surfaceElevation, double sourceDepth, double datumElevationReceiver, double datumElevationSource, double waterDepthSource, double waterDepthReceiver, double x, double y, double xGroup, double yGroup, SegyTraceHeader.CoordinateUnit coordinateUnit, int weatheringVelocity, int subweatheringVelocity, double upholeTimeAtSource, double upholeTimeAtReceiver, double sourceStaticsCorrection, double groupStaticsCorrection, double totalStaticsApplied, double lagTimeA, double lagTimeB, double recordingTimeDelay, double muteTimeStart, double muteTimeEnd, int nSamples, int sampleInterval, SegyTraceHeader.GainType fieldGainType, int instrumentGainConstant, int instrumentEarlyGain, boolean isCorrelated, int sweepFrequencyAtStart, int sweepFrequencyAtEnd, int sweepLength, SegyFileHeader.SweepType sweepType, int sweepTaperLengthAtStart, int sweepTaperLengthAtEnd, SegyFileHeader.SweepTaperType sweepTaperType, int aliasFilterFrequency, int aliasFilterSlope, int notchFilterFrequency, int notchFilterSlope, int lowCutFrequency, int highCutFrequency, int lowCutSlope, int highCutSlope, int year, int dayOfYear, int hour, int minute, int second, SegyTraceHeader.TimeType timeType, int traceWeightingFactor, int geophoneGroupNoOfRollSweepPosition, int geophoneGroupNoOfOriginalTraceNo, int geophoneGroupNoOfLastTrace, int gapSize, SegyTraceHeader.Overtravel overtravelTaper, double xCdp, double yCdp, int inlineNo, int crosslineNo, double shotPoint, SegyTraceHeader.TraceValueUnit traceValueUnit, double transductionConstant, SegyTraceHeader.TraceValueUnit transductionUnit, int deviceId, SegyTraceHeader.SourceType sourceTypeAndOrientation, double[] sourceEnergyDirection, double sourceMeasurement, SegyTraceHeader.SourceUnit sourceUnit)
public int getTraceSequenceNo()
Trace sequence number within line - Numbers continue to increase if the same line continues across multiple SEG Y files. Highly recommended for all types of data.
public int getTraceSequenceNoReel()
Trace sequence number within SEG Y file - Each file starts with trace sequence one.
public int getOriginalFieldRecordNo()
Highly recommended for all types of data.
public int getOriginalFieldRecordTraceNo()
Highly recommended for all types of data.
public int getEnergySourcePointNo()
Used when more than one record occurs at the same effective surface location. It is recommended that the new entry defined in Trace Header bytes 197-202 be used for shotpoint number.
public int getCmpEnsamble()
I.e. CDP, CMP, CRP, etc.
public int getEnsambleTraceNo()
Each ensemble starts with trace number one.
public SegyTraceHeader.TraceType getTraceType()
Highly recommended for all types of data.
public int getNVerticallySummedTraces()
1 is one trace, 2 is two summed traces, etc.
public int getNHorizontallyStackedTraces()
1 is one trace, 2 is two stacked traces, etc.
public SegyTraceHeader.DataUsage getDataUsage()
public int getSourceReceiverDistance()
Distance from center of the source point to the center of the receiver group (negative if opposite to direction in which line is shot).
public double getReceiverElevation()
Receiver group elevation (all elevations above the Vertical datum are positive and below are negative).
public double getSurfaceElevation()
Surface elevation at source.
public double getSourceDepth()
Source depth below surface (a positive number).
public double getDatumElevationReceiver()
This is the datum elevation at receiver group.
public double getDatumElevationSource()
public double getWaterDepthSource()
public double getWaterDepthReceiver()
public double getX()
The coordinate reference system should be identified through an extended header Location Data stanza (see section D-1).
If the coordinate units are in seconds of arc, decimal degrees or DMS, the X values represent longitude and the Y values latitude. A positive value designates east of Greenwich Meridian or north of the equator and a negative value designates south or west.
public double getY()
The coordinate reference system should be identified through an extended header Location Data stanza (see section D-1).
If the coordinate units are in seconds of arc, decimal degrees or DMS, the X values represent longitude and the Y values latitude. A positive value designates east of Greenwich Meridian or north of the equator and a negative value designates south or west.
public double getXGroup()
The coordinate reference system should be identified through an extended header Location Data stanza (see section D-1).
If the coordinate units are in seconds of arc, decimal degrees or DMS, the X values represent longitude and the Y values latitude. A positive value designates east of Greenwich Meridian or north of the equator and a negative value designates south or west.
public double getYGroup()
The coordinate reference system should be identified through an extended header Location Data stanza (see section D-1).
If the coordinate units are in seconds of arc, decimal degrees or DMS, the X values represent longitude and the Y values latitude. A positive value designates east of Greenwich Meridian or north of the equator and a negative value designates south or west.
public SegyTraceHeader.CoordinateUnit getCoordinateUnit()
public int getWeatheringVelocity()
Unit is length per second where the length unit is according to SegtFileHEader.getLengthUnit().
public int getSubweatheringVelocity()
Unit is length per second where the length unit is according to SegtFileHEader.getLengthUnit().
public double getUpholeTimeAtSource()
public double getUpholeTimeAtReceiver()
public double getSourceStaticsCorrection()
public double getGroupStaticsCorrection()
public double getTotalStaticsApplied()
0.0 of no static has been applied,
public double getLagTimeA()
Time in milliseconds between end of 240-byte trace identification header and time break. The value is positive if time break occurs after the end of header; negative if time break occurs before the end of header. Time break is defined as the initiation pulse that may be recorded on an auxiliary trace or as otherwise specified by the recording system.
public double getLagTimeB()
Time in milliseconds between time break and the initiation time of the energy source. May be positive or negative.
public double getRecordingTimeDelay()
Time in milliseconds between initiation time of energy source and the time when recording of data samples begins. In SEG Y rev 0 this entry was intended for deep-water work if data recording does not start at zero time. The entry can be negative to accommodate negative start times (i.e. data recorded before time zero, presumably as a result of static application to the data trace). If a non-zero value (negative or positive) is recorded in this entry, a comment to that effect should appear in the Textual File Header.
public double getMuteTimeStart()
public double getMuteTimeEnd()
public int getNSamples()
public int getSampleInterval()
Microseconds for time data, Hertz (Hz) for frequency data, meters (m) or feet (ft) for depth data. The number of bytes in a trace record must be consistent with the number of samples written in the Binary File Header and/or the SEG-defined Trace Header(s). This is important for all recording media; but it is particularly crucial for the correct processing of SEG Y data in disk files.
If the fixed length trace flag of the Binary File Header is set, the sample interval and number of samples in every trace in the SEG Y file is assumed to be the same as the values recorded in the Binary File Header and these fields are ignored. If the fixed length trace flag is not set, the sample interval and number of samples may vary from trace to trace. Set this to zero if the value in bytes 97-100 of the optional SEG Trace Header Extension 1 is nonzero.
public SegyTraceHeader.GainType getFieldGainType()
public int getInstrumentGainConstant()
public int getInstrumentEarlyGain()
public boolean isCorrelated()
public int getSweepFrequencyAtStart()
public int getSweepFrequencyAtEnd()
public int getSweepLength()
public SegyFileHeader.SweepType getSweepType()
public int getSweepTaperLengthAtStart()
public int getSweepTaperLengthAtEnd()
public SegyFileHeader.SweepTaperType getSweepTaperType()
public int getAliasFilterFrequency()
public int getAliasFilterSlope()
public int getNotchFilterFrequency()
public int getNotchFilterSlope()
public int getLowCutFrequency()
public int getHighCutFrequency()
public int getLowCutSlope()
public int getHighCutSlope()
public Date getRecordingTime()
public SegyTraceHeader.TimeType getTimeType()
If nonzero, overrides Binary File Header bytes 3517-3518.
public int getTraceWeightingFactor()
Defined as 2^-N volts for the least significant bit. (N = 0, 1, ..., 32767)
public int getGeophoneGroupNoOfRollSweepPosition()
This is the geophone group number of roll switch position one.
public int getGeophoneGroupNoOfOriginalTraceNo()
This is the geophone group number of trace number one within original field record.
public int getGeophoneGroupNoOfLastTrace()
This is the geophone group number of last trace within original field record.
public int getGapSize()
This is the total number of groups dropped.
public SegyTraceHeader.Overtravel getOvertravelTaper()
This is the over travel associated with taper at beginning or end of line.
public double getXCdp()
X coordinate of ensemble (CDP) position of this trace The coordinate reference system should be identified through an extended header Location Data stanza.
public double getYCdp()
Y coordinate of ensemble (CDP) position of this trace The coordinate reference system should be identified through an extended header Location Data stanza.
public int getInlineNo()
For 3D poststack data, this field should be used for the inline number. If one inline per SEG Y file is being recorded, this value should be the same for all traces in the file and the same value will be recorded in bytes 3205-3208 of the Binary File Header.
public int getCrosslineNo()
For 3D poststack data, this field should be used for the crossline number. This will typically be the same value as the ensemble (CDP) number in Trace Header bytes 21-24, but this does not have to be the case.
public double getShotPoint()
This is probably only applicable to 2D poststack data. Note that it is assumed that the shotpoint number refers to the source location nearest to the ensemble (CDP) location for a particular trace. If this is not the case, there should be a comment in the Textual File Header explaining what the shotpoint number actually refers to.
public SegyTraceHeader.TraceValueUnit getTraceValueUnit()
public double getTransductionConstant()
The multiplicative constant used to convert the Data Trace samples to the Transduction Units (specified in Trace Header bytes 211-212).
public SegyTraceHeader.TraceValueUnit getTransductionUnit()
This is the unit of measurement of the Data Trace samples after they have been multiplied by the Transduction Constant specified in Trace Header bytes 205-210.
public int getDeviceId()
The unit number or id number of the device associated with the Data Trace (i.e. 4368 for vibrator serial number 4368 or 20316 for gun 16 on string 3 on vessel 2). This field allows traces to be associated across trace ensembles independently of the trace number (Trace Header bytes 25-28).
public SegyTraceHeader.SourceType getSourceTypeAndOrientation()
Defines the type and the orientation of the energy source. The terms vertical, cross-line and in-line refer to the three axes of an orthogonal coordinate system. The absolute azimuthal orientation of the coordinate system axes can be defined in the Bin Grid Definition Stanza.
public double[] getSourceEnergyDirection()
public double getSourceMeasurement()
Describes the source effort used to generate the trace. The measurement can be simple, qualitative measurements such as the total weight of explosive used or the peak air gun pressure or the number of vibrators times the sweep duration. Although these simple measurements are acceptable, it is preferable to use true measurement units of energy or work.
public SegyTraceHeader.SourceUnit getSourceUnit()
Copyright © 2020 Petroware AS - https://petroware.no