src/sets.rs

branch
dev
changeset 75
e9f4550cfa18
parent 63
f7b87d84864d
child 86
d5b0e496b72f
equal deleted inserted replaced
74:2c76df38d02b 75:e9f4550cfa18
60 60
61 /// Halfspaces described by an orthogonal vector and an offset. 61 /// Halfspaces described by an orthogonal vector and an offset.
62 /// 62 ///
63 /// The halfspace is $H = \\{ t v + a \mid a^⊤ v = 0 \\}$, where $v$ is the orthogonal 63 /// The halfspace is $H = \\{ t v + a \mid a^⊤ v = 0 \\}$, where $v$ is the orthogonal
64 /// vector and $t$ the offset. 64 /// vector and $t$ the offset.
65 ///
66 /// `U` is the element type, `F` the floating point number type, and `A` the type of the
67 /// orthogonal (dual) vectors. They need implement [`Dot<U, F>`].
68 #[derive(Clone,Copy,Debug,Serialize,Eq,PartialEq)] 65 #[derive(Clone,Copy,Debug,Serialize,Eq,PartialEq)]
69 pub struct Halfspace<A, F> where A : Euclidean<F>, F : Float { 66 pub struct Halfspace<A, F> where A : Euclidean<F>, F : Float {
70 pub orthogonal : A, 67 pub orthogonal : A,
71 pub offset : F, 68 pub offset : F,
72 } 69 }

mercurial