Linhas Verticais

um blog sobre musica, arte, programação e outras coisas.

Gaussian Fit – Ajuste de Gaussianas março 4, 2008

Filed under: informatica,programação,tech,tecnologia — rangelfisica @ 5:22 pm

gauss_fit1.jpg

Escrevi um codigo bem util para ajuste de duas gaussianas em um conjunto de dados XY em Python. Como não achei nada parecido na internet (que não esteja incluido em uma biblioteca maior), resolvi postar.

É baseado no metodo de ajuste não-linear Levenberg-Marquardt (com algumas mudanças), uma delas é um fator aleatorio que serve para escapar dos minimos locais.

A,x0,s,m = gauss_non_linear( data_x, data_y, max_inter=40)

where fit parameters is : y(x) = A*Exp( ((x-x0)^2)/( 2* s^2) ) +m

A1,x1,s1, A2,x2,s2,m= two_gauss_non_linear(data_x,data_y,max_inter=40 )

y(x) = A1*Exp( ((x-x1)^2)/( 2* s1^2) ) +A2*Exp( ((x-x2)^2)/( 2* s2^2) ) +m

Obs: Require Numeric Python (numpy)

Link : nonlinear_gaussian_fit.pdf



		
 

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s