联系方式

  • QQ:99515681
  • 邮箱:99515681@qq.com
  • 工作时间:8:00-23:00
  • 微信:codinghelp

您当前位置:首页 >> Matlab编程Matlab编程

日期:2020-10-18 06:36

Computer Assignment 2

Thurs 10/16, 11pm

(a) Develop a Matlab code to implement the fixed point algorithm.

Algorithm: (Exactly as given in the textbook)

START PROGRAM

INPUT/INITIALIZATION : Input approximation po; Tolerance T OL;

maximum number of iterations No.

OUTPUT : Approximate Solution p or message of failure.

STEP 1 Set i = 1.

STEP 2 While i ≤ No repeat Steps 3 - 6 :

STEP 3 Set p = g(po). Compute pi

STEP 4 If | p ? po |< T OL then

OUTPUT (p) the procedure was successful

STOP

STEP 5 Set i = i + 1.

STEP 6 Set po = p. Update po

STEP 7 OUTPUT (’ The method failed after No iterations, No =’, No);

The procedure was unsuccessful.

END PROGRAM

You may use a ”for” loop or a ”while” loop to implement the iteration. Also

output your error in the form a graph to easily visualize the iteration and convergence.

(b) Develop a Matlab code to implement Newton’s method.

Algorithm: (Exactly as given in the textbook)

START PROGRAM

INPUT/INITIALIZATION : Input approximation po; Tolerance T OL;

maximum number of iterations No.

OUTPUT : Approximate Solution p or message of failure.

1

STEP 1 Set i = 1.

STEP 2 While i ≤ No repeat Steps 3 - 6 :

STEP 3 Set p = po ? f(po)/f0

(po). Compute pi

STEP 4 If | p ? po |< T OL then

OUTPUT (p) the procedure was successful

STOP

STEP 5 Set i = i + 1.

STEP 6 Set po = p. Update po

STEP 7 OUTPUT (’ The method failed after No iterations, No =’, No);

The procedure was unsuccessful.

END PROGRAM

(c) Use the iteration method, and Newton’s method to find the fixed point of

g(x) = x/2 + 1/x in [1, 2] to approximate √

2 accurately to within 10?5

. Which

method converges faster?

(d) Use your algorithms to solve problem 18 in Sec. 2.2.

Some new commands :

Example 1 :

Commands for printing in Matlab.

output = sprintf(’Any text you want’);

disp(output);

This will print the string of characters ‘Any text you want’ on the command

window.

Example 2 :

To print character strings with number :

p = 1.45637798423;

output = sprintf(’Any text you want %f’,p);

disp(output);

When you use %f you instruct matlab to replace with the number in p showing

only 6 digits past the decimal point with a round off.

This will print on the command window :

Any text you want 1.456378

Example 3 :

p = 1.45637798423;

output = sprintf(’Any text you want %0.10f’,p);

disp(output);

2

This will print on the command window :

Any text you want 1.45637798423;

When you use %0.10f you instruct matlab to replace with the number in p

showing the first 10 significant digits.

Example 3 :

p = 0.000012345;

output = sprintf(’Any text you want %e’,p);

disp(output);

This will print on the command window :

Any text you want 1.234500e-5;

3


版权所有:留学生编程辅导网 2020 All Rights Reserved 联系方式:QQ:99515681 微信:codinghelp 电子信箱:99515681@qq.com
免责声明:本站部分内容从网络整理而来,只供参考!如有版权问题可联系本站删除。 站长地图

python代写
微信客服:codinghelp