Sat, 28 Dec 2024 19:31:21 -0500
Further alg_tools updates
Cargo.lock | file | annotate | diff | comparison | revisions | |
src/fb.rs | file | annotate | diff | comparison | revisions | |
src/main.rs | file | annotate | diff | comparison | revisions |
--- 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"
--- 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<M, T > Desc<M> for Sum<M, T> +impl<M, T> Desc<M> for MappingSum<T> where M : ManifoldPoint, T : Grad<M> + Mapping<M, Codomain=f64>, - M::Tangent : SumTrait { + M::Tangent : Sum { fn desc(&self, τ : f64, x : M) -> M { let t : M::Tangent = self.iter() .map(|f| f.grad(&x))
--- 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;