Programming Reference for VirtualLab Fusion  2022.1
Public Member Functions | Static Public Member Functions | Properties | List of all members
DataArray2D Class Reference

This class is subject to change. Programs using this class may require changes with a new version of VirtualLab.
Class for objects that store gridded data in C^N which are equidistant or non equidistant distributed in R^2 More...

Inheritance diagram for DataArray2D:
DataArrayBase IDocument

Public Member Functions

override object Clone ()
 Deep copy More...
 
double CoordinateOfDataPointIndex_X (long indexX)
 Gives the x coordinate of a certain data point as double. More...
 
PhysicalValue CoordinateOfDataPointIndex_X_asPValue (long indexX)
 Gives the x coordinate of a certain data point as PhysicalValue. More...
 
double CoordinateOfDataPointIndex_Y (long indexY)
 Gives the y coordinates of a certain data point as double. More...
 
PhysicalValue CoordinateOfDataPointIndex_Y_asPValue (long indexY)
 Gives the y coordinates of a certain data point as PhysicalValue. More...
 
 DataArray2D (ComplexFieldArray data, PhysicalProperty[] physicalPropertiesOfData, string[] commentsOfData, CFieldDerivative1DReal coordinatesX, PhysicalProperty physicalPropertyOfCoordinatesX, string commentOfCoordinatesX, double coordinateOfLastXIntervalsUpperLimit, CFieldDerivative1DReal coordinatesY, PhysicalProperty physicalPropertyOfCoordinatesY, string commentOfCoordinatesY, double coordinateOfLastYIntervalsUpperLimit, ExtrapolationInfo extrapolation=null, InterpolationMethodForNonequidistantData interpolationX=InterpolationMethodForNonequidistantData.ConstantInterval, InterpolationMethodForNonequidistantData interpolationY=InterpolationMethodForNonequidistantData.ConstantInterval)
 Constructor for data, non-equidistant in x and y, and with a coordinate for the last interval's upper limit for x and y, respectively. More...
 
 DataArray2D (ComplexFieldArray data, PhysicalProperty[] physicalPropertiesOfData, string[] commentsOfData, CFieldDerivative1DReal coordinatesX, PhysicalProperty physicalPropertyOfCoordinatesX, string commentOfCoordinatesX, double coordinateOfLastXIntervalsUpperLimit, double samplingDistanceY, double coordinateOfFirstDataPointY, PhysicalProperty physicalPropertyOfCoordinatesY, string commentOfCoordinatesY, ExtrapolationInfo extrapolation=null, InterpolationMethodForNonequidistantData interpolationX=InterpolationMethodForNonequidistantData.ConstantInterval, InterpolationMethod interpolationY=InterpolationMethod.Nearest)
 Constructor for data, non-equidistant in x and equidistant in y. More...
 
 DataArray2D (ComplexFieldArray data, PhysicalProperty[] physicalPropertiesOfData, string[] commentsOfData, double samplingDistanceX, double coordinateOfFirstDataPointX, PhysicalProperty physicalPropertyOfCoordinatesX, string commentOfCoordinatesX, CFieldDerivative1DReal coordinatesY, PhysicalProperty physicalPropertyOfCoordinatesY, string commentOfCoordinatesY, double coordinateOfLastYIntervalsUpperLimit, ExtrapolationInfo extrapolation=null, InterpolationMethod interpolationX=InterpolationMethod.Nearest, InterpolationMethodForNonequidistantData interpolationY=InterpolationMethodForNonequidistantData.ConstantInterval)
 Constructor for data, equidistant in x and non-equidistant in y. More...
 
 DataArray2D (ComplexFieldArray data, PhysicalProperty[] physicalPropertiesOfData, string[] commentsOfData, double samplingDistanceX, double coordinateOfFirstDataPointX, PhysicalProperty physicalPropertyOfCoordinatesX, string commentOfCoordinatesX, double samplingDistanceY, double coordinateOfFirstDataPointY, PhysicalProperty physicalPropertyOfCoordinatesY, string commentOfCoordinatesY, ExtrapolationInfo extrapolation=null, InterpolationMethod interpolationX=InterpolationMethod.Nearest, InterpolationMethod interpolationY=InterpolationMethod.Nearest)
 Constructor for data, equidistant in x and y. More...
 
 DataArray2D (DataArray2D dataArray)
 Copy constructor More...
 
 DataArray2D (double[,] data, PhysicalProperty physicalPropertyOfData, string commentOfData, double samplingDistanceX, double coordinateOfFirstDataPointX, PhysicalProperty physicalPropertyOfCoordinatesX, string commentOfCoordinatesX, double samplingDistanceY, double coordinateOfFirstDataPointY, PhysicalProperty physicalPropertyOfCoordinatesY, string commentOfCoordinatesY, ExtrapolationInfo extrapolation=null, InterpolationMethod interpolationX=InterpolationMethod.Nearest, InterpolationMethod interpolationY=InterpolationMethod.Nearest)
 Special constructor for data, equidistant in x and y which gets a double[,] array. Only one subset is used, i.e. N = 1. More...
 
void Dispose ()
 Frees all memory that is used for the data.
 
void EmbedExtract (Vector numberOfDataPoints)
 Method to perform an embed/extract operation on the data array. More...
 
DataArray2D EmbedExtract (Vector startPoint, Size extractSize)
 Method to extract a given data point range from this More...
 
override bool Equals (object obj, EqualityIntent equalityIntent)
 Checks whether two DataArray1D objects are equal. More...
 
void EquidistantToNonEquidistant (AxisDirection directionToConvert, bool forNN_convertCenterCoordinateInsteadOfIntervalBorder)
 If this data array is equidistant, this conversion method makes it non equidistant for the given dimension X or Y. This is done by calculating the member NonequidistantCoordinates_X/Y from CoordinateOfFirstDataPoint_X/Y, SamplingDistance_X/Y and the respective index. More...
 
void EquidistantToNonEquidistant (bool forNN_convertCenterCoordinateInsteadOfIntervalBorder)
 If this data array is equidistant, this conversion method makes it non equidistant for both dimensions X and Y. This is done by calculating the member NonequidistantCoordinates_X/Y from CoordinateOfFirstDataPoint_X/Y, SamplingDistance_X/Y and the respective index. More...
 
DataArray2D FieldInterpolation_PureEquidistantSampling (SamplingParameters sParaInterpolation, InterpolationMethod? interpolationMethod=null)
 Interpolates this DataArray2D completely and gives a new resampled data array if both dimensions x and y are sampled equidistantly. Each DataSubSet is interpolated to the user defined sampling parameters More...
 
void Fill (Complex[] values)
 Method to fill the data array subsets, each with a constant value. More...
 
PhysicalValueRange GetCoordinateRange_X (bool boundaryExtrapolation)
 Gets the whole range of x-coordinates (coordinate extent). More...
 
