Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix asymptotics of Poisson solver for small r (final) #67

Merged
merged 10 commits into from
Jun 3, 2016

Conversation

tovrstra
Copy link
Member

@tovrstra tovrstra commented Jun 2, 2016

This is the first bug fix that involves changes in the C++ code and I ran into a lot of small issues with the C++ trapdoor scripts, which are also fixed in the commits below.

Summary:

  • Fix issue Numerical Poisson solver gives wrong result in origin. #37.
  • Improved output and tuned settings for cppcheck and cpplint trapdoor scripts.
  • Fix all issues reported by cppcheck and cpplint for cubic_spline.* (I could have done just the new ones but I wanted to do more for the sake of testing the trapdoor scripts.)
  • One important change in the previous point is the use of int64_t instead of long (just in one place). That is indeed clearer but requires us to switch to c++11, which just worked fine on my computer.
  • Improved parsing of doxygen_warnings.log
  • Source code documentation in cubuc_spline.h (Again, I could have done just part of the file but I wanted to do all of it to test the trapdoor_doxygen.py script.)
  • Start using recent GCC in Travis, needed for C++11 support
  • Update dependencies: GCC 4.9 is the oldest decent version with C++11 support

The more-than-necessary changes in cubic_spline.* should not interfere with branches to be merged in 2.1.0.

@tovrstra tovrstra modified the milestone: 2.0.1 Jun 2, 2016
@tovrstra tovrstra added the Bugfix label Jun 2, 2016
@matt-chan
Copy link
Member

It's failing because of the wildcard imports in the test files. I thought we had suppressed them?

@tovrstra
Copy link
Member Author

tovrstra commented Jun 3, 2016

I had only fixed them where we had errors. This PR seems to cause trouble with all of them. I'll fix.

@tovrstra
Copy link
Member Author

tovrstra commented Jun 3, 2016

I've rebased to fix merge conflicts.

@tovrstra
Copy link
Member Author

tovrstra commented Jun 3, 2016

I'm going to rebase this again to resolve merge conflicts. Hang on for a sec...

Also a few fixes are included to avoid division by zero in
IntGrid.eval_decomposition. This commit includes tests for
the fixed bugs.
- Improved output
- Tuned settings
Most fixes are trivial except for one. Cpplint suggests to use int64_t
instead of long, which is a good idea. However, that implies that we
compile our C++ code with -std=c++11. That all works fine but it is a
non-trivial change.
Parsing of the warnings log was not always working.
This is needed for C++11 support and it is not a bad idea to use a more
recent compiler anyway.
This is the first release with complete C++11 support. (In principle,
4.8.1 was meant to be that but it was apparently still missing regex.)
@matt-chan
Copy link
Member

Looks good!

On another note, I should really figure out a better way to review large PRs. It's too easy to start to skim when looking at something big.

@matt-chan matt-chan merged commit 9918e33 into theochem:master Jun 3, 2016
@tovrstra tovrstra deleted the fix_hartree_splines branch June 3, 2016 20:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants