Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # -*- coding: utf-8 -*-
- """
- Éditeur de Spyder
- Ceci est un script temporaire.
- """
- from numpy import *
- from matplotlib.pyplot import *
- from random import random
- from mpl_toolkits.mplot3d import Axes3D
- #1
- def trace_graphe(f,a,b,pas):
- plot([a+k*pas for k in range(int((b-a)/pas))],[f(a+k*pas) for k in range(int((b-a)/pas))],"+")
- show()
- return
- #2
- def petit_nuage():
- for i in range(50):
- plot([random()*10],[random()*10],"+")
- show()
- return
- #3
- def euler(F,a,b,y0,n):
- listeTemps = [a]
- listeY = [y0]
- h = (b-a)/(n-1)
- for i in range(1,n):
- listeY.append(listeY[-1]+F(listeTemps[-1], listeY[-1] * h))
- listeTemps.append(listeTemps[-1]+h)
- return listeTemps,listeY
- #4
- m = asarray
- def euler_vectorielle(F,a,b,y0,n):
- listeTemps = [a]
- listeY = [y0]
- h = (b-a)/(n-1)
- for i in range(1,n):
- deltaY = m(F(listeTemps[-1], listeY[-1])) * h
- listeY.append(m(listeY[-1]) + m(deltaY))
- listeTemps.append(listeTemps[-1]+h)
- return listeTemps, listeY
- #F = lambda t, u:[-u[0], u[0]-u[1], u[1]]
- #x, y = euler_vectorielle(F, 0, 10, [1,0,0], 100)
- #plot(x,y)
- #show()
- #5
- def trajectoire(F,a,b,y0,n):
- couples = euler_vectorielle(F,a,b,y0,n)[1]
- listeX = [couples[k][0] for k in range(len(couples))]
- listeY = [couples[k][1] for k in range(len(couples))]
- plot(listeX, listeY, "--")
- # show()
- return()
- #F = lambda t,u: [u[0]+3*u[1], -3*u[0]+ u[1]]
- #trajectoire(F, 0, 10, [1,1], 1000)
- #6
- def conditions(F,a,b,y0,n,[])
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement