Code
Hub
Workspaces
Following
Trending
Connect
MCP
copy
Create free account
hub
/
github.com/EelcoHoogendoorn/numga
/ functions
Functions
937 in github.com/EelcoHoogendoorn/numga
⨍
Functions
937
◇
Types & classes
73
↓ 46 callers
Method
copy
(self, kernel)
numga/operator/operator.py:23
↓ 40 callers
Method
from_pqr
(p, q, r)
numga/algebra/algebra.py:36
↓ 40 callers
Method
vector
(self)
numga/subspace/factory.py:105
↓ 39 callers
Function
random_subspace
(context, subspace, shape=())
numga/multivector/test/util.py:4
↓ 35 callers
Function
assert_close
(a, b, atol=1e-9)
numga/multivector/test/util.py:103
↓ 34 callers
Method
dual
(self)
numga/examples/ga_sparse.py:148
↓ 34 callers
Method
multivector
(self)
numga/subspace/factory.py:133
↓ 32 callers
Method
even_grade
(self)
numga/subspace/factory.py:141
↓ 31 callers
Method
product
non contracting tensor product
numga/operator/sparse_tensor.py:83
↓ 25 callers
Method
bivector
(self)
numga/subspace/factory.py:107
↓ 24 callers
Method
join
(self, other)
numga/multivector/multivector.py:116
↓ 23 callers
Function
check_inverse
(x, i, atol=1e-9)
numga/backend/jax/test/test_jax.py:94
↓ 22 callers
Method
from_grades
(self, grades: List[int])
numga/subspace/factory.py:90
↓ 21 callers
Method
sandwich
Compute (R * v) * ~R Only retain the grade-preserving part of the sandwich, which is usually what we are interested in, since proper motors compo
numga/operator/factory.py:520
↓ 21 callers
Method
symmetric_reverse_product
(self)
numga/multivector/multivector.py:162
↓ 21 callers
Method
symmetry
Enforce symmetry on the given input axes [a, b] That is the output op will have the property op(a, b) = op(b, a) We may choose to apply this t
numga/operator/operator.py:108
↓ 19 callers
Method
scalar
(self)
numga/subspace/factory.py:103
↓ 19 callers
Method
squared
(self)
numga/multivector/multivector.py:158
↓ 19 callers
Method
sum
Reduce one input axis by summation
numga/operator/operator.py:233
↓ 18 callers
Method
copy
(self, values=None, subspace=None)
numga/multivector/multivector.py:47
↓ 18 callers
Method
inverse
(self)
numga/backend/jax/operator.py:95
↓ 15 callers
Method
multivector
(self, values=None, subspace=None)
numga/multivector/factory.py:81
↓ 14 callers
Method
basis
Construct a list of all canonical basis subspaces, as they appear in the 1-vector
numga/subspace/factory.py:71
↓ 14 callers
Method
exp
(self, x)
numga/backend/jax/context.py:46
↓ 14 callers
Method
grades
Grade of each blade; number of basis vectors present in each blade Returns ------- np.ndarray, [n_blades], uint8 grade of each blade
numga/subspace/subspace.py:32
↓ 14 callers
Method
k_vector
(self, k: int)
numga/subspace/factory.py:96
↓ 14 callers
Function
random_motor
(context, shape=())
numga/multivector/test/util.py:55
↓ 13 callers
Method
flatten
(self)
numga/backend/numpy/multivector.py:69
↓ 13 callers
Method
from_blades
(self, blades: List[int])
numga/subspace/factory.py:84
↓ 13 callers
Function
parity_to_sign
Turn even-odd parity of ints to a sign value [0, 1, 2, 3] -> [+1, -1, +1, -1]
numga/algebra/bitops.py:11
↓ 13 callers
Method
product
Construct geometric product between elements of a and b Parameters ---------- a: np.ndarray, [a], blade_dtype basis blades encoded as intege
numga/algebra/algebra.py:160
↓ 13 callers
Method
squeeze
Drop known zero terms from output subspace
numga/operator/operator.py:208
↓ 12 callers
Method
add
(self, r, c, v)
numga/examples/ga_sparse.py:35
↓ 12 callers
Method
commutator
(self, other)
numga/multivector/multivector.py:120
↓ 12 callers
Method
concatenate
(self, other)
numga/examples/physics/base.py:70
↓ 12 callers
Method
union
Union of elements in both subspaces
numga/subspace/subspace.py:238
↓ 12 callers
Method
where
(self, cond, a, b)
numga/backend/jax/context.py:35
↓ 11 callers
Method
copy
(self, motor=None, rate=None, gravity=None, damping=None)
numga/examples/physics/base.py:81
↓ 11 callers
Method
inverse_la
Inverse of x such that x * x.inverse() == 1 == x.inverse() * x
numga/backend/jax/multivector.py:67
↓ 11 callers
Method
k_vector
(self, k: int, values=None)
numga/multivector/factory.py:71
↓ 11 callers
Method
partial
(self, inputs: Dict[int, JaxMultiVector])
numga/backend/jax/operator.py:70
↓ 10 callers
Method
antivector
(self)
numga/subspace/factory.py:118
↓ 10 callers
Function
exp2
(b)
numga/examples/physics/lie_integrators.py:30
↓ 10 callers
Method
inverse_shirokov
Returns the inverted multivector `X^-1` such that `X * X^-1 = 1`. Using Shirokov's inverse algorithm that works in arbitrary dimensions, see ht
numga/multivector/multivector.py:324
↓ 10 callers
Method
scalar
(self, values=None)
numga/multivector/factory.py:54
↓ 10 callers
Method
set
(self, idx, values)
numga/multivector/helper.py:19
↓ 10 callers
Method
symmetric_reverse_product
x * ~x
numga/operator/factory.py:433
↓ 10 callers
Method
wedge
(self, other)
numga/subspace/subspace.py:179
↓ 9 callers
Method
is_n_simple
A subspace is n-simple if it maps to a scalar under n self-involution products
numga/subspace/subspace.py:305
↓ 9 callers
Method
motor
(self, values=None)
numga/multivector/factory.py:78
↓ 9 callers
Method
select_subspace
(self, subspace)
numga/multivector/multivector.py:238
↓ 9 callers
Method
sqrt
(self)
numga/multivector/multivector.py:398
↓ 9 callers
Method
vector
(self, values=None)
numga/multivector/factory.py:56
↓ 9 callers
Method
zeros
(self)
numga/algebra/algebra.py:61
↓ 8 callers
Method
bit_blades
Represent elements array in unpacked bit format, [n_elements, dimensions]
numga/subspace/subspace.py:57
↓ 8 callers
Method
cos
(self)
numga/multivector/multivector.py:408
↓ 8 callers
Method
inner
(self, other)
numga/subspace/subspace.py:182
↓ 8 callers
Function
motor_properties
(m)
numga/multivector/test/util.py:82
↓ 8 callers
Method
operator
Nice place to nest and cache all our operator related stuff
numga/algebra/algebra.py:204
↓ 8 callers
Method
pseudoscalar
(self)
numga/subspace/factory.py:114
↓ 8 callers
Function
random_non_motor
not-quite-motor, not too far from unity
numga/multivector/test/util.py:61
↓ 8 callers
Method
reverse
Reverse the order of all basis blades
numga/operator/factory.py:116
↓ 8 callers
Method
reverse
(self)
numga/examples/ga_sparse.py:140
↓ 8 callers
Method
sin
(self)
numga/multivector/multivector.py:410
↓ 7 callers
Method
antify
Compute *op(l*, v*); wrap the operator in left/right dualizatiom
numga/operator/factory.py:302
↓ 7 callers
Method
cayley
Cayley table of the geometric product a * b Parameters ---------- a: np.ndarray, [...], blade_dtype basis blades encoded as integer bitpatte
numga/algebra/algebra.py:95
↓ 7 callers
Method
copy
(self, values)
numga/examples/ga_sparse.py:74
↓ 7 callers
Method
diagonal
Diagonal scaling operator
numga/operator/factory.py:71
↓ 7 callers
Method
empty
(self)
numga/subspace/factory.py:137
↓ 7 callers
Method
precompute_einsum_partial
Build einsum expression for (partial) application of input arguments Parameters ---------- axes : Tuple[int, ...] sequence of integers denot
numga/operator/abstract.py:79
↓ 7 callers
Method
select_subspace
Remap to new output space; dropping outputs or adding implicit zeros
numga/operator/operator.py:191
↓ 7 callers
Method
sqrt
(self, x)
numga/backend/jax/context.py:42
↓ 7 callers
Method
take
(self, idx, axis)
numga/operator/sparse_tensor.py:47
↓ 7 callers
Method
take_along_axis
(self, idx, axis)
numga/backend/jax/multivector.py:45
↓ 7 callers
Method
upcast
Upcast general objects to scalar multivectors
numga/multivector/multivector.py:299
↓ 6 callers
Function
all_grade_combinations
(algebra)
numga/multivector/test/util.py:90
↓ 6 callers
Method
bit_dot
Dot-product between bit-blades; counting their shared high bits
numga/algebra/algebra.py:76
↓ 6 callers
Method
coerce_array
(self, values, dtype=None)
numga/backend/torch/context.py:18
↓ 6 callers
Method
dual_inverse
Hodge dual inverse
numga/multivector/multivector.py:67
↓ 6 callers
Method
embed_point
Embed a Euclidian point in CGA space
numga/examples/conformal.py:190
↓ 6 callers
Method
inertia_map
Construct unary operator, that maps rates to momenta, for the point in self. P v (P x B)
numga/multivector/multivector.py:388
↓ 6 callers
Method
make_product
Product with selected grades. Grade selection is not a regular linear operation so we need to apply it before binding any other operators
numga/operator/factory.py:219
↓ 6 callers
Function
point
(px, py)
numga/examples/pga2d.py:29
↓ 6 callers
Method
reshape
Reshape axis such as to broadcast to whole kernel
numga/operator/operator.py:224
↓ 5 callers
Method
all
(self, x, **kwargs)
numga/backend/jax/context.py:58
↓ 5 callers
Method
bivector
(self, values=None)
numga/multivector/factory.py:58
↓ 5 callers
Method
bivector_product
(self, other)
numga/multivector/multivector.py:112
↓ 5 callers
Method
build
(self, kernel, axes)
numga/operator/factory.py:58
↓ 5 callers
Method
coerce_array
(self, values, dtype=None)
numga/backend/jax/context.py:17
↓ 5 callers
Method
degenerate
Select degenerate subspace
numga/subspace/subspace.py:149
↓ 5 callers
Method
difference
Difference of elements in both subspaces
numga/subspace/subspace.py:244
↓ 5 callers
Method
empty
(self)
numga/multivector/factory.py:52
↓ 5 callers
Method
grade
Grade of each blade; number of basis vectors present in each blade Parameters ---------- a: np.ndarray, [...], blade_dtype basis blades enco
numga/algebra/algebra.py:80
↓ 5 callers
Method
grade
Get the grade of the subspace; raises if no single grade exists, and this is a mixed-grade subspace
numga/subspace/subspace.py:42
↓ 5 callers
Method
k_reflection
(self, k: int)
numga/subspace/factory.py:159
↓ 5 callers
Function
normalize_motor
Normalization of a motor, via numerical solution of the inverse-sandwich of the norm-squared of the motor In dimensions < 6, convergence should be
numga/multivector/numerical_normalize.py:46
↓ 5 callers
Function
plot_circle
(plt, cga, circle)
numga/examples/test_conformal.py:14
↓ 5 callers
Function
plot_point
(plt, cga, p)
numga/examples/test_conformal.py:9
↓ 5 callers
Method
regressive
(self, other)
numga/multivector/multivector.py:101
↓ 5 callers
Method
sandwich_map
Encode sandwich operation as linear map over the subspace v This can be used to map a quaternion to the equivalent rotation matrix, Or a motor to
numga/multivector/multivector.py:362
next →
1–100 of 937, ranked by callers