Adjust normalization step of nudge routine #43

Merged
glen merged 3 commits from normalize-by-contracting into main 2025-02-06 22:53:42 +00:00
Collaborator

The brach to be merged partially addresses issue #42 by changing the way we normalize element representations after stepping them in a straight line through configuration space during a nudge. On the main branch, we rescale the whole representation vector. On the branch to be merged, we instead contract the representation vector toward the last coordinate axis by rescaling the spatial and curvature components.

Improvement in leakage

This change reduces the directional leakage described in #42. For a quantitative comparison, I used the reproduction prodcedure from that issue, holding W until the second coordinate of Deimos had increased by 4 units (from 0.6 to 4.6). During this motion, the third coordinate changed by 0.158 units on the main branch, but only 0.007 units on the branch to be merged. In other words, this pull request decreased drift by roughly a factor of 20.

Neutral changes in oscillation and jitter

This change makes oscillation and jitter happen differently during the reproduction procedures from #42, but I wouldn't describe them as being better or worse.

The brach to be merged partially addresses issue #42 by changing the way we normalize element representations after stepping them in a straight line through configuration space during a nudge. On the main branch, we rescale the whole representation vector. On the branch to be merged, we instead contract the representation vector toward the last coordinate axis by rescaling the spatial and curvature components. ### Improvement in leakage This change reduces the directional leakage described in #42. For a quantitative comparison, I used the [reproduction prodcedure](issues/42#user-content-leakage) from that issue, holding **W** until the second coordinate of Deimos had increased by 4 units (from 0.6 to 4.6). During this motion, the third coordinate changed by 0.158 units on the main branch, but only 0.007 units on the branch to be merged. In other words, this pull request decreased drift by roughly a factor of 20. ### Neutral changes in oscillation and jitter This change makes oscillation and jitter happen differently during the reproduction procedures from #42, but I wouldn't describe them as being better or worse.
Vectornaut added 3 commits 2025-02-05 21:38:00 +00:00
Uniformly contract spatial and curvature components. This preserves the
centers of spheres, but alters their curvatures. It should preserve
planes entirely.
We don't need to explicitly allocate scratch space.
glen merged commit 25017176fd into main 2025-02-06 22:53:42 +00:00
glen deleted branch normalize-by-contracting 2025-02-06 22:53:42 +00:00
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: glen/dyna3#43
No description provided.