# HG changeset patch # User Tuomo Valkonen # Date 1735432281 18000 # Node ID 1afca417d71bf592b97004a0b6691c76df51f4c4 # Parent 34f8ec6363684a9a835148876cdae03c9fdcfc18 Further alg_tools updates diff -r 34f8ec636368 -r 1afca417d71b Cargo.lock --- a/Cargo.lock Thu Dec 19 15:55:32 2024 -0500 +++ b/Cargo.lock Sat Dec 28 19:31:21 2024 -0500 @@ -21,6 +21,7 @@ name = "alg_tools" version = "0.3.0-dev" dependencies = [ + "anyhow", "colored", "cpu-time", "csv", @@ -43,9 +44,9 @@ [[package]] name = "anyhow" -version = "1.0.94" +version = "1.0.95" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c1fd03a028ef38ba2276dce7e33fcd6369c158a1bca17946c4b1b701891c1ff7" +checksum = "34ac096ce696dc2fcabef30516bb13c0a68a11d30131d3df6f04711467681b04" [[package]] name = "approx" diff -r 34f8ec636368 -r 1afca417d71b src/fb.rs --- a/src/fb.rs Thu Dec 19 15:55:32 2024 -0500 +++ b/src/fb.rs Sat Dec 28 19:31:21 2024 -0500 @@ -3,9 +3,10 @@ */ use alg_tools::iterate::{AlgIteratorFactory, LogRepr}; -use alg_tools::mapping::{Mapping, Sum}; +use alg_tools::mapping::Mapping; +use alg_tools::operator_arithmetic::MappingSum; use serde::Serialize; -use std::iter::Sum as SumTrait; +use std::iter::Sum; use colored::ColoredString; use crate::manifold::{EmbeddedManifoldPoint, ManifoldPoint}; @@ -27,10 +28,10 @@ } }*/ -impl Desc for Sum +impl Desc for MappingSum where M : ManifoldPoint, T : Grad + Mapping, - M::Tangent : SumTrait { + M::Tangent : Sum { fn desc(&self, τ : f64, x : M) -> M { let t : M::Tangent = self.iter() .map(|f| f.grad(&x)) diff -r 34f8ec636368 -r 1afca417d71b src/main.rs --- a/src/main.rs Thu Dec 19 15:55:32 2024 -0500 +++ b/src/main.rs Sat Dec 28 19:31:21 2024 -0500 @@ -23,7 +23,8 @@ use alg_tools::lingrid::LinSpace; use alg_tools::loc::Loc; use alg_tools::types::*; -use alg_tools::mapping::{Sum, Mapping}; +use alg_tools::mapping::Mapping; +use alg_tools::operator_arithmetic::MappingSum; use alg_tools::iterate::{AlgIteratorOptions, AlgIteratorFactory, Verbose}; use image::{ImageFormat, ImageBuffer, Rgb}; @@ -100,7 +101,7 @@ write_csv(points.iter().map(CSVPoint::from), format!("{dir}/data.csv"))?; write_csv(std::iter::once(&origin).map(CSVPoint::from), format!("{dir}/origin.csv"))?; - let f = Sum::new(points.into_iter().map(DistToSquaredDiv2)); + let f = MappingSum::new(points.into_iter().map(DistToSquaredDiv2)); //let g = ZeroFn::new(); let g = Scaled::new(0.5, DistTo(origin)); let τ = 0.1; @@ -165,7 +166,7 @@ write_csv(points.iter().map(CSVCylPoint::from), format!("{dir}/data.csv"))?; write_csv(std::iter::once(&origin).map(CSVCylPoint::from), format!("{dir}/origin.csv"))?; - let f = Sum::new(points.into_iter().map(DistToSquaredDiv2)); + let f = MappingSum::new(points.into_iter().map(DistToSquaredDiv2)); let g = Scaled::new(4.0, DistTo(origin)); let τ = 0.1;