PhysicalValueRange GetCoordinateRange_Y (bool boundaryExtrapolation)
 Gets the whole range of y-coordinates (coordinate extent). More...
 
override string HeaderInformation (int subSetID, TextExportImportSettings exportSettings, FieldQuantity? quantityForInformation=null)
 Public method to get the export header (data meaning and sampling parameters) for a specific data array. More...
 
long IndexOfDataPointAtCoordinate_X (double xCoord, bool enforceSteppedInterpolation, out bool coordinatesOutsideGivenIndexRange)
 Method to get the x index of that data point which corresponds to a given x coordinate. More...
 
long IndexOfDataPointAtCoordinate_X (double xCoord, long startIndex, long endIndex, bool enforceSteppedInterpolation, out bool coordinatesOutsideGivenIndexRange)
 Method to get the x index of that data point which corresponds to a given x coordinate. More...
 
long IndexOfDataPointAtCoordinate_Y (double yCoord, bool enforceSteppedInterpolation, out bool coordinatesOutsideGivenIndexRange)
 Method to get the y index of that data point which corresponds to a given y coordinate. More...
 
long IndexOfDataPointAtCoordinate_Y (double yCoord, long startIndex, long endIndex, bool enforceSteppedInterpolation, out bool coordinatesOutsideGivenIndexRange)
 Method to get the y index of that data point which corresponds to a given y coordinate. More...
 
void InsertDataArray2D (DataArray2D arrayToInsert)
 Inserts another DataArray2D into this. Data inside the coordinate range of the array to insert will be overwritten. More...
 
void Mirror (AxisDirection mirrorAxis)
 Mirrors the dataArray2D either in x or y direction. The position of the mirror axis is defined as the center of the array (with reference to the coordinate to invert). More...
 
void Mirror (AxisDirection mirrorAxis, double mirrorAxisPosition)
 Mirrors the dataArray2D either in x or y direction. The position of the mirror axis can be arbitrary. More...
 
Complex[] PointInterpolation (VectorD coords, bool enforceSteppedInterpolation, out Vector relatedDataPointIndices, out bool coordinatesOutsideGivenIndexRange)
 Gives the interpolated complex value for given coordinates. Search intervals [startIndices.X, endIndices.X] and [startIndices.Y, endIndices.Y] can be set. At the moment, there are only nearest neighbor (for equidistant data) and constant interval interpolation (for non equidistant data) supported. More...
 
Complex[] PointInterpolation (VectorD coords, Vector startIndices, Vector endIndices, bool enforceSteppedInterpolation, out Vector relatedDataPointIndices, out bool coordinatesOutsideGivenIndexRange)
 Gives the interpolated complex value for given coordinates. Search intervals [startIndices.X, endIndices.X] and [startIndices.Y, endIndices.Y] can be set. At the moment, there are only nearest neighbor (for equidistant data), constant interval interpolation (for non equidistant data), and linear interpolation (for both sampling types) supported. More...
 
void Rotate (DiscreteOrientation rotationAngle)
 TU20111202 Rotates this DataArray2D around its central point More...
 
override void Save (string fileName)
 Save this data array to a file with a given name. More...
 
void SetDataWithPropertiesAndCommentsAtOnce (ComplexFieldArray data, PhysicalProperty[] properties, string[] comments)
 Sets the members Data, PhysicalPropertiesOfDataEntries and CommentsOfDataEntries at once to ensure consistency. More...
 
- Public Member Functions inherited from DataArrayBase
 DataArrayBase ()
 Standard constructor used for manual serialization
 
 DataArrayBase (DataArrayBase copyDA)
 copy constructor More...
 
- Public Member Functions inherited from IDocument
void Reload ()
 Reload function for the document
 

Static Public Member Functions

static DataArray2D CreateDataArray2DEquidistantOrNonEquidistant (ComplexFieldArray data, PhysicalProperty[] physicalPropertiesOfData, string[] commentsOfData, List< PhysicalValue > coordinatesX, List< PhysicalValue > coordinatesY, InterpolationMethod interpolationMethodEquidistant, InterpolationMethodForNonequidistantData interpolationMethodNonEquidistant, ExtrapolationInfo extrapolation=null)
 Static 'constructor' for data that can be either equidistant or non-equidistant. More...
 
static DataArray2D CreateDataArray2DEquidistantOrNonEquidistant (List<(double x, double y, Complex[] data)> dataPoints, PhysicalProperty[] physicalPropertiesOfData, string[] commentsOfData, PhysicalProperty physicalPropertyOfCoordinatesX, string commentOfCoordinatesX, PhysicalProperty physicalPropertyOfCoordinatesY, string commentOfCoordinatesY, InterpolationMethod interpolationMethodEquidistant, InterpolationMethodForNonequidistantData interpolationMethodNonEquidistant, ExtrapolationInfo extrapolation=null)
 Static 'constructor' for data points that can be either equidistant or non-equidistant. More...
 
static DataArray2D Load (string fileName)
 Loads the specified file name. Works independently from whether the document has been saved without view settings (as prior to VL 6.0) or with view settings. More...
 
static DataArray2D Load (string fileName, out UI.ViewSettings_SaveAndLoad.ListOfSavedViewSettings viewSettings)
 Loads the specified file name. Works independently from whether the document has been saved without view settings (as prior to VL 6.0) or with view settings. More...
 
static bool operator!= (DataArray2D da1, DataArray2D da2)
 Checks whether two DataArray2D objects are unequal. More...
 
static DataArray2D operator* (DataArray2D dataArray1, DataArray2D dataArray2)
 Implements the operator * for multiplication of two two-dimensional data arrays. More...
 
static DataArray2D operator+ (DataArray2D dataArray1, DataArray2D dataArray2)
 Implements the operator + for addition of two two-dimensional data arrays. More...
 
static DataArray2D operator- (DataArray2D dataArray1, DataArray2D dataArray2)
 Implements the operator - for subtraction of two two-dimensional data arrays. More...
 
static DataArray2D operator/ (DataArray2D dataArray1, DataArray2D dataArray2)
 Implements the operator / for division of two two-dimensional data arrays. More...
 
static bool operator== (DataArray2D da1, DataArray2D da2)
 Checks whether two DataArray2D objects are equal. More...
 

Properties

double BiggestCoordinateStep_X [get]
 Gets the biggest occurring distance between two neighbored x-coordinates. (So in the equidistant case, this is identical to SamplingDistance_X.)
 
double BiggestCoordinateStep_Y [get]
 Gets the biggest occurring distance between two neighbored y-coordinates. (So in the equidistant case, this is identical to SamplingDistance_Y.)
 
string CommentOfCoordinates_X [get, set]
 Gets and sets the comment for the x-coordinates.
 
string CommentOfCoordinates_Y [get, set]
 Gets and sets the comment for the y-coordinates.
 
override string[] CommentsOfDataEntries [get, set]
 Gets and sets the comment for each dimension in C^N.
 
