Module pavpen.geometry_calculator.vector_field_implementations

class pavpen.geometry_calculator.vector_field_implementations.ComplexVectorFieldOperations[source]

Bases: FloatVectorFieldOperations[complex]

Treats complex numbers as 2-D vectors

added(addend1: complex, addend2: complex) complex[source]

Return the vector sum of addend1, and addend2

property additive_identity: complex[source]

The ‘zero’ vector, i.e. x, such that for any vector v: x + v = v

inner_multiplied(multiplicand1: complex, multiplicand2: complex) float[source]

Returns the inner product of multiplicand1, and multiplicand2

In an orthonormal basis, this is the same as the dot (component-wise) product. In either case, the result of the inner product must be the product of the norms of each multiplicand, and of the orthogonal projection of one multiplicand on the other (the result being negative, if the projeciton endpoint is in the opposite direction of the vector).

scaled(multiplicand: complex, scalar: float) complex[source]

Returns multiplicand scaled (multiplied) by scalar

class pavpen.geometry_calculator.vector_field_implementations.TupleFloatVectorFieldOperations[Vector: tuple[float, ...]](component_count: int)[source]

Bases: FloatVectorFieldOperations, Generic

Treats tuples of floats as vectors in an orthonormal space

added(addend1: Vector, addend2: Vector) Vector[source]

Return the vector sum of addend1, and addend2

property additive_identity: Vector[source]

The ‘zero’ vector, i.e. x, such that for any vector v: x + v = v

static for_1d() TupleFloatVectorFieldOperations[tuple[float]][source]
static for_2d() TupleFloatVectorFieldOperations[tuple[float, float]][source]
static for_3d() TupleFloatVectorFieldOperations[tuple[float, float, float]][source]
inner_multiplied(multiplicand1: Vector, multiplicand2: Vector) float[source]

Returns the inner product of multiplicand1, and multiplicand2

In an orthonormal basis, this is the same as the dot (component-wise) product. In either case, the result of the inner product must be the product of the norms of each multiplicand, and of the orthogonal projection of one multiplicand on the other (the result being negative, if the projeciton endpoint is in the opposite direction of the vector).

scaled(multiplicand: Vector, scalar: float) Vector[source]

Returns multiplicand scaled (multiplied) by scalar