org

Recherche

Voici les résultats de votre recherche.

progappchimplugin-autotooltip__default plugin-autotooltip_bigProgrammation appliquée à la chimie

Le cours “Programmation appliquée à la chimie” de bachelier en sciences chimiques (15 H cours et 15 H exercices, bloc2) utilise deux supports :

* Principalement, le présent wiki pour ses avantages techniques (coloration et indentation du code, recherche dans les pages, historique des modifications,
47 Occurrences trouvées, Dernière modification:
tion de la version 3 standard via [[http://python.org|python.org]] - **installation de la distribution complète [[https://www.anaconda.com/distributio... ibrairie graphique, simple (cf. ce [[http://pygal.org/en/stable/index.html|site]]) * [[altair_simple|... ]] (pdf et données), cité dans [[https://pubs.acs.org/doi/full/10.1021/acs.jchemed.0c01071|A Creative C
notions_fondamentalesplugin-autotooltip__default plugin-autotooltip_bigNotions fondamentales

Aide mémoire synthétique sur le langage Python.

Règles de base

Ces règles peuvent être testées via le mode interactif de Python (en utilisant la fenêtre “Shell” ou console de l'éditeur Idle ou Idle3 par exemple).
44 Occurrences trouvées, Dernière modification:
lisibilité. Il s'agit de la [[https://www.python.org/dev/peps/pep-0008/|pep8]]. Le document du [[https... les effectuer s'appelle un [[http://fr.wikipedia.org/wiki/Algorithmique|algorithme]]. Leur compréhensi... ditionnelle ==== //Cf.// la [[https://docs.python.org/3/reference/compound_stmts.html#the-if-statement|... == L'**instruction while** ([[https://docs.python.org/3/reference/compound_stmts.html#while|documentati
matplotlib_simpleplugin-autotooltip__default plugin-autotooltip_bigLes bases de Matplotlib, une librairie pour réaliser des graphiques 2D

Matplotlib est une bibliothèque très puissante du langage de programmation Python destinée à tracer et visualiser des données sous formes de graphiques. Elle est souvent combinée avec les bibliothèques python de calcul scientifique :
27 Occurrences trouvées, Dernière modification:
er des graphiques 2D ====== [[https://matplotlib.org/stable/index.html/|Matplotlib]] est une bibliothè... n de calcul scientifique : * [[http://www.numpy.org/|NumPy]] : gestion de tableaux numériques multidi... r, nombres (pseudo-)aléatoires * [[http://scipy.org/scipylib/index.html|SciPy]] : méthodes numériques... 'intégration ou l'optimisation * [[http://sympy.org/en/index.html|SymPy]] : mathématiques symboliques
bioinformaticplugin-autotooltip__default plugin-autotooltip_bigBioinformatique

Un des objectifs majeurs de la bioinformatique réside dans l'étude automatique de séquences, principalement de l'ADN et de protéines,...

Ces séquences sont accessibles librement et publiquement, notamment par ces deux sources :

Voir aussi le site
23 Occurrences trouvées, Dernière modification:
iProt}} Voir aussi le site [[https://www.uniprot.org/]] {{wp>fr:GenBank}} Voir aussi le site [[https... == Installer Biopython ===== [[https://biopython.org/|Biopython]] est une librairie de programmes en l... conda-forge biopython * via le site Pypi (pypi.org) et la commande suivante : pip install biopython ... t la référence dans ce lien : http://www.uniprot.org/uniprot/uniprot_id On peut aussi obtenir la séqu
algos_entiersplugin-autotooltip__default plugin-autotooltip_bigAlgorithmes sur entiers

cf....... Cette page reprend quelques grands algorithmes classiques sur les nombres entiers, et introduit quelques algorithmes ayant des applications en chimie.

Recherche du PGCD (plus grand commun diviseur)

Explication géométrique : en comprenant un nombre entier comme une longueur et un couple d'entiers (a,b) comme un rectangle, leur PGCD est la longueur du côté du plus grand carré permettant de carreler entièrement ce rectangle. L'algorithme d'Euclide décompose ce re…
22 Occurrences trouvées, Dernière modification:
reste nul (**observez bien [[http://fr.wikipedia.org/wiki/Algorithme_d%27Euclide#Explications_g.C3.A9o... ==== Références ==== * [[http://fr.wikipedia.org/wiki/Algorithme_d%27Euclide|Algorithme d'Euclide]... mon-divisor-in-python]] * [[https://docs.python.org/dev/library/fractions.html#fractions.gcd]] (versi... dans le langage) * [[http://en.literateprograms.org/Euclidean_algorithm_%28Python%29]] (améliorable !
numpy_simpleplugin-autotooltip__default plugin-autotooltip_bigLes bases de NumPy

NumPy est une extension du langage de programmation Python, destinée à manipuler des matrices ou tableaux multidimensionnels ainsi que des fonctions mathématiques opérant sur ces tableaux.

Numpy permet la manipulations des vecteurs, matrices et polynômes.
21 Occurrences trouvées, Dernière modification:
imum. Vous pouvez consulter [[https://docs.scipy.org/doc/numpy/|cette page]] pour consulter d'autres f... s un tableau 1D (consulter la [[http://docs.scipy.org/doc/numpy/reference/routines.ma.html#minimum-maxi... (voir la documentation) * //[[http://docs.scipy.org/doc/numpy/reference/generated/numpy.copy.html|cop... * x - 5 * y = -21. reference : http://docs.scipy.org/doc/numpy/reference/generated/numpy.linalg.solve.
bokeh_simpleplugin-autotooltip__default plugin-autotooltip_bigLes bases de Bokeh, une librairie pour des visualisations interactives dans un navigateur web

* page d'entrée sur Bokeh * User guide * Galerie d'exemples * Bokeh dans les Jupyter notebooks * Bokeh tutorial in live Jupyter Notebooks * Reference guide

* Réseaux sociaux : * Twitter * GitHub * Youtube

Exemples scientifiques

* Interactions sur la fonction sinus (amplitude, décalage vertical, fréquence, déphasage) +
20 Occurrences trouvées, Dernière modification:
navigateur web ====== * [[https://bokeh.pydata.org/en/latest/|page d'entrée sur Bokeh]] * [[https://bokeh.pydata.org/en/latest/docs/user_guide.html|User guide]] * [[https://bokeh.pydata.org/en/latest/docs/gallery.html|Galerie d'exemples]] * [[http://nbviewer.jupyter.org/github/bokeh/bokeh-notebooks/blob/master/index.ip
tkinter_gui_simpleplugin-autotooltip__default plugin-autotooltip_bigLes bases d'un interface graphique avec Tkinter

Quelques références de base pour utiliser Tkinter

* Documentation officielle : * Les interfaces graphiques TK * tkinter — interface Python à Tcl/Tk, reprenant quelques références recommandées * Python 3 avec Tk intègre également les extensions
17 Occurrences trouvées, Dernière modification:
entation officielle : * [[https://docs.python.org/3/library/tk.html|Les interfaces graphiques TK]] * [[https://docs.python.org/3/library/tkinter.html|tkinter — interface Python... re également les extensions [[https://docs.python.org/3/library/tkinter.ttk.html|ttk]] et [[https://docs.python.org/3/library/tkinter.tix.html|tix]], ainsi que l'IDE
jupyterplugin-autotooltip__default plugin-autotooltip_bigJupyter, IPython Notebooks et JupyterLab

* Jupyter a succédé à IPython Notebook * Jupyter est installé par défaut avec la distribution python Anaconda. C'est la manière la plus adéquate d'utiliser Jupyter. * Sinon, on peut utiliser facilement les notebooks Jupyter sur la plateforme
16 Occurrences trouvées, Dernière modification:
es ===== * Le présent : * [[https://jupyter.org/|Jupyter]] * [[https://jupyter.org/documentation|Documentation de Jupyter]] * [[https://nbviewer.jupyter.org/|nbviewer]], pour partager une vue statique d'un ... ok * Le passé (récent) : * [[http://ipython.org|IPython notebook]] * [[http://ipython.org/ipy
pandasplugin-autotooltip__default plugin-autotooltip_bigPandas

Module pour l'analyse de données, pouvant se substituer à l'utilisation d'un tableur. Une différence fondamentale de la librairie pandas avec NumPy, c'est que les tableaux NumPy (NumPy arrays) ont le même type (dtype) pour le tableau entier, tandis que les tableaux pandas (pandas DataFrames) sont caractérisés par un type unique (dtype) par colonne.$X$$x$$P(x)$$X$$x$$x_1, x_2, x_3, ...$$X$$P(x_i)$$X$$x$$P(x)$$x$$x+dx$$P(x)$$x$$P(x) dx$$P(x) dx = P(x \le X < x+dx)$$P(x_i) \ge 0$$x_i$$P(x) …
16 Occurrences trouvées, Dernière modification:
=== Installation ===== * [[http://pandas.pydata.org/pandas-docs/stable/install.html|Instructions sur ... == Documentation ===== * [[http://pandas.pydata.org/pandas-docs/stable/index.html|Documentation officielle]] * [[http://pandas.pydata.org/pandas-docs/stable/10min.html|10 minutes to pandas]] * [[http://pandas.pydata.org/pandas-docs/version/0.20/cookbook.html|cookbook]]
scipy_simpleplugin-autotooltip__default plugin-autotooltip_bigLes bases de SciPy

La librairie SciPy ajoute à NumPy des fonctionnalités mathématiques.

Directive d'importation

* Méthode standard : import scipy as sp

* Importation par sous-modules (cf le site de Scipy) : from scipy import optimize from scipy import interpolate from scipy import integrate ...
11 Occurrences trouvées, Dernière modification:
n par sous-modules (//cf// le [[http://docs.scipy.org/doc/scipy/reference/api.html#guidelines-for-impor... s définies ===== La librairie [[http://docs.scipy.org/doc/scipy/reference/integrate.html|scipy.integrat... es définies et intégrer des [[http://fr.wikipedia.org/wiki/%C3%89quation_diff%C3%A9rentielle|équations ... gration numérique. Références : http://docs.scipy.org/doc/scipy/reference/integrate.html http://docs.sc
mendeleevplugin-autotooltip__default plugin-autotooltip_bigLibrairie Mendeleev

La librairie Mendeleev est complète et évoluée

* Package repository sur PyPI : * Page officielle, description et code source : * Documentation complète : * Tutoriels :

* Notebook Jupyter (exemples) : *
10 Occurrences trouvées, Dernière modification:
rie Mendeleev ====== La librairie [[https://pypi.org/project/mendeleev/|Mendeleev]] est complète et év... * Package repository sur PyPI : [[https://pypi.org/project/mendeleev/]] * Page officielle, descrip... er (exemples) : * [[https://nbviewer.jupyter.org/github/lmmentel/mendeleev/blob/master/docs/source... iel introductif) * [[https://nbviewer.jupyter.org/github/lmmentel/mendeleev/blob/master/docs/source
epidemie_coronavirusplugin-autotooltip__default plugin-autotooltip_bigÉpidémie du coronavirus COVID-19

Références :

* Coronavirus disease 2019 * Maladie à coronavirus 2019 * Coronavirus COVID-19 Global Cases by Johns Hopkins CSSE * Coronavirus (COVID-19) Mortality Rate * data :

Programmes de représentations

FIXME

Quelques simulations SEIR effectuées par des scientifiques :

* Marius Gilbert (ULB/FNRS, Spatial Epidemiology lab (SpELL),
10 Occurrences trouvées, Dernière modification:
èle encore plus simple * [[https://en.wikipedia.org/wiki/Compartmental_models_in_epidemiology#The_SEI... del]] * [[http://www.modelinginfectiousdiseases.org/]] * [[http://homepages.warwick.ac.uk/~masfz/... n Post * [[https://pythonprogramming.altervista.org/getting-data-about-coronavirus-with-python-in-ita... 19/|COVID-19 Application]] * [[http://shinyapps.org/apps/corona/|Experience Statistics]] ===== Tra
plot_sinus_cosinusplugin-autotooltip__default plugin-autotooltip_bigGraphe simple de sinus et cosinus

On montre en détail comment réaliser une représentation graphique simple des fonctions sinus et cosinus. Au départ le graphique utilisera les réglages par défaut et la figure sera ensuite améliorée pas à pas en commentant les instructions matplotlib utilisées.
9 Occurrences trouvées, Dernière modification:
lib utilisées. Source : [[https://scipy-lectures.org/intro/matplotlib/index.html|Matplotlib: plotting]... t>__la licence **CC-by** [[http://creativecommons.org/licenses/by/3.0/us|Creative Commons Attribution 3... mentation à consulter : * [[http://matplotlib.org/users/pyplot_tutorial.html|Tutoriel pyplot]] * [[http://matplotlib.org/api/pyplot_api.html#matplotlib.pyplot.plot|Docume
polynomes-12plugin-autotooltip__default plugin-autotooltip_bigUtilisation de polynômes orthogonaux avec NumPy

Voici un programme permettant d'obtenir le même graphe que celui obtenu précédemment, en utilisant les modules spécifiques de NumPy. Cet exemple montre tout l'intérêt d'utiliser des modules pré-existants. Le programme est réduit à 3 lignes pour l'importation, 4 pour la création des graphes et 4 pour commander la représentation.
9 Occurrences trouvées, Dernière modification:
atplotlib et numpy Références : http://docs.scipy.org/doc/numpy/reference/routines.polynomials.package.html http://docs.scipy.org/doc/numpy/reference/routines.polynomials.chebyshev.html http://docs.scipy.org/doc/numpy/reference/generated/numpy.polynomial.chebyshev.chebval.html http://docs.scipy.org/doc/numpy/reference/generated/numpy.linspace.html
openbabel_jmolplugin-autotooltip__default plugin-autotooltip_bigOpenBabel et Jmol

OpenBabel

OpenBabel est un ensemble de programme permettant de manipuler et convertir les fichiers de description de molécules dans différents formats.

* Site officiel : * Interfaçage en Python :

Pour utiliser OpenBabel en python, il faut installer au préalable ces outils. Sous Linux (Debian, Ubuntu,
8 Occurrences trouvées, Dernière modification:
open_chemical_databasesplugin-autotooltip__default plugin-autotooltip_bigBases de données libres en chimie

Références

Databases, databank

* Chemical databases +... * * * * *

Données de wikipedia

* Chembox template * * *
8 Occurrences trouvées, Dernière modification:
fit_modele_einsteinplugin-autotooltip__default plugin-autotooltip_bigOptimisation de la température caractéristique du diamant suivant le modèle d'Einstein

Ce modèle prévoie la dépendance à la température de la capacité calorifique d’un solide cristallin.

La détermination de la température caractéristique nécessite de
8 Occurrences trouvées, Dernière modification:
potentiel_energy_surfaceplugin-autotooltip__default plugin-autotooltip_bigSurface d'énergie potentielle

Historique

Eyring et Polanyi ont publié en 1931 l'article On Simple Gas Reactions dans lequel ils décrivent les trajets des atomes dans la réaction + H --> H + (échange d'atomes). Ces travaux aboutiront au développement des notions de $E_{bond}= D_e [\exp(-2\beta(r-r_e))-2\exp(-\beta(r-r_e))]$$E_{ant}= \frac{D_e}{2} [\exp(-2\beta(r-r_e))+2\exp(-\beta(r-r_e))]$$r_e$$D_e$$\beta$$E_{bond}= \frac{Q_{AB}+\alpha_{AB}}{1+S^2_{AB}} = \frac{Q_{AB}+\alpha_{AB}}{1+k}$$E_{a…
@teaching:progappchim:matplotlib_gallery
7 Occurrences trouvées, Dernière modification:
suite_de_fibonacci-2plugin-autotooltip__default plugin-autotooltip_bigSuite de Fibonacci : un premier programme

Voici un embryon non fonctionnel de programme. Il y manque alors des éléments (à la place des “???”)

#! /usr/bin/env python # -*- coding: utf-8 -*- """ Calculs des premiers éléments de la suite de Fibonacci. Référence : http://fr.wikipedia.org/wiki/Suite_de_Fibonacci """ # élément d'indice 0 i = 0 a = 0 print(i,a) # élément d'indice 1 i = 1 b = 1 print(i,b)

# structure de répétition pour appliquer la règle de récurrence max = 100 # indice du dernier …
7 Occurrences trouvées, Dernière modification:
notions_avanceesplugin-autotooltip__default plugin-autotooltip_bigNotions avancées

En construction. Les liens sont juste donnés. Une introduction et un exemple devrait être proposé pour chaque rubrique, et le nombre de ces rubriques augmenté.

Itérateurs

Itertools, zip,...

* 7 Levels of Using the Zip Function in Python

Générateurs et "yield"

*
7 Occurrences trouvées, Dernière modification:
elements_moleculesplugin-autotooltip__default plugin-autotooltip_bigÉléments et molécules

Les propriétés des éléments chimiques, de molécules peuvent être dressées, listées,... par un programme si on dispose des données. Celles-ci étant communes à tous les chimistes, et uniquement susceptibles de quelques modifications, il est utile de reprendre une source commune primaire (IUPAC) ou secondaire (comme Wikipedia) plutôt que de redéfinir toutes ces valeurs dans un programme.
7 Occurrences trouvées, Dernière modification:
factorielle-4plugin-autotooltip__default plugin-autotooltip_bigFactorielle : travaux additionnels

Idées d'exercices complémentaires, d'applications.

Utilisation d'un dictionnaire

Il peut être intéressant de précalculer des factorielles qui seront mémorisées dans un dictionnaire.

Comparaison avec l'approximation de Stirling
6 Occurrences trouvées, Dernière modification:
factorielle-3plugin-autotooltip__default plugin-autotooltip_bigFactorielle : une fonction en Python

Voici une version avec la fonction factorielle()

#! /usr/bin/env python # -*- coding: utf-8 -*- """ Calcul de la factorielle d'un nombre Référence : http://fr.wikipedia.org/wiki/Factorielle """ def factorielle(arg_n): """ structure de répétition pour appliquer la définition de la factorielle """ reponse = 1 # la réponse sera dans la variable reponse i = 1 # on va commencer par 1 while i <= arg_n: …
6 Occurrences trouvées, Dernière modification:
ph-3dplugin-autotooltip__default plugin-autotooltip_bigReprésentation 3D du pH

Cas d'un acide en fonction d'un ajout de base et d'une dilution globale : cf. cet article

#! /usr/bin/env python # -*- coding: utf-8 -*- """ Use of numpy polynomes to compute pH of weak acid and strong base

3D topographic surface generation in the same conditions as the following paper : 3-D Surface Visualization of pH Titration “Topos”: Equivalence Point Cliffs, Dilution Ramps, and Buffer Plateaus" Garon C. Smith, Md Mainul Hossain and Patrick MacCarthy J. Chem. Ed…
6 Occurrences trouvées, Dernière modification:
recherchesplugin-autotooltip__default plugin-autotooltip_bigAlgorithmes de recherche

Classiquement, pour des données structurées en listes, arbres, un algorithme de recherche va selon un critère donné (une valeur par exemple) retourner un ensemble d'occurrences (toutes, plusieurs, une seule,...).

Recherche séquentielle
6 Occurrences trouvées, Dernière modification:
attracteur_lorenzplugin-autotooltip__default plugin-autotooltip_bigL'attracteur de Lorenz

L'attracteur de Lorenz est un système d'équations différentielles ordinaires au comportement particulier, chaotique. C'est un exemple classique de nombreux cours scientifiques, et plusieurs sites proposent des solutions.

Avec du code appliquant le méthode de Runge-Kutta d'ordre 4
6 Occurrences trouvées, Dernière modification:
csvplugin-autotooltip__default plugin-autotooltip_bigLire et écrire des fichiers de données csv

pandas Les fichiers csv sont des fichiers de données séparées par des virgules (ou point-virgules), pour “comma separated values”. Comme ceci :

1;0.1;3 2;0.3;5 3;0.5;7 4;0.6;11 5;0.9;21 6;1.5;39

Ils peuvent être facilement importés ou exportés de tableurs ou logiciels de graphiques scientifiques.
5 Occurrences trouvées, Dernière modification:
t-testplugin-autotooltip__default plugin-autotooltip_bigTest de Student

Le test de Student (t-test) teste statistiquement l’hypothèse d’égalité de l'espérance de deux variables aléatoires suivant une loi normale et de variance inconnue.

Références

* (des exemples simples) * Documentation Python sur stats de scipy * 1-sample t-test * Unpaired t-test * Paired t-test
5 Occurrences trouvées, Dernière modification:
koch_snowflakeplugin-autotooltip__default plugin-autotooltip_bigFlocon de Koch

Courbe fractale créée suivant un principe de récursivité, en utilisant la librairie turtle

#!/usr/bin/env python # -*- coding: iso-8859-1 -*-

# exemple de courbe fractale (Koch) # cf. http://fr.wikipedia.org/wiki/Flocon_de_von_Koch # et http://en.wikipedia.org/wiki/Koch_snowflake # ce programme est basé sur un principe de récursivité # (une fonction qui s'appelle elle-même)

from turtle import * # module turtle. Doc : http://docs.python.org/library/turtle.html from time impo…
5 Occurrences trouvées, Dernière modification:
analyse_imagesplugin-autotooltip__default plugin-autotooltip_bigAnalyse d'images

Le traitement d'images permet de transformer des images. L'analyse d'images permet d'extraire des informations contenues dans une image. Il est aussi possible d'effectuer des tâches plus complexes de reconnaissance et d'analyse de scènes.
5 Occurrences trouvées, Dernière modification:
potentiel_morseplugin-autotooltip__default plugin-autotooltip_bigPotentiel de Morse

Potentiel de Morse et approximation harmonique, avec représentation des niveaux d'énergie des modèles quantiques correspondants.

Code source :

#! /usr/bin/env python # -*- coding: utf-8 -*- """ Représentation du potentiel de Morse pour H2 http://en.wikipedia.org/wiki/Morse_potential http://en.wikipedia.org/wiki/Quantum_harmonic_oscillator approximation harmonique D_e = 7.6E-19 J a = 19.3E-15 m r_e= 74.1E-12 m dérivée de seconde d2V/dr2 = 2 * D_e * a**2. """ import matplot…
@teaching:progappchim:matplotlib_gallery
5 Occurrences trouvées, Dernière modification:
math_nombresplugin-autotooltip__default plugin-autotooltip_bigMathématiques et nombres

Quelques programmes et algorithmes reliés aux mathématiques et aux nombres.

* Théorie des nombres * Nombre_remarquable * ...

Calculs en précision arbitraire

* 1/9² = 0.0123456790123456790123456790123456790123456790123457... * 1/99² = 0.0001020304050607080910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697990001020304050607080910111$…
5 Occurrences trouvées, Dernière modification:
maxwell-boltzmannplugin-autotooltip__default plugin-autotooltip_bigReprésentation de la distribution de vitesse de Maxwell-Boltzmann

Pour la théorie, cf. le cours de physico-chimie ou la page Wikipédia sur la distribution de vitesse de Maxwell-Boltzmann

Sans NumPy

#! /usr/bin/env python # -*- coding: utf-8 -*- “”“ NumPy/Matplotib : representation de la distribution de vitesses de Maxwell-Boltzmann version SANS utilisation de NumPy cf cours et
4 Occurrences trouvées, Dernière modification:
suite_de_fibonacci-5plugin-autotooltip__default plugin-autotooltip_bigSuite de Fibonacci : quel est le meilleur algorithme ?

Comparer les temps avec timeit

La librairie timeit mesure les temps d'exécution en évitant des biais tels que l'usage concomitant d'autres ressources.

#! /usr/bin/env python # -*- coding: utf-8 -*- """ Calculs des premiers éléments de la suite de Fibonacci. Référence : http://fr.wikipedia.org/wiki/Suite_de_Fibonacci Comparaison de différentes fonctions avec Timeit http://docs.python.org/2/library/timeit.html http://www.diveintopython.net…
4 Occurrences trouvées, Dernière modification:
suite_de_fibonacci-4plugin-autotooltip__default plugin-autotooltip_bigSuite de Fibonacci : encore un algorithme

Voici le programme complété pour la technique récursive :

#! /usr/bin/env python # -*- coding: utf-8 -*- """ Calculs des premiers éléments de la suite de Fibonacci. Référence : http://fr.wikipedia.org/wiki/Suite_de_Fibonacci Application de la définition par récursivité. """ def fibonacci_item_recursive(n): """ Renvoie l'élément d'indice n de la suite de Fibonacci """ if n == 0: return 0 elif n == 1: return 1 ret…
4 Occurrences trouvées, Dernière modification:
suite_de_fibonacci-3plugin-autotooltip__default plugin-autotooltip_bigSuite de Fibonacci : écriture de fonctions

Voici la structure que doit avoir un programme pour lequel le calcul de l'élément d'indice n de la suite de Fibonacci est encapsulé dans une fonction :

#! /usr/bin/env python # -*- coding: utf-8 -*- """ Calculs des premiers éléments de la suite de Fibonacci. Référence : http://fr.wikipedia.org/wiki/Suite_de_Fibonacci """ def fibonacci_item(n): """ Renvoie l'élément d'indice n de la suite de Fibonacci """ ...

if __name__ == '__main__'…
4 Occurrences trouvées, Dernière modification:
presentation_principesplugin-autotooltip__default plugin-autotooltip_big* Qu'est-ce qu'un langage de programmation ? * Compilation ou interprétation, ou... ?

* Décrire des instructions dans un langage compréhensible par un être humain, mais transformable en d'autres instructions compréhensibles par l'ordinateur (langage machine)
4 Occurrences trouvées, Dernière modification:
ppooplugin-autotooltip__default plugin-autotooltip_bigProgrammation Python Orientée Objet

FIXME : en construction

Concepts utilisés

* Un objet : c'est... n'importe quoi, qui peut être codé. En Python, tout est objet ! * Une classe est une description générique d'un type d'objet, incluant les données et les méthodes qui le caractérisent
4 Occurrences trouvées, Dernière modification:
game_of_life_conway-2012plugin-autotooltip__default plugin-autotooltip_bigJeu de la vie de Conway

Game of Life with Python

#!/usr/bin/env python # -*- coding: utf-8 -*- """A minimal implementation of Conway's Game of Life.

source : http://www.exolete.com/code/life modified by par Jérémie Knoops, BA2 chimie UMONS, 2011-2012 cf. http://fr.wikipedia.org/wiki/Jeu_de_la_vie & http://en.wikipedia.org/wiki/Conway%27s_Game_of_Life Each cell's survival depends on the number of occupied nearest and next-nearest neighbours (calculated in Grid::step). A living cell dies of ov…
4 Occurrences trouvées, Dernière modification:
osm_interrogationplugin-autotooltip__default plugin-autotooltip_bigInterrogation de la base de données géolocalisées OpenStreetMap

API OSM en Python

* Application Programming Interface, en Python

Installation via pip :

pip(3) install osmapi

Exemple de code

Recherche de débit de boissons (“pub”) via la base de données d'OpenStreetMap.

#!/usr/bin/python # -*- coding: UTF-8 -*-
3 Occurrences trouvées, Dernière modification:
dictionary_adn_proteinplugin-autotooltip__default plugin-autotooltip_bigTraduction de l'ADN en séquence d'acides aminés

#!/usr/bin/env python # -*- coding: iso-8859-1 -*-

# python code to translante DNA sequences into proteins # traduction de l'ADN en séquence d'acides aminés (protéine)
3 Occurrences trouvées, Dernière modification:
ir_spectrum_coplugin-autotooltip__default plugin-autotooltip_bigSpectre IR du CO

Différentes techniques de spectroscopie utilisent des représentations standardisées des spectres. En spectroscopie Infrarouge, l'absorbance est traditionnellement représentée en fonction des nombres d'ondes décroissants exprimés en $cm^{-1}$. Pour rappel, en spectroscopie, le $\tilde{\nu}$$\tilde{\nu} = 1/\lambda = \nu/c$$\Delta J = \pm 1$$cm^{-1}$
@teaching:progappchim:matplotlib_gallery
3 Occurrences trouvées, Dernière modification:
nimplugin-autotooltip__default plugin-autotooltip_bigJeux de Nim

* fr:Jeux_de_Nim * Nim: A Game Playing Program Seymour Papert, MIT Artificial Intelligence Memo No. 254, 1970 (from The Collected Writings of Seymour Papert) * version de l'article sur archive.org, version texte disponible

FIXME : codes python...

Références

* évolution du jeu, javascript en ligne * vidéo sur l'élaboration d'un programme en python
3 Occurrences trouvées, Dernière modification:
polynomes-11plugin-autotooltip__default plugin-autotooltip_bigGraphe d'une famille de polynômes orthogonaux

Voici un programme permettant de visualiser les premiers polynômes orthogonaux de Tchebyshev :

#!/usr/bin/env python # -*- coding: utf-8 -*- """ graphes de Polynomes de Chebyschev """

from math import * from pylab import *

def polyeval(x,a): """ application de l'algorithme de Horner cf. http://fr.wikipedia.org/wiki/M%C3%A9thode_de_Ruffini-Horner """ n = len(a)-1 # n = ordre du polynome p = 0. for i in range(n,-1,-1): …
3 Occurrences trouvées, Dernière modification:
ph_courbe_titrage_2011plugin-autotooltip__default plugin-autotooltip_bigpH et courbe de titrage

#!/usr/bin/env python # -*- coding: utf-8 -*- # Programme de calculs de pH et de courbes de titrages # AD & BW, Ba2 chimie 2010-2011

from math import * from Tkinter import * import matplotlib.pyplot as plt import numpy as np

def pol(): #on définit la fonction pour le bouton "Calcul du pH" try: ca = e0.get() #permet de récupérer les valeurs entrées dans les champs d'entrée par l'utilisateur …
2 Occurrences trouvées, Dernière modification:
entropie_melangeplugin-autotooltip__default plugin-autotooltip_bigEntropie de mélange pour un gaz ou liquide idéal

#! /usr/bin/env python # -*- coding: utf-8 -*- """ représentation graphique de l'entropie de mélange d'un système idéal """

import numpy as np # voir http://docs.scipy.org/doc/ import matplotlib.pyplot as plt

def s(t): return t*np.log(t) + (1-t) * np.log(1-t)

x1 = np.arange(0.0, 1., 0.001)

plt.plot(x1, s(x1), 'b-') #plt.plot(x1, x1*np.log(x1) + (1-x1) * np.log(1-x1), 'b-') #autre façon, n'utilisant pas la fonction

plt.show()

# des m…
2 Occurrences trouvées, Dernière modification:
rdkitplugin-autotooltip__default plugin-autotooltip_bigRDKit

* * Getting Started with the RDKit in Python — The RDKit 2020.09.1 documentation * Depict a compound as an image | Chemistry Toolkit Rosetta Wiki | Fandom * Jupyter & RDKit * Getting Started with RDKit and Jupyter | Depth-First *

* ChemSpider | Search and share chemistry site reprenant de nombreuses informations sur des molécules * ...

“”

Exemples d'utilisation

# from …
2 Occurrences trouvées, Dernière modification:
algos_graphesplugin-autotooltip__default plugin-autotooltip_bigAlgorithmes de graphes

Références diverses

* * * * * * (depuis Python 3.9)
2 Occurrences trouvées, Dernière modification:
factorielle-2plugin-autotooltip__default plugin-autotooltip_bigFactorielle : un premier programme

Voici un embryon non fonctionnel de programme. Il y manque des éléments (à la place des “???”)

#! /usr/bin/env python # -*- coding: utf-8 -*- """ Calcul de la factorielle d'un nombre Référence : http://fr.wikipedia.org/wiki/Factorielle """ # on demande le nombre : print("Calcul de la factorielle de n") chainelue = input("Que vaut n ? ") n = int(chainelue) print(n)

# structure de répétition pour appliquer la définition de la factorielle reponse=1 # la répon…
2 Occurrences trouvées, Dernière modification:
piegesplugin-autotooltip__default plugin-autotooltip_bigPièges à éviter

Quelques pièges à éviter !

Type de données

* travailler avec des nombres et ne pas mettre le point décimal s'ils ont une valeur entière les laissera dans le type 'int'. * Ne pas confondre une liste contenant un nombre, et ce nombre.
2 Occurrences trouvées, Dernière modification:
polynomes-10plugin-autotooltip__default plugin-autotooltip_bigPolynômes : fonctionnalités supplémentaires

Voici quelques fonctions utiles pour manipuler les polynômes :

Dérivation

Proposé et testé par RL, étudiant ba2 2012-2013.

#!/usr/bin/env python # -*- coding: utf-8 -*- def polyderiv(a): """ dérivation d'un polynôme """ b = a[:] #copie de la liste des coefficients du polynôme de départ n = len(b) -1 #ordre du polynôme for i in range (n+1): b[i] = b[i] * i #on redéfinit chaque coefficient i de la liste par ce…
2 Occurrences trouvées, Dernière modification:
codes_presentationplugin-autotooltip__default plugin-autotooltip_bigCodes de la présentation

Turtle

Cf. la documentation officielle.

#!/usr/bin/python # -*- coding: UTF-8 -*-

# exemple de base turtle # from turtle import * import sys import time

reset() x=-100 y=-100 i=0 while i < 10: j=0 while j <10: up() goto(x+i*20,y+j*20) down() fill(1) n=0 while n <4 : forward(16) left(90) n=n+1 color([i*0.1,j*0.1,0]) fill(0) color(0,0,0) j=j+1 …
2 Occurrences trouvées, Dernière modification:
polynomes-9plugin-autotooltip__default plugin-autotooltip_bigPolynômes : graphe multiple fonctions polynomiales

# -*- coding: utf-8 -*- """ graphe multiple de polynômes de Tchebyshev cf. http://fr.wikipedia.org/wiki/Polyn%C3%B4me_de_Tchebychev """

from pylab import * # librairie graphique (Matplotlib)

def polyeval(x,a): """ application de l'agorithme de Horner cf. http://fr.wikipedia.org/wiki/M%C3%A9thode_de_Ruffini-Horner """ n = len(a)-1 # n = ordre du polynôme p = 0. for i in range(n,-1,-1): p = p*x + a[i] …
2 Occurrences trouvées, Dernière modification:
collection_namedtuple_exempleplugin-autotooltip__default plugin-autotooltip_bigExemple d'utilisation de namedtuple

L'utilisation de namedtuple peut s'avérer plus rapide que la définition de classes (objets) pour gérer des petites structures de données.

La syntaxe de base est : namedtuple(typename, field_names)

* cela crée une sous-classe de namedtuple appelée
2 Occurrences trouvées, Dernière modification:
collection_counter_exempleplugin-autotooltip__default plugin-autotooltip_bigExemple d'utilisation de Counter

Module collections :

* *

#!/usr/bin/env python # -*- coding: utf-8 -*- """ Recherche du nombre d'occurences des noms d'auteurs d'un article On copie dans all_authors les noms des auteurs http://www.ncbi.nlm.nih.gov/pubmed/26799652

""" import collections all_authors = "Klionsky DJ, Abdelmohsen K, Abe A, Abedin MJ, Abeliovich H,..."

authors = all_auth…
2 Occurrences trouvées, Dernière modification:
scikit_learnplugin-autotooltip__default plugin-autotooltip_bigScikit-learn

* *

FIXME : ajouter des exemples avec analyse de textes contenant des termes scientifiques, des noms de substances chimiques,...

* Scikit-chem, simple cheminformatics for Python * MolMiner, for extracting compounds from scientific literature *
2 Occurrences trouvées, Dernière modification:
polynomes-7plugin-autotooltip__default plugin-autotooltip_bigPolynômes : comment les multiplier par un scalaire et les additionner

#!/usr/bin/env python # -*- coding: UTF-8 -*- """ écriture d'un programme pour évaluer des polynomes + fonction de multiplication d'un polynôme pas un scalaire + fonction d'addition de deux polynômes """ from math import *

def polyeval(x,a): """ application de l'agorithme de Horner cf. http://fr.wikipedia.org/wiki/M%C3%A9thode_de_Ruffini-Horner """ n = len(a) - 1 # n = ordre du polynôme p =0. for…
2 Occurrences trouvées, Dernière modification:
diffusion_chimique_1dplugin-autotooltip__default plugin-autotooltip_bigModélisation de la diffusion chimique dans un film

Technique de différences finies, utilisation de matplotlib

#!/usr/bin/env python # -*- coding: utf-8 -*- from math import * # pour utiliser la librairie graphique matplotlib from pylab import *
1 Occurrences trouvées, Dernière modification:
suite_de_fibonacciplugin-autotooltip__default plugin-autotooltip_bigSuite de Fibonacci

La suite de Fibonacci est une suite d'entiers dans laquelle chaque terme est la somme des deux termes qui le précèdent. Elle commence généralement par les termes 0 et 1 (parfois 1 et 1) et ses premiers termes sont : 0, 1, 1, 2, 3, 5, 8, 13, 21, etc. (reference
1 Occurrences trouvées, Dernière modification:
trisplugin-autotooltip__default plugin-autotooltip_bigAlgorithmes de tri

Un algorithme de tri est, en informatique ou en mathématiques, un algorithme qui permet d'organiser une collection d'objets selon un ordre déterminé (Référence wikipedia).

Les tris sont intéressants du point de vue de l'apprentissage de l'algorithmique.
1 Occurrences trouvées, Dernière modification:
pylab_simpleplugin-autotooltip__default plugin-autotooltip_bigPylab

Pylab permet de combiner simplement Matplotlib, NumPy et SciPy, en utilisant une directive d'importation supprimant l'usage de tous les namespaces des librairies sous-jacentes :

from pylab import *

Exemple

Version “Pylab” du code utilisé pour la
1 Occurrences trouvées, Dernière modification:
lennard-jonesplugin-autotooltip__default plugin-autotooltip_bigReprésentation du potentiel de Lennard-Jones

L'utilisation de fonctions en python permet de nombreuses applications par la création de graphiques. En utilisant la “bibliothèque matplotlib/pylab”, vous pourrez donc aisément créer des graphes de fonction.$V_{LJ} = 4\varepsilon \left[ \left(\frac{\sigma}{r}\right)^{12} - \left(\frac{\sigma}{r}\right)^{6} \right] = \varepsilon \left[ \left(\frac{r_{m}}{r}\right)^{12} - 2\left(\frac{r_{m}}{r}\right)^{6} \right]$$r_{m} = 2^{1/6} \sigma$$U_{tot} = \fr…
1 Occurrences trouvées, Dernière modification:
calcul_matriciel_2012plugin-autotooltip__default plugin-autotooltip_bigCalul matriciel

#!/usr/bin/env python # -*- coding: UTF-8 -*- # (pdf) # #pour operation matriciel verification mathématique : # #
1 Occurrences trouvées, Dernière modification:
regression_lineaire_2013plugin-autotooltip__default plugin-autotooltip_bigRégression linéaire

Entrée de couples, calcul et affichage de la droite de moindres carrés

#!/usr/bin/env python # -*- coding: utf-8 -*- # version un peu aménagée du travail de BD et EH, ba2 chimie 2012-2013

import matplotlib.pyplot as plt import pylab import numpy
1 Occurrences trouvées, Dernière modification:
algos_diversplugin-autotooltip__default plugin-autotooltip_bigAlgorithmes divers

Problèmes résolus :

* Fizz buzz, jeu de comptage et de divisibilité conçu pour des enfants * ...

Problèmes non résolus

* Décomposition de formules chimiques (analyse de chaînes de caractères) * ...

Classiques

* Solving Travelling Salesperson Problems with Python

Références diverses

*
1 Occurrences trouvées, Dernière modification:
dictionaries_adn_arn_proteinplugin-autotooltip__default plugin-autotooltip_bigTraduction ADN-ARN-protéine

Avec l'interface Tk. Voir aussi le programme Traduction de l'ADN en séquence d'acides aminés (protéine) : utilisation d'un dictionnaire (type Python)

#!/usr/bin/env python # -*- coding: utf-8 -*- “”“ Traduction de codes ADN en ARN et protéine. Basé sur le travail de NR et CVDD, ba2 chimie 2013-2014
1 Occurrences trouvées, Dernière modification:
polynomes-6plugin-autotooltip__default plugin-autotooltip_bigPolynômes : la méthode de Horner

432 Cela revient à effectuer les opérations successives suivantes :

* prendre le coefficient de x4 * multiplier par x * ajouter le coefficient de x3 * multiplier par x * ajouter le coefficient de x2 *
1 Occurrences trouvées, Dernière modification:
ensemble_mandelbrot_2013plugin-autotooltip__default plugin-autotooltip_bigEnsemble de Mandelbrot

Dessin d'une fractale : l'ensemble de Mandelbrot

#!/usr/bin/env python # -*- coding: utf-8 -*- # version un peu aménagée du travail de BF, ba2 chimie 2012-2013 # ref :

from Tkinter import * from random import randrange
1 Occurrences trouvées, Dernière modification:
factorielleplugin-autotooltip__default plugin-autotooltip_bigCalcul de factorielles

La factorielle d'un nombre naturel n est le produit des nombres entiers strictement positifs inférieurs ou égaux à n. Elle est notée n!. Pour n=0, on a 0!=1, ensuite 1!=1, 2!=2, 3!=6, 4!=24,...

Un premier (mauvais) programme

Regardez, et essayez
1 Occurrences trouvées, Dernière modification:
polynomes-8plugin-autotooltip__default plugin-autotooltip_bigPolynômes : graphes de fonctions polynomiales

#!/usr/bin/env python # -*- coding: UTF-8 -*- """ écriture d'un programme pour évaluer des polynomes """ from math import * from pylab import * # librairies de graphiques (matplotlib)

def polyeval(x,a): """ application de l'agorithme de Horner cf. http://fr.wikipedia.org/wiki/M%C3%A9thode_de_Ruffini-Horner """ n = len(a)-1 # n = ordre du polynome p = 0. for i in range(n,-1,-1): p = p*x + a[i] return p

def…
1 Occurrences trouvées, Dernière modification:
pygal_simpleplugin-autotooltip__default plugin-autotooltip_bigLes bases de Pygal

FIXME

Références

* * Why use pygal?
1 Occurrences trouvées, Dernière modification:
representation_molecules_2013plugin-autotooltip__default plugin-autotooltip_bigReprésentation de molécules

Page à actualiser...

Certaines fonctions de ce programme nécessite des fichiers de données : [base.csv] et [bdd.csv] #!/usr/bin/env python # -*- coding: UTF-8 -*- # travail de RL, ba2 chimie 2012-2013
1 Occurrences trouvées, Dernière modification:
altair_simpleplugin-autotooltip__default plugin-autotooltip_bigles bases de Altair, une librairie graphique interactive

* Altair: Declarative Visualization in Python — Altair 4.1.0 documentation * altair · PyPI * (Tutorial) Altair in Python: Data Visualizations - DataCamp * Python Interactive Data Visualization with Altair - Towards Data Science * Stackoverflow * python - Altair not rendering chart in jupyter notebook - Stack Overflow * python - Not able to display altair charts in jupyter notebook - Stack Overflow
1 Occurrences trouvées, Dernière modification:
print_formatplugin-autotooltip__default plugin-autotooltip_bigImpressions avec la méthode .print()

FIXME :

* à compléter par les règles essentielles et quelques exemples * F-strings introduite depuis Python 3.6

Références

* * * * F-strings * * Python’s F-Strings - Complete implementation guide with code… Naina Chatu…
1 Occurrences trouvées, Dernière modification:
matricesplugin-autotooltip__default plugin-autotooltip_bigManipulations de matrices

Les matrices sont des tableaux de nombres à deux dimensions. On peut utiliser des listes de lignes, qui sont elles-mêmes des listes d'éléments de la ligne, pour représenter une matrice. On aura donc des listes de listes.
1 Occurrences trouvées, Dernière modification: