molmod / tamkin

TAMkin is a post-processing toolkit for thermochemistry and kinetics analysis.
http://molmod.github.io/tamkin
GNU General Public License v3.0
22 stars 15 forks source link

test_vsa_no_mass fails #43

Open Flamefire opened 7 months ago

Flamefire commented 7 months ago

We are installing Tamkin 1.2.6 using Python 3.11.3, molmod 1.4.8, nose3 1.3.8 using GCC 12.3.0

When running the tests export MATPLOTLIBRC=$PWD; echo "backend: agg" > $MATPLOTLIBRC/matplotlibrc; export OMP_NUM_THREADS=1; nosetests -v tamkin we see the test_vsa_no_mass failing on 2 different architectures (power9le & x86 haswell) with similar differences:

FAIL: test_vsa_no_mass (tamkin.test.test_nma.NMATestCase.test_vsa_no_mass)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/dev/shm/s3248973-EasyBuild/TAMkin/1.2.6/foss-2023a/tamkin-1.2.6/tamkin/test/test_nma.py", line 532, in test_vsa_no_mass
    self.check_freqs(expected_freqs, nma, 0, check_zeros=True)
  File "/dev/shm/s3248973-EasyBuild/TAMkin/1.2.6/foss-2023a/tamkin-1.2.6/tamkin/test/test_nma.py", line 77, in check_freqs
    self.assertAlmostEqual(
AssertionError: 0.13774798 != 0.6608735502232888 within 0 places (0.5231255702232888 difference) : Frequency 2 does not match, expected - computed = 0.1 - 0.7 = -0.523126

======================================================================
FAIL: test_vsa_no_mass (tamkin.test.test_nma.NMATestCase.test_vsa_no_mass)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/tmp/boegelbot/TAMkin/1.2.6/foss-2023a/tamkin-1.2.6/tamkin/test/test_nma.py", line 532, in test_vsa_no_mass
    self.check_freqs(expected_freqs, nma, 0, check_zeros=True)
  File "/tmp/boegelbot/TAMkin/1.2.6/foss-2023a/tamkin-1.2.6/tamkin/test/test_nma.py", line 77, in check_freqs
    self.assertAlmostEqual(
AssertionError: 0.13774798 != 0.6460767049351539 within 0 places (0.5083287249351539 difference) : Frequency 2 does not match, expected - computed = 0.1 - 0.6 = -0.508329

Is this something to worry about or is this somehow "expected"?

Flamefire commented 6 months ago

It doesn't seem to be related to the compiler or Python versions as it happens for other versions too. But it only happens on haswell machines as it seems. Any ideas?

Flamefire commented 6 months ago

I was also able to replicate this locally (on my laptop) on an Intel(R) Core(TM) i7-7600U

So to me this looks like the expected frequency is off and it just happens to match for a difference of 0.3 but not anymore for 0.5