2012-10-30 159 views
0

我需要找到我擬合的高斯的最大值,下面是我的示例代碼(忽略它對高斯是一個可怕的擬合的事實,它們只是我有兩個備用矩陣踢在我的變量托盤)在MATLAB中擬合高斯的最大值

x=[10;2;6;1;7;5;3;4;8;9]; 
z1=[0;0;0;0;0;6;7;8;9;10]; 
cf1=fit(x,z1,'gauss1'); 
plot(x,z1,'.k') 
hold on 
plot(cf1,'r') 

任何幫助你們可以給我將不勝感激。

+0

哦,我忘了提及,我必須這樣做,沒有曲線擬合工具,因爲我需要在將來的計算中使用這個最大值 –

回答

3

這是非常基礎的數學。看看

>> cf1 

cf1 = 
    General model Gauss1: 
    cf1(x) = a1*exp(-((x-b1)/c1)^2) 
    Coefficients (with 95% confidence bounds): 
     a1 =  5.187 (-0.4711, 10.85) 
     b1 =  6.834 (-0.768, 14.44) 
     c1 =  5.945 (-8.833, 20.72) 

現在的輸出,與the wikipedia article on Gaussians武裝,是微不足道的找到最大:

maximum_x = cf1.b1; 
maximum_y = cf1.a1; 

同樣會爲你使用任何其他工具,以適應同樣的功能如此 - 係數a1b1分別定義最大值的位置yx

+0

謝謝,我以爲我錯過了一件非常簡單的事情。 –