Table des matières

Utilisation 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.

polycheby_numpy.py
#! /usr/bin/env python
# -*- coding: utf-8 -*-
"""
Représentations des polynômes de Chebyshev avec utilisation de matplotlib 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
http://docs.scipy.org/doc/numpy/reference/generated/numpy.ones.html
http://docs.scipy.org/doc/numpy/reference/generated/numpy.zeros.html
http://docs.scipy.org/doc/numpy/reference/generated/numpy.append.html
"""
import numpy as np
import matplotlib.pyplot as plt
from numpy.polynomial.chebyshev import chebval
x = np.linspace(-1, 1, 100)
 
for n in range(10):
    y = chebval(x,np.append(np.zeros(n),np.ones(1)))
    plt.plot(x,y)
 
plt.axis([-1,1,-1,1]) # xmin, xmax, ymin, ymax  
plt.title('Polynomes de Tchebyshev')
plt.legend()
plt.show()
Ce code fonctionne aussi bien en Python version 2 qu'en version 3. Il suffit que les librairies nécessaires (matplotlib, numpy) soient installées !

Application : oscillateur harmonique quantique

La mécanique quantique permet de décrire la vibration de molécules biatomiques par le modèle de l'oscillateur harmonique quantique.

Il serait facile d'écrire un programme représentant les fonctions d'ondes, et les présentant sous la même forme que cette figure sur Wikimedia.

Application : orbitales atomiques

Programmation objet et création d'une classe spécifique aux polynômes