Code Monkey home page Code Monkey logo

mechasvg's Introduction

mechaSVG

mechaSVG is a python & tk application for creating good-looking energy profile diagrams as Scalable Vector Graphics or '.svg' files with various aesthetic options. The produced graphics can also be easily edited afterwards via an svg editor like Inkscape. Extra analysis for catalytic cycle diagrams include: Finding energy span, Turn Over Frequency (TOF) estimation from both energy span and catalytic-flux law, and estimating degree of TOF control of both intermediates and transition states.¹
Watch on Youtube
GitHub All Releases PyPI - Downloads

Latest updates

–Various graph styles and personalization options added.
–Make energy comparisons betwen structures.
–Plot up to 30 structures per 2D PES (Potential Energy Surface).
–Slight modifications to the user interface.
–Support for ".txt" and ".xlsx" imports and exports added. Please refer to section "Importing .txt and .xlsx" for information about importing these file types.

Preview

The following pictures ilustrate the usage of the graphical user interface and the corresponding output

Graphical interface

Interface

Output graphs

Example 1

Graph 1

Example 2

Graph 2

Example 3

Graph 2

These svg graphs can be easily post-edited to fit your needs using freely available svg editors like Inkscape. Moreover, Inkscape can save them in many different image formats including ".emf", which in turn can be imported into some of the most popular chemical structure drawing softwares with minimal loss in image quality.

Installing & Running

The recommended installaion requires python 3.6 or above.

Fresh instalation can be done via:

python3 -m pip install setuptools mechasvg

Upgrading from older versions can be done via:

python3 -m pip install -U mechasvg

The program can be run via:

python3 -m mechasvg

Alternatively, a Windons 10 executable can be downloaded on the following link:
mechaSVG-v011.exe

Importing .txt and .xlsx

Data for mechaSVG can be inserted directly onto the user interface or be imported from xlsx and txt files. Importing files can be done with the Open button on the user interface or by running the following command:

python3 -m mechasvg /path/to/file/example.txt

.txt files

Data for .txt imports should be writen in a plain text file like in the following example:

Structure_A_Name Free_energy Entalphy
Structure_B_Name Free_energy Entalphy
Structure_C_Name Free_energy 
Structure_D_Name Free_energy 
·
·
·

Please notice that no spaces are allowed on structure names or energies.
The following example ilustrates how to populate data into multiple path tabs with a single txt file.

Path_A_Structure_A Free_energy Entalphy
Path_A_Structure_B Free_energy Entalphy
Path_A_Structure_C Free_energy Entalphy
Path_A_Structure_D Free_energy
#A
Path_B_Structure_A Free_energy
Path_B_Structure_B Free_energy
#B
·
·
·

Please note that only the following tab flags area available: #A, #B, #C, #D, #E, #F, #G and #H

.xlsx files

Data for .xlsx imports should be writen starting at the top left cell (i.e. A1 cell). Every sheet will be consecutively atributed to a reaction path tab on mechaSVG.

.xlsx mechaSVG
.xlsx mechaSVG

.xlsx files can be generated using LibreOffice Calc or Microsoft Excel.

How to cite

I don't actually require users to cite the software at all, so you can take any liberty in how or whether you cite it. However, a citation would greatly help to spread the visibility and adoption of this project which is my main goal.

If you intend to cite it, the following citation should suffice:

Angnes, R. A. mechaSVG, GitHub repository, 2020, doi: 10.5281/zenodo.4065333.

DOI

Acknowledgments

This project was funded by São Paulo Research Foundation (FAPESP) under grant 2019/02052-4.

References

¹Kozuch, S. & Shaik, S. Acc. Chem. Res. 2011, 44, 101. (Paper)

mechasvg's People

Contributors

ricalmang avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

mechasvg's Issues

Which equation was used to calculate TOF?

Hello,

When I use the software, I have a question about which equation was used to calculate TOF and degree of control? The 2011 paper has a complete formula and also approximated equation for Energetic span model. So which equation were used in the software?

Thank you,
Jingyun

Connections and Comparers

Hello,
Is it possible to save information on connections and/or comparers in the .txt or .xlsx file? Or how to include them by hand in the .txt or .xlsx file?
Thanks in advance
R

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.