Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente Prochaine révisionLes deux révisions suivantes |
teaching:progappchim:start [2020/03/20 10:56] – villersd | teaching:progappchim:start [2021/03/18 17:48] – [Idées de travaux, projets] villersd |
---|
- installation de la version 3 standard via [[http://python.org|python.org]] | - installation de la version 3 standard via [[http://python.org|python.org]] |
- **installation de la distribution complète [[https://www.anaconda.com/distribution/|Anaconda]] (pour votre OS, en version 3 et 64 bits)** | - **installation de la distribution complète [[https://www.anaconda.com/distribution/|Anaconda]] (pour votre OS, en version 3 et 64 bits)** |
| * [[https://docs.anaconda.com/anaconda/user-guide/|User guide]] |
| * **//Cf.// la page dédiée sur [[:floss:anaconda|Anaconda]]** |
- en salle informatique UMONS : utilisation de Python sous Ubuntu | - en salle informatique UMONS : utilisation de Python sous Ubuntu |
- utilisation en mode nomade de la plateforme [[https://notebooks.azure.com/|Azure]] avec l'utilisation de vos codes UMONS | - dans n'importe quel navigateur web, via le site [[https://repl.it/languages/python3]] |
| - <del>utilisation en mode nomade de la plateforme [[https://notebooks.azure.com/|Azure]] avec l'utilisation de vos codes UMONS</del> |
| - via [[https://colab.research.google.com/notebooks/welcome.ipynb|Colaboratory]] et l'utilisation d'un compte gmail, cette configuration permettant un partage et une édition en commun |
* [[notions_fondamentales|Notions fondamentales]] | * [[notions_fondamentales|Notions fondamentales]] |
* [[tkinter_gui_simple|Les bases d'un interface graphique avec Tkinter]] | * [[tkinter_gui_simple|Les bases d'un interface graphique avec Tkinter]] |
* [[pieges|Pièges à éviter]] | * [[pieges|Pièges à éviter]] |
| |
<note tip>Vous serez encouragé à l'utilisation et l'écriture de Jupyter notebooks, via l'utilisation de la distribution Anaconda, soit [[https://notebooks.azure.com/|via la plateforme cloud Azure]]. | <note tip>Vous serez encouragé à l'utilisation et l'écriture de Jupyter notebooks, via l'utilisation de la distribution Anaconda, soit via [[https://colab.research.google.com/notebooks/welcome.ipynb|Colaboratory]] <del>[[https://notebooks.azure.com/|via la plateforme cloud Azure]]</del>. |
| |
//Cf// : | //Cf// : |
* ce [[https://notebooks.azure.com/linusable/libraries/samples-public/html/notebooks/Jupyter_primer_in_Jupyter-02.ipynb|Tutoriel Jupyter en Jupyter]] (en construction) | * ce {{ :teaching:progappchim:jupyter_primer_in_jupyter-02.ipynb.zip |Tutoriel Jupyter en Jupyter}} (fichier compressé dans une archive zip) |
* cette [[https://notebooks.azure.com/linusable/libraries/samples-public/html/notebooks/chemistry/chemical_elements_data-01.ipynb|application sur les données des éléments chimiques]] | * cette [[https://notebooks.azure.com/linusable/libraries/samples-public/html/notebooks/chemistry/chemical_elements_data-01.ipynb|application sur les données des éléments chimiques]] (FIXME : lien à actualiser) |
* [[https://github.com/jupyter/jupyter/wiki/A-gallery-of-interesting-Jupyter-Notebooks|A gallery of interesting Jupyter Notebooks]] | * [[https://github.com/jupyter/jupyter/wiki/A-gallery-of-interesting-Jupyter-Notebooks|A gallery of interesting Jupyter Notebooks]] |
* ... | * ... |
| |
| |
| |
</note> | </note> |
* [[plotly_simple|les bases de Plotly]], une librairie pour réaliser des graphiques. [[https://plot.ly/python/|plotly]] est interactif et s'intègre bien dans des navigateurs (//i.e.// Jupyter notebooks) | * [[plotly_simple|les bases de Plotly]], une librairie pour réaliser des graphiques. [[https://plot.ly/python/|plotly]] est interactif et s'intègre bien dans des navigateurs (//i.e.// Jupyter notebooks) |
* [[pygal_simple|les bases de Pygal]], une autre librairie graphique, simple (cf. ce [[http://pygal.org/en/stable/index.html|site]]) | * [[pygal_simple|les bases de Pygal]], une autre librairie graphique, simple (cf. ce [[http://pygal.org/en/stable/index.html|site]]) |
| * [[altair_simple|les bases de Altair]], une autre librairie graphique, interactive |
| |
| ==== Des librairies spécifiques en chimie, biochimie,... ==== |
| * [[mendeleev|Mendeleev]] (données sur les éléments chimiques) |
| * [[rdkit|RDKit et molécules]] (représentation,...) |
| * [[bioinformatic|Bioinformatique et la librairie Biopython]] (manipulations de séquences ADN, ARN, protéines,...) |
| * [[openbabel_jmol|OpenBabel et Jmol]] : format de description de molécules et visualisations |
| * [[ChemSpiPy]] : utilisation des données de [[http://www.chemspider.com/|ChemSpider]] |
| * ... |
| |
| |
===== Notions intermédiaires et avancées ===== | ===== Notions intermédiaires et avancées ===== |
* [[jupyter|Jupyter]] : introduction, exemples, liens,... | * [[jupyter|Jupyter]] : introduction, exemples, liens,... |
* [[bokeh_simple|Les bases de Bokeh]], une librairie Python de visualisations interactives pour des représentations dans des navigateurs web. Bokeh est particulièrement indiqué pour une utilisation dans les Jupyter notebooks, et s'installe aisément via Anaconda. | * [[bokeh_simple|Les bases de Bokeh]], une librairie Python de visualisations interactives pour des représentations dans des navigateurs web. Bokeh est particulièrement indiqué pour une utilisation dans les Jupyter notebooks, et s'installe aisément via Anaconda. |
| * Références externes : |
| * [[https://github.com/weisscharlesj/SciCompforChemists|Scientific Computing for Chemists]] (pdf et données), cité dans [[https://pubs.acs.org/doi/full/10.1021/acs.jchemed.0c01071|A Creative Commons Textbook for Teaching Scientific Computing to Chemistry Students with Python and Jupyter Notebooks]] Charles J. Weiss, J. Chem. Educ. 2021, 98, 2, 489–494 DOI: 10.1021/acs.jchemed.0c01071 |
| * [[https://chem.libretexts.org/Ancillary_Materials/Interactive_Applications/Jupyter_Notebooks|Jupyter Notebooks sur Chemistry Libretexts]] |
| * ... |
| |
===== Applications ===== | ===== Applications ===== |
* [[analyse_images|Analyse d'images]] | * [[analyse_images|Analyse d'images]] |
* [[attracteur_Lorenz|L'attracteur de Lorenz]] : équations différentielles ordinaires et comportement chaotique | * [[attracteur_Lorenz|L'attracteur de Lorenz]] : équations différentielles ordinaires et comportement chaotique |
* [[openbabel_jmol|OpenBabel et Jmol]] : format de description de molécules et visualisations | |
* [[fit_modele_einstein|Optimisation de la température caractéristique du diamant suivant le modèle d'Einstein]] (avec scipy, numpy, matplotlib) | * [[fit_modele_einstein|Optimisation de la température caractéristique du diamant suivant le modèle d'Einstein]] (avec scipy, numpy, matplotlib) |
* [[t-test|Test de Student]] : exemple technologique (avec scipy, numpy) | * [[t-test|Test de Student]] : exemple technologique (avec scipy, numpy) |
* [[OSM_interrogation|Interrogation de la base de données géolocalisées OpenStreetMap]] | * [[OSM_interrogation|Interrogation de la base de données géolocalisées OpenStreetMap]] |
* [[bioinformatic|Bioinformatique]] (manipulations de séquences ADN, ARN, protéines,...) | |
* [[glossaire_chimie|Glossaire de chimie]] | * [[glossaire_chimie|Glossaire de chimie]] |
* [[math_nombres|Mathématiques et nombres]] | * [[math_nombres|Mathématiques et nombres]] |
* [[epidemie_coronavirus|Épidémie du coronavirus COVID-19]] | * [[epidemie_coronavirus|Épidémie du coronavirus COVID-19]] |
* [[rdkit|RDKit et molécules]] (représentation,...) | |
| |
===== Données chimiques disponibles ===== | ===== Données chimiques disponibles ===== |
* Canada : [[http://www.statcan.ca/start.html]] | * Canada : [[http://www.statcan.ca/start.html]] |
* UK : [[http://www.data.gov.uk]] | * UK : [[http://www.data.gov.uk]] |
* Australia : [http://data.gov.au/]] | * Australia : [[http://data.gov.au/]] |
* USA : | * USA : |
* [[http://www.fedstats.gov/]] | * [[http://www.fedstats.gov/]] |
* [[http://www.cheminfo.org/wikipedia|Wikipedia chemical structure explorer]], avec données exploitables via [[https://github.com/cheminfo/wikipedia|GitHub]] | * [[http://www.cheminfo.org/wikipedia|Wikipedia chemical structure explorer]], avec données exploitables via [[https://github.com/cheminfo/wikipedia|GitHub]] |
* Charte des nucleides, et diverses représentations des instabilités. cf. [[https://www-nds.iaea.org/relnsd/vcharthtml/VChartHTML.html|Live Chart of Nuclides]] et les données sources indiquées | * Charte des nucleides, et diverses représentations des instabilités. cf. [[https://www-nds.iaea.org/relnsd/vcharthtml/VChartHTML.html|Live Chart of Nuclides]] et les données sources indiquées |
* Event-Driven hard disc simulation (dynamique moléculaire) : | * **collisions de particules (sphères ou disques)** |
* [[http://introcs.cs.princeton.edu/java/assignments/collisions.html]] + [[http://algs4.cs.princeton.edu/61event/|ici]] | * [[https://introcs.cs.princeton.edu/java/assignments/collisions.html|Molecular Dynamics Simulation of Hard Spheres]] → description générale du problème avec des solutions basées sur les particules ou les événements (hard disc simulation, dynamique moléculaire) : |
* [[https://statmechalgcomp.wikispaces.com/Hard_Spheres_MD_MC]] | * documents de Werner Krauth et al. |
| * [[http://www.lps.ens.fr/~krauth/index.php/Main_Page|Main Page - Werner KRAUTH]] |
| * [[https://www.coursera.org/lecture/statistical-mechanics/lecture-2-hard-disks-from-classical-mechanics-to-statistical-mechanics-e8hMP|Lecture 2: Hard disks: from Classical Mechanics to Statistical Mechanics - Hard disks: From Classical Mechanics to Statistical Mechanics | Coursera]] |
| * [[http://www.lps.ens.fr/~krauth/index.php/Bernard_Krauth_b_2011|Bernard Krauth 2012 - Werner KRAUTH]] |
| * Event-driven |
| * [[https://algs4.cs.princeton.edu/61event/|Event-Driven Simulation]] |
| * [[https://github.com/numberset/HardSphereSim|numberset/HardSphereSim: Event driven simulation of hard spheres in python]] |
| * [[https://github.com/rajeshrinet/pyedmd|rajeshrinet/pyedmd: Event-Driven Molecular dynamics simulations]] |
| * [[https://github.com/robeme/HardSphereSim|robeme/HardSphereSim: Event driven simulation of hard spheres in python]] |
| * Autres simulations |
| * [[https://github.com/labay11/ideal-gas-simulation/blob/master/simulation.py|ideal-gas-simulation/simulation.py at master · labay11/ideal-gas-simulation]] |
| * [[https://johnloomis.org/ece538/notes/visual/gas.py.html|gas.py]] |
* Exploitation de données chimiques de wikidata.org [[https://query.wikidata.org/#%20%20PREFIX%20wdt%3A%20%3Chttp%3A%2F%2Fwww.wikidata.org%2Fprop%2Fdirect%2F%3E%0A%20%20SELECT%20%3Fcompound%20WHERE%20{%0A%20%20%20%20%3Fcompound%20wdt%3AP31%20wd%3AQ11173%20.%0A%20%20}%0A|query]] (> 20000 composés), <code>PREFIX wdt: <http://www.wikidata.org/prop/direct/> | * Exploitation de données chimiques de wikidata.org [[https://query.wikidata.org/#%20%20PREFIX%20wdt%3A%20%3Chttp%3A%2F%2Fwww.wikidata.org%2Fprop%2Fdirect%2F%3E%0A%20%20SELECT%20%3Fcompound%20WHERE%20{%0A%20%20%20%20%3Fcompound%20wdt%3AP31%20wd%3AQ11173%20.%0A%20%20}%0A|query]] (> 20000 composés), <code>PREFIX wdt: <http://www.wikidata.org/prop/direct/> |
SELECT ?compound WHERE { | SELECT ?compound WHERE { |
* Visualisation de la taille d'effet : cf. [[https://rpsychologist.com/d3/cohend/]] | * Visualisation de la taille d'effet : cf. [[https://rpsychologist.com/d3/cohend/]] |
* simulation du [[wp>fr:Problème_de_Monty_Hall|Problème de Monty Hall]] (+ [[wp>Monty_Hall_problem|Monty Hall problem]], [[wp>fr:Paradoxe_des_prisonniers|Paradoxe des prisonniers]]) | * simulation du [[wp>fr:Problème_de_Monty_Hall|Problème de Monty Hall]] (+ [[wp>Monty_Hall_problem|Monty Hall problem]], [[wp>fr:Paradoxe_des_prisonniers|Paradoxe des prisonniers]]) |
| * [[https://scipython.com/]] : Learning Scientific Programming with Python avec quelques exemples de programme pouvant être à la base de quelques développements |
* ... | * ... |
| |
| |
Voir aussi [[https://dvillers.umons.ac.be/wiki/floss:python#applications_en_chimie|ces librairies]]. | Voir aussi [[https://dvillers.umons.ac.be/wiki/floss:python#applications_en_chimie|ces librairies]]. |
| |
| ===== Références générales ===== |
| * [[https://www.eyrolles.com/Informatique/Livre/coder-proprement-9782326002272/|Coder proprement]] Robert C. Martin 2019, Eyrolles |
| * [[https://levelup.gitconnected.com/21-python-mini-projects-with-codes-c4126e4131e4|21 Python Mini Projects With Code - Get a Speed Boost In Your Python Journey By Building These Amazing Projects]] Abhay Parashar, Medium, 04/01/2021 |
| |
| |