<li id="omoqo"></li>
  • <noscript id="omoqo"><kbd id="omoqo"></kbd></noscript>
  • <td id="omoqo"></td>
  • <option id="omoqo"><noscript id="omoqo"></noscript></option>
  • <noscript id="omoqo"><source id="omoqo"></source></noscript>
  • 發布時間:2022-11-21 15:25 原文鏈接: 如何用matlab擬合級配曲線順便求出中值粒徑

    如何用matlab擬合級配曲線?分析了題主給出的數據,其數據能夠較好的符合Richards模型,所以該系數擬合問題可以來處理。

    1、p系數的初值。

    由于該模型表達式為y=p1*(1-p2*exp(-p3*x))^(1/(1-p4)),所以p系數的初值應這樣來確定,即p0=[1.01 -0.01 0.01 1.01]

    2、自定義Richards模型函數,即

    func=inline('p(1)*(1-p(2)*exp(-p(3)*x)).^(1/(1-p(4)))','p','x');

    3、使用nlinfit函數,求解p系數。即

    [p,R,J] = nlinfit(x,y,func,p0)

    4、使用nlparci函數計算參數置信區間。即

    ci=nlparci(p,R,J)

    5、計算擬合值,即

    y1=func(p,x)

    6、計算統計量,如R-square、SSE、RMSE

    7、使用plot函數,繪制原始數據與擬合數據的對比圖。即

    plot(x,y,'rs',x,y1,'b')

    xlabel("對應占比");ylabel("顆粒直徑");

    8、計算y1=50時d的值。計算結果為0.045956

    9、完善代碼運行可以得到如下結果。


    <li id="omoqo"></li>
  • <noscript id="omoqo"><kbd id="omoqo"></kbd></noscript>
  • <td id="omoqo"></td>
  • <option id="omoqo"><noscript id="omoqo"></noscript></option>
  • <noscript id="omoqo"><source id="omoqo"></source></noscript>
  • 1v3多肉多车高校生活的玩视频