2016-03-30 17 views
-1

Verilerimi Matlab ile üstel bir eğriye sığdırmaya çalışıyorum ama çok kötü bir uyum sağladım. Ben çok amatör bir programcıyım, bu yüzden cftool ve fit seçeneklerini nasıl kullanacağımı gerçekten bilmiyorum (denedim). Daha iyi uyum sağlamak için değerleri nasıl değiştirebilirim?Matlab'da cftool kullanarak üstel artış nasıl takılır?

Results of the fit: value a should be negative

+0

Bu yanıt size yardımcı oluyor mu? http://stackoverflow.com/questions/5393001/fit-exponential-curve-through-data-points-in-matlab/17267385#17267385 – Adiel

cevap

1

uydurma aracı güçlüdür eğrisi aşağıdaki linke görüntüyü bakın, ancak bazen biraz yardım ihtiyacı vardır. Pratikte, cftool'un ne yaptığı, değişkenlerinizin ilk tahminini alır ve daha sonra her seferinde hafifçe değiştirerek ve sonra uygunluğun ne kadar iyi olduğunu yeniden değerlendirerek bu değerleri tekrar tekrar geliştirmeye çalışır. Parametrelere yapılan küçük değişiklikler yalnızca fit'i daha da kötüleştirdiğinde, sonucunu döndürür. Daha karmaşık denklemler (örneğin üstel uyarılar) için, bu bazen gördüğünüz şey olan global minimumdan ziyade yerel bir minimumla birleşebilir.

Bu, istediğiniz denklem için (sizin durumunuzda, yaptığınız gibi üstel bir uyum) ayarlanarak ve daha sonra Fit Options tıklatılarak ve oradaki parametrelerle oynatılarak çözülür. Çoğu varsayılan, çoğu amaç ve amaç için iyidir, ancak değişkenleriniz için Başlangıç ​​değerleriyle ve bu değişkenlerin üstlenebileceği alt ve üst sınırlarla oynamanız gerekir. Bu, Fit Options iletişim kutusunun alt kısmında yapılır. Dikkat ederseniz, sizin durumunuzda b'un negatif olduğunu biliyorsunuz, yani b StartPoint'i negatif bir değere ayarlayabilir ve üst sınırı 0 olarak ayarlayabilirsin. Ayrıca muhtemelen a'da birkaç mantıklı tahminde bulunabilirsiniz. başlangıç ​​noktası ve diğer tüm üst ve alt sınırlar.

enter image description here