-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
b10c37e
commit f3f4241
Showing
1 changed file
with
64 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,64 @@ | ||
{ | ||
"cells": [ | ||
{ | ||
"cell_type": "markdown", | ||
"id": "b21e6ddf-907f-4869-8e79-f0cb9163f663", | ||
"metadata": { | ||
"tags": [] | ||
}, | ||
"source": [ | ||
"## Introduction:\n", | ||
"The Chemical Equation Balancer is a Python-based package designed to balance and equilibrate chemical equations. It also gives crucial thermodynamics information on the reaction. This is designed to be adapted for everyone from beginers to advanced chemists. It uses Streamlit interface which is easily used for a more welcoming interraction and quick understanding. \n", | ||
" \n", | ||
"## How it works: \n", | ||
"It accepts reactants and products either as SMILES strings or chemical compound names and performs stoichiometric calculations to balance the equation. \n", | ||
"Additionally, it calculates thermodynamic properties such as standard enthalpy, entropy, and Gibbs free energy to provide insights into the spontaneity of the reaction.\n", | ||
"\n", | ||
"## Motivations:\n", | ||
"Balancing chemical equations is a fundamental task in chemistry, crucial for understanding reaction stoichiometry and predicting reaction outcomes. However, manually balancing complex equations can be time-consuming and error-prone. This tool aims to automate the balancing process, making it more efficient and accurate. Furthermore, by providing thermodynamic properties, it enhances the understanding of the underlying energetics of chemical reactions.\n", | ||
"A real-life use would be to help first-year EPFL students in ERC (equilibrium for chemical reactions) which have to do enthalpy and enthropy calculations all day long. \n", | ||
"\n", | ||
"## Description:\n", | ||
"The Chemical Equation Balancer is built using Python and leverages various libraries for cheminformatics, linear programming, and thermodynamic calculations. Key libraries include RDKit for molecular structure manipulation, PuLP for solving integer linear programming problems, and chemicals for retrieving chemical properties. The tool is deployed as a web application using Streamlit, allowing users to input reactants and products interactively.\n", | ||
"\n", | ||
"Upon inputting reactants and products, the tool automatically balances the chemical equation using integer linear programming. It then displays the balanced equation in a human-readable format and visualizes it using SVG images. Additionally, it calculates standard enthalpy, entropy, and Gibbs free energy based on the provided temperature, offering insights into the thermodynamics of the reaction.\n", | ||
"\n", | ||
"The special description of each function used to get the outcomes is available in notebook.ipynb\n", | ||
"The one of the function used for the interface is available in ChemBalencer_interface.ipynb\n", | ||
"\n", | ||
"## Conclusion:\n", | ||
"\n", | ||
"The Chemical Equation Balancer offers a convenient and efficient solution for balancing chemical equations, having a visual representation of them and analyzing reaction thermodynamics. By automating the balancing process and providing thermodynamic insights, it streamlines chemical analysis tasks and aids in the understanding of reaction kinetics and energetics. This tool serves as a valuable resource for students, researchers, and professionals working in the field of chemistry. \n" | ||
] | ||
}, | ||
{ | ||
"cell_type": "code", | ||
"execution_count": null, | ||
"id": "6a41656a-1777-41ee-899c-864851161f84", | ||
"metadata": {}, | ||
"outputs": [], | ||
"source": [] | ||
} | ||
], | ||
"metadata": { | ||
"kernelspec": { | ||
"display_name": "Python 3 (ipykernel)", | ||
"language": "python", | ||
"name": "python3" | ||
}, | ||
"language_info": { | ||
"codemirror_mode": { | ||
"name": "ipython", | ||
"version": 3 | ||
}, | ||
"file_extension": ".py", | ||
"mimetype": "text/x-python", | ||
"name": "python", | ||
"nbconvert_exporter": "python", | ||
"pygments_lexer": "ipython3", | ||
"version": "3.11.5" | ||
} | ||
}, | ||
"nbformat": 4, | ||
"nbformat_minor": 5 | ||
} |