NeurApp 1.1
NeurApp - software for exploring approximation by artificial neural networks on functions of one or two variables.
|
Base class for complex vectors. More...
Public Member Functions | |
virtual complex[] | ToArray () |
Copies the current vector to an array and returns that array. | |
abstract ComplexVectorBase | GetCopyBase () |
Creates and returns a copy of the current vector. WARNING: This method should be overridden in the derived classes in such a way that the returned vector is of the same type as the current vector. | |
abstract ComplexVectorBase | GetNewBase (int length) |
Creates and returns a new vector of the specified dimension in such a way that the type of the returned vector is the same as of the current vector. WARNING: This method should be overridden in all derived classes such that the returned vector type is the same as the type of the current vector. | |
abstract ComplexVectorBase | GetNewBase () |
Creates and returns a new vector with the same dimension and of the same type as the current vector. | |
abstract ComplexMatrixBase | GetNewComplexMatrixBase (int rowCount, int columnCount) |
Creates and returns a new matrix with the specified dimensona, and of a type that is consistent with the type of the current vector. | |
abstract ComplexMatrixBase | GetNewComplexMatrixBase () |
Creates and returns a new matrix of a type that is consistent with the type of the current vector, and with both dimensions equal to the dimension of the current vector. | |
virtual IComplexVector | GetCopy () |
Returns a deep copy of the current object. | |
virtual IComplexVector | GetNew (int length) |
Creates and returns a new vector with the specified dimension, and of the same type as the current vector. | |
virtual IComplexVector | GetNew () |
Creates and returns a new vector with the same dimension and of the same type as the current vector. | |
virtual IComplexMatrix | GetNewComplexMatrix (int rowCount, int columnCount) |
Creates and returns a new matrix with the specified dimensona, and of a type that is consistent with the type of the current vector. | |
virtual IComplexMatrix | GetNewComplexMatrix () |
Creates and returns a new matrix of a type that is consistent with the type of the current vector, and with both dimensions equal to the dimension of the current vector. | |
virtual void | SetZero () |
Sets all components of the current complex vector to 0. | |
virtual void | SetConstant (complex elementValue) |
Sets all components of the current complex vector to the specified value. | |
virtual void | SetUnit (int which) |
Sets the current complex vector to the specific unit vector (one component equals 1, others are 0). | |
virtual void | SetRandom () |
Sets the current vector such that it contains random elements on the interval (0,1]. | |
virtual void | SetRandom (IRandomGenerator rnd) |
Sets the current vector such that it contains random elements on the interval {(0,1],(0,1]}. | |
virtual double | NormP (int p) |
p-norm, p-th root of sum of absolute values of components raised to the power of p. | |
IComplexVector | Normalized () |
Returns a vector that equals a normalized current complex vector. | |
void | Normalize () |
Normalizes the current vector. | |
void | Negate () |
Changes the sign of the current complex vector. | |
Static Public Member Functions | |
static int | Compare (IComplexVector v1, IComplexVector v2) |
Compares two complex vectors and returns -1 if the first complex vector is smaller than the second one, 0 if complex vectors are equal, and 1 if the first complex vector is greater. Complex vector that is null is considered smaller than a complex vector that is not null. Two null complex vectors are considered equal. Complex vector with smaller dimension is considered smaller than a complex vector with greater dimension. Complex vector with equal dimensions ar compared by elements. The first element that is different decides which complex vector is considered greater. | |
static void | Resize (ref IComplexVector vec, IComplexVector template, int dimension) |
Resizes, if necessary, the specified complex vector according to the required dimension. If the complex vector is initially null then a new complex vector is created. If in this case a template complex vector is specified then the newly created complex vector will be of the same type as that template complex vector, because it is created by the GetNew() method on that vector. If dimension of the initial complex vector does not match the required dim., then vector is resized. If the specified complex vector dimension is less or equal to 0 then vector is resized with the same dimension as that of the template vector. If in this case the template vector is null, an exception is thrown. WARNINGS: Components are NOT preserved and have in general undefined values after operation is performed. If vector and template are null then the type of nawly created vector is Vector. | |
static void | Resize (ref IComplexVector vec, int dimension) |
Resizes, if necessary, the specified complex vector according to the required dimension. If the complex vector is initially null then a new vector is created. If dimension of the initial complex vector does not match the required dimension, then vector is resized. Components are NOT preserved and have in general undefined values after operation is performed. WARNING: If the vector is initially null then the type of the newly created vector is Vector. | |
static void | Resize (ref IComplexVector vec, IComplexVector template) |
Resizes, if necessary, the specified complex vector according to the dimension of the specified template vector. If the complex vector is initially null then a new complex vector is created. In this case the newly created vector will be of the same type as that template vector, because it is created by the GetNew() method on that vector. If dimension of the initial complex vector does not match the dimension of the template vector, then vector is resized. If the template vector is null, then an exception is thrown. WARNINGS: Components are NOT preserved and have in general undefined values after operation is performed. If complex vector and template are null then the type of newly created vector is Vector. | |
static void | CopyPlain (IComplexVector a, IComplexVector result) |
Copies components of a complex vector to another complex vector. This is a plain version that does not perform any dimension checks. WARNING: dimensions of the copied vector and result vector must match. | |
static void | Copy (IComplexVector a, IComplexVector result) |
Copies components of a complex vector to another complexvector. WARNING: dimensions of the copied vector and result vector must match. | |
static void | Copy (IComplexVector a, ref IComplexVector result) |
Copies components of a complex vectr to another complex vector. Resulting complex vector is allocated or reallocated if necessary. | |
static void | NegatePlain (IComplexVector a, IComplexVector result) |
Stores a negative complex vector of the specified complex vector to another complex vector. This is a plain version of the method that does not perform any consistency checks. WARNING: dimensions of the copied vector and result vector must match. | |
static void | Negate (IComplexVector a, IComplexVector result) |
Stores a negative complex vector of the specified complex vector to another complex vector. WARNING: dimensions of the copied vector and result vector must match. | |
static void | Negate (IComplexVector a, ref IComplexVector result) |
Stores a negative complex vector of the specified complex vector to another complex vector. Resulting vector is allocated or reallocated if necessary. | |
static void | AddPlain (IComplexVector a, IComplexVector b, IComplexVector result) |
Sums two complex vectors and stores the result in the specified result complex vector. This is a plain version of the method that does not perform any consistency checks. WARNING: dimensions of vectors must match, otherwise an exception is thrown. | |
static void | Add (IComplexVector a, IComplexVector b, IComplexVector result) |
Sums two complex vectors and stores the result in the specified result complex vector. WARNING: dimensions of vectors must match, otherwise an exception is thrown. | |
static void | Add (IComplexVector a, IComplexVector b, ref IComplexVector result) |
Sums two complex vectors and stores the result in the specified result complex vector. WARNING: dimensions of operands must match, otherwise an exception is thrown. If dimensions of the result do not match then teh result is re-allocated. | |
static void | SubtractPlain (IComplexVector a, IComplexVector b, IComplexVector result) |
Subtracts two complex vectors and stores the result in the specified result complex vector. This is a plain version of the method that does not perform any consistency checks. WARNING: dimensions of vectors must match, otherwise an exception is thrown. | |
static void | Subtract (IComplexVector a, IComplexVector b, IComplexVector result) |
Subtracts two complex vectors and stores the result in the specified result complex vector. WARNING: dimensions of vectors must match, otherwise an exception is thrown. | |
static void | Subtract (IComplexVector a, IComplexVector b, ref IComplexVector result) |
Subtracts two complex vectors and stores the result in the specified result complex vector. WARNING: dimensions of operands must match, otherwise an exception is thrown. If dimensions of the result do not match then teh result is re-allocated. | |
static void | ArrayAddPlain (IComplexVector a, double scal, IComplexVector result) |
Addition of a scalar to all components of a complex vector. This is a plain version of the method that does not perform any consistency checks. Vector operand must be defined (non-null). | |
static void | ArrayAdd (IComplexVector a, double scal, IComplexVector result) |
Addition of a scalar to all components of a complex vector. Vector operand must be defined (non-null). | |
static void | ArrayAdd (IComplexVector a, double scal, ref IComplexVector result) |
Addition of a scalar to all components of a complex vector. Vector operand must be defined (non-null). | |
static void | ArraySubtractPlain (IComplexVector a, double scal, IComplexVector result) |
Subtraction of a scalar from all components of a complex vector. This is a plain version of the method that does not perform any consistency checks. Vector operand must be defined (non-null). | |
static void | ArraySubtract (IComplexVector a, double scal, IComplexVector result) |
Subtraction of a scalar from all components of a complex vector. Vector operand must be defined (non-null). | |
static void | ArraySubtract (IComplexVector a, double scal, ref IComplexVector result) |
Subtraction of a scalar to all components of a complex vector. Vector operand must be defined (non-null). | |
static void | MultiplyPlain (IComplexVector a, double scal, IComplexVector result) |
Multiplication of a complex vector by a scalar. This is a plain version of the method that does not perform any consistency checks. Vector operand must be defined (non-null). | |
static void | Multiply (IComplexVector a, double scal, IComplexVector result) |
Multiplication of a complex vector by a scalar. Vector operand must be defined (non-null). | |
static void | Multiply (IComplexVector a, double scal, ref IComplexVector result) |
Multiplication of a complex vector by a scalar. Vector operand must be defined (non-null). | |
static void | ScalePlain (IComplexVector a, double scal, IComplexVector result) |
Multiplication of a complex vector by a scalar. This is a plain version of the method that does not perform any consistency checks. Vector operand must be defined (non-null). | |
static void | Scale (IComplexVector a, double scal, IComplexVector result) |
Multiplication of a complex vector by a scalar. Vector operand must be defined (non-null). | |
static void | Scale (IComplexVector a, double scal, ref IComplexVector result) |
Multiplication of a complex vector by a scalar. Vector operand must be defined (non-null). | |
static void | DividePlain (IComplexVector a, complex scal, IComplexVector result) |
Division of a complex vector by a complex scalar. This is a plain version of the method that does not perform any consistency checks. Vector operand must be defined (non-null). | |
static void | Divide (IComplexVector a, complex scal, IComplexVector result) |
Division of a complex vector by a complex scalar. Complex vector operand must be defined (non-null). | |
static void | Divide (IComplexVector a, complex scal, ref IComplexVector result) |
Division of a complex vector by a complex scalar. Complex vector operand must be defined (non-null). | |
static void | DyadicProductPlain (IComplexVector a, IComplexVector b, IComplexMatrix result) |
Calculates dyadic product of two complex vectors and stores the result in the specified result matrix. This is a plain version of the method that does not perform any consistency checks. WARNING: dimensions must match, otherwise an exception is thrown. | |
static void | DyadicProduct (IComplexVector a, IComplexVector b, IComplexMatrix result) |
Calculates dyadic product of two complex vectors and stores the result in the specified result complex matrix. WARNING: dimensions must match, otherwise an exception is thrown. | |
static void | DyadicProduct (IComplexVector a, IComplexVector b, ref IComplexMatrix result) |
Calculates dyadic product of two complex vectors and stores the result in the specified result complex matrix. WARNING: dimensions of operands must match, otherwise an exception is thrown. If dimensions of the result do not match then teh result is re-allocated. | |
static void | CrossProductPlain (IComplexVector a, IComplexVector b, IComplexVector result) |
Calculates a vector product (cross product) of two complex vectors and stores the result in the specified result complex vector. This is a plain version of the method that does not perform any consistency checks. WARNING: dimensions of all vectors must be 3, otherwise an exception is thrown. | |
static void | CrossProduct (IComplexVector a, IComplexVector b, IComplexVector result) |
Calculates a vector product (cross product) of two complex vectors and stores the result in the specified result complex vector. WARNING: dimensions of all vectors must be 3, otherwise an exception is thrown. | |
static void | CrossProduct (IComplexVector a, IComplexVector b, ref IComplexVector result) |
Calculates a vector product (cross product) of two complex vectors and stores the result in the specified result complex vector. WARNING: dimensions of operands must match, otherwise an exception is thrown. If dimensions of the result do not match then teh result is re-allocated. | |
static void | VectorProductPlain (IComplexVector a, IComplexVector b, IComplexVector result) |
Calculates a vector product (cross product) of two complex vectors and stores the result in the specified result complex vector. This is a plain version of the method that does not perform any consistency checks. WARNING: dimensions of all vectors must be 3, otherwise an exception is thrown. | |
static void | VectorProduct (IComplexVector a, IComplexVector b, IComplexVector result) |
Calculates a vector product (cross product) of two complex vectors and stores the result in the specified result complex vector. WARNING: dimensions of all vectors must be 3, otherwise an exception is thrown. | |
static void | VectorProduct (IComplexVector a, IComplexVector b, ref IComplexVector result) |
Calculates a vector product (cross product) of two complex vectors and stores the result in the specified result complex vector. WARNING: dimensions of operands must match, otherwise an exception is thrown. If dimensions of the result do not match then teh result is re-allocated. | |
static void | ArrayProductPlain (IComplexVector a, IComplexVector b, IComplexVector result) |
Calculates array product (element-by-element product) of two complex vectors and stores the result in the specified result complex vector. This is a plain version of the method that does not perform any consistency checks. WARNING: dimensions of all vectors must be 3, otherwise an exception is thrown. | |
static void | ArrayProduct (IComplexVector a, IComplexVector b, IComplexVector result) |
Calculates array product (element-by-element product) of two complex vectors and stores the result in the specified result complex vector. WARNING: dimensions of all vectors must be 3, otherwise an exception is thrown. | |
static void | ArrayProduct (IComplexVector a, IComplexVector b, ref IComplexVector result) |
Calculates array product (element-by-element product) of two complex vectors and stores the result in the specified result complex vector. WARNING: dimensions of operands must match, otherwise an exception is thrown. If dimensions of the result do not match then teh result is re-allocated. | |
static void | ArrayQuotientPlain (IComplexVector a, IComplexVector b, IComplexVector result) |
Calculates array quotient (element-by-element division) of two complex vectors and stores the result in the specified result complex vector. This is a plain version of the method that does not perform any consistency checks. WARNING: dimensions of all vectors must be 3, otherwise an exception is thrown. | |
static void | ArrayQuotient (IComplexVector a, IComplexVector b, IComplexVector result) |
Calculates array quotient (element-by-element division) of two complex vectors and stores the result in the specified result complex vector. WARNING: dimensions of all vectors must be 3, otherwise an exception is thrown. | |
static void | ArrayQuotient (IComplexVector a, IComplexVector b, ref IComplexVector result) |
Calculates array quotient (element-by-element division) of two complex vectors and stores the result in the specified result complex vector. WARNING: dimensions of operands must match, otherwise an exception is thrown. If dimensions of the result do not match then teh result is re-allocated. | |
Properties | |
abstract int | Length [get] |
Gets dimension of the complex vector. | |
abstract complex | this [int i] [get, set] |
Gets or sets the element indexed by i in the current complex vector. | |
virtual double | Norm [get] |
Gets Euclidean norm of the vector. | |
virtual double | Norm2 [get] |
Gets Euclidean norm of the vector. | |
virtual double | NormEuclidean [get] |
Gets Euclidean norm of the vector. | |
virtual double | SquaredNorm [get] |
Squared Euclidean norm, sum of squared components. | |
virtual double | Norm1 [get] |
1-norm (Manhattan norm or Taxicab norm), sum of absolute values of components. | |
virtual double | NormInf [get] |
Infinity-norm, maximum absolute value of any component. |
Base class for complex vectors.
$A Igor Nov9 Apr11;
virtual complex [] IG::Num::ComplexVectorBase::ToArray | ( | ) | [inline, virtual] |
Copies the current vector to an array and returns that array.
abstract ComplexVectorBase IG::Num::ComplexVectorBase::GetCopyBase | ( | ) | [pure virtual] |
Creates and returns a copy of the current vector. WARNING: This method should be overridden in the derived classes in such a way that the returned vector is of the same type as the current vector.
Implemented in IG::Num::ComplexVector.
abstract ComplexVectorBase IG::Num::ComplexVectorBase::GetNewBase | ( | int | length | ) | [pure virtual] |
Creates and returns a new vector of the specified dimension in such a way that the type of the returned vector is the same as of the current vector. WARNING: This method should be overridden in all derived classes such that the returned vector type is the same as the type of the current vector.
length | Dimension of the returned vector. |
Implemented in IG::Num::ComplexVector.
abstract ComplexVectorBase IG::Num::ComplexVectorBase::GetNewBase | ( | ) | [pure virtual] |
Creates and returns a new vector with the same dimension and of the same type as the current vector.
Implemented in IG::Num::ComplexVector.
abstract ComplexMatrixBase IG::Num::ComplexVectorBase::GetNewComplexMatrixBase | ( | int | rowCount, |
int | columnCount | ||
) | [pure virtual] |
Creates and returns a new matrix with the specified dimensona, and of a type that is consistent with the type of the current vector.
rowCount | Number of rows of the returned matrix. |
columnCount | Number of rows of the returned matrix. |
Implemented in IG::Num::ComplexVector.
abstract ComplexMatrixBase IG::Num::ComplexVectorBase::GetNewComplexMatrixBase | ( | ) | [pure virtual] |
Creates and returns a new matrix of a type that is consistent with the type of the current vector, and with both dimensions equal to the dimension of the current vector.
Implemented in IG::Num::ComplexVector.
virtual IComplexVector IG::Num::ComplexVectorBase::GetCopy | ( | ) | [inline, virtual] |
Returns a deep copy of the current object.
Implements IG::Num::IComplexVector.
virtual IComplexVector IG::Num::ComplexVectorBase::GetNew | ( | int | length | ) | [inline, virtual] |
Creates and returns a new vector with the specified dimension, and of the same type as the current vector.
length | Dimension of the newly created vector. |
Implements IG::Num::IComplexVector.
virtual IComplexVector IG::Num::ComplexVectorBase::GetNew | ( | ) | [inline, virtual] |
Creates and returns a new vector with the same dimension and of the same type as the current vector.
Implements IG::Num::IComplexVector.
virtual IComplexMatrix IG::Num::ComplexVectorBase::GetNewComplexMatrix | ( | int | rowCount, |
int | columnCount | ||
) | [inline, virtual] |
Creates and returns a new matrix with the specified dimensona, and of a type that is consistent with the type of the current vector.
rowCount | Number of rows of the returned matrix. |
columnCount | Number of rows of the returned matrix. |
Implements IG::Num::IComplexVector.
virtual IComplexMatrix IG::Num::ComplexVectorBase::GetNewComplexMatrix | ( | ) | [inline, virtual] |
Creates and returns a new matrix of a type that is consistent with the type of the current vector, and with both dimensions equal to the dimension of the current vector.
Implements IG::Num::IComplexVector.
virtual void IG::Num::ComplexVectorBase::SetZero | ( | ) | [inline, virtual] |
Sets all components of the current complex vector to 0.
Implements IG::Num::IComplexVector.
virtual void IG::Num::ComplexVectorBase::SetConstant | ( | complex | elementValue | ) | [inline, virtual] |
Sets all components of the current complex vector to the specified value.
elementValue | Value to which vector elements are set. |
Implements IG::Num::IComplexVector.
virtual void IG::Num::ComplexVectorBase::SetUnit | ( | int | which | ) | [inline, virtual] |
Sets the current complex vector to the specific unit vector (one component equals 1, others are 0).
which | Specifies which unit vector is set (i.e., which component equals 1). |
Implements IG::Num::IComplexVector.
virtual void IG::Num::ComplexVectorBase::SetRandom | ( | ) | [inline, virtual] |
Sets the current vector such that it contains random elements on the interval (0,1].
Implements IG::Num::IComplexVector.
virtual void IG::Num::ComplexVectorBase::SetRandom | ( | IRandomGenerator | rnd | ) | [inline, virtual] |
Sets the current vector such that it contains random elements on the interval {(0,1],(0,1]}.
rnd | Random generator used to generate vector elements. |
Implements IG::Num::IComplexVector.
virtual double IG::Num::ComplexVectorBase::NormP | ( | int | p | ) | [inline, virtual] |
p-norm, p-th root of sum of absolute values of components raised to the power of p.
IComplexVector IG::Num::ComplexVectorBase::Normalized | ( | ) | [inline] |
Returns a vector that equals a normalized current complex vector.
Implements IG::Num::IComplexVector.
void IG::Num::ComplexVectorBase::Normalize | ( | ) | [inline] |
Normalizes the current vector.
void IG::Num::ComplexVectorBase::Negate | ( | ) | [inline] |
Changes the sign of the current complex vector.
static int IG::Num::ComplexVectorBase::Compare | ( | IComplexVector | v1, |
IComplexVector | v2 | ||
) | [inline, static] |
Compares two complex vectors and returns -1 if the first complex vector is smaller than the second one, 0 if complex vectors are equal, and 1 if the first complex vector is greater. Complex vector that is null is considered smaller than a complex vector that is not null. Two null complex vectors are considered equal. Complex vector with smaller dimension is considered smaller than a complex vector with greater dimension. Complex vector with equal dimensions ar compared by elements. The first element that is different decides which complex vector is considered greater.
v1 | First complex vector to be compared. |
v2 | Second complex vector to be compared. |
This comparison does not have any mathematical meaning. It is just used for sotting of vectors in data structures. $A Igor xx; Tako78 Apr19;
static void IG::Num::ComplexVectorBase::Resize | ( | ref IComplexVector | vec, |
IComplexVector | template, | ||
int | dimension | ||
) | [inline, static] |
Resizes, if necessary, the specified complex vector according to the required dimension. If the complex vector is initially null then a new complex vector is created. If in this case a template complex vector is specified then the newly created complex vector will be of the same type as that template complex vector, because it is created by the GetNew() method on that vector. If dimension of the initial complex vector does not match the required dim., then vector is resized. If the specified complex vector dimension is less or equal to 0 then vector is resized with the same dimension as that of the template vector. If in this case the template vector is null, an exception is thrown. WARNINGS: Components are NOT preserved and have in general undefined values after operation is performed. If vector and template are null then the type of nawly created vector is Vector.
vec | Complex vector that is resized. |
template | Complex vector that is taken as template (for type of a newly created complex vector or for dimension if it is not specified). |
dimenson | If greater than 0 then it specifies the dimension to which vector is resized. |
$A Igor xx; Tako78 Apr19;
static void IG::Num::ComplexVectorBase::Resize | ( | ref IComplexVector | vec, |
int | dimension | ||
) | [inline, static] |
Resizes, if necessary, the specified complex vector according to the required dimension. If the complex vector is initially null then a new vector is created. If dimension of the initial complex vector does not match the required dimension, then vector is resized. Components are NOT preserved and have in general undefined values after operation is performed. WARNING: If the vector is initially null then the type of the newly created vector is Vector.
vec | Complex vector that is resized. |
dimenson | Dimension to which complex vector is resized (if less or equal to 0 then exception is thrown). |
$A Igor xx; Tako78 Apr19;
static void IG::Num::ComplexVectorBase::Resize | ( | ref IComplexVector | vec, |
IComplexVector | template | ||
) | [inline, static] |
Resizes, if necessary, the specified complex vector according to the dimension of the specified template vector. If the complex vector is initially null then a new complex vector is created. In this case the newly created vector will be of the same type as that template vector, because it is created by the GetNew() method on that vector. If dimension of the initial complex vector does not match the dimension of the template vector, then vector is resized. If the template vector is null, then an exception is thrown. WARNINGS: Components are NOT preserved and have in general undefined values after operation is performed. If complex vector and template are null then the type of newly created vector is Vector.
vec | Complex vector that is resized. |
template | Complex vector that is taken as template (for type of a newly created vector or for dimension). |
$A Igor xx; Tako78 Apr19;
static void IG::Num::ComplexVectorBase::CopyPlain | ( | IComplexVector | a, |
IComplexVector | result | ||
) | [inline, static] |
Copies components of a complex vector to another complex vector. This is a plain version that does not perform any dimension checks. WARNING: dimensions of the copied vector and result vector must match.
a | Original complex vector. |
result | Complex vector where copy will be stored. Dimensions must match dimensions of original. |
$A Igor xx; Tako78 Apr19;
static void IG::Num::ComplexVectorBase::Copy | ( | IComplexVector | a, |
IComplexVector | result | ||
) | [inline, static] |
Copies components of a complex vector to another complexvector. WARNING: dimensions of the copied vector and result vector must match.
a | Original complex vector. |
result | Complex vector where copy will be stored. Dimensions must match dimensions of original. |
$A Igor xx; Tako78 Apr19;
static void IG::Num::ComplexVectorBase::Copy | ( | IComplexVector | a, |
ref IComplexVector | result | ||
) | [inline, static] |
Copies components of a complex vectr to another complex vector. Resulting complex vector is allocated or reallocated if necessary.
a | Original complex vector. |
result | Complex vector where copy will be stored. |
$A Igor xx; Tako78 Apr19;
static void IG::Num::ComplexVectorBase::NegatePlain | ( | IComplexVector | a, |
IComplexVector | result | ||
) | [inline, static] |
Stores a negative complex vector of the specified complex vector to another complex vector. This is a plain version of the method that does not perform any consistency checks. WARNING: dimensions of the copied vector and result vector must match.
a | Original complex vector. |
result | Complex vector where result is be stored. Dimensions must match dimensions of original. |
static void IG::Num::ComplexVectorBase::Negate | ( | IComplexVector | a, |
IComplexVector | result | ||
) | [inline, static] |
Stores a negative complex vector of the specified complex vector to another complex vector. WARNING: dimensions of the copied vector and result vector must match.
a | Original vector. |
result | Complex vector where result is be stored. Dimensions must match dimensions of original. |
static void IG::Num::ComplexVectorBase::Negate | ( | IComplexVector | a, |
ref IComplexVector | result | ||
) | [inline, static] |
Stores a negative complex vector of the specified complex vector to another complex vector. Resulting vector is allocated or reallocated if necessary.
a | Original vector. |
result | Complex vector where result is be stored. |
static void IG::Num::ComplexVectorBase::AddPlain | ( | IComplexVector | a, |
IComplexVector | b, | ||
IComplexVector | result | ||
) | [inline, static] |
Sums two complex vectors and stores the result in the specified result complex vector. This is a plain version of the method that does not perform any consistency checks. WARNING: dimensions of vectors must match, otherwise an exception is thrown.
a | First operand. |
b | Second operand. |
result | Complex vector where result is stored. Dimension must match dimensions of operands. |
$A Igor xx; Tako78 Apr19;
static void IG::Num::ComplexVectorBase::Add | ( | IComplexVector | a, |
IComplexVector | b, | ||
IComplexVector | result | ||
) | [inline, static] |
Sums two complex vectors and stores the result in the specified result complex vector. WARNING: dimensions of vectors must match, otherwise an exception is thrown.
a | First operand. |
b | Second operand. |
result | Complex vector where result is stored. Dimension must match dimensions of operands. |
$A Igor xx; Tako78 Apr19;
static void IG::Num::ComplexVectorBase::Add | ( | IComplexVector | a, |
IComplexVector | b, | ||
ref IComplexVector | result | ||
) | [inline, static] |
Sums two complex vectors and stores the result in the specified result complex vector. WARNING: dimensions of operands must match, otherwise an exception is thrown. If dimensions of the result do not match then teh result is re-allocated.
a | First operand. |
b | Second operand. |
result | Complex vector where copy will be stored. |
$A Igor xx; Tako78 Apr19;
static void IG::Num::ComplexVectorBase::SubtractPlain | ( | IComplexVector | a, |
IComplexVector | b, | ||
IComplexVector | result | ||
) | [inline, static] |
Subtracts two complex vectors and stores the result in the specified result complex vector. This is a plain version of the method that does not perform any consistency checks. WARNING: dimensions of vectors must match, otherwise an exception is thrown.
a | First operand. |
b | Second operand. |
result | Complex vector where result is stored. Dimension must match dimensions of operands. |
$A Igor xx; Tako78 Apr19;
static void IG::Num::ComplexVectorBase::Subtract | ( | IComplexVector | a, |
IComplexVector | b, | ||
IComplexVector | result | ||
) | [inline, static] |
Subtracts two complex vectors and stores the result in the specified result complex vector. WARNING: dimensions of vectors must match, otherwise an exception is thrown.
a | First operand. |
b | Second operand. |
result | Complex vector where result is stored. Dimension must match dimensions of operands. |
$A Igor xx; Tako78 Apr19;
static void IG::Num::ComplexVectorBase::Subtract | ( | IComplexVector | a, |
IComplexVector | b, | ||
ref IComplexVector | result | ||
) | [inline, static] |
Subtracts two complex vectors and stores the result in the specified result complex vector. WARNING: dimensions of operands must match, otherwise an exception is thrown. If dimensions of the result do not match then teh result is re-allocated.
a | First operand. |
b | Second operand. |
result | Complex vector where copy will be stored. |
$A Igor xx; Tako78 Apr19;
static void IG::Num::ComplexVectorBase::ArrayAddPlain | ( | IComplexVector | a, |
double | scal, | ||
IComplexVector | result | ||
) | [inline, static] |
Addition of a scalar to all components of a complex vector. This is a plain version of the method that does not perform any consistency checks. Vector operand must be defined (non-null).
v1 | First operand (complex vector). |
d | Second operand (scalar). |
result | Result. |
$A Igor xx; Tako78 Apr19;
static void IG::Num::ComplexVectorBase::ArrayAdd | ( | IComplexVector | a, |
double | scal, | ||
IComplexVector | result | ||
) | [inline, static] |
Addition of a scalar to all components of a complex vector. Vector operand must be defined (non-null).
v1 | First operand (complex vector). |
d | Second operand (scalar). |
result | Result. |
$A Igor xx; Tako78 Apr19;
static void IG::Num::ComplexVectorBase::ArrayAdd | ( | IComplexVector | a, |
double | scal, | ||
ref IComplexVector | result | ||
) | [inline, static] |
Addition of a scalar to all components of a complex vector. Vector operand must be defined (non-null).
v1 | First operand (complex vector). |
d | Second operand (scalar). |
result | Result. |
$A Igor xx; Tako78 Apr19;
static void IG::Num::ComplexVectorBase::ArraySubtractPlain | ( | IComplexVector | a, |
double | scal, | ||
IComplexVector | result | ||
) | [inline, static] |
Subtraction of a scalar from all components of a complex vector. This is a plain version of the method that does not perform any consistency checks. Vector operand must be defined (non-null).
v1 | First operand (complex vector). |
d | Second operand (scalar). |
result | Result. |
$A Igor xx; Tako78 Apr19;
static void IG::Num::ComplexVectorBase::ArraySubtract | ( | IComplexVector | a, |
double | scal, | ||
IComplexVector | result | ||
) | [inline, static] |
Subtraction of a scalar from all components of a complex vector. Vector operand must be defined (non-null).
v1 | First operand (complex vector). |
d | Second operand (scalar). |
result | Result. |
$A Igor xx; Tako78 Apr19;
static void IG::Num::ComplexVectorBase::ArraySubtract | ( | IComplexVector | a, |
double | scal, | ||
ref IComplexVector | result | ||
) | [inline, static] |
Subtraction of a scalar to all components of a complex vector. Vector operand must be defined (non-null).
v1 | First operand (complex vector). |
d | Second operand (scalar). |
result | Result. |
$A Igor xx; Tako78 Apr19;
static void IG::Num::ComplexVectorBase::MultiplyPlain | ( | IComplexVector | a, |
double | scal, | ||
IComplexVector | result | ||
) | [inline, static] |
Multiplication of a complex vector by a scalar. This is a plain version of the method that does not perform any consistency checks. Vector operand must be defined (non-null).
v1 | First operand (complex vector). |
d | Second operand (scalar). |
result | Result. |
$A Igor xx; Tako78 Apr19;
static void IG::Num::ComplexVectorBase::Multiply | ( | IComplexVector | a, |
double | scal, | ||
IComplexVector | result | ||
) | [inline, static] |
Multiplication of a complex vector by a scalar. Vector operand must be defined (non-null).
v1 | First operand (complex vector). |
d | Second operand (scalar). |
result | Result. |
$A Igor xx; Tako78 Apr19;
static void IG::Num::ComplexVectorBase::Multiply | ( | IComplexVector | a, |
double | scal, | ||
ref IComplexVector | result | ||
) | [inline, static] |
Multiplication of a complex vector by a scalar. Vector operand must be defined (non-null).
v1 | First operand (complex vector). |
d | Second operand (scalar). |
result | Result. |
$A Igor xx; Tako78 Apr19;
static void IG::Num::ComplexVectorBase::ScalePlain | ( | IComplexVector | a, |
double | scal, | ||
IComplexVector | result | ||
) | [inline, static] |
Multiplication of a complex vector by a scalar. This is a plain version of the method that does not perform any consistency checks. Vector operand must be defined (non-null).
v1 | First operand (complex vector). |
d | Second operand (scalar). |
result | Result. |
$A Igor xx; Tako78 Apr19;
static void IG::Num::ComplexVectorBase::Scale | ( | IComplexVector | a, |
double | scal, | ||
IComplexVector | result | ||
) | [inline, static] |
Multiplication of a complex vector by a scalar. Vector operand must be defined (non-null).
v1 | First operand (complex vector). |
d | Second operand (scalar). |
result | Result. |
$A Igor xx; Tako78 Apr19;
static void IG::Num::ComplexVectorBase::Scale | ( | IComplexVector | a, |
double | scal, | ||
ref IComplexVector | result | ||
) | [inline, static] |
Multiplication of a complex vector by a scalar. Vector operand must be defined (non-null).
v1 | First operand (complex vector). |
d | Second operand (scalar). |
result | Result. |
$A Igor xx; Tako78 Apr19;
static void IG::Num::ComplexVectorBase::DividePlain | ( | IComplexVector | a, |
complex | scal, | ||
IComplexVector | result | ||
) | [inline, static] |
Division of a complex vector by a complex scalar. This is a plain version of the method that does not perform any consistency checks. Vector operand must be defined (non-null).
v1 | First operand (complex vector). |
d | Second operand (complex scalar). |
result | Result. |
static void IG::Num::ComplexVectorBase::Divide | ( | IComplexVector | a, |
complex | scal, | ||
IComplexVector | result | ||
) | [inline, static] |
Division of a complex vector by a complex scalar. Complex vector operand must be defined (non-null).
v1 | First operand (complex vector). |
d | Second operand (complex scalar). |
result | Result. |
static void IG::Num::ComplexVectorBase::Divide | ( | IComplexVector | a, |
complex | scal, | ||
ref IComplexVector | result | ||
) | [inline, static] |
Division of a complex vector by a complex scalar. Complex vector operand must be defined (non-null).
v1 | First operand (complex vector). |
d | Second operand (complex scalar). |
result | Result. |
static void IG::Num::ComplexVectorBase::DyadicProductPlain | ( | IComplexVector | a, |
IComplexVector | b, | ||
IComplexMatrix | result | ||
) | [inline, static] |
Calculates dyadic product of two complex vectors and stores the result in the specified result matrix. This is a plain version of the method that does not perform any consistency checks. WARNING: dimensions must match, otherwise an exception is thrown.
a | First operand. |
b | Second operand. |
result | complex matrix where result is stored. Dimension must match dimensions of operands. |
$A Igor xx; Tako78 Apr19;
static void IG::Num::ComplexVectorBase::DyadicProduct | ( | IComplexVector | a, |
IComplexVector | b, | ||
IComplexMatrix | result | ||
) | [inline, static] |
Calculates dyadic product of two complex vectors and stores the result in the specified result complex matrix. WARNING: dimensions must match, otherwise an exception is thrown.
a | First operand. |
b | Second operand. |
result | complex matrix where result is stored. Dimension must match dimensions of operands. |
$A Igor xx; Tako78 Apr19;
static void IG::Num::ComplexVectorBase::DyadicProduct | ( | IComplexVector | a, |
IComplexVector | b, | ||
ref IComplexMatrix | result | ||
) | [inline, static] |
Calculates dyadic product of two complex vectors and stores the result in the specified result complex matrix. WARNING: dimensions of operands must match, otherwise an exception is thrown. If dimensions of the result do not match then teh result is re-allocated.
a | First operand. |
b | Second operand. |
result | Complex matrix where copy will be stored. |
$A Igor xx; Tako78 Apr19;
static void IG::Num::ComplexVectorBase::CrossProductPlain | ( | IComplexVector | a, |
IComplexVector | b, | ||
IComplexVector | result | ||
) | [inline, static] |
Calculates a vector product (cross product) of two complex vectors and stores the result in the specified result complex vector. This is a plain version of the method that does not perform any consistency checks. WARNING: dimensions of all vectors must be 3, otherwise an exception is thrown.
a | First operand. |
b | Second operand. |
result | Complex vector where result is stored. Dimension must match dimensions of operands. |
$A Igor xx; Tako78 Apr19
static void IG::Num::ComplexVectorBase::CrossProduct | ( | IComplexVector | a, |
IComplexVector | b, | ||
IComplexVector | result | ||
) | [inline, static] |
Calculates a vector product (cross product) of two complex vectors and stores the result in the specified result complex vector. WARNING: dimensions of all vectors must be 3, otherwise an exception is thrown.
a | First operand. |
b | Second operand. |
result | Complex vector where result is stored. Dimension must match dimensions of operands. |
$A Igor xx; Tako78 Apr19
static void IG::Num::ComplexVectorBase::CrossProduct | ( | IComplexVector | a, |
IComplexVector | b, | ||
ref IComplexVector | result | ||
) | [inline, static] |
Calculates a vector product (cross product) of two complex vectors and stores the result in the specified result complex vector. WARNING: dimensions of operands must match, otherwise an exception is thrown. If dimensions of the result do not match then teh result is re-allocated.
a | First operand. |
b | Second operand. |
result | Complex vector where copy will be stored. |
$A Igor xx; Tako78 Apr19
static void IG::Num::ComplexVectorBase::VectorProductPlain | ( | IComplexVector | a, |
IComplexVector | b, | ||
IComplexVector | result | ||
) | [inline, static] |
Calculates a vector product (cross product) of two complex vectors and stores the result in the specified result complex vector. This is a plain version of the method that does not perform any consistency checks. WARNING: dimensions of all vectors must be 3, otherwise an exception is thrown.
a | First operand. |
b | Second operand. |
result | Complex vector where result is stored. Dimension must match dimensions of operands. |
$A Igor xx; Tako78 Apr19
static void IG::Num::ComplexVectorBase::VectorProduct | ( | IComplexVector | a, |
IComplexVector | b, | ||
IComplexVector | result | ||
) | [inline, static] |
Calculates a vector product (cross product) of two complex vectors and stores the result in the specified result complex vector. WARNING: dimensions of all vectors must be 3, otherwise an exception is thrown.
a | First operand. |
b | Second operand. |
result | Complex vector where result is stored. Dimension must match dimensions of operands. |
$A Igor xx; Tako78 Apr19
static void IG::Num::ComplexVectorBase::VectorProduct | ( | IComplexVector | a, |
IComplexVector | b, | ||
ref IComplexVector | result | ||
) | [inline, static] |
Calculates a vector product (cross product) of two complex vectors and stores the result in the specified result complex vector. WARNING: dimensions of operands must match, otherwise an exception is thrown. If dimensions of the result do not match then teh result is re-allocated.
a | First operand. |
b | Second operand. |
result | Complex vector where copy will be stored. |
$A Igor xx; Tako78 Apr19
static void IG::Num::ComplexVectorBase::ArrayProductPlain | ( | IComplexVector | a, |
IComplexVector | b, | ||
IComplexVector | result | ||
) | [inline, static] |
Calculates array product (element-by-element product) of two complex vectors and stores the result in the specified result complex vector. This is a plain version of the method that does not perform any consistency checks. WARNING: dimensions of all vectors must be 3, otherwise an exception is thrown.
a | First operand. |
b | Second operand. |
result | Complex vector where result is stored. Dimension must match dimensions of operands. |
$A Igor xx; Tako78 Apr19
static void IG::Num::ComplexVectorBase::ArrayProduct | ( | IComplexVector | a, |
IComplexVector | b, | ||
IComplexVector | result | ||
) | [inline, static] |
Calculates array product (element-by-element product) of two complex vectors and stores the result in the specified result complex vector. WARNING: dimensions of all vectors must be 3, otherwise an exception is thrown.
a | First operand. |
b | Second operand. |
result | Complex vector where result is stored. Dimension must match dimensions of operands. |
$A Igor xx; Tako78 Apr19
static void IG::Num::ComplexVectorBase::ArrayProduct | ( | IComplexVector | a, |
IComplexVector | b, | ||
ref IComplexVector | result | ||
) | [inline, static] |
Calculates array product (element-by-element product) of two complex vectors and stores the result in the specified result complex vector. WARNING: dimensions of operands must match, otherwise an exception is thrown. If dimensions of the result do not match then teh result is re-allocated.
a | First operand. |
b | Second operand. |
result | Complex vector where copy will be stored. |
$A Igor xx; Tako78 Apr19
static void IG::Num::ComplexVectorBase::ArrayQuotientPlain | ( | IComplexVector | a, |
IComplexVector | b, | ||
IComplexVector | result | ||
) | [inline, static] |
Calculates array quotient (element-by-element division) of two complex vectors and stores the result in the specified result complex vector. This is a plain version of the method that does not perform any consistency checks. WARNING: dimensions of all vectors must be 3, otherwise an exception is thrown.
a | First operand. |
b | Second operand. |
result | Complex vector where result is stored. Dimension must match dimensions of operands. |
$A Igor xx; Tako78 Apr19
static void IG::Num::ComplexVectorBase::ArrayQuotient | ( | IComplexVector | a, |
IComplexVector | b, | ||
IComplexVector | result | ||
) | [inline, static] |
Calculates array quotient (element-by-element division) of two complex vectors and stores the result in the specified result complex vector. WARNING: dimensions of all vectors must be 3, otherwise an exception is thrown.
a | First operand. |
b | Second operand. |
result | Complex vector where result is stored. Dimension must match dimensions of operands. |
$A Igor xx; Tako78 Apr19
static void IG::Num::ComplexVectorBase::ArrayQuotient | ( | IComplexVector | a, |
IComplexVector | b, | ||
ref IComplexVector | result | ||
) | [inline, static] |
Calculates array quotient (element-by-element division) of two complex vectors and stores the result in the specified result complex vector. WARNING: dimensions of operands must match, otherwise an exception is thrown. If dimensions of the result do not match then teh result is re-allocated.
a | First operand. |
b | Second operand. |
result | Complex vector where copy will be stored. |
$A Igor xx; Tako78 Apr19
abstract int IG::Num::ComplexVectorBase::Length [get] |
Gets dimension of the complex vector.
Reimplemented in IG::Num::ComplexVector.
abstract complex IG::Num::ComplexVectorBase::this[int i] [get, set] |
Gets or sets the element indexed by i
in the current complex vector.
i | Element index, 0 - based. |
Reimplemented in IG::Num::ComplexVector.
virtual double IG::Num::ComplexVectorBase::Norm [get] |
Gets Euclidean norm of the vector.
virtual double IG::Num::ComplexVectorBase::Norm2 [get] |
Gets Euclidean norm of the vector.
virtual double IG::Num::ComplexVectorBase::NormEuclidean [get] |
Gets Euclidean norm of the vector.
virtual double IG::Num::ComplexVectorBase::SquaredNorm [get] |
Squared Euclidean norm, sum of squared components.
virtual double IG::Num::ComplexVectorBase::Norm1 [get] |
1-norm (Manhattan norm or Taxicab norm), sum of absolute values of components.
virtual double IG::Num::ComplexVectorBase::NormInf [get] |
Infinity-norm, maximum absolute value of any component.