How to write a code for iteration?

조회 수: 2 (최근 30일)
HAKAN KORKMAZ
HAKAN KORKMAZ 2020년 5월 7일
답변: Niharika Arora 2020년 5월 13일
Hi,can ı run this equation with iteration?
first value ts = 10 and last value ts is under the error tolarence.Error torance is 0.1E-7
  댓글 수: 1
Rik
Rik 2020년 5월 7일
What do you mean with iteration in this case? Have a read here and here. It will greatly improve your chances of getting an answer.

댓글을 달려면 로그인하십시오.

답변 (1개)

Niharika Arora
Niharika Arora 2020년 5월 13일
You want to get the value of Ts for which the equation in the problem is equated to be true, with the tolerance of 100 micro unit.
There are primarily two ways to solve an equation of such kind:
  1. Analytically [Computationally Expensive]
  2. Iteratively
Given the initial value of Ts, I believe you want an iterative solution.
Before diving into the solution, let's see the plot of different Ts values vs the equation value:
The above plot is for the first 1000 values of Ts.
From the plot above, it is quite clear that the value resides in (200,400)
Knowing upper and lower bound helps in improving accuracy with less computation.
You can now try the following approach:
start=200;
end1=400;
finAB=0;
target=800;
tole=10^-8;
while(abs(finAB-target)>10^-8)
ts=(start+end1)/2;
sumA = 12*(ts-293);
sumB = 0.8*5.67*10^-8*(ts^4);
finAB=sumA+sumB;
if(finAB<target)
start=ts;
else
end1=ts;
end
disp(append(num2str(ts)," : ",num2str(finAB)));
end
The method used is called, binary search.

카테고리

Help CenterFile Exchange에서 Dates and Time에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by