Skip to content

Commit 890d3e0

Browse files
committed
test(potentials): Refactor UmbrellaInversion tests to use precomputed parameters
1 parent e9c1a2a commit 890d3e0

1 file changed

Lines changed: 10 additions & 9 deletions

File tree

src/potentials/bonded/inversion.rs

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -383,11 +383,13 @@ mod tests {
383383
mod umbrella_inversion {
384384
use super::*;
385385

386-
const C_HALF: f64 = 15.0; // C/2 = 15 kcal/mol
387-
const COS_PSI0: f64 = 0.33; // ~70° typical for sp³
386+
const C: f64 = 30.0;
387+
const PSI0_DEG: f64 = 60.0;
388+
const C_HALF: f64 = C / 2.0;
389+
const COS_PSI0: f64 = 0.5;
388390

389391
fn params() -> (f64, f64) {
390-
(C_HALF, COS_PSI0)
392+
UmbrellaInversion::precompute(C, PSI0_DEG)
391393
}
392394

393395
// --------------------------------------------------------------------
@@ -411,7 +413,7 @@ mod tests {
411413
fn sanity_f32_f64_consistency() {
412414
let cos_psi = 0.4;
413415
let p64 = params();
414-
let p32 = (C_HALF as f32, COS_PSI0 as f32);
416+
let p32 = UmbrellaInversion::precompute(C as f32, PSI0_DEG as f32);
415417

416418
let e64 = UmbrellaInversion::energy(cos_psi, p64);
417419
let e32 = UmbrellaInversion::energy(cos_psi as f32, p32);
@@ -529,16 +531,15 @@ mod tests {
529531

530532
#[test]
531533
fn precompute_values() {
532-
let (c_half, cos_psi0) = UmbrellaInversion::precompute(C_HALF * 2.0, 70.0);
534+
let (c_half, cos_psi0) = UmbrellaInversion::precompute(C, PSI0_DEG);
533535
assert_relative_eq!(c_half, C_HALF, epsilon = 1e-14);
534-
assert_relative_eq!(cos_psi0, 70.0_f64.to_radians().cos(), epsilon = 1e-10);
536+
assert_relative_eq!(cos_psi0, COS_PSI0, epsilon = 1e-10);
535537
}
536538

537539
#[test]
538540
fn precompute_round_trip() {
539-
let p = UmbrellaInversion::precompute(30.0, 70.0);
540-
let cos_eq = 70.0_f64.to_radians().cos();
541-
let e = UmbrellaInversion::energy(cos_eq, p);
541+
let p = UmbrellaInversion::precompute(C, PSI0_DEG);
542+
let e = UmbrellaInversion::energy(COS_PSI0, p);
542543
assert_relative_eq!(e, 0.0, epsilon = 1e-10);
543544
}
544545
}

0 commit comments

Comments
 (0)