• Aucun résultat trouvé

Représentations graphiques (Python et Scilab)

N/A
N/A
Protected

Academic year: 2022

Partager "Représentations graphiques (Python et Scilab)"

Copied!
5
0
0

Texte intégral

(1)

http://alexandre.boisseau.free.fr/Prive/WWW/InfoPCSI/resume15.pdf

15

Représentations graphiques (Python et Scilab)

⋄ Objectifs : représenter graphiquement des suites, des fonctions (et des mesures expéri- mentales). Donner des noms aux courbes, aux axes, à la figure.

⋄ Les différentes étapes pour effectuer le tracé avec PYTHON: import numpy as np (Si besoin)

import matplotlib.pyplot as plt Importer le module de tracé

plt.plot(x,y,...) Représenter graphiquement les points donc les abscisses sont dansxet les ordon- nées dans y (x et y sont des listes, ou des tableaux, de même taille). Répéter cette étape pour chaque courbe à tracer

plt.legend(...) Donner les noms des différentes courbes plt.xlabel(...) Donner les noms des axes

plt.ylabel(...)

plt.title(...) Donner le nom du dessin plt.show() Afficher la fenêtre graphique

⋄ Avec SCILAB, pas de module particulier à utiliser et les commandes sont très semblables : scf() Créer une nouvelle fenêtre graphique

plot(x,y,...) Représenter graphiquement les points donc les abscisses sont dans xet les ordonnées dansy(xetysont des matrices ligne ou colonne de même taille). Répéter cette étape pour chaque courbe à tracer legend(...) Donner les noms des différentes courbes

xlabel(...) Donner les noms des axes ylabel(...)

title(...) Donner le nom du dessin

Remarque. On peut ajouter à la commandeplotdes indications supplémentaires pour préciser le style du tracé sous forme d’une chaîne de caractères :"ro"pour un tracé avec des ronds rouges,"b--"pour un tracé avec une ligne en pointillés bleus,"g-"pour un tracé avec une ligne pleine verte, etc. On se reportera aux exemples vus en classe.

(2)

Exemples de représentations graphiques

Suites

Exemple. On considère la suite (un)nÊ0définie par : u0=1

n∈N, un+1=p un+1

Représenter graphiquement les valeurs prises par la suite (un) pour 0ÉnÉ10.

import matplotlib.pyplot as plt def u(n):

u=1

for k in range(n):

u=(u+1)**0.5 return u

plt.plot([u(k) for k in range(11)],'bo') plt.title("Suite u")

plt.xlabel("n") plt.ylabel("u")

plt.show()

function y=u(n) y=1

for k=1:n

y=(y+1)^0.5 end

endfunction scf()

plot(0:10,feval(0:10,u),'bo') title("Suite u")

xlabel("n") ylabel("u")

0 1 2 3 4 5 6 7 8 9 10

1 1.2 1.4 1.6

1.1 1.3 1.5 1.7

1.05 1.15 1.25 1.35 1.45 1.55 1.65

n

u

Suite u

(3)

Fonctions

Exemple. Représenter les fonctions f :x7→ex2etg :x7→

· 0 six<0

1.5 sixÊ0 sur [−3, 3].

import numpy as np

import matplotlib.pyplot as plt def g(x):

if x<0:

return 0 else:

return 1.5

x=np.linspace(-3,3,100)

plt.plot(x,np.exp(-x**2),'b-')

plt.plot(x,[g(xi) for xi in x],'r-') plt.legend(["f","g"])

plt.xlabel("x") plt.ylabel("y")

plt.show()

function y=g(x) if x<0 then

y=0 else

y=1.5 end

endfunction

x=linspace(-3,3,100) scf()

plot(x,exp(-x.^2),'b-') plot(x,feval(x,g),'r-') legend("f","g")

xlabel("x") ylabel("y")

0

−2 2

−3 −2.5 −1.5 −1 −0.5 0.5 1 1.5 2.5 3

0 1

0.2 0.4 0.6 0.8 1.2 1.4 1.6

0.1 0.3 0.5 0.7 0.9 1.1 1.3 1.5

x

y

f g

(4)

Un exemple en chimie

Exemple. On mesure la concentrationC(t) d’une espèce chimique à différents instants.

On obtient le tableau ci-contre. Par ailleurs, une étude théorique montre que l’évolution de cette concentration peut être modélisée par la fonction :

C:t7→ 1 k t+ 1

C0

aveck=80.2 mol1·L·s1etC0=5.0·104mol·L1. Représenter sur le même graphique la courbe théorique et les valeurs expérimentales.

