|
Programming Reference for VirtualLab Fusion
2025.2
|
This class defines 3-dimensional vectors of complex numbers. The class saves the x,y and z coordinates. More...
Public Member Functions | |
| double | Abs () |
| Calculates the absolute value of this Vector3C object. The absolute value is defined as the square root of Norm(). | |
| Complex | ComplexAbs () |
| Calculates the complex Norm of the Vector3C object. | |
| bool | IsRealVector () |
| Determines whether this vector is a pure real one, i.e. all imaginary parts are zero. | |
| double | Norm () |
| Calculates the norm of the present Vector3C object. The norm is defined as (X * Complex.Conjugate(X) + Y * Complex.Conjugate(Y) + Z * Complex.Conjugate(Z)).Re which is equal to the sum of the norms of the vector components. | |
| void | Normalize () |
| Normalizes the present Vector3C object. | |
| override string | ToString () |
| Converts a Vector3C into a string of format (X.Re + iX.Im;Y.Re + iY.Im;Z.Re + iZ.Im). | |
| Vector3C (Complex x, Complex y, Complex z) | |
| Creates a Vector3C from three double values. | |
| Vector3C (Vector3C vec) | |
| Creates a new Vector3C object from an existing object. | |
Static Public Member Functions | |
| static Vector3C | CrossProduct (Vector3C a, Vector3C b) |
| Calculates the cross product of two Vector3C objects. | |
| static implicit | operator Vector3C (Vector3D vector3D) |
| Converts a Vector3D object into a Vector3C object. | |
| static bool | operator!= (Vector3C vector1, Vector3C vector2) |
| Compares two Vector3C for inequality. The comparison will be done by comparing the values of the two x-, y- and z- components respectively. | |
| static Vector3C | operator* (Complex factor, Vector3C vector) |
| Multiplies a Vector3C objects with a Complex value. | |
| static Vector3C | operator* (Vector3C a, Vector3C b) |
| Multiplies two Vector3C objects. | |
| static Vector3C | operator* (Vector3C vector, Complex factor) |
| Multiplies a Vector3C object with a Complex value. | |
| static Vector3C | operator+ (Vector3C a, Vector3C b) |
| Adds two Vector3C objects. | |
| static Vector3C | operator- (Vector3C a, Vector3C b) |
| Subtracts two Vector3C objects. | |
| static Vector3C | operator/ (Complex number, Vector3C vector) |
| Performs a component wise division of a double value and a Vector3C object. The result is defined as new Vector3C(number / vector.X, number / vector.Y). | |
| static Vector3C | operator/ (Vector3C a, Vector3C b) |
| Performs a component wise division of two Vector3C objects. | |
| static Vector3C | operator/ (Vector3C vector, Complex divisor) |
| Performs a component wise division of a Vector3C object and a Complex value. | |
| static bool | operator== (Vector3C vector1, Vector3C vector2) |
| Compares two Vector3C for equality. The comparison will be done by comparing the values of the two x-, y- and z- components respectively. | |
| static Complex | operator| (Vector3C a, Vector3C b) |
| Calculates the scalar product of two Vector3C objects. The scalar product is defined as a.X * b.X + a.Y * b.Y + a.Z * b.Z. | |
Public Attributes | |
| Complex | X |
| X value of the Vector3C object. | |
| Complex | Y |
| Y value of the Vector3C object. | |
| Complex | Z |
| Z value of the Vector3C object. | |
Static Public Attributes | |
| static readonly Vector3C | UnitVectorX |
| A constant containing the unit vector in x-direction. | |
| static readonly Vector3C | UnitVectorY |
| A constant containing the unit vector in y-direction. | |
| static readonly Vector3C | UnitVectorZ |
| A constant containing the unit vector in z-direction. | |
| static readonly Vector3C | ZeroVector |
| A constant containing the zero vector (0, 0). | |
Properties | |
| Vector3D | Im [get, set] |
| Sets or gets a Vector3D object containing the the imaginary part of the x-, y- and z- components of the present Vector3C object. If an Vector3D object is set then the real parts of all components is not influences. | |
| bool | IsUndefined [get] |
| Gets whether a least one component of the vector is undefined. | |
| Vector3D | Re [get, set] |
| Sets or gets a Vector3D object containing the the real part of the x-, y- and z- components of the present Vector3C object. If an Vector3D object is set then the imaginary parts of all components is not influences. | |
This class defines 3-dimensional vectors of complex numbers. The class saves the x,y and z coordinates.
Creates a Vector3C from three double values.
| x | X value of new Vector3C object. |
| y | Y value of new Vector3C object. |
| z | Z value of new Vector3C object. |
Creates a new Vector3C object from an existing object.
| vec | Vector3C object to copy. |
| double Abs | ( | ) |
Calculates the absolute value of this Vector3C object. The absolute value is defined as the square root of Norm().
| Complex ComplexAbs | ( | ) |
Calculates the complex Norm of the Vector3C object.
Calculates the cross product of two Vector3C objects.
| a | First operant used for cross product calculation. |
| b | Second operant used for cross product calculation. |
| bool IsRealVector | ( | ) |
Determines whether this vector is a pure real one, i.e. all imaginary parts are zero.
True iff the imaginary parts of all vector components are zero.| double Norm | ( | ) |
Calculates the norm of the present Vector3C object. The norm is defined as (X * Complex.Conjugate(X) + Y * Complex.Conjugate(Y) + Z * Complex.Conjugate(Z)).Re which is equal to the sum of the norms of the vector components.
Converts a Vector3D object into a Vector3C object.
| vector3D | Vector3D object to convert into Vector3C object. |
Compares two Vector3C for inequality. The comparison will be done by comparing the values of the two x-, y- and z- components respectively.
| vector1 | First Vector3C object to compare. |
| vector2 | Second Vector3C object to compare. |
Multiplies a Vector3C objects with a Complex value.
| factor | The Complex value to multiply. |
| vector | The Vector3C object to multiply. |
Multiplies two Vector3C objects.
| a | The first Vector3C object to multiply. |
| b | The second Vector3C object to multiply. |
Multiplies a Vector3C object with a Complex value.
| vector | The Vector3C object to multiply. |
| factor | The Complex value to multiply. |
Adds two Vector3C objects.
| a | The first Vector3C object to add. |
| b | The second Vector3C object to add. |
Subtracts two Vector3C objects.
| a | The first Vector3C object to subtract from. |
| b | The second Vector3C object to subtract. |
Performs a component wise division of a double value and a Vector3C object. The result is defined as new Vector3C(number / vector.X, number / vector.Y).
| number | The double value to divide by the components of the Vector3C object. |
| vector | The Vector3C object used as divisor. |
Performs a component wise division of two Vector3C objects.
| a | The first Vector3C object to divide by parameter b. |
| b | The second Vector3C object used as divisor. |
Performs a component wise division of a Vector3C object and a Complex value.
| vector | The Vector3C object to divide by the Complex value. |
| divisor | The Complex value used as divisor. |
Compares two Vector3C for equality. The comparison will be done by comparing the values of the two x-, y- and z- components respectively.
| vector1 | First Vector3C object to compare. |
| vector2 | Second Vector3C object to compare. |
Calculates the scalar product of two Vector3C objects. The scalar product is defined as a.X * b.X + a.Y * b.Y + a.Z * b.Z.
| a | First Vector3C object. |
| b | Second Vector3C object. |
| override string ToString | ( | ) |
Converts a Vector3C into a string of format (X.Re + iX.Im;Y.Re + iY.Im;Z.Re + iZ.Im).
|
get |
Gets whether a least one component of the vector is undefined.
true iff at least one component of the vector is NaN.