1樓:數碼答疑
是因為符號積分無法計算,答案還是符號積分,沒看見前面還有int嗎
只能採用數值積分,例如函式quad
2樓:匿名使用者
經檢查是公式寫錯了,負號位置錯了。
k=0.390803;mu=0.463506;sigma=0.219108;
pdf=@(x)(1/sigma).*exp(-(1+k*(x-mu)/sigma).^(-1/k)).*(1+k*(x-mu)/sigma).^(-1-(1/k));
s=quadl(pdf,0.3,2.9)
執行結果
s = 0.897133772014529
3樓:
可以用符號運算來求:
1234567891011
>> j=int(exp(x)*(x^2+sqrt(x)),0,1) j = 2*exp(1)+1/2*i*pi^(1/2)*erf(i)-2 >> double(j)ans = 1.9739 >> vpa(j,30) ans = 1.97391191101090886191652635584
得到的結果是解析表示式,要想得到具體的數,可以用double或vpa函式(其中vpa可以得到任意精度的結果,而double得到的是雙精度浮點數)。
當然,也可以用數值積分:
123>> quadl(inline('exp(x).*(x.^2+sqrt(x))'),0,1)ans = 1.9739
4樓:
這個表示式不可以積分
怎麼讓matlab直接顯示計算的結果
5樓:匿名使用者
不要在語句後面加上分號就可以直接顯示結果
6樓:恩惠妮阿加西
當輸入命令後顯示的ans就是計算結果了.
關於ans:
一、什麼是ans
ans是matlab中預設的結果變數. 每次matlab進行運算後, 結果都要儲存在指定的變數中. 如果只是輸入表示式, 卻不指定把表示式的運算結果儲存在那個變數裡面, 那麼matlab就自 動地將結果儲存在ans變數中.
直到下一次不帶指定儲存變數的運算結束前, ans中所儲存的值不變. 因此, 可以在下一次運算中用ans呼叫上一次運算的結果.
二、ans的值
當m檔案中出現非賦值性的計算時,matlab會把結果自動存入ans,例如1+2^2,執行結果就是ans=5。如果m檔案中每一個計算都是賦值的,即所計算的結果都是儲存在自己設定的變數中的,那麼ans一直沒有得到使用,就會一直是1。
三、經常遇到的出現ans的情況
1、如果對某個變數進行賦值計算,沒有在後面加分號結束該計算,運算結果會自動以ans顯示該值,如 y = 9或y = 9 x = 10;
運算結果中會自動出現ans = 9,即使並沒有要求將其輸出,如果是迭代運算,則ans會反覆出現。
2、如果檔名由純數字組成,則計算結果自動為ans = 檔名
3、另外一種是執行的時候總有ans=1出現,可能是把elseif寫成了else,所以出來ans=1,加上以後就沒有ans=1了。
如果是elseif後面還會跟一個判斷,而一般else是沒有的。如果將elseif錯寫為else,後面會跟一個判斷的。
7樓:浙師山東人
把你的源程式發一下,我看看
matlab定積分問題
數值計算 integral t sin 200 t sqrt 1 0.778 sin 200 t 0,0.01 ans 0.0041 可以執行的。執行軟體matlab 7.0 syms t s int sin 200 t sqrt 1 0.778 sin 200 t 0,0.01 s 1 300 3...
根據條件列出算式,不計算結果
1 補充 比蘋果多300千克 運來梨子多少千克?列式 400 300 2 相當於運來梨子的4分之1。400 1 4 3 運來的梨子比蘋果多5分之1.400x 1 1 5 4 運來的梨子比蘋果少10分之1.400x 1 1 10 5 運來的梨子比蘋果的4分之3多10千克。400x3 4 10 應用與提...
定積分計算?
題目中,定積分定義域變換省略了三步。第一步,拆分定義域,即 pi 4到c,c到pi 4.第二步,定義域 pi 4到c c到 pi 4,會在定義域前面增加一個負號。第三步,前面從c到 pi 4,x為負數 c到pi 4,x為正數,所以需要將c到 pi 4區間內的x變為 x。通過換元可以一步一步變化成題解...