Re: [問題] polyfit已回收

看板MATLAB作者 (godspeed)時間17年前 (2008/11/23 12:50), 編輯推噓1(100)
留言1則, 1人參與, 最新討論串4/5 (看更多)
※ 引述《AllenTing (阿丁)》之銘言: : ※ 引述《AllenTing (阿丁)》之銘言: : : 處理實驗數據的時候 : : 圖形經常都是y = ax^(-0.XXXX) 等的趨勢(EXCEL求出的趨勢線) : : 用matlab的Polyfit 都只能逼出-1,-2,-3次的方程式 : : 導致之後要求此圖形的斜率圖會很不準 : : 不知道有沒有其他方法可以順利的逼出精準的方程式 : : 不然實驗數據好難處理喔= = : : 謝謝 : 這是我要分析的數據 : d0 = 0.9956 : d = 0.9953 0.9953 0.9950 0.9948 0.9941 0.9906 0.9860 : r = 69.8333 66.6667 62.3333 59.4333 52.9000 36.0667 26.9000 : m = 0.0050 0.0100 0.0250 0.0500 0.1000 0.4000 0.8000 : 要做 m-r的圖 : 然後求出每一點 : Ma = 74.2; : whi = (Ma - 1000./m.*(d-d0)./d0)./d; : 求 Va = whi + m.*(d(whi)/d(√m)); : u = -1/8.314/303.15.*((d(r)/d(√m)); : 以上兩個綠色的地方就是做不出來的地方 : 逼近m-whi的地方就逼不出來了 更別說要求斜率 看起來你只是要做Curve Fitting而已吧.. Matlab裡頭就有一個很棒的數值工具叫 cftool (打cftool,就會跑出來了) 裡頭也可以用各種不同函數近似..不一定是多項式 我用裡頭的power law 算你數據就蠻準了 (r ~ √m) 可用 (y = ax^b + c) 來fit 其中 a =-57.64 b=0.6552 c=79.89 ,如下圖 http://e.imagehost.org/0511/first.jpg
我是把fit得到的函數微分來得到(d(r)/d(√m)) 直接帶到 u = ..........式就可以得到所求了 http://e.imagehost.org/0573/second.jpg
以此類推來算 whi 和 va 就可以了吧...! -- () In a time when to be different, was to be condemned... ()() ...and to be condemned, was to DIE... ▉▉▉ ...one man ▉▉▉ ...choose to question his god ... ╰╫╯ DD5111 ◢█◣ Satan's alley http://0rz.tw/0d4Y9 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 59.112.35.64

11/23 20:49, , 1F
原來如此!! 謝拉!!
11/23 20:49, 1F
文章代碼(AID): #19AE4Ne3 (MATLAB)
討論串 (同標題文章)
文章代碼(AID): #19AE4Ne3 (MATLAB)