org.javaseis.grid
Class GridDefinition

java.lang.Object
  extended by org.javaseis.grid.GridDefinition
All Implemented Interfaces:
java.io.Serializable

public class GridDefinition
extends java.lang.Object
implements java.io.Serializable

The GridDefinition class provides...

See Also:
Serialized Form

Field Summary
protected  AxisDefinition[] _axis
           
protected  int _numDimensions
           
static int CDP
           
static int FRAME_INDEX
           
static int OFFSET
           
static int SAMPLE_INDEX
           
static int SHOT
           
static int TRACE_INDEX
           
static int VOLUME
           
static int VOLUME_INDEX
           
 
Constructor Summary
GridDefinition(int numDimensions, AxisDefinition[] axis)
           
 
Method Summary
 AxisDefinition getAxis(int index)
           
 DataDomain getAxisDomain(int index)
           
 DataDomain[] getAxisDomains()
           
 java.lang.String[] getAxisDomainsStrings()
           
 java.lang.String getAxisDomainString(int index)
           
 AxisLabel getAxisLabel(int index)
           
 AxisLabel[] getAxisLabels()
           
 java.lang.String[] getAxisLabelsStrings()
           
 java.lang.String getAxisLabelString(int index)
           
 long getAxisLength(int index)
           
 long[] getAxisLengths()
           
 long getAxisLogicalDelta(int index)
           
 long[] getAxisLogicalDeltas()
           
 long getAxisLogicalOrigin(int index)
           
 long[] getAxisLogicalOrigins()
           
 double getAxisPhysicalDelta(int index)
           
 double[] getAxisPhysicalDeltas()
           
 double getAxisPhysicalOrigin(int index)
           
 double[] getAxisPhysicalOrigins()
           
 Units[] getAxisUnits()
           
 Units getAxisUnits(int index)
           
 java.lang.String getAxisUnitsString(int index)
           
 java.lang.String[] getAxisUnitsStrings()
           
static GridDefinition getDefault(int ndim, int[] idim)
           
 int getNumDimensions()
           
 long getNumFramesPerVolume()
           
 long getNumSamplesPerTrace()
           
 long getNumTracesPerFrame()
           
 long getNumVolumesPerHypercube()
           
static GridDefinition standardGrid(int type, int[] lengths, long[] logicalOrigins, long[] logicalDeltas, double[] origins, double[] deltas)
          Return a "standard" grid definition for basic seismic data types: SHOT, CDP, OFFSET, VOLUME.
 GridDefinition subGrid(int residentDimensions)
          Return a GridDefinition that is a subset of this GridDefinition.
 GridDefinition subGrid(int[] dimensionIndices)
          Return a GridDefinition that is a subset of this GridDefinition.
 GridDefinition subGrid(int[] dimensionIndices, long[][] dimensionRanges)
          Return a GridDefinition that is a subset of this GridDefinition.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

_axis

protected AxisDefinition[] _axis

_numDimensions

protected int _numDimensions

CDP

public static final int CDP
See Also:
Constant Field Values

FRAME_INDEX

public static final int FRAME_INDEX
See Also:
Constant Field Values

OFFSET

public static final int OFFSET
See Also:
Constant Field Values

SAMPLE_INDEX

public static final int SAMPLE_INDEX
See Also:
Constant Field Values

SHOT

public static final int SHOT
See Also:
Constant Field Values

TRACE_INDEX

public static final int TRACE_INDEX
See Also:
Constant Field Values

VOLUME

public static final int VOLUME
See Also:
Constant Field Values

VOLUME_INDEX

public static final int VOLUME_INDEX
See Also:
Constant Field Values
Constructor Detail

GridDefinition

public GridDefinition(int numDimensions,
                      AxisDefinition[] axis)
               throws java.lang.IllegalArgumentException
Throws:
java.lang.IllegalArgumentException
Method Detail

getAxis

public AxisDefinition getAxis(int index)

getAxisDomain

public DataDomain getAxisDomain(int index)

getAxisDomains

public DataDomain[] getAxisDomains()

getAxisDomainsStrings

public java.lang.String[] getAxisDomainsStrings()

getAxisDomainString

public java.lang.String getAxisDomainString(int index)

getAxisLabel

public AxisLabel getAxisLabel(int index)

getAxisLabels

public AxisLabel[] getAxisLabels()

getAxisLabelsStrings

public java.lang.String[] getAxisLabelsStrings()

getAxisLabelString

public java.lang.String getAxisLabelString(int index)

getAxisLength

public long getAxisLength(int index)

getAxisLengths

public long[] getAxisLengths()

getAxisLogicalDelta

public long getAxisLogicalDelta(int index)

getAxisLogicalDeltas

public long[] getAxisLogicalDeltas()

getAxisLogicalOrigin

public long getAxisLogicalOrigin(int index)

getAxisLogicalOrigins

public long[] getAxisLogicalOrigins()

getAxisPhysicalDelta

public double getAxisPhysicalDelta(int index)

getAxisPhysicalDeltas

public double[] getAxisPhysicalDeltas()

getAxisPhysicalOrigin

public double getAxisPhysicalOrigin(int index)

getAxisPhysicalOrigins

public double[] getAxisPhysicalOrigins()

getAxisUnits

public Units[] getAxisUnits()

getAxisUnits

public Units getAxisUnits(int index)

getAxisUnitsString

public java.lang.String getAxisUnitsString(int index)

getAxisUnitsStrings

public java.lang.String[] getAxisUnitsStrings()

getDefault

public static GridDefinition getDefault(int ndim,
                                        int[] idim)

getNumDimensions

public int getNumDimensions()

getNumFramesPerVolume

public long getNumFramesPerVolume()

getNumSamplesPerTrace

public long getNumSamplesPerTrace()

getNumTracesPerFrame

public long getNumTracesPerFrame()

getNumVolumesPerHypercube

public long getNumVolumesPerHypercube()

standardGrid

public static GridDefinition standardGrid(int type,
                                          int[] lengths,
                                          long[] logicalOrigins,
                                          long[] logicalDeltas,
                                          double[] origins,
                                          double[] deltas)
Return a "standard" grid definition for basic seismic data types: SHOT, CDP, OFFSET, VOLUME.

Parameters:
type - one of the standard type fields
lengths - length of each axis
logicalOrigins - axis logical numbering origins
logicalDeltas - axis logical number deltas
origins - axis physical origins
deltas - axis physical deltas
Returns:
grid definition with standard axis names and units (ms,m,m,m)

subGrid

public GridDefinition subGrid(int residentDimensions)
Return a GridDefinition that is a subset of this GridDefinition. The subset grid is constructed by copying the leading dimensions specified on input to the new grid.

Parameters:
residentDimensions - number of leading dimensions to copy
Returns:
subgrid definition
Throws:
illegal - argument exception for out of bounds arguments

subGrid

public GridDefinition subGrid(int[] dimensionIndices)
Return a GridDefinition that is a subset of this GridDefinition. The subset grid is constructed by copying the dimensionIndices specified on input to the new grid.

Parameters:
dimensionIndices - array of indices to copy from the current grid
Returns:
subgrid definition
Throws:
illegal - argument exception for dimensionIndices that are out of bounds

subGrid

public GridDefinition subGrid(int[] dimensionIndices,
                              long[][] dimensionRanges)
Return a GridDefinition that is a subset of this GridDefinition. The subset grid is constructed by copying the dimensionIndices specified on input to the new grid. Each copied dimension also has a dimensionRange triplet that defines a start,end,increment subset of the given dimension that will be copied to the new GridDefinition.

Parameters:
dimensionIndices - array of indices to copy from the current grid
dimensionRanges - start,end,increment index triplet for each dimension
Returns:
subgrid definition
Throws:
illegal - argument exception for dimensionIndices that are out of bounds