https://github.com/cmelab/forcefields

https://github.com/cmelab/forcefields

Science Score: 26.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
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (7.2%) to scientific vocabulary
Last synced: 10 months ago · JSON representation

Repository

Basic Info
  • Host: GitHub
  • Owner: cmelab
  • Language: Jupyter Notebook
  • Default Branch: main
  • Size: 110 MB
Statistics
  • Stars: 1
  • Watchers: 1
  • Forks: 2
  • Open Issues: 5
  • Releases: 0
Created almost 4 years ago · Last pushed about 1 year ago
Metadata Files
Readme

README.md

forcefields

This repo is designed to aid in the proccess of creating forcefield files from scratch using the Espaloma Program written by the Chodera Lab (https://github.com/choderalab/espaloma).

Installing Environment

For Apple Silicon Mac (ARM):

CONDA_SUBDIR=osx-64 conda create -n ff_generation python conda activate ff_generation conda env config vars set CONDA_SUBDIR=osx-64 conda deactivate conda activate ff_generation conda install 'espaloma=0.3.2' mbuild "python=3.10.14" foyer openbabel py3dmol pip install notebook

Example

from functions import MonToSmiles from functions.MonToSmiles import mon_to_smiles

you can either import a preexisting monomer class:

from monclasses.py import P3HT

or you can build the monomer class:

class P3HT(mb.Compound): def __init__(self): super(P3HT,self).__init__() self.add(mb.load("CCCCCCC1=C(SC(=C1))",smiles=True)) self.bond_indices = [24,25] self.orientations = [[0,0,1],[0,0,-1]] self.separation = 0.14 self.replace = True

The monomer class must include the atomic indices where the polymerizing bonds will be formed as well as the orientations of the #bonds, the bond separation, and whether you are replacing the atoms where the bond will be formed or not.

smiles = montosmiles(fragment=P3HT())[1] #this line must be run before importing the espaloma function.

The montosmiles function returns both the mbuild compound including both the monomer and dimer as well as the smiles string of the monomer and dimer

``` from functions import EspalomaFxn from functions.EspalomaFxn import espaloma

espaloma(SMILES=smiles, #from montosmiles function XMLFILEPATH='INSERT DESIRED XML FILEPATH', TYPEDFILEPATH='INSERT DESIRED MOL2 FILEPATH') ```

Owner

  • Name: Computational Materials Engineering Laboratory
  • Login: cmelab
  • Kind: organization
  • Location: Boise, ID

GitHub Events

Total
  • Push event: 2
Last Year
  • Push event: 2

Dependencies

environment.yml pypi
  • notebook *