double CoordinateOfFirstDataPoint_X [get, set]
 Gets and sets the x-coordinate of the data point Data[0,0].
 
double CoordinateOfFirstDataPoint_Y [get, set]
 Gets and sets the y-coordinate of the data point Data[0,0].
 
double CoordinateOfLast_X_IntervalsUpperLimit [get, set]
 Gets and sets the coordinate of the last interval's upper limit for the x-dimension. This is needed if non equidistantly sampled data shall be interpolated in x with the method 'ConstantInterval'. For this method the data are assumed to be constant in each interval which is given by [coordinate(i), coordinate(i+1)[, where i is the data point index. So the width of the last interval has to be defined separately by [coordinate(NoOfDataPoints_X-1), CoordinateOfLast_X_IntervalsUpperLimit[.
 
double CoordinateOfLast_Y_IntervalsUpperLimit [get, set]
 Gets and sets the coordinate of the last interval's upper limit for the y-dimension. This is needed if non equidistantly sampled data shall be interpolated in y with the method 'ConstantInterval'. For this method the data are assumed to be constant in each interval which is given by [coordinate(i), coordinate(i+1)[, where i is the data point index. So the width of the last interval has to be defined separately by [coordinate(NoOfDataPoints_Y-1), CoordinateOfLast_Y_IntervalsUpperLimit[.
 
double CoordinateOfLastDataPoint_X [get]
 Gets the x-coordinate of the data point Data[NoOfDataPoints_X - 1, NoOfDataPoints_Y - 1].
 
double CoordinateOfLastDataPoint_Y [get]
 Gets the y-coordinate of the data point Data[NoOfDataPoints_X - 1, NoOfDataPoints_Y - 1].
 
ComplexFieldArray Data [get, set]
 Gets and sets the data in C^N. Each single 2D ComplexField in this array holds one data subset, i.e. the complete set of data for one data dimension \(i\) ( \(1 \leq i \leq N\)).
 
override DataArrayType DataArrayType [get]
 public property to get the data array type of the current data array
 
override int DimensionalityOfCoordinates [get]
 Dimensionality M of the space of independent variables R^M
 
override int DimensionalityOfData [get]
 Dimensionality N of the space of data values C^N
 
bool Equidistant_X [get, set]
 Gets and sets whether the data are sampled equidistantly in x.
 
bool Equidistant_Y [get, set]
 Gets and sets whether the data are sampled equidistantly in y.
 
ExtrapolationInfo ExtrapolationHandling [get, set]
 The extrapolation handling.
 
InterpolationMethod InterpolationMethodForEquidistantSampling_X [get, set]
 Gets and sets the method used for interpolation in case of equidistant sampling in x-direction.
 
InterpolationMethod InterpolationMethodForEquidistantSampling_Y [get, set]
 Gets and sets the method used for interpolation in case of equidistant sampling in y-direction.
 
