teaching:progappchim:start

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
teaching:progappchim:start [2021/02/01 16:51] – [Notions de base (résumés, exemples de base,...)] villersdteaching:progappchim:start [2023/03/13 10:14] (Version actuelle) – [Des librairies spécifiques en chimie, biochimie,...] villersd
Ligne 1: Ligne 1:
 ====== Programmation appliquée à la chimie ====== ====== Programmation appliquée à la chimie ======
 +
 +<note warning>
 +L'article suivant analyse les contributions à cpython, le cœur du langage Python : [[https://lukasz.langa.pl/f15a8851-af26-4e94-a4b1-c146c57c9d20/]]. Les deux contributeurs les plus importants (on enlève les bots et les gestionnaires de release) sont Victor Stinner et Serhiy Storchaka.
 +
 +**Aux dernières nouvelles (14/12/2022) Serhiy Storchaka vit toujours en Ukraine, à 20 km de [[https://www.openstreetmap.org/node/337510526#map=9/51.1561/33.0579|Konotop]] !!**
 +</note>
  
 Le cours "Programmation appliquée à la chimie" de bachelier en sciences chimiques (15 H cours et 15 H exercices, bloc2) utilise deux supports : Le cours "Programmation appliquée à la chimie" de bachelier en sciences chimiques (15 H cours et 15 H exercices, bloc2) utilise deux supports :
Ligne 20: Ligne 26:
       - en salle informatique UMONS : utilisation de Python sous Ubuntu       - en salle informatique UMONS : utilisation de Python sous Ubuntu
       - dans n'importe quel navigateur web, via le site [[https://repl.it/languages/python3]]       - dans n'importe quel navigateur web, via le site [[https://repl.it/languages/python3]]
-      - utilisation en mode nomade de la plateforme [[https://notebooks.azure.com/|Azure]] avec l'utilisation de vos codes UMONS+      - <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       - 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]]
Ligne 26: Ligne 32:
   * [[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>
Ligne 42: Ligne 46:
   * [[factorielle|Calcul de factorielles]] (pas à pas)   * [[factorielle|Calcul de factorielles]] (pas à pas)
   * [[Suite_de_Fibonacci|Suite de Fibonacci]] (pas à pas)   * [[Suite_de_Fibonacci|Suite de Fibonacci]] (pas à pas)
-  * [[polynomes|Manipulation de polynômes]] (pas à pas)+  * **[[polynomes|Manipulation de polynômes]]** (pas à pas)
   * [[matrices|Manipulations de matrices]]   * [[matrices|Manipulations de matrices]]
   * [[tris|Algorithmes de tri]]   * [[tris|Algorithmes de tri]]
Ligne 61: Ligne 65:
   * [[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   * [[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]]
 +  * [[PubChemPy]] : interaction avec la base de données PubChem
 +  * [[ChemPy]] : librairie contenant diverse fonctionnalités sur la chimie et les réactions chimiques
 +  * [[https://pymatgen.org/|PyMatGen]]
 +  * [[https://chemlab.readthedocs.io/en/latest/index.html|Chemlab]]
 +  * [[https://wiki.fysik.dtu.dk/ase/ase/gui/gui.html#module-ase.gui|Ase's gui]]
 +  * [[https://pymol.org/2/|PyMOL]]
 +  * [[https://pgi-jcns.fz-juelich.de/portal/pages/pymoldyn-main.html|pyMolDyn]]
 +  * [[https://chemview.readthedocs.io/en/latest/|chemview]]
 +  * [[https://pypi.org/project/chembox/|chembox · PyPI]]
 +    * [[https://chembox.readthedocs.io/en/latest/example.html|chembox usage — chembox documentation]]
 +  * [[https://pypi.org/project/global-chem/|global-chem · PyPI]]
 +    * [[https://github.com/Sulstice/global-chem|Sulstice/global-chem: A General Public Dictionary of Common Chemical Names to their Molecular Definition]]
 +    * [[https://www.globalchemistry.org/|Global-Chem: Common Chemical Names Dictionary]]
 +  * [[https://pypi.org/project/cocktail-shaker/|cocktail-shaker · PyPI]]
 +    * [[https://github.com/Sulstice/Cocktail-Shaker|Sulstice/cocktail-shaker: A peptide string building for expanding chemical dataset combinations.]]
 +    * [[https://cocktail-shaker.readthedocs.io/en/latest/guide/file_handling.html|File API Documentation — Cocktail Shaker 1.0.0 documentation]]
 +  * [[https://pypi.org/project/chemics/|chemics · PyPI]]
 +  * [[https://pypi.org/project/moleculekit/|moleculekit · PyPI]]
 +  * [[https://pypi.org/project/molecule-slide-generator/|molecule-slide-generator · PyPI]]
 +  * [[https://pypi.org/project/pH-diagrams/|pH-diagrams · PyPI]]
 +    * [[https://github.com/chicolucio/pH-diagrams/|chicolucio/pH-diagrams: A Python package to plot fractional composition diagrams and pH-log c diagrams]]
 +    * [[https://ph-diagrams.readthedocs.io/en/latest/?badge=latest|pH diagrams — pH diagrams 0.3.2.post1.dev7+gb496040 documentation]]
 +  * [[https://pypi.org/project/pyriodic-table/|pyriodic-table · PyPI]]
 +    * [[https://github.com/leoz0214/pyriodic-table|leoz0214/pyriodic-table: A Python package which provides data on the Periodic Table of Elements.]]
 +  * [[https://pypi.org/project/molmass/|molmass · PyPI]]
 +  * [[https://pypi.org/project/pubchemTool/|pubchemTool · PyPI]]
 +  * ...
 +
 +<note tip>De nombreuses librairies, l'utilisation du langage Python, de l'environnement Jupyter,... dans le cadre de la chimie sont évoquées dans le livre de 2021 de Thorsten Gressling (series De Gruyter Textbook) ISBN: 9783110629453 cf. [[https://www.degruyter.com/document/doi/10.1515/9783110629453/html]]
 +</note>
 ===== Notions intermédiaires et avancées ===== ===== Notions intermédiaires et avancées =====
   * [[slices|Slices sur les listes]]   * [[slices|Slices sur les listes]]
Ligne 66: Ligne 107:
   * [[notions_avancees|Notions avancées]]   * [[notions_avancees|Notions avancées]]
   * [[trucs_astuces|Trucs et astuces]]   * [[trucs_astuces|Trucs et astuces]]
 +  * [[urllib|Lecture du code source d'une page web via la librairie urllib]]
  
 ===== Jupyter, IPython Notebooks et JupyterLab ===== ===== Jupyter, IPython Notebooks et JupyterLab =====
Ligne 73: Ligne 115:
   * [[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 =====
Ligne 87: Ligne 133:
   * [[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 =====
Ligne 102: Ligne 145:
   * [[https://www.eea.europa.eu/themes/air/explore-air-pollution-data|Explore air pollution data]] European Environment Agency   * [[https://www.eea.europa.eu/themes/air/explore-air-pollution-data|Explore air pollution data]] European Environment Agency
   * [[https://echa.europa.eu/fr/home|European Chemicals Agency]]   * [[https://echa.europa.eu/fr/home|European Chemicals Agency]]
 +  * [[https://webbook.nist.gov/|WebBook de Chimie NIST, SRD 69]] permet d'accéder aux données collectées et distribuées par NIST dans le cadre du Programme de données de référence standard.
   * ...   * ...
  
Ligne 131: Ligne 175:
     * 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/]]
Ligne 252: Ligne 296:
   * 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://python.plainenglish.io/using-python-to-simulate-the-famous-monty-hall-problem-b4a9697894ba|Simulate the Famous Monty Hall Problem with Python]] Ahmed Al-Jaishi, Medium, 25/02/2022
 +  * [[https://scipython.com/]] : Learning Scientific Programming with Python avec quelques exemples de programme pouvant être à la base de quelques développements
 +  * rebonds, billards,... comme discuté [[https://twitter.com/matthen2/status/1571887895228874752|ici]]
 +  * [[https://www.astrolabe-science.fr/des-spectres-de-raies-demission-avec-python/|Des spectres de raies avec Python]], David Alberto
   * ...   * ...
  
-Voir aussi la [[floss:python:activestateselection|sélection de codes sources ActiveState]] avec de nombreuses applications scientifiques. +Voir aussi 
- +  * [[floss:python:activestateselection|sélection de codes sources ActiveState]] avec de nombreuses applications scientifiques. 
-Voir aussi [[https://dvillers.umons.ac.be/wiki/floss:python#applications_en_chimie|ces librairies]].+  [[https://dvillers.umons.ac.be/wiki/floss:python#applications_en_chimie|ces librairies]] 
 +  * [[https://eduscol.education.fr/1648/programmes-et-ressources-en-physique-chimie-voie-gt|Utiliser le langage Python dans un contexte de physique-chimie]] (éduscol, France)
  
 ===== Références générales ===== ===== Références générales =====
  • teaching/progappchim/start.1612194660.txt.gz
  • Dernière modification : 2021/02/01 16:51
  • de villersd