How can i modify this code so x can = 0

3 ビュー (過去 30 日間)
Muhammad Choudhury
Muhammad Choudhury 2022 年 2 月 12 日
コメント済み: Image Analyst 2022 年 2 月 13 日
function qw=fNR(x)
qw=zeros(100,1)
qw(2)=x
i=2
while abs(qw(i)-qw(i-1))>1e-6
qw(i+1)=qw(i)-ff1(qw(i))/fdf1(qw(i))
i=i+1
end
qw=qw(2:i-1)
[qw(end) i]
plot(qw)
end
how can i model this functio so it can take fNR(0)
fdf1
function y=fdf1(x)
y=3*x.^2-12*x+11;
end
ff1
function y=ff1(x)
y=x.^3-6*x.^2+11*x-5;
end

回答 (1 件)

Image Analyst
Image Analyst 2022 年 2 月 12 日
Try this:
function qw=fNR(x)
qw=zeros(100,1)
qw(2)=x
i=2
maxIterations = 1000;
loopCounter = 0;
while (abs(qw(i)-qw(i-1))>1e-6) && loopCounter < maxIterations
qw(i+1)=qw(i)-ff1(qw(i))/fdf1(qw(i))
i=i+1
loopCounter = loopCounter + 1;
end
qw=qw(2:i-1)
if isempty(qw)
message = sprintf('qw is empty')
uiwait(warndlg(message));
return;
end
[qw(end) i]
plot(qw)
end
  5 件のコメント
DGM
DGM 2022 年 2 月 12 日
Oops. I didn't realize I was commenting on the answer instead of on the question.
Image Analyst
Image Analyst 2022 年 2 月 13 日
@Muhammad Choudhury I know that was your error with the original code. Obviously you never ran my code because my code throws up an alert that the array is empty rather than your error.

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeLoops and Conditional Statements についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by