# HG changeset patch # User Tuomo Valkonen # Date 1729523107 18000 # Node ID 17d71ca4ce84983877a231663ea7c8772dc73072 # Parent 8979a6638424deac90717f19fd8c07f6869ee38e Make exp consuming diff -r 8979a6638424 -r 17d71ca4ce84 src/cube.rs --- a/src/cube.rs Mon Oct 21 10:02:57 2024 -0500 +++ b/src/cube.rs Mon Oct 21 10:05:07 2024 -0500 @@ -241,7 +241,7 @@ impl ManifoldPoint for OnCube { type Tangent = Point; - fn exp(&self, tangent : &Self::Tangent) -> Self { + fn exp(self, tangent : &Self::Tangent) -> Self { let mut face = self.face; let mut point = self.point + tangent; loop { diff -r 8979a6638424 -r 17d71ca4ce84 src/dist.rs --- a/src/dist.rs Mon Oct 21 10:02:57 2024 -0500 +++ b/src/dist.rs Mon Oct 21 10:05:07 2024 -0500 @@ -45,7 +45,8 @@ impl Desc for DistToSquaredDiv2 { fn desc(&self, τ : f64, x : M) -> M { - x.exp(&(self.grad(&x) * τ)) + let t = self.grad(&x) * τ; + x.exp(&t) } } diff -r 8979a6638424 -r 17d71ca4ce84 src/manifold.rs --- a/src/manifold.rs Mon Oct 21 10:02:57 2024 -0500 +++ b/src/manifold.rs Mon Oct 21 10:05:07 2024 -0500 @@ -7,7 +7,7 @@ type Tangent : Euclidean + std::fmt::Debug; /// Exponential map - fn exp(&self, tangent : &Self::Tangent) -> Self; + fn exp(self, tangent : &Self::Tangent) -> Self; /// Logarithmic map fn log(&self, other : &Self) -> Self::Tangent;