1樓:愚人談娛樂
f1=@(x)cos(x)-x;
x0=0.55;
x1=fzero(f1,x0)
使用fzero函式必須先定義好函式
2樓:南取名字
格式是:z=fzero(f,x)
意義,在f這個方程中找x附近的零點賦值到z需要對f設個方程eg f=@(a) a^2+1x=5在f方程以x=5附近找零點
3樓:三翼熾天使
x=fzero(@f,x0);
這裡的@f指的是函式f,要編寫名為f的函式,如下function y=f(x)
y=cos(x)-x;
儲存為名為f的m檔案。
使用fzero函式必須先定義好函式。
4樓:匿名使用者
做了如下修改,希望有所幫助,這裡的關鍵是定義好fzero裡邊的函式,修改如下: x=-3:0.1:4;
y=sin(x).*x.^2-x+1;
fun=@(x) y;
plot(x,y,'r');
hold on;
grid;
xlabel('x');
ylabel('f(x)');
x1=fzero(@(x) sin(x).*x.^2-x+1,-2.5)
matlab簡單問題 關於fzero
5樓:醉蝶翩翩
我也很好奇 就試了一下 fzero(@(x)x^2-1,0.05)時,ans=1,。fzero是一個數值搜尋過程,依賴於函式特性,值的指定,以及matlab所能識別的最小步長。
如果想計算更準確,可以用符號函式求解0點。符號函式不用關心具體的函式值,完全當做符號處理,所以,不存在上述不穩定因素。
6樓:匿名使用者
這是一個很好的問題,雖然看似簡單,但涉及到很多值得思考的問題。
首先,應該明確一點——fzero求函式零點是和初值的選取有密切關係的,例如,x^2-1有兩個零點,取不同的初值,可能會求得不同的零點,如下圖所示。
從圖中能發現一些奇怪的現象,例如:
>> fzero(f,0.01)
ans =
-1>> fzero(f,0.16)
ans =
1>> fzero(f,0.161)
ans =
-1>> fzero(f,-0.01)
ans =
1>> fzero(f,-0.16)
ans =
-1>> fzero(f,-0.161)
ans =
1按常理,應該求得距離初值比較近的零點才對,但上面的例子顯示,事實並非如此,甚至,求得相同零點所對應的初值範圍還不連續,的確很讓人崩潰。。。
說明一下fzero求零點的基本步驟:它會首先確定一個區間,使得區間兩端的函式值異號,這樣,只要函式連續,就能夠求出一個零點。
確定區間的過程與初值x0有關,如果x0非零,就以x0/50為初始步長,向正負兩個方向分別擴充套件區間,如果滿足函式值異號,則確定區間的步驟完成,否則按照sqrt(2)的倍數增大步長,繼續擴充套件區間。需要注意的是,擴充套件區間時,按照先負方向減步長、後正方向加步長的順序,而且一旦左端點滿足要求就會終止,這樣,就可能出現從某個正的初值x0出發,分別向正負方向n次擴充套件區間,直到n+1次時,剛好負方向的符號改變,從而這個區間就確定為包圍了負方向(例如-1)這個零點。
以上應該大致可以解釋,為什麼不是象直覺理解的那樣「求出的零點應該靠近初值」。
7樓:匿名使用者
都說簡單問題了,還問?
matlab中用fsolve或fzero求零值
8樓:匿名使用者
用fsolve求解方程,如果引數是一個方程組,則意味著求得的結果必須滿足方程組中的每一個方程,所以,不能直接用類似 fzero(@(y)y-2*x,[0 0 0]) 的做法。
可以用迴圈,或者,如果想避免顯示迴圈,可以用arrayfun:
>> x=[1 2 3];
>> arrayfun(@(x)fzero(@(y)y-2*x,0),x)
ans =
2 4 6
matlab中fzero函式怎麼呼叫
蓴灬叔 f1 x cos x x x0 0.55 x1 fzero f1,x0 使用fzero函式必須先定義好函式。matlab函式 fzero 功能 查詢一元連續函式的零點。用法 x fzero fun,x0 查詢fun函式在x0附近的零點 x fzero fun,x0,options 由指定的優...
matlab怎麼使用,matlab中怎麼使用匯入的資料?
matlab基本的使用方法 1.讀取影象 用imread函式讀取影象檔案,檔案格式可以是tiff jpeg gif bmp png等。比如 讀進來的影象資料被儲存在變數f中。尾部的分號用來抑制輸出。如果 是彩色的,可以用rgb2gray轉換成灰度圖 f rgb2gray f 然後可以用size函式看...
matlab怎麼畫複數函式,matlab 中複數如何表示?我i前面已經有 就是表示不出來 不知到為什麼
我叫王土土豆 1 雙擊matlab軟體圖示,開啟matlab軟體,可以看到matlab軟體的介面。2 建立一個陣列u u 0 0.2 6 表示從0到6,每個0.2取一個數字。3 建立一個複數v,v 0.02 i。4 使用u和v建立一個複數函式z z exp v u 5 使用函式feather z 繪...