InterpolationMethodForNonequidistantData InterpolationMethodForNonequidistantSampling_X [get, set]
 Gets and sets the method used for interpolation in case of non equidistant sampling in x-direction. For the method 'ConstantInterval' the data are assumed to be constant in each interval which is given by [coordinate(i), coordinate(i+1)[, where i is the data point index. So the width of the last interval has to be defined separately by [coordinate(NoOfDataPoints_X - 1), CoordinateOfLast_X_IntervalsUpperLimit[.
 
InterpolationMethodForNonequidistantData InterpolationMethodForNonequidistantSampling_Y [get, set]
 Gets and sets the method used for interpolation in case of non equidistant sampling in y-direction. For the method 'ConstantInterval' the data are assumed to be constant in each interval which is given by [coordinate(i), coordinate(i+1)[, where i is the data point index. So the width of the last interval has to be defined separately by [coordinate(NoOfDataPoints_Y - 1), CoordinateOfLast_Y_IntervalsUpperLimit[.
 
override bool IsComplex [get]
 Are the values defined in C^N (TRUE) or in the subset of real numbers R^N (FALSE)? Returns TRUE if any of the data entries is complex.
 
CFieldDerivative1DReal NonequidistantCoordinates_X [get, set]
 
CFieldDerivative1DReal NonequidistantCoordinates_Y [get, set]
 Gets and sets the y-coordinates for the data in R^2. IMPORTANT: This property applies for non equidistant data only! If you need to get the coordinates for one index for equidistant as well as for non equidistant data, use the method CoordinateOfDataPointIndex_Y(long index) instead! For setting pay attention to the following restrictions: value must not be complex and value.SamplingPointsOneD has to be equal to NoOfDataPoints_Y.
 
int NoOfDataPoints_X [get]
 Gets the number of data values stored in x-direction.
 
int NoOfDataPoints_Y [get]
 Gets the number of data values stored in y-direction.
 
override bool NoSmoothingInterpolationMethod [get]
 Gets a flag indicating whether or not none of the interpolation methods is smoothing (like nearest neighbor or constant interval) -> TRUE But if one of the methods does (like all other methods) -> the flag is set to FALSE
 
override PhysicalProperty[] PhysicalPropertiesOfDataEntries [get, set]
 Gets and sets the physical property for each dimension in C^N.
 
PhysicalProperty PhysicalPropertyOf_X_Coordinates [get, set]
 Gets and sets the physical property for the x-coordinates.
 
PhysicalProperty PhysicalPropertyOf_Y_Coordinates [get, set]
 Gets and sets the physical property for the y-coordinates.
 
override PrecisionMode Precision [get]
 Get the highest occurring precision of the data.
 
double SamplingDistance_X [get, set]
 Gets and sets the sampling distance for (and only for) data sampled equidistantly in x.
 
double SamplingDistance_Y [get, set]
 Gets and sets the sampling distance for (and only for) data sampled equidistantly in y.
 
double SmallestCoordinateStep_X [get]
 Gets the smallest occurring distance between two neighbored x-coordinates. (So in the equidistant case, this is identical to SamplingDistance_X.)
 
double SmallestCoordinateStep_Y [get]
 Gets the smallest occurring distance between two neighbored y-coordinates. (So in the equidistant case, this is identical to SamplingDistance_Y.)
 
CoordinateDefinitionType Tag [set]
 Gets and sets the Tag of the DataArray2D which can be used for additional information. Now replaced by the property AdditionalInformation.
 
- Properties inherited from DataArrayBase
Dictionary< string, object > AdditionalInformation [get, set]
 Additional information to be stored at the data array.
 
abstract string[] CommentsOfDataEntries [get, set]
 Get and set the comment for each dimension in C^N.
 
abstract int DimensionalityOfCoordinates [get]
 Dimensionality M of the space of independent variables R^M
 
abstract int DimensionalityOfData [get]
 Dimensionality N of the space of data values C^N
 
UI.DataVisualization.GraphicsAddOnData GraphicsAddons [get, set]
 The graphics add-on data to be drawn.
 
abstract bool IsComplex [get]
 Are the values defined in C^N (TRUE) or in the subset of real numbers R^N (FALSE)
 
abstract bool NoSmoothingInterpolationMethod [get]
 Gets a flag indicating whether or not none of the interpolation methods is smoothing (like nearest neighbor or constant interval) -> TRUE But if one of the methods does (like all other methods) -> the flag is set to FALSE
 
PhysicalMeaning PhysicalMeaning [get, set]
 Gets and sets the physical meaning of the data array object (default: None)
 
abstract PhysicalProperty[] PhysicalPropertiesOfDataEntries [get, set]
 Get and set the physical property for each dimension in C^N
 
abstract PrecisionMode Precision [get]
 Get the highest occurring precision of the data.
 
- Properties inherited from IDocument
VirtualLabSession Session [get, set]
 every documents need to be handled in a session ==> default is the VirtualLab Mainsession
 
NodeVLExplorer TreeStructure [get]
 every document should have a node (maybe with subnodes) in the VirtualLab Explorer
 
DocumentType TypeOfDocument [get]
 Gets an enum entry specifying the type of the document.
 

Additional Inherited Members

- Static Public Attributes inherited from DataArrayBase
static string AdditionalInfoName_SingleWavelength
 Key to be used in the additional information list in order to identify a single wavelength which applies to all subsets.
 
static string AdditionalInfoName_SphericalModulationFlag
 Key to be used in the additional information list in order to identify the flag which tells whether or not the modulation of a EquidistantDataBased2DFieldGenerator is defined in spherical coordinates.
 
static string AdditionalInfoName_WavelengthPerSubset
 Key to be used in the additional information list in order to identify an array of wavelengths where every value applies to one subset.
 

Detailed Description

This class is subject to change. Programs using this class may require changes with a new version of VirtualLab.
Class for objects that store gridded data in C^N which are equidistant or non equidistant distributed in R^2

Constructor & Destructor Documentation

◆ DataArray2D() [1/6]

DataArray2D ( DataArray2D  dataArray)

Copy constructor

Parameters
dataArrayData array to copy

◆ DataArray2D() [2/6]

DataArray2D ( ComplexFieldArray  data,
PhysicalProperty[]  physicalPropertiesOfData,
string[]  commentsOfData,
CFieldDerivative1DReal  coordinatesX,
PhysicalProperty  physicalPropertyOfCoordinatesX,
string  commentOfCoordinatesX,
double  coordinateOfLastXIntervalsUpperLimit,
CFieldDerivative1DReal  coordinatesY,
PhysicalProperty  physicalPropertyOfCoordinatesY,
string  commentOfCoordinatesY,
double  coordinateOfLastYIntervalsUpperLimit,
ExtrapolationInfo  extrapolation = null,
InterpolationMethodForNonequidistantData  interpolationX = InterpolationMethodForNonequidistantData.ConstantInterval,
InterpolationMethodForNonequidistantData  interpolationY = InterpolationMethodForNonequidistantData.ConstantInterval 
)

Constructor for data, non-equidistant in x and y, and with a coordinate for the last interval's upper limit for x and y, respectively.

Parameters
dataThe data in C^N. Each single 2D ComplexField in this array holds one data subset, i.e. the complete set of data for one data dimension \(i\) ( \(1 \leq i \leq N\)).
physicalPropertiesOfDataPhysical properties of each data subset.
commentsOfDataComments for each data subset.
coordinatesXNon-equidistant coordinates for the data in X dimension.
physicalPropertyOfCoordinatesXPhysical property for the coordinates in X.
commentOfCoordinatesXComment for the coordinates in X.
coordinateOfLastXIntervalsUpperLimitCoordinate of the last X interval's upper limit.
coordinatesYNon-equidistant coordinates for the data in Y dimension.
physicalPropertyOfCoordinatesYPhysical property for the coordinates in Y.
commentOfCoordinatesYComment for the coordinates in Y.
coordinateOfLastYIntervalsUpperLimitCoordinate of the last Y interval's upper limit.
extrapolationOptional information about how extrapolation of the data shall be done. By default border value continuation is done.
interpolationXThe interpolation method to be used in x-direction.
interpolationYThe interpolation method to be used in y-direction.

◆ DataArray2D() [3/6]

DataArray2D ( ComplexFieldArray  data,
PhysicalProperty[]  physicalPropertiesOfData,
string[]  commentsOfData,
double  samplingDistanceX,
double  coordinateOfFirstDataPointX,
PhysicalProperty  physicalPropertyOfCoordinatesX,
string  commentOfCoordinatesX,
CFieldDerivative1DReal  coordinatesY,
PhysicalProperty  physicalPropertyOfCoordinatesY,
string  commentOfCoordinatesY,
double  coordinateOfLastYIntervalsUpperLimit,
ExtrapolationInfo  extrapolation = null,
InterpolationMethod  interpolationX = InterpolationMethod.Nearest,
InterpolationMethodForNonequidistantData  interpolationY = InterpolationMethodForNonequidistantData.ConstantInterval 
)

Constructor for data, equidistant in x and non-equidistant in y.

Parameters
dataThe data in C^N. Each single 2D ComplexField in this array holds one data subset, i.e. the complete set of data for one data dimension \(i\) ( \(1 \leq i \leq N\)).
physicalPropertiesOfDataPhysical properties of each data subset.
commentsOfDataComments for each data subset.
samplingDistanceXSampling distance in X
coordinateOfFirstDataPointXCoordinate of the first data point Data[0, y] for (and only for) equidistantly sampled data.
physicalPropertyOfCoordinatesXPhysical property for the coordinates in X.
commentOfCoordinatesXComment for the coordinates in X.
coordinatesYNon-equidistant coordinates for the data in Y dimension.
physicalPropertyOfCoordinatesYPhysical property for the coordinates in Y.
commentOfCoordinatesYComment for the coordinates in Y.
coordinateOfLastYIntervalsUpperLimitCoordinate of the last Y interval's upper limit.
extrapolationOptional information about how extrapolation of the data shall be done. By default border value continuation is done.
interpolationXThe interpolation method to be used in x-direction.
interpolationYThe interpolation method to be used in y-direction.

◆ DataArray2D() [4/6]

DataArray2D ( ComplexFieldArray  data,
PhysicalProperty[]  physicalPropertiesOfData,
string[]  commentsOfData,
CFieldDerivative1DReal  coordinatesX,
PhysicalProperty  physicalPropertyOfCoordinatesX,
string  commentOfCoordinatesX,
double  coordinateOfLastXIntervalsUpperLimit,
double  samplingDistanceY,
double  coordinateOfFirstDataPointY,
PhysicalProperty  physicalPropertyOfCoordinatesY,
string  commentOfCoordinatesY,
ExtrapolationInfo  extrapolation = null,
InterpolationMethodForNonequidistantData  interpolationX = InterpolationMethodForNonequidistantData.ConstantInterval,
InterpolationMethod  interpolationY = InterpolationMethod.Nearest 
)

Constructor for data, non-equidistant in x and equidistant in y.

Parameters
dataThe data in C^N. Each single 2D ComplexField in this array holds one data subset, i.e. the complete set of data for one data dimension \(i\) ( \(1 \leq i \leq N\)).
physicalPropertiesOfDataPhysical properties of each data subset.
commentsOfDataComments for each data subset.
coordinatesXNon-equidistant coordinates for the data in X dimension.
physicalPropertyOfCoordinatesXPhysical property for the coordinates in X.
commentOfCoordinatesXComment for the coordinates in X.
samplingDistanceYSampling distance in Y
coordinateOfFirstDataPointYCoordinate of the first data point Data[x, 0] for (and only for) equidistantly sampled data.


Parameters
physicalPropertyOfCoordinatesYPhysical property for the coordinates in Y.
commentOfCoordinatesYComment for the coordinates in Y.
coordinateOfLastXIntervalsUpperLimitCoordinate of the last X interval's upper limit.
extrapolationOptional information about how extrapolation of the data shall be done. By default border value continuation is done.
interpolationXThe interpolation method to be used in x-direction.
interpolationYThe interpolation method to be used in y-direction.

◆ DataArray2D() [5/6]

DataArray2D ( ComplexFieldArray  data,
PhysicalProperty[]  physicalPropertiesOfData,
string[]  commentsOfData,
double  samplingDistanceX,
double  coordinateOfFirstDataPointX,
PhysicalProperty  physicalPropertyOfCoordinatesX,
string  commentOfCoordinatesX,
double  samplingDistanceY,
double  coordinateOfFirstDataPointY,
PhysicalProperty  physicalPropertyOfCoordinatesY,
string  commentOfCoordinatesY,
ExtrapolationInfo  extrapolation = null,
InterpolationMethod  interpolationX = InterpolationMethod.Nearest,
InterpolationMethod  interpolationY = InterpolationMethod.Nearest 
)

Constructor for data, equidistant in x and y.

Parameters
dataThe data in C^N. Each single 2D ComplexField in this array holds one data subset, i.e. the complete set of data for one data dimension \(i\) ( \(1 \leq i \leq N\)).
physicalPropertiesOfDataPhysical properties of each data subset.
commentsOfDataComments for each data subset.
samplingDistanceXSampling distance in X
coordinateOfFirstDataPointXCoordinate of the first data point Data[0, y] for (and only for) equidistantly sampled data.
physicalPropertyOfCoordinatesXPhysical property for the coordinates in X.
commentOfCoordinatesXComment for the coordinates in X.
samplingDistanceYSampling distance in Y
coordinateOfFirstDataPointYCoordinate of the first data point Data[x, 0] for (and only for) equidistantly sampled data.
physicalPropertyOfCoordinatesYPhysical property for the coordinates in Y.
commentOfCoordinatesYComment for the coordinates in Y.
extrapolationOptional information about how extrapolation of the data shall be done. By default border value continuation is done.
interpolationXThe interpolation method to be used in x-direction.
interpolationYThe interpolation method to be used in y-direction.
Exceptions
ArgumentExceptionEmpty ComplexFieldArray given. or Wrong number of physical properties for the data given. or Wrong number of data comments given. or Sampling Distances have to be greater than zero.

◆ DataArray2D() [6/6]

DataArray2D ( double  data[,],
PhysicalProperty  physicalPropertyOfData,
string  commentOfData,
double  samplingDistanceX,
double  coordinateOfFirstDataPointX,
PhysicalProperty  physicalPropertyOfCoordinatesX,
string  commentOfCoordinatesX,
double  samplingDistanceY,
double  coordinateOfFirstDataPointY,
PhysicalProperty  physicalPropertyOfCoordinatesY,
string  commentOfCoordinatesY,
ExtrapolationInfo  extrapolation = null,
InterpolationMethod  interpolationX = InterpolationMethod.Nearest,
InterpolationMethod  interpolationY = InterpolationMethod.Nearest 
)

Special constructor for data, equidistant in x and y which gets a double[,] array. Only one subset is used, i.e. N = 1.

Parameters
dataThe data in C^1. The double values will be filled into one real valued subset.
physicalPropertyOfDataPhysical properties of each data subset.
commentOfDataComments for each data subset.
samplingDistanceXSampling distance in X
coordinateOfFirstDataPointXCoordinate of the first data point Data[0, y] for (and only for) equidistantly sampled data.
physicalPropertyOfCoordinatesXPhysical property for the coordinates in X.
commentOfCoordinatesXComment for the coordinates in X.
samplingDistanceYSampling distance in Y
coordinateOfFirstDataPointYCoordinate of the first data point Data[x, 0] for (and only for) equidistantly sampled data.
physicalPropertyOfCoordinatesYPhysical property for the coordinates in Y.
commentOfCoordinatesYComment for the coordinates in Y.
extrapolationOptional information about how extrapolation of the data shall be done. By default border value continuation is done.
interpolationXThe interpolation method to be used in x-direction.
interpolationYThe interpolation method to be used in y-direction.

Member Function Documentation

◆ Clone()

override object Clone ( )

Deep copy

Returns
Copy of data array

◆ CoordinateOfDataPointIndex_X()

double CoordinateOfDataPointIndex_X ( long  indexX)

Gives the x coordinate of a certain data point as double.

Parameters
indexXX index of the data point to get the coordinate for.
Returns
X coordinate of the data point as double

◆ CoordinateOfDataPointIndex_X_asPValue()

PhysicalValue CoordinateOfDataPointIndex_X_asPValue ( long  indexX)

Gives the x coordinate of a certain data point as PhysicalValue.

Parameters
indexXX index of the data point to get the coordinate for.
Returns
X coordinate of the data point as PhysicalValue

◆ CoordinateOfDataPointIndex_Y()

double CoordinateOfDataPointIndex_Y ( long  indexY)

Gives the y coordinates of a certain data point as double.

Parameters
indexYY index of the data point to get the coordinate for.
Returns
Y coordinate of the data point as double

◆ CoordinateOfDataPointIndex_Y_asPValue()

PhysicalValue CoordinateOfDataPointIndex_Y_asPValue ( long  indexY)

Gives the y coordinates of a certain data point as PhysicalValue.

Parameters
indexYY index of the data point to get the coordinate for.
Returns
Y coordinate of the data point as PhysicalValue

◆ CreateDataArray2DEquidistantOrNonEquidistant() [1/2]

static DataArray2D CreateDataArray2DEquidistantOrNonEquidistant ( ComplexFieldArray  data,
PhysicalProperty[]  physicalPropertiesOfData,
string[]  commentsOfData,
List< PhysicalValue coordinatesX,
List< PhysicalValue coordinatesY,
InterpolationMethod  interpolationMethodEquidistant,
InterpolationMethodForNonequidistantData  interpolationMethodNonEquidistant,
ExtrapolationInfo  extrapolation = null 
)
static

Static 'constructor' for data that can be either equidistant or non-equidistant.

Parameters
dataThe data in C^N. Each single 2D ComplexField in this array holds one data subset, i.e. the complete set of data for one data dimension \(i\) ( \(1 \leq i \leq N\)).
physicalPropertiesOfDataPhysical properties of each data subset.
commentsOfDataComments for each data subset.
coordinatesXThe coordinates in x-direction (sorted ascending). If they are equidistant, sampling distance and minimum value are calculated from this array. Otherwise the given coordinates are used directly and the last interval's upper limit is the last coordinate plus the absolute distance to the last but one coordinate. Comment and physical property of the x-axis are taken from the corresponding properties of the first coordinate.
coordinatesYThe coordinates in y-direction (sorted ascending). If they are equidistant, sampling distance and minimum value are calculated from this array. Otherwise the given coordinates are used directly and the last interval's upper limit is the last coordinate plus the absolute distance to the last but one coordinate. Comment and physical property of the y-axis are taken from the corresponding properties of the first coordinate.
interpolationMethodEquidistantThe interpolation method used for equidistant axes.
interpolationMethodNonEquidistantThe interpolation method used for non-equidistant axes.
extrapolationOptional information about how extrapolation of the data shall be done. By default border value continuation is done.
Returns
The two-dimensional gridded data array.

◆ CreateDataArray2DEquidistantOrNonEquidistant() [2/2]

static DataArray2D CreateDataArray2DEquidistantOrNonEquidistant ( List<(double x, double y, Complex[] data)>  dataPoints,
PhysicalProperty[]  physicalPropertiesOfData,
string[]  commentsOfData,
PhysicalProperty  physicalPropertyOfCoordinatesX,
string  commentOfCoordinatesX,
PhysicalProperty  physicalPropertyOfCoordinatesY,
string  commentOfCoordinatesY,
InterpolationMethod  interpolationMethodEquidistant,
InterpolationMethodForNonequidistantData  interpolationMethodNonEquidistant,
ExtrapolationInfo  extrapolation = null 
)
static

Static 'constructor' for data points that can be either equidistant or non-equidistant.

Parameters
dataPointsThe data points as list of tuples (x, y, and array with complex data values for each subset).
physicalPropertiesOfDataPhysical properties of each data subset.
commentsOfDataComments for each data subset.
physicalPropertyOfCoordinatesXPhysical property for the coordinates in x.
commentOfCoordinatesXComment for the coordinates in x.
physicalPropertyOfCoordinatesYPhysical property for the coordinates in y.
commentOfCoordinatesYComment for the coordinates in y.
interpolationMethodEquidistantThe interpolation method used for equidistant axes.
interpolationMethodNonEquidistantThe interpolation method used for non-equidistant axes.
extrapolationOptional information about how extrapolation of the data shall be done. By default border value continuation is done.
Returns
The complex-valued two-dimensional gridded data array. Points with no data are indicated by NaN.

◆ EmbedExtract() [1/2]

void EmbedExtract ( Vector  numberOfDataPoints)

Method to perform an embed/extract operation on the data array.

Parameters
numberOfDataPointsThe numbers of the data points to be used for the embed/extract operation in each dimension X and Y. If, for one dimension x or y, it is greater than this.NoOfDataPoints_X/Y, the data array will be embedded, otherwise the given number of data points will be extracted.

◆ EmbedExtract() [2/2]

DataArray2D EmbedExtract ( Vector  startPoint,
Size  extractSize 
)

Method to extract a given data point range from this

Parameters
startPointData point indices to start the extraction with (zero based!).
extractSizeNumber of data point to be extracted in X and Y.
Returns
A data array with the extracted data.
Exceptions
ExceptionEmbed Extract is only available for equidistant data arrays.
ArgumentExceptionThe extraction size has to be larger than zero.

◆ Equals()

override bool Equals ( object  obj,
EqualityIntent  equalityIntent 
)

Checks whether two DataArray1D objects are equal.

Parameters
objThe System.Object to compare with this instance.
equalityIntentDefines what kind of equality you want to check when comparing two objects, for example all values or physical equality.
Returns
true if the specified System.Object is equal to this instance; otherwise, false.

◆ EquidistantToNonEquidistant() [1/2]

void EquidistantToNonEquidistant ( AxisDirection  directionToConvert,
bool  forNN_convertCenterCoordinateInsteadOfIntervalBorder 
)

If this data array is equidistant, this conversion method makes it non equidistant for the given dimension X or Y. This is done by calculating the member NonequidistantCoordinates_X/Y from CoordinateOfFirstDataPoint_X/Y, SamplingDistance_X/Y and the respective index.

Parameters
directionToConvertDimension to convert (X and/or Y).
forNN_convertCenterCoordinateInsteadOfIntervalBorderIn case an equidistant data array is given, it is to be converted into a non-equidistant one. This will take the interpolation method into account, which means that for Nearest-Neighbor interpolation the interval boundaries are converted instead of the original coordinates. This flag will prevent this if set to true and will ensure that the original coordinates are converted. This is usually needed for subsequent coordinate transformations only.

◆ EquidistantToNonEquidistant() [2/2]

void EquidistantToNonEquidistant ( bool  forNN_convertCenterCoordinateInsteadOfIntervalBorder)

If this data array is equidistant, this conversion method makes it non equidistant for both dimensions X and Y. This is done by calculating the member NonequidistantCoordinates_X/Y from CoordinateOfFirstDataPoint_X/Y, SamplingDistance_X/Y and the respective index.

Parameters
forNN_convertCenterCoordinateInsteadOfIntervalBorderIn case an equidistant data array is given, it is to be converted into a non-equidistant one. This will take the interpolation method into account, which means that for Nearest-Neighbor interpolation the interval boundaries are converted instead of the original coordinates. This flag will prevent this if set to true and will ensure that the original coordinates are converted. This is usually needed for subsequent coordinate transformations only.

◆ FieldInterpolation_PureEquidistantSampling()

DataArray2D FieldInterpolation_PureEquidistantSampling ( SamplingParameters  sParaInterpolation,
InterpolationMethod interpolationMethod = null 
)

Interpolates this DataArray2D completely and gives a new resampled data array if both dimensions x and y are sampled equidistantly. Each DataSubSet is interpolated to the user defined sampling parameters

Parameters
sParaInterpolationThe sampling parameters which shall be used for interpolation.
interpolationMethodOptional parameter to specify the used interpolation method. If this optional parameter is not set, the interpolation stored in the data array for the x-direction is used.
Returns
The interpolated data array.
Exceptions
ArgumentExceptionInterpolation of DataArray2D is not supported for non-equidistant coordinates. or Interpolation of DataArray2D is not supported for different interpolation methods in x- and y-direction.

◆ Fill()

void Fill ( Complex[]  values)

Method to fill the data array subsets, each with a constant value.

Parameters
valuesThe values to be used for filling the DataArray2D

◆ GetCoordinateRange_X()

PhysicalValueRange GetCoordinateRange_X ( bool  boundaryExtrapolation)

Gets the whole range of x-coordinates (coordinate extent).

Parameters
boundaryExtrapolationIf set, the method works as if the interpolation method were set to Nearest Neighbor or Constant Interval, resp. That means for equidistant data an extrapolation of half a sampling distance below the coordinates minimum and above the coordinates maximum. For non equidistant data it means an extrapolation between the coordinates maximum and CoordinateOfLast_X_IntervalsUpperLimit. If the interpolation method is Nearest Neighbor or Constant Interval resp., this flag has no meaning, because extrapolation will be done anyway. If the 'array size' (range between first and last data point's coordinate) is needed for Nearest Neighbor or Constant Interval, it has to be calculated from CoordinateOfFirstDataPoint_X and CoordinateOfLastDataPoint_X.
Returns
The whole range of x-coordinates.

◆ GetCoordinateRange_Y()

PhysicalValueRange GetCoordinateRange_Y ( bool  boundaryExtrapolation)

Gets the whole range of y-coordinates (coordinate extent).

Parameters
boundaryExtrapolationIf set, the method works as if the interpolation method were set to Nearest Neighbor or Constant Interval, resp. That means for equidistant data an extrapolation of half a sampling distance below the coordinates minimum and above the coordinates maximum. For non equidistant data it means an extrapolation between the coordinates maximum and CoordinateOfLast_Y_IntervalsUpperLimit. If the interpolation method is Nearest Neighbor or Constant Interval resp., this flag has no meaning, because extrapolation will be done anyway. If the 'array size' (range between first and last data point's coordinate) is needed for Nearest Neighbor or Constant Interval, it has to be calculated from CoordinateOfFirstDataPoint_Y and CoordinateOfLastDataPoint_Y.
Returns
The whole range of y-coordinates.

◆ HeaderInformation()

override string HeaderInformation ( int  subSetID,
TextExportImportSettings  exportSettings,
FieldQuantity quantityForInformation = null 
)

Public method to get the export header (data meaning and sampling parameters) for a specific data array.

Parameters
subSetIDThe ID of the subset for which the header information shall be extracted.
exportSettingsThe text export settings (header indicator, decimal separator and so on).
quantityForInformationOptional FieldQuantity for which the header information shall be generated.
Returns
The export header string for the subset within the DataArray which has the subSetID.

◆ IndexOfDataPointAtCoordinate_X() [1/2]

long IndexOfDataPointAtCoordinate_X ( double  xCoord,
bool  enforceSteppedInterpolation,
out bool  coordinatesOutsideGivenIndexRange 
)

Method to get the x index of that data point which corresponds to a given x coordinate.

Parameters
xCoordcoordinate to get the corresponding data point's index for
enforceSteppedInterpolationIf true, a stepped interpolation (i.e. Nearest Neighbor or Constant Interval) will be used, no matter what the DataArrays own interpolation method is. This flag affects the border handling only, i.e. how restrictive the flag coordinatesOutsideGivenIndexRange will be set.
coordinatesOutsideGivenIndexRangeFlag indicating whether the given coordinate lies outside the valid range (defined by the number of data points in x direction). The 'outside' detection considers the flag enforceSteppedInterpolation.
Returns
the x index of that data point which corresponds to the given x coordinate

◆ IndexOfDataPointAtCoordinate_X() [2/2]

long IndexOfDataPointAtCoordinate_X ( double  xCoord,
long  startIndex,
long  endIndex,
bool  enforceSteppedInterpolation,
out bool  coordinatesOutsideGivenIndexRange 
)

Method to get the x index of that data point which corresponds to a given x coordinate.

Parameters
xCoordcoordinate to get the corresponding data point's index for
startIndexindex to begin the search at
endIndexindex to stop the search at
enforceSteppedInterpolationIf true, a stepped interpolation (i.e. Nearest Neighbor or Constant Interval) will be used, no matter what the DataArrays own interpolation method is. This flag affects the border handling only, i.e. how restrictive the flag coordinatesOutsideGivenIndexRange will be set.
coordinatesOutsideGivenIndexRangeFlag indicating whether the given coordinate lies outside the valid range (defined by startIndex and endIndex). The 'outside' detection considers the flag enforceSteppedInterpolation.
Returns
the x index of that data point which corresponds to the given x coordinate

◆ IndexOfDataPointAtCoordinate_Y() [1/2]

long IndexOfDataPointAtCoordinate_Y ( double  yCoord,
bool  enforceSteppedInterpolation,
out bool  coordinatesOutsideGivenIndexRange 
)

Method to get the y index of that data point which corresponds to a given y coordinate.

Parameters
yCoordcoordinate to get the corresponding data point's index for
enforceSteppedInterpolationIf true, a stepped interpolation (i.e. Nearest Neighbor or Constant Interval) will be used, no matter what the DataArrays own interpolation method is. This flag affects the border handling only, i.e. how restrictive the flag coordinatesOutsideGivenIndexRange will be set.
coordinatesOutsideGivenIndexRangeFlag indicating whether the given coordinate lies outside the valid range (defined by the number of data points in y direction). The 'outside' detection considers the flag enforceSteppedInterpolation.
Returns
the y index of that data point which corresponds to the given y coordinate

◆ IndexOfDataPointAtCoordinate_Y() [2/2]

long IndexOfDataPointAtCoordinate_Y ( double  yCoord,
long  startIndex,
long  endIndex,
bool  enforceSteppedInterpolation,
out bool  coordinatesOutsideGivenIndexRange 
)

Method to get the y index of that data point which corresponds to a given y coordinate.

Parameters
yCoordcoordinate to get the corresponding data point's index for
startIndexindex to begin the search at
endIndexindex to stop the search at
enforceSteppedInterpolationIf true, a stepped interpolation (i.e. Nearest Neighbor or Constant Interval) will be used, no matter what the DataArrays own interpolation method is. This flag affects the border handling only, i.e. how restrictive the flag coordinatesOutsideGivenIndexRange will be set.
coordinatesOutsideGivenIndexRangeFlag indicating whether the given coordinate lies outside the valid range (defined by startIndex and endIndex). The 'outside' detection considers the flag enforceSteppedInterpolation.
Returns
the y index of that data point which corresponds to the given y coordinate

◆ InsertDataArray2D()

void InsertDataArray2D ( DataArray2D  arrayToInsert)

Inserts another DataArray2D into this. Data inside the coordinate range of the array to insert will be overwritten.

Parameters
arrayToInsertDataArray2D to be inserted into this.

◆ Load() [1/2]

static DataArray2D Load ( string  fileName)
static

Loads the specified file name. Works independently from whether the document has been saved without view settings (as prior to VL 6.0) or with view settings.

Parameters
fileNameName of the file.
Returns
The specified document.

◆ Load() [2/2]

static DataArray2D Load ( string  fileName,
out UI.ViewSettings_SaveAndLoad.ListOfSavedViewSettings  viewSettings 
)
static

Loads the specified file name. Works independently from whether the document has been saved without view settings (as prior to VL 6.0) or with view settings.

Parameters
fileNameName of the file.
viewSettingsThe view settings the data array has been saved with.
Returns
The specified document.

◆ Mirror() [1/2]

void Mirror ( AxisDirection  mirrorAxis)

Mirrors the dataArray2D either in x or y direction. The position of the mirror axis is defined as the center of the array (with reference to the coordinate to invert).

Parameters
mirrorAxisMirror axis. If it is X, the array is inverted in Y coordinates, if it is Y, the array is inverted in X coordinates. Z is not allowed.

◆ Mirror() [2/2]

void Mirror ( AxisDirection  mirrorAxis,
double  mirrorAxisPosition 
)

Mirrors the dataArray2D either in x or y direction. The position of the mirror axis can be arbitrary.

Parameters
mirrorAxisMirror axis. If it is X, the array is inverted in Y coordinates, if it is Y, the array is inverted in X coordinates. Z is not allowed.
mirrorAxisPositionCoordinate of the mirror axis.

◆ operator!=()

static bool operator!= ( DataArray2D  da1,
DataArray2D  da2 
)
static

Checks whether two DataArray2D objects are unequal.

Parameters
da1The first data array.
da2The second data array.
Returns
True if the two data arrays differ in at least one property or variable.

◆ operator*()

static DataArray2D operator* ( DataArray2D  dataArray1,
DataArray2D  dataArray2 
)
static

Implements the operator * for multiplication of two two-dimensional data arrays.

Parameters
dataArray1The first factor.
dataArray2The second factor.
Returns
The result of the multiplication.

◆ operator+()

static DataArray2D operator+ ( DataArray2D  dataArray1,
DataArray2D  dataArray2 
)
static

Implements the operator + for addition of two two-dimensional data arrays.

Parameters
dataArray1The first summand.
dataArray2The second summand.
Returns
The result of the addition.

◆ operator-()

static DataArray2D operator- ( DataArray2D  dataArray1,
DataArray2D  dataArray2 
)
static

Implements the operator - for subtraction of two two-dimensional data arrays.

Parameters
dataArray1The minuend.
dataArray2The subtrahend.
Returns
The result of the subtraction.

◆ operator/()

static DataArray2D operator/ ( DataArray2D  dataArray1,
DataArray2D  dataArray2 
)
static

Implements the operator / for division of two two-dimensional data arrays.

Parameters
dataArray1The dividend.
dataArray2The divisor.
Returns
The result of the division.

◆ operator==()

static bool operator== ( DataArray2D  da1,
DataArray2D  da2 
)
static

Checks whether two DataArray2D objects are equal.

Parameters
da1The first data array.
da2The second data array.
Returns
True if the two data arrays represent exactly the same data.

◆ PointInterpolation() [1/2]

Complex[] PointInterpolation ( VectorD  coords,
bool  enforceSteppedInterpolation,
out Vector  relatedDataPointIndices,
out bool  coordinatesOutsideGivenIndexRange 
)

Gives the interpolated complex value for given coordinates. Search intervals [startIndices.X, endIndices.X] and [startIndices.Y, endIndices.Y] can be set. At the moment, there are only nearest neighbor (for equidistant data) and constant interval interpolation (for non equidistant data) supported.

Parameters
coordscoordinates to interpolate the value for
enforceSteppedInterpolationIf true, a stepped interpolation (i.e. Nearest Neighbor or Constant Interval) will be used, no matter what the DataArrays own interpolation method is.
relatedDataPointIndicesGives the indices of the next smaller (non equidistant) or the nearest neighbor (equidistant) coordinates.
coordinatesOutsideGivenIndexRangeFlag, indicating whether the given coordinates lie outside the given index range
Returns
interpolated complex value for the given coordinates

◆ PointInterpolation() [2/2]

Complex[] PointInterpolation ( VectorD  coords,
Vector  startIndices,
Vector  endIndices,
bool  enforceSteppedInterpolation,
out Vector  relatedDataPointIndices,
out bool  coordinatesOutsideGivenIndexRange 
)

Gives the interpolated complex value for given coordinates. Search intervals [startIndices.X, endIndices.X] and [startIndices.Y, endIndices.Y] can be set. At the moment, there are only nearest neighbor (for equidistant data), constant interval interpolation (for non equidistant data), and linear interpolation (for both sampling types) supported.

Parameters
coordscoordinates to interpolate the value for
startIndicesStart indices for faster search. Important: If coords lie outside the range [startIndices...endIndices], the result most probably will be unexpected.
endIndicesEnd indices for faster search. Important: If coords lie outside the range [startIndices...endIndices], the result most probably will be unexpected.
enforceSteppedInterpolationIf true, a stepped interpolation (i.e. Nearest Neighbor or Constant Interval) will be used, no matter what the DataArrays own interpolation method is.
relatedDataPointIndicesGives the indices of the next smaller (non equidistant) or the nearest neighbor (equidistant) coordinates.
coordinatesOutsideGivenIndexRangeFlag, indicating whether the given coordinates lie outside the given index range
Returns
interpolated complex value for the given coordinates

◆ Rotate()

void Rotate ( DiscreteOrientation  rotationAngle)

TU20111202 Rotates this DataArray2D around its central point

Parameters
rotationAngleRotation angle

◆ Save()

override void Save ( string  fileName)

Save this data array to a file with a given name.

Parameters
fileNamethe file name used for saving the document

◆ SetDataWithPropertiesAndCommentsAtOnce()

void SetDataWithPropertiesAndCommentsAtOnce ( ComplexFieldArray  data,
PhysicalProperty[]  properties,
string[]  comments 
)

Sets the members Data, PhysicalPropertiesOfDataEntries and CommentsOfDataEntries at once to ensure consistency.

Parameters
dataData to set.
propertiesPhysicalPropertiesOfDataEntries to set.
commentsCommentsOfDataEntries to set.

Property Documentation

◆ NonequidistantCoordinates_X

CFieldDerivative1DReal NonequidistantCoordinates_X
getset

 Get and set the x-coordinates for the data in R^2.
 IMPORTANT: This property applies for non equidistant data only! If you need to get the coordinates for one index for equidistant as well as for non equidistant data, 
 use the method CoordinateOfDataPointIndex_X(long index) instead!
 For setting pay attention to the following restrictions: 
 value must not be complex and value.SamplingPointsOneD has to be equal to NoOfDataPoints_X.
 </summary>