Skip to content

Commit affbcad

Browse files
committed
replaced einsum for sum for small efficiency gain
Former-commit-id: 1f29c53
1 parent a468cd6 commit affbcad

1 file changed

Lines changed: 1 addition & 2 deletions

File tree

MagneticField.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,10 +17,9 @@ def B(R: jnp.array, gamma: jnp.array, gamma_dash: jnp.array, currents:jnp.array,
1717
Returns:
1818
B (jnp.array - shape (3,)): Magnetic field at point R
1919
"""
20-
2120
dif_R = (R-gamma).T
2221
dB = jnp.cross(gamma_dash.T, dif_R, axisa=0, axisb=0, axisc=0)/jnp.linalg.norm(dif_R, axis=0)**3
23-
dB_sum = jnp.einsum("i,bai", currents*1e-7, dB, optimize="greedy")*overal_factor
22+
dB_sum = jnp.sum((currents[None, None, :] * dB) * 1e-7, axis=2).T * overal_factor
2423
return jnp.mean(dB_sum, axis=0)
2524

2625
@jit

0 commit comments

Comments
 (0)