Example for opening a seismic dataset using the default Segy mappings:
seismicData = SeismicData("F:\\Data\\Segy\\Attributes\\cdp_stack.xgy")
Example for opening a seismic dataset using a given mapping file:
seismicData = SeismicData("F:\\Data\\Segy\\Attributes\\cdp_stack.sgy", "F:\\Data\\Segy\\Attributes\\cdp_stack.xml")
Example data chooser for selecting one file:
chooser = SeismicDataChooser()
seismicData = chooser.getSelectedData()
if (seismicData != None) : print seismicData.getDataPath() + " has been selected"
Example data chooser for selecting multiple files:
chooser = MultipleSeismicDataChooser()
seismicData = chooser.getSelectedData()
if (seismicData != None) : print str(seismicData.__len__()) + " dataset(s) have been selected"
query = XSectionRangeQuery("INLINE", 300, 400)
seismicReader = seismicData.select(query)
or
query = XSectionRangeQuery()
query.addKeyRange("INLINE", 300, 400)
seismicReader = seismicData.select(query)
firstTrace = seismicReader.getTrace(0)
samples = firstTrace.getSamples()
print samples[100]
inline = firstTrace.getHeader("INLINE")
print inline
seismicData = SeismicData("F:\\Data\\Segy\\Attributes\\cdp_stack.xgy")
writer = SeismicDataWriter(seismicData)
writer.writeInBackground("F:\\Data\\Segy\\Attributes\\cdp_stack2.xgy")
query = XSectionRangeQuery("INLINE", 300, 400)
writer.writeInBackground(query, "F:\\Data\\Segy\\Attributes\\cdp_stack3.xgy")
seismicData = SeismicData("F:\\Data\\Segy\\Attributes\\cdp_stack.xgy")
saver = SeismicDataSaver();
result = saver.saveInBackground(seismicData, None)
print result + " is being saved. Please wait for the completion of this operation"
seismicData = SeismicData("F:\\Data\\Segy\\Attributes\\cdp_stack.xgy")
saver = SeismicDataSaver();
result = saver.saveAndWait(seismicData, None)
print result.getDataPath() + " has been saved"
Example for indexing a .sgy file:
seismicData = SeismicData("F:\\Data\\Segy\\Attributes\\cdp_stack_to_index.sgy")
indexer = SeismicIndexer(seismicData)
indexer.setMappingFilePath("F:\\Data\\Segy\\Attributes\\cdp_stack.xml")
indexer.setCalculateXyGeometry(True)
indexer.indexInBackground()
print indexer.getOutputFilePath() + " is being created. Please wait for the completion of this operation"
Example for transposing an indexed file:
seismicData = SeismicData(indexer.getOutputFilePath())
transposer = SeismicTransposer(seismicData)
transposer.transposeInBackground()
print transposer.getInputFilePath()+ " is being transposed. Please wait for the completion of this operation"
Example for indexing multiple files:
seismicData1 = SeismicData("F:\\Data\\Segy\\Attributes\\cdp_stack_to_index.sgy")
seismicData2 = SeismicData("F:\\Data\\Segy\\Attributes\\cdp_stack_to_index2.sgy")
indexer = MultipleSeismicIndexer([seismicData1, seismicData2])
indexer.setMappingFilePath("F:\\Data\\Segy\\Attributes\\cdp_stack.xml")
indexer.indexInBackground()
print indexer.getOutputFilePath()+ " is being created. Please wait for the completion of this operation"
Example for indexing a .su file:
seismicData = SeismicData("F:\\Data\\Segy\\Attributes\\cdp_stack.su")
indexer = SeismicIndexer(seismicData)
indexer.setMappingFilePath("F:\\Data\\Segy\\Attributes\\cdp_stack_su.xml")
indexer.indexInBackground()
print indexer.getOutputFilePath()+ " is being created. Please wait for the completion of this operation"
Example for indexing a CIND file:
seismicData = SeismicData("F:\\Data\\Pro.Max\\promax_to_int\\46217555CIND")
indexer = SeismicIndexer(seismicData)
indexer.indexInBackground()
print indexer.getOutputFilePath()+ " is being created. Please wait for the completion of this operation"
See Also: Indexing Multiple Volumes, Indexing Multiple 2D Lines
Example where one trace is processed:
seismicData = SeismicData("F:\\Data\\Segy\\Attributes\\cdp_stack.xgy")
processor = StandaloneSeismicProcessor(seismicData, "AGC")
query = XSectionRangeQuery("INLINE", 300, 400)
seismicReader = seismicData.select(query)
firstTrace = seismicReader.getTrace(0)
processor.processTrace(firstTrace)
print firstTrace
Example where an entire dataset is processed and written to disk:
seismicData = SeismicData("F:\\Data\\Segy\\Attributes\\cdp_stack.xgy")
writer = SeismicDataWriter(seismicData, "AGC")
writer.writeInBackground("F:\\Data\\Segy\\Attributes\\cdp_stack_agc.xgy")
Example for a seismic generator creating data from scratch:
generator = StandaloneSeismicGenerator("Create Random Volume")
generator.writeInBackground("F:\\Data\Test.xgy")
Example for a seismic generator deriving data from another dataset:
seismicData = SeismicData("F:\\Data\\Segy\Attributes\\cdp_stack.xgy")
generator = SeismicToSeismicGenerator(seismicData, "Add Missing Traces")
generator.writeInBackground("F:\\Data\Test.xgy")
See also: Python APIs for Calculator Data