mdscribe


Namemdscribe JSON
Version 0.7.4 PyPI version JSON
download
home_pageNone
SummaryA Toolset For Molecular Dynamics
upload_time2025-07-23 14:30:48
maintainerNone
docs_urlNone
authorNone
requires_python>=3.11
licenseNone
keywords molecular dynamics openmm protac ternary complex modeling
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            Python Utilities for Molecular Dynamics
=======================================

Introduction
============

MDScribe is a set of command-line scripts and a library written to make 
setting up the molecular dynamics simulations easier for Desmond, OpenMM, and Amber.

Install
===============

```shell
$ pip install mdscribe
```

Documentation
=============

See https://sunghunbae.github.io/mdscribe/


Example for Desmond
===================

```python
from mdscribe.desmond import Multisim

# read template .msj and .cfg
md_msj = Multisim(template="desmond-md.msj")
md_cfg = Multisim(template="desmond-md.cfg")

with open(msj_file,"w") as msj:
    # modify desmond msj template
    md_msj.dot.simulate[-1].cfg_file = cfg_file_basename
    
    # Setting up restraints using the restraints keyword:
    # https://www.schrodinger.com/kb/332119
    if args.posres_force > 0.0:
        # print the restraints in the multisim log file
        md_msj.dot.simulate[-1].print_restraint = 'true'

        # add the new terms defined in "restraints.new" to existing restraints.
        # The default is restraints.existing = ignore which will 
        # delete existing terms before adding any new ones.
        # md_msj.dot.simulate[-1].restraints.existing = 'retain'

        md_msj.dot.simulate[-1].restraints.new = [
            {
                'name'              : 'posre_harm',
                'atoms'             : [ f'"{args.posres}"' ],
                'force_constants'   : [ args.posres_force, ] * 3,
            }
            ]
        # force constants in the x, y, and z direction

    md_msj.write(msj)

with open(cfg_file,"w") as cfg:
    # modify desmond cfg template
    md_cfg.dot.randomize_velocity.seed = random.randint(1000, 9999)
    md_cfg.dot.time = total_simulation_time
    md_cfg.dot.temperature = t_schedule
    md_cfg.dot.trajectory.interval = args.interval
    md_cfg.write(cfg)
```

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "mdscribe",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.11",
    "maintainer_email": "Sung-Hun Bae <sunghun.bae@gmail.com>",
    "keywords": "Molecular Dynamics, OpenMM, PROTAC, Ternary Complex Modeling",
    "author": null,
    "author_email": "Sung-Hun Bae <sunghun.bae@gmail.com>",
    "download_url": "https://files.pythonhosted.org/packages/10/ce/a74477891d3c792284d58e605c2544fb3fd5fcfd40c1eb0da2a54cee8589/mdscribe-0.7.4.tar.gz",
    "platform": null,
    "description": "Python Utilities for Molecular Dynamics\n=======================================\n\nIntroduction\n============\n\nMDScribe is a set of command-line scripts and a library written to make \nsetting up the molecular dynamics simulations easier for Desmond, OpenMM, and Amber.\n\nInstall\n===============\n\n```shell\n$ pip install mdscribe\n```\n\nDocumentation\n=============\n\nSee https://sunghunbae.github.io/mdscribe/\n\n\nExample for Desmond\n===================\n\n```python\nfrom mdscribe.desmond import Multisim\n\n# read template .msj and .cfg\nmd_msj = Multisim(template=\"desmond-md.msj\")\nmd_cfg = Multisim(template=\"desmond-md.cfg\")\n\nwith open(msj_file,\"w\") as msj:\n    # modify desmond msj template\n    md_msj.dot.simulate[-1].cfg_file = cfg_file_basename\n    \n    # Setting up restraints using the restraints keyword:\n    # https://www.schrodinger.com/kb/332119\n    if args.posres_force > 0.0:\n        # print the restraints in the multisim log file\n        md_msj.dot.simulate[-1].print_restraint = 'true'\n\n        # add the new terms defined in \"restraints.new\" to existing restraints.\n        # The default is restraints.existing = ignore which will \n        # delete existing terms before adding any new ones.\n        # md_msj.dot.simulate[-1].restraints.existing = 'retain'\n\n        md_msj.dot.simulate[-1].restraints.new = [\n            {\n                'name'              : 'posre_harm',\n                'atoms'             : [ f'\"{args.posres}\"' ],\n                'force_constants'   : [ args.posres_force, ] * 3,\n            }\n            ]\n        # force constants in the x, y, and z direction\n\n    md_msj.write(msj)\n\nwith open(cfg_file,\"w\") as cfg:\n    # modify desmond cfg template\n    md_cfg.dot.randomize_velocity.seed = random.randint(1000, 9999)\n    md_cfg.dot.time = total_simulation_time\n    md_cfg.dot.temperature = t_schedule\n    md_cfg.dot.trajectory.interval = args.interval\n    md_cfg.write(cfg)\n```\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "A Toolset For Molecular Dynamics",
    "version": "0.7.4",
    "project_urls": {
        "Changelog": "https://github.com/sunghunbae/mdscribe/blob/master/CHANGELOG.md",
        "Documentation": "https://sunghunbae.github.io/mdscribe/",
        "Homepage": "https://github.com/sunghunbae/mdscribe",
        "Issues": "https://github.com/sunghunbae/mdscribe/issues",
        "Repository": "https://github.com/sunghunbae/mdscribe.git"
    },
    "split_keywords": [
        "molecular dynamics",
        " openmm",
        " protac",
        " ternary complex modeling"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "acde79d68930411015e2255312d796a760b0f1f5f8d6e3a78df64a44dbe219b9",
                "md5": "e23e4071f8bb7144e33edc1a012ad7de",
                "sha256": "9f3acee88b2b0292cc1d03059ef9674a93e5b823b85fc8722083b85982657dc1"
            },
            "downloads": -1,
            "filename": "mdscribe-0.7.4-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "e23e4071f8bb7144e33edc1a012ad7de",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.11",
            "size": 57841,
            "upload_time": "2025-07-23T14:30:47",
            "upload_time_iso_8601": "2025-07-23T14:30:47.010407Z",
            "url": "https://files.pythonhosted.org/packages/ac/de/79d68930411015e2255312d796a760b0f1f5f8d6e3a78df64a44dbe219b9/mdscribe-0.7.4-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "10cea74477891d3c792284d58e605c2544fb3fd5fcfd40c1eb0da2a54cee8589",
                "md5": "29aa4bec1dfe0fe707947ee187b90f52",
                "sha256": "bdba2627ac7b40f134b1fb216d8d7e50fbad1469180fdc3f15a19ecc28368c0b"
            },
            "downloads": -1,
            "filename": "mdscribe-0.7.4.tar.gz",
            "has_sig": false,
            "md5_digest": "29aa4bec1dfe0fe707947ee187b90f52",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.11",
            "size": 52527,
            "upload_time": "2025-07-23T14:30:48",
            "upload_time_iso_8601": "2025-07-23T14:30:48.193709Z",
            "url": "https://files.pythonhosted.org/packages/10/ce/a74477891d3c792284d58e605c2544fb3fd5fcfd40c1eb0da2a54cee8589/mdscribe-0.7.4.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-07-23 14:30:48",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "sunghunbae",
    "github_project": "mdscribe",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "lcname": "mdscribe"
}
        
Elapsed time: 1.19179s