https://github.com/crdrisko/drychem

A generic, compile-time C++ toolbox with no dependencies for the modern computational chemistry project.

https://github.com/crdrisko/drychem

Science Score: 36.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
  • DOI references
    Found 2 DOI reference(s) in README
  • Academic publication links
    Links to: zenodo.org
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (19.3%) to scientific vocabulary

Keywords

chemistry cpp17 toolbox
Last synced: 5 months ago · JSON representation

Repository

A generic, compile-time C++ toolbox with no dependencies for the modern computational chemistry project.

Basic Info
Statistics
  • Stars: 1
  • Watchers: 2
  • Forks: 0
  • Open Issues: 1
  • Releases: 2
Topics
chemistry cpp17 toolbox
Created almost 6 years ago · Last pushed almost 2 years ago
Metadata Files
Readme Contributing License Code of conduct Security

README.md

DryChem

cmake Coverage Status GitHub release (latest by date including pre-releases) DOI

Welcome to the DryChem project! DryChem is a collection of generic C++ libraries, who's main goal is compliance with the "Don't Repeat Yourself" (DRY) principle of modern software development. The libraries we release and maintain are general enough to find use in a number of projects, but don't go much farther than what you would find in your average computational chemistry codebases' utility library.

This repository is a merger of the formerly separate C++ Units and Common-Utilities projects. Because these repositories were so closely related, it made sense to maintain and release them together.

Getting started

Detailed documentation for Common-Utilities and C++ Units can be found in the interior common-utilities/README.md and cpp-units/README.md files, respectively.

Features

  • A familiar framework for error and exception handling.
  • An intuitive file parsing system based on tokenized strings and lazy evaluation.
  • A number of mathematical functions with domains ranging from calculus to statistics.
  • A number of utility type traits for better, more general programming.
  • A compile-time, header-only physical quantity library.

Platforms

The DryChem project has been built and tested on a number of operating systems, computer architectures, and compiler combinations.

  • Linux
  • Mac OS X
  • Windows

Requirements

The DryChem project was designed to have as few external dependencies as possible so it could be easily built and used by other projects. The project requires:

  • A C++17-standard-compliant compiler with support for the Standard Library.

  • The Bourne Again SHell (bash) is required to use of any of the scripts. While other versions of bash may work, the lowest version of bash I have tested these scripts on is 3.2. Many, if not all, shell scripts in this repository are not compliant with the POSIX shell.

Build Requirements

  • CMake: Version 3.12.0 or higher. See the documentation in the build.md file for specific instructions on installing the project.

Test Requirements

  • GoogleTest was used for the testing all the source code in the project. Building and running all these tests is optional and more information can be found in the testing section of build.md.

Contributing

Please read CONTRIBUTING.md for details on how you can become a contributor and the process for submitting pull requests to us.

License

Copyright (c) 2020-2025 Cody R. Drisko. All rights reserved.

Licensed under the MIT License.

Owner

  • Name: Cody R. Drisko
  • Login: crdrisko
  • Kind: user
  • Location: Notre Dame, IN
  • Company: University of Notre Dame

C++ developer and computational chemist at the University of Notre Dame.

GitHub Events

Total
  • Create event: 3
  • Release event: 2
  • Issues event: 1
  • Delete event: 1
  • Push event: 23
Last Year
  • Create event: 3
  • Release event: 2
  • Issues event: 1
  • Delete event: 1
  • Push event: 23

Dependencies

.github/workflows/build.yml actions
  • actions/checkout v2 composite
.github/workflows/codeql-analysis.yml actions
  • actions/checkout v2 composite
  • github/codeql-action/analyze v1 composite
  • github/codeql-action/init v1 composite
.github/workflows/pages.yml actions
  • actions/checkout v2 composite
  • peaceiris/actions-gh-pages v3 composite