]> AND Private Git Repository - cours-mesi.git/blob - tps/chap3/ordre.py
Logo AND Algorithmique Numérique Distribuée

Private GIT Repository
j
[cours-mesi.git] / tps / chap3 / ordre.py
1 import scipy.stats as st
2 import numpy as np
3 from math import *
4 from methodes import *
5
6
7
8
9
10 def ordre_convergence(X,l=None) :
11     if l == None :
12         l=X[len(X)-1]
13         e = [abs(x-l) for x in X]
14         pts = [(log(e[j]),log(e[j+1])) for j in range(len(X)-2)]
15     else :
16         e = [abs(x-l) for x in X]
17         pts = [(log(e[j]),log(e[j+1])) for j in range(len(X)-1)]
18     slope, intercept, r_value, p_value, std_err = st.linregress(pts)
19     return slope
20
21
22
23 def main():
24
25     print "TP 4.2 ............ ordre convergence corde"
26     print ordre_convergence(iteration_corde(0,pi/2,0,200,1E-9,f)[1])
27
28
29     print "TP 4.2 ............ ordre convergence lagrange"
30     print ordre_convergence(iteration_lagrange(0,pi/2,200,1E-9,f)[1])
31
32
33     print "TP 4.2 ............ ordre convergence newton"
34     print ordre_convergence(iteration_newton(0,200,1E-9,f,fp)[1])
35
36
37
38 if __name__ == '__main__':
39     main()