Test tube length
This commit is contained in:
parent
8ad9f04ece
commit
f2e2767156
|
|
@ -628,7 +628,7 @@ mod fns {
|
||||||
use crate::FloatExt2;
|
use crate::FloatExt2;
|
||||||
|
|
||||||
#[cfg(test)]
|
#[cfg(test)]
|
||||||
use approx::abs_diff_eq;
|
use approx::{abs_diff_eq, assert_abs_diff_eq};
|
||||||
|
|
||||||
pub struct TubeX {
|
pub struct TubeX {
|
||||||
pub min: f32,
|
pub min: f32,
|
||||||
|
|
@ -674,6 +674,10 @@ mod fns {
|
||||||
let δ = 1.0 / 8.0; // Mathematically, you want this to be small. Computationally, you don’t.
|
let δ = 1.0 / 8.0; // Mathematically, you want this to be small. Computationally, you don’t.
|
||||||
let margin = 1.0 / 16.0;
|
let margin = 1.0 / 16.0;
|
||||||
let mul = 1.0 + margin;
|
let mul = 1.0 + margin;
|
||||||
|
assert_abs_diff_eq!(testee.u(testee.external), testee.internal, epsilon = ε);
|
||||||
|
assert_abs_diff_eq!(testee.u(-testee.external), -testee.internal, epsilon = ε);
|
||||||
|
assert_abs_diff_eq!(testee.du(testee.external), 1., epsilon = ε);
|
||||||
|
assert_abs_diff_eq!(testee.du(-testee.external), 1., epsilon = ε);
|
||||||
for x in itertools_num::linspace(-mul * testee.external, mul * testee.external, 100) {
|
for x in itertools_num::linspace(-mul * testee.external, mul * testee.external, 100) {
|
||||||
let ux = testee.u(x);
|
let ux = testee.u(x);
|
||||||
let xux = testee.x(ux);
|
let xux = testee.x(ux);
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user