作者murmurer (呢喃)
看板MATLAB
標題Re: [問題] function
時間Wed Aug 13 14:46:11 2014
※ 引述《profyang (prof)》之銘言:
: ※ 引述《murmurer (呢喃)》之銘言:
: : 初學者求幫助 > <
: : http://ppt.cc/Vw-C
: : 題目是除了t、b、h外其他都已知
: : 然後給定b、h
: : 要你寫一個function來解出t
: : 但 function [h] = hei(b,t)
: : h = b和t為未知的關係式
: : 這樣輸出是h
: : 但我想用h和b當作輸入、t當作輸出
: : 在不改變圖中那條式子的狀況下
: : 可以怎麼改呢?
: : 我寫這樣被打槍...
: : function [t]=hei(h,b)
: : h=8000*(100+b-t)*log(100+b-t)+8000*(log(100+b)+1)*t-t^2/2-8000*(100+b)*log(100+b);
: : [t]=hei(4000,50);
: : 解答者會給予微薄100P
: : 謝謝~~~
: function [t] = hei(h,b)
: f=@(t)8000*(100+b-t)*log(100+b-t)+8000*(log(100+b)+1)*t-t^2/2-8000*(100+b)*log(100+b)-h;
: t=fzero(f,0);
: end
: 大概像這樣
: 不過這種t應該不只一組解喔~你可能要先大概估計他初始值是多少再求精確的
: 像我這邊初始值是0
P大你好
我先把
function [t] = hei(h,b)
f=@(t)8000*(100+b-t)*log(100+b-t)+8000*(log(100+b)+1)*t-t^2/2-8000*(100+b)*log
(100+b)-h;
t=fzero(f,0);
end
在同目錄下存成了一個.m檔
然後又開了一個.m
輸入
[t] = hei(4000,50)
不過一直有錯誤訊息 @@
另外您說的t不只一個
不知道是不是我誤解了題意
原題是長這樣
http://ppt.cc/ZbXN
非常謝謝你的回應~
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.112.94.64
※ 文章網址: http://www.ptt.cc/bbs/MATLAB/M.1407912373.A.50D.html
推 profyang: 沒有錯誤訊息阿? 你是跳出什麼錯誤訊息? 08/13 15:20
→ profyang: 另外我雖然沒有細看 你的t應該是時間 那>0的解好像就只 08/13 15:21
→ profyang: 有一個 08/13 15:21
→ profyang: 要解>0的解你可以改成t=fzero(f,[0 100]); 類似這樣 08/13 15:23
→ profyang: 我知道了 我f=blablabla那行因為太長了貼到PTT上面有換 08/13 15:23
→ profyang: 行 08/13 15:23
→ profyang: 你把它變成一行就好了 08/13 15:24
※ 編輯: murmurer (140.112.94.64), 08/13/2014 15:28:22
→ murmurer: 原本要站內信的~結果 XDD 感謝~~~ 08/13 15:28
→ murmurer: 還想問問 f=@(t) 這樣的寫法是什麼意思呢? 08/13 15:52
推 profyang: 代表他是t的函數 fzero要吃函數 08/13 16:56
→ murmurer: 謝謝~ 08/13 17:29