source: tests/Python/ForceAnnealing/testsuite-python-forceannealing-ising.at@ d34446

ForceAnnealing_with_BondGraph_continued_betteresults
Last change on this file since d34446 was d9c229, checked in by Frederik Heber <frederik.heber@…>, 7 years ago

TEST: Adding Python test on ForceAnnealing using an Ising model with and without bondgraph.

  • We are not done yet with implementing optimization using the bond graph. The 2-body Ising test on using bond graph reveals that we have a problem when bonds need to shrink. In case of the test the updates from either side cancel each other and there is no progress. For the 5-body Ising test convergence is not monotone, probably also because of the need to proper deal with shrinking bonds.
  • TESTFIX: Marked Python tests on ForceAnnealing using the bond graph as XFAIL because of this.
  • Property mode set to 100644
File size: 3.3 KB
Line 
1#
2# MoleCuilder - creates and alters molecular systems
3# Copyright (C) 2017 Frederik Heber
4#
5# This program is free software: you can redistribute it and/or modify
6# it under the terms of the GNU General Public License as published by
7# the Free Software Foundation, either version 3 of the License, or
8# (at your option) any later version.
9#
10# This program is distributed in the hope that it will be useful,
11# but WITHOUT ANY WARRANTY; without even the implied warranty of
12# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13# GNU General Public License for more details.
14#
15# You should have received a copy of the GNU General Public License
16# along with this program. If not, see <http://www.gnu.org/licenses/>.
17#
18# Force Annealing with Ising model
19
20AT_SETUP([Python externalization - Force Annealing without bondgraph on 2-body Ising model])
21AT_KEYWORDS([python force-annealing ising])
22
23# we use forces from a simple Ising model with 2 "carbon" atoms in a row along the x axis
24
25file=two_carbon_test.data
26AT_CHECK([../../run ${abs_top_srcdir}/tests/Python/ForceAnnealing/pre/ising_model_chain.py ./$file ./ 15 2 "0"], 0, [stdout], [ignore])
27AT_CHECK([grep "Largest remaining force components.*e-05" stdout], 0, [ignore], [ignore])
28AT_CHECK([diff $file ${abs_top_srcdir}/tests/Python/ForceAnnealing/post/two_carbon_test_no-bondgraph.data], 0, [ignore], [ignore])
29
30AT_CLEANUP
31
32AT_SETUP([Python externalization - Force Annealing without bondgraph on 5-body Ising model])
33AT_KEYWORDS([python force-annealing ising])
34
35# we use forces from a simple Ising model with 5 "carbon" atoms in a row along the x axis
36
37file=five_carbon_test.data
38AT_CHECK([../../run ${abs_top_srcdir}/tests/Python/ForceAnnealing/pre/ising_model_chain.py ./$file ./ 20 5 "0"], 0, [stdout], [ignore])
39AT_CHECK([grep "Largest remaining force components.*e-05" stdout], 0, [ignore], [ignore])
40AT_CHECK([diff $file ${abs_top_srcdir}/tests/Python/ForceAnnealing/post/five_carbon_test_no-bondgraph.data], 0, [ignore], [ignore])
41
42AT_CLEANUP
43
44AT_SETUP([Python externalization - Force Annealing with bondgraph on 2-body Ising model])
45AT_KEYWORDS([python force-annealing ising bondgraph])
46AT_XFAIL_IF([/bin/true])
47
48# we use forces from a simple Ising model with 2 "carbon" atoms in a row along the x axis
49
50file=two_carbon_test.data
51AT_CHECK([../../run ${abs_top_srcdir}/tests/Python/ForceAnnealing/pre/ising_model_chain.py ./$file ./ 30 2 "1"], 0, [stdout], [ignore])
52AT_CHECK([grep "Largest remaining force components.*e-05" stdout], 0, [ignore], [ignore])
53AT_CHECK([diff $file ${abs_top_srcdir}/tests/Python/ForceAnnealing/post/two_carbon_test_bondgraph.data], 0, [ignore], [ignore])
54
55AT_CLEANUP
56
57AT_SETUP([Python externalization - Force Annealing with bondgraph on 5-body Ising model])
58AT_KEYWORDS([python force-annealing ising bondgraph])
59AT_XFAIL_IF([/bin/true])
60
61# we use forces from a simple Ising model with 5 "carbon" atoms in a row along the x axis
62
63file=five_carbon_test.data
64AT_CHECK([../../run ${abs_top_srcdir}/tests/Python/ForceAnnealing/pre/ising_model_chain.py ./$file ./ 20 5 "1"], 0, [stdout], [ignore])
65AT_CHECK([grep "Largest remaining force components.*0.0001" stdout], 0, [ignore], [ignore])
66AT_CHECK([diff $file ${abs_top_srcdir}/tests/Python/ForceAnnealing/post/five_carbon_test_bondgraph.data], 0, [ignore], [ignore])
67
68AT_CLEANUP
Note: See TracBrowser for help on using the repository browser.