Skip to content

Latest commit

 

History

History
130 lines (103 loc) · 3.41 KB

README.md

File metadata and controls

130 lines (103 loc) · 3.41 KB

Graphical Summary of README

PyEF

GitHub Actions Build Status Documentation Status

Table of Contents

  1. Overview
  2. Tutorials
  3. Installation
    • Download the package from GitHub
    • Creating a python environment
    • Developer install of PyEF
    • Supporting installations
  4. What is included?
    • File structure
    • Command Line Interface
  5. Documentation
    • Update the ReadTheDocs
    • GitHub refresher

1. Overview

The purpose of PyEF is to make electric field and electrostatics calculations more accessible. PyEF is a python package optimized to run using molden files from QM calculations.

2. Tutorials

In progress

3. Installation

Install the package by running the follow commands inside the downloaded repository. This will perform a developmental version install. It is good practice to do this inside of a virtual environment.

Download the package from GitHub

git clone [email protected]:davidkastner/pyEF.git

Creating python environment

All the dependencies can be loaded together using the prebuilt environment.yml file. Compatibility is automatically tested for python versions 3.8 and higher. Installing all dependencies together has shown to produce more robust installations.

cd pyEF
conda env create -f environment.yml
conda activate pyef

Developer install of pyEF

cd pyEF
python -m pip install -e .

4. What's included?

PyEF contains a collection of optimized scripts that work together in pre-built workflows. If a script is not already included for procedure, many of the functions may be useful in building a procedure.

File structure

.
├── docs                # Readthedocs documentation site
├── pyEF                # Directory containing E3Bind modules
│   ├── cli.py          # Entry point for running E3Bind tools and workflows
│   ├── run             # Runs the workflow
│   ├── analysis        # Analyze the data
│   └── geometry        # Check geometries
└── ...

5. Documentation

Accurate documentation will always be a high priority for the project. You can find documentation at the project's ReadtheDocs.

Update the ReadTheDocs

make clean
make html

GitHub refresher

Push new changes

git status
git pull
git add -A .
git commit -m "Change a specific functionality"
git push -u origin main

Making a pull request

git checkout main
git pull

# Before you begin making changes, create a new branch
git checkout -b new-feature-branch
git add -A
git commit -m "Detailed commit message describing the changes"
git push -u origin new-feature-branch

# Visit github.com to add description, submit, merge the pull request

# Once finished on github.com, return to local
git checkout main
git pull

# Delete the remote branch
git branch -d new-feature-branch

Handle merge conflict

git stash push --include-untracked
git stash drop
git pull

Acknowledgements

Authors: Melissa Manetsch and David W. Kastner

MolSSi template version 1.6.