Fit de courbe

Réponses à toutes vos questions après le Bac (Fac, Prépa, etc.)
Exocius
Messages: 1
Enregistré le: 25 Juin 2010, 19:37

Fit de courbe

par Exocius » 27 Juin 2010, 17:31

Bonjour,

Voila, j'ai effectué des mesures pour déterminer une loi de comportement.

J'ai 3 relevés dépendant de la vitesse de déformation plastique.

Mon but est de fitter les 3 courbes et d'obtenir un jeu de paramètre unique.

Je code cela en python.

Voici un programme qui permet de fitter un jeu de données. Mais je bloque pour faire les 3 à la fois... :cry:

Grrr les maths...

Code: Tout sélectionner
#Importation des différents modules. 
from scipy import *
from scipy.optimize import leastsq
import scipy.io.array_import
from pylab import *
import matplotlib.pyplot as ptt
import numpy as np
import Tkinter from math import *   

#FONCTION COUT
#Notons que la fonction n'est pas au carré, c'est la fonction Leastsq
#qui élève au carré la fonction coût. 

def residuals(p, y, x):     
             err = y-peval(x,p)     
             return err 

#FONCTION A EVALUER
#Ici, la fonction à évaluer. A modifier, en fonction de l'allure de la courbe voulue
#p[0], p[1] et p[2] sont les paramètres de la fonction.     

def peval(x, p): 
       return p[0]*(1-exp(-(p[2]*x)/p[3])) 

#Import Data
#Importation d'un fichier .txt     

filename=('mesure.dat')
data = scipy.io.array_import.numpy.loadtxt(filename) 

#La colonne 0 du fichier sera les valeurs en x, et la colonne 1 sera celle des #y

y = data[:,1] x = data[:,0] 

#Initialisation, nous entrons un jeu de paramètres "assez" proches des paramètres optimaux

A1_0=1
A2_0=1
k2_0=1 

#Les paramètres sont classés dans un tableau

pname = (['A1','A2','k2'])
p0 = array([A1_0 , A2_0, k2_0])
 #Appel de l'algorithme de Levenberg-Marquardt. 

plsq = leastsq(residuals, p0, args=(y, x), maxfev=2000) 

print plsq[0]


Merci d'avance de votre aide.
Cordialement
Exocius



Dlzlogic
Membre Transcendant
Messages: 5273
Enregistré le: 14 Avr 2009, 12:39

par Dlzlogic » 05 Sep 2012, 13:22

Bonjour,
Je découvre votre question aujourd'hui.
Si j'ai bien compris, vous cherchez à établir une fonction avec 3 variables (X, Y, Z).
Si c'est votre question, je peux vous aider.

geegee
Membre Rationnel
Messages: 799
Enregistré le: 11 Mai 2008, 13:17

par geegee » 05 Sep 2012, 16:50

Bonjour,

Déterminer la loi de comportement d’un matériau (fluide ou solide) revient donc à trouver la
relation entre le tenseur des contraintes  et le tenseur des déformations  et/ou des taux de déformations
d = _. Un certain nombre de variables décrivant l’état du matériau et son histoire peuvent
s’ajouter à cette loi. De manière générale, ces variables doivent être de nature tensorielle pour rendre
compte de l’écoulement et de son anisotropie. Coussot et Ancey [27] proposent de simplifier cette
relation et de l’écrire sous la forme

Loi de comportement
Pour décrire le comportement des fluides et prédire leur écoulement, il faut se placer dans le
cadre de la mécanique des milieux continus où l’on peut exprimer la loi de comportement. C’est
cette relation entre le tenseur des contraintes et celui des déformations qui caractérise le fluide.
On peut décomposer le tenseur des contraintes , appelé tenseur des contraintes de Cauchy, en
deux termes : la pression hydrostatique p, qui ne provoque pas de déformation, et le déviateur des
contraintes,  . On a alors :
 = ;);)p + Loi de comportement
Pour décrire le comportement des fluides et prédire leur écoulement, il faut se placer dans le
cadre de la mécanique des milieux continus où l’on peut exprimer la loi de comportement. C’est
cette relation entre le tenseur des contraintes et celui des déformations qui caractérise le fluide.
On peut décomposer le tenseur des contraintes , appelé tenseur des contraintes de Cauchy, en
deux termes : la pression hydrostatique p, qui ne provoque pas de déformation, et le déviateur des
contraintes,  . On a alors :
 = ;);)p + 

thèse:http://pastel.archives-ouvertes.fr/docs/00/65/73/29/PDF/TH2011PEST1065_complete.pdf
code python p209-210

 

Retourner vers ✯✎ Supérieur

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 33 invités

Tu pars déja ?



Fais toi aider gratuitement sur Maths-forum !

Créé un compte en 1 minute et pose ta question dans le forum ;-)
Inscription gratuite

Identification

Pas encore inscrit ?

Ou identifiez-vous :

Inscription gratuite