Code Monkey home page Code Monkey logo

polyhartree's Introduction

polyhartree

Tools to automate routine computational chemistry

polyhartree's People

Contributors

mattbernst avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

polyhartree's Issues

Geometry extraction with "baked" log files

Check in some log files to the test data and confirm geometry extraction from them. Examples should be available as documentation even for systems that don't have all back ends installed.

Reorganize tests by functionality

Common test class, e.g. EnergyTest, subclassed by MethodEnergyTest (e.g. Semiempirical, DFT...), further subclassed by adapter (e.g. GAMESS, MOPAC7...)

Also MethodEnergyComparison, MethodOptComparison, etc.

This should get rid of code redundancy and make it easier to cross-validate adapters.

Clean up test_semiempirical_energies

The cross-package comparison code should actually be part of the application instead of the test.

Also need a way to automatically skip runs if the back end is not installed, and report it.

Also need a way to automatically skip runs if the back end does not support the method, and report it.

Add SCF convergence failure test case

At some point I will want to add a handler to automatically attempt to fix failed SCF convergence. First we need a failed SCF convergence test case that exercises detection mechanisms, though.

Test basis set count limit in NWChem

Reading the code, it appears that NWChem in its default compile may support a maximum of 7 basis sets assigned in one system. Add test case to check this. Also see if we can discover basis sets limits for the other adapters.

Add geometry optimization failure test case

At some point I'll want the capability to automatically retry difficult geometry optimizations. First we need a detection mechanism and corresponding test case for optimization failures.

Recast data extraction as pattern matching between sentinel values

Investigate this: can we further simplify data extraction by having a single extract_matches method that takes parameters line_scanner, start=None, end=None? Do it as a generator.

When start and end are None, line_scanner would try to match patterns from every line like the line_to_geometry method does inside extract_geometry. When start is None and end is a string, the scanner would run until it encounters the end-string or until it runs out of data. When start is a string and end is None, the scanner would only try to match lines after it encounters the start-string in input. When start and end are both strings, the scanner would enter active mode only between start and end pairs, to e.g. extract blocks of data.

A higher level generator on top of this generator can manage transitions to group data in blocks. This simplifies structure extraction for geometry.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.