src/base.rs

Thu, 26 Feb 2026 05:00:09 -0500

author
Tuomo Valkonen <tuomov@iki.fi>
date
Thu, 26 Feb 2026 05:00:09 -0500
changeset 6
aefacd832408
parent 0
e8f3b6c55ce7
permissions
-rw-r--r--

Add more pyo3 interfaces

0
e8f3b6c55ce7 Initialise repository, separating measure from pointsource_algs
Tuomo Valkonen <tuomov@iki.fi>
parents:
diff changeset
1 //! Basic definitions for measures
e8f3b6c55ce7 Initialise repository, separating measure from pointsource_algs
Tuomo Valkonen <tuomov@iki.fi>
parents:
diff changeset
2
e8f3b6c55ce7 Initialise repository, separating measure from pointsource_algs
Tuomo Valkonen <tuomov@iki.fi>
parents:
diff changeset
3 use alg_tools::norms::{Norm, NormExponent};
e8f3b6c55ce7 Initialise repository, separating measure from pointsource_algs
Tuomo Valkonen <tuomov@iki.fi>
parents:
diff changeset
4 use alg_tools::types::Num;
e8f3b6c55ce7 Initialise repository, separating measure from pointsource_algs
Tuomo Valkonen <tuomov@iki.fi>
parents:
diff changeset
5 use serde::Serialize;
e8f3b6c55ce7 Initialise repository, separating measure from pointsource_algs
Tuomo Valkonen <tuomov@iki.fi>
parents:
diff changeset
6
e8f3b6c55ce7 Initialise repository, separating measure from pointsource_algs
Tuomo Valkonen <tuomov@iki.fi>
parents:
diff changeset
7 /// This is used with [`Norm::norm`] to indicate that a Radon norm is to be computed.
e8f3b6c55ce7 Initialise repository, separating measure from pointsource_algs
Tuomo Valkonen <tuomov@iki.fi>
parents:
diff changeset
8 #[derive(Copy, Clone, Serialize, Debug)]
e8f3b6c55ce7 Initialise repository, separating measure from pointsource_algs
Tuomo Valkonen <tuomov@iki.fi>
parents:
diff changeset
9 pub struct Radon;
e8f3b6c55ce7 Initialise repository, separating measure from pointsource_algs
Tuomo Valkonen <tuomov@iki.fi>
parents:
diff changeset
10 impl NormExponent for Radon {}
e8f3b6c55ce7 Initialise repository, separating measure from pointsource_algs
Tuomo Valkonen <tuomov@iki.fi>
parents:
diff changeset
11
e8f3b6c55ce7 Initialise repository, separating measure from pointsource_algs
Tuomo Valkonen <tuomov@iki.fi>
parents:
diff changeset
12 /// A trait for (Radon) measures.
e8f3b6c55ce7 Initialise repository, separating measure from pointsource_algs
Tuomo Valkonen <tuomov@iki.fi>
parents:
diff changeset
13 ///
e8f3b6c55ce7 Initialise repository, separating measure from pointsource_algs
Tuomo Valkonen <tuomov@iki.fi>
parents:
diff changeset
14 /// Currently has no methods, just the requirement that the Radon norm be implemented.
e8f3b6c55ce7 Initialise repository, separating measure from pointsource_algs
Tuomo Valkonen <tuomov@iki.fi>
parents:
diff changeset
15 pub trait Measure<F: Num>: Norm<Radon, F> {
e8f3b6c55ce7 Initialise repository, separating measure from pointsource_algs
Tuomo Valkonen <tuomov@iki.fi>
parents:
diff changeset
16 type Domain;
e8f3b6c55ce7 Initialise repository, separating measure from pointsource_algs
Tuomo Valkonen <tuomov@iki.fi>
parents:
diff changeset
17 }
e8f3b6c55ce7 Initialise repository, separating measure from pointsource_algs
Tuomo Valkonen <tuomov@iki.fi>
parents:
diff changeset
18
e8f3b6c55ce7 Initialise repository, separating measure from pointsource_algs
Tuomo Valkonen <tuomov@iki.fi>
parents:
diff changeset
19 /// Decomposition of measures
e8f3b6c55ce7 Initialise repository, separating measure from pointsource_algs
Tuomo Valkonen <tuomov@iki.fi>
parents:
diff changeset
20 pub struct MeasureDecomp;

mercurial