FindRoot和Ceiling問題
大家好,第一次在這個板上發文,如果問題太愚蠢請大家多多包涵
我現在有二條方程式,假設一條解m,另一條解s,s受m影響
解m的方程式只受外生參數影響,所以我是先解m再把解出來的m取ceiling後再解s
原本的指令如下:
m = Ceiling[
m01 /. FindRoot[\[Alpha] + m01 == (z^(m01 + 1) - 1)/(
z^(m01 + 1) (z - 1)), {m01, 8}]]
s = s(Alpha,z,m)
其中Alpha和z是外生參數。(另外,s的式子太複雜我就不附上了)
這樣跑是沒問題的。
不過我想看Alpha變動一個範圍會對m和s有何影響,並畫出Alpha變動對s影響的圖形
但是把他們寫成一串指令去執行時,跑出來的結果都只有同一個值,
圖形當然也就出不來,指令如下:
s[\[Alpha]_] :=
s /. FindRoot[{m ==
Ceiling[m /.
FindRoot[\[Alpha] + m == (z^(m + 1) - 1)/(
z^(m + 1) (z - 1)), {m, 8}]], s ==s(Alpha,z,m) }, {s, 0.2}]
data = Table[{\[Alpha], s[\[Alpha]]}, {\[Alpha], 0.05, 0.95, 0.05}]
Fs01 = ListPlot[{data}, PlotJoined -> True, Frame -> True]
所以在此很冒昧的想請問前輩們我的指令是哪裡出問題呢?
謝謝大家。
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 118.166.125.148
※ 文章網址: https://www.ptt.cc/bbs/Mathematica/M.1422040955.A.6F4.html
討論串 (同標題文章)
以下文章回應了本文:
完整討論串 (本文為第 1 之 2 篇):
Mathematica 近期熱門文章
PTT數位生活區 即時熱門文章