import matplotlib.pyplot as plt import numpy as np

t_mes=[20,40,60,80,100,120]

C_mes=[2.78e-4,1.92e-4,1.47e-4,1.19e-4,1.0e-4,0.86e-4]

k=80.2 C0=5.0e-4

t=np.linspace(0,120,100) plt.plot(t,(k*t+1/C0)**(-1))

plt.plot(t_mes,C_mes,'+',markersize=12) plt.legend(["Modele","Mesures"])

plt.title("Evolution de C(t)") plt.xlabel("t (s)")

plt.ylabel("C (mol/L)")

plt.show()

t_mes=[20,40,60,80,100,120]

C_mes=[2.78e-4,1.92e-4,1.47e-4,1.19e-4,1.0e-4,0.86e-4]

k=80.2 C0=5.0e-4

t=linspace(0,120,100) scf()

plot(t,(k*t+1/C0).^(-1)) plot(t_mes,C_mes,'+')

legend("Modele","Mesures") title("Evolution de C(t)") xlabel("t (s)")

ylabel("C (mol/L)")

0 10 20 30 40 50 60 70 80 90 100 110 120

2e−04 4e−04

1e−04 3e−04 5e−04

5e−05 1.5e−04 2.5e−04 3.5e−04 4.5e−04 5.5e−04

t (s)

C (mol/L)

Modele Mesures Evolution de C(t)

(5)

Un exemple en physique

Exemple. On considère l’équation différentielle du second ordre sous forme canonique : 1

ω20 d2uc

dt2 +2ξ ω0

duc

dt +uc=0 avecw0=104rad·s1etξ=0.5 ainsi que la solution :

uc(t)=Acos(ωat) exp(ξω0t) avecA=1 V etωa=ω0p

1−ξ2(régime peudopériodique). Représenter la fonctionuc en traits pleins ainsi que les fonctionst 7→ ±Aexp(−ξω0t) en pointillés sur [0, 4T] avec T = 2π/ω0.

import numpy as np

import matplotlib.pyplot as plt w_0=1e4

xi=0.5 A=1

w_a=w_0*np.sqrt(1-xi**2) T=2*np.pi/w_0

t=np.linspace(0,4*T,100)

plt.plot(t,A*np.cos(w_a*t)*np.exp(-xi*w_0*t),'b-') plt.plot(t,A*np.exp(-xi*w_0*t),'r--')

plt.plot(t,-A*np.exp(-xi*w_0*t),'r--') plt.xlabel("t (s)")

plt.ylabel("u_c (V)")

plt.title("Regime pseudoperiodique")

plt.show()

w_0=1e4 xi=0.5 A=1

w_a=w_0*sqrt(1-xi^2) T=2*%pi/w_0

t=linspace(0,4*T,100)

plot(t,A*cos(w_a*t).*exp(-xi*w_0*t),'b-') plot(t,A*exp(-xi*w_0*t),'r--')

plot(t,-A*exp(-xi*w_0*t),'r--') xlabel("t (s)")

ylabel("u_c (V)")

title("Regime pseudoperiodique")

0 0.0005 0.001 0.0015 0.002 0.0025 0.003

0

−1 1

−0.8

−0.6

−0.4

−0.2 0.2 0.4 0.6 0.8

t (s)

u_c (V)

Regime pseudoperiodique

Références

Documents relatifs

Le mot « arbre » (Baum) regroupe une pluralité d'espèces d'arbre (le chêne, le tilleul, le cyprès, le pêcher, le poirier, etc.), le mot « arbre fruitier » venant

Nous verrons comment ces textes, lus depuis des considérations linguistiques, illustrent aussi des naissances d’un autre ordre : la naissance du nombre, de la perfectivité

Créer un algorithme sous Algobox traçant les 21 points situés sur l'axe des abscisses et les 21 points situés sur le quart de cercle comme sur la figure ci-contre.

[r]

On peut tracer l'arc de cercle de centre O' et de

À partir de la fenêtre de tracé des courbes, la touche Trace (SHIFT F1) permet de déplacer un point sur la courbe.. Le déplacement se fait en utilisant

• La 2 ème ligne vous permet de faire afficher ou de ne pas faire afficher à l'écran les coordonnées du curseur (point clignotant).. Il est préférable de choisir

scrit dans l'angle eoc, de façon que ce cercle soit inscrit dans le triangle coe\ cette tangente étant déterminée, les centres c, e le sont aussi, et les arcs de l'anse ont pour