Skip to main content

conspire/math/assert/fd_eq/owned/
rank_2.rs

1use super::super::{AssertFd, eq_within_fd_tol_impl};
2use crate::math::assert::{Assert, AssertionError};
3use crate::math::{
4    TensorRank2, TensorRank2SparseVec2D, TensorRank2SparseVec2DSymmetric, TensorRank2Vec,
5    TensorRank2Vec2D,
6};
7
8impl<const D: usize, const I: usize, const J: usize> AssertFd<TensorRank2<D, I, J>>
9    for TensorRank2<D, I, J>
10{
11    fn eq_within_fd_tol(
12        tols: &Assert,
13        a: Self,
14        b: TensorRank2<D, I, J>,
15    ) -> Result<(), AssertionError> {
16        eq_within_fd_tol_impl(tols, &a, &b)
17    }
18}
19
20impl<const D: usize, const I: usize, const J: usize> AssertFd<TensorRank2Vec<D, I, J>>
21    for TensorRank2Vec<D, I, J>
22{
23    fn eq_within_fd_tol(
24        tols: &Assert,
25        a: Self,
26        b: TensorRank2Vec<D, I, J>,
27    ) -> Result<(), AssertionError> {
28        eq_within_fd_tol_impl(tols, &a, &b)
29    }
30}
31
32impl<const D: usize, const I: usize, const J: usize> AssertFd<TensorRank2Vec2D<D, I, J>>
33    for TensorRank2Vec2D<D, I, J>
34{
35    fn eq_within_fd_tol(
36        tols: &Assert,
37        a: Self,
38        b: TensorRank2Vec2D<D, I, J>,
39    ) -> Result<(), AssertionError> {
40        eq_within_fd_tol_impl(tols, &a, &b)
41    }
42}
43
44impl<const D: usize, const I: usize, const J: usize> AssertFd<TensorRank2SparseVec2D<D, I, J>>
45    for TensorRank2SparseVec2D<D, I, J>
46{
47    fn eq_within_fd_tol(
48        tols: &Assert,
49        a: Self,
50        b: TensorRank2SparseVec2D<D, I, J>,
51    ) -> Result<(), AssertionError> {
52        eq_within_fd_tol_impl(tols, &a, &b)
53    }
54}
55
56impl<const D: usize, const I: usize, const J: usize>
57    AssertFd<TensorRank2SparseVec2DSymmetric<D, I, J>>
58    for TensorRank2SparseVec2DSymmetric<D, I, J>
59{
60    fn eq_within_fd_tol(
61        tols: &Assert,
62        a: Self,
63        b: TensorRank2SparseVec2DSymmetric<D, I, J>,
64    ) -> Result<(), AssertionError> {
65        eq_within_fd_tol_impl(tols, &a, &b)
66    }
67}