联系方式

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

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

日期:2019-04-05 10:15

MA1MSP: Mathematical and Statistical Programming

Assignment 2

This assignment counts to 35% of the total marks of this module. Full marks of this

assignment can be gained from complete answers to ALL questions and emailing me the

.m file at john.evans.18@nuist.edu.cn before 12pm (noon) on 10th April, 2019 (Wednesday).

Note: For the EACH of the following FOUR questions

Put your MATLAB code into an individual script with the file name of ‘MSP Asgn2 Qx StudentID.m’

where ’x’ should be the question number (namely one out of 1, 2, 3, 4) and ’StudentID’ should be

your Student ID number.

At the beginning of each script, add a comment line to state ‘This is the script for Q.x of

Assignment 2’ where ‘x’ is the question number.

All four scripts should be uploaded to the same email as one submission. Be sure to put your

student number in the Subject line.

1. Consider a function

f(z) = z + (z/2)2

where z = x + iy is a complex number with x, y ∈ R.

Take the magnitude of z with r = 6 and its argument varying in the range of θ ∈ [0, 2π]. Write

a MATLAB code to do the following:

(a) plot the function f(z) as a smooth curve of solid line with linewidth 3 and blue colour in

the complex (Re(f) Im(f)) plane.

(Hint: you may use the Euler’s formula z = reiθ for conveniently calculating the real and

imaginary parts of the function.)

[4 marks]

(b) add proper legend, x-label, y-label, title, and set the aspect ratio of the axes so that equal

tick mark increments on the x- and y-axis are equal in size. To find the right command

you can type ’help axis’ in the command window.

[1 marks]

2. Consider a series of numbers generated by the recurrence relation

an = an?1 + n

with the initial term a0 = 4.

(a) Given f(1) = a0, use a for loop to generate the first N = 30 + X terms of this series

which should be stored in an array f(i), i = 1, 2, . . . , N + 1. Here X is the last digit of

your student ID. Output this array on the screen (Command Window);

[4 marks]

1

(b) Write another for loop to calculate

using the array f(i) (i = 1, . . . , N + 1) generated in Part (a). Output the values of S and

on the screen (Command Window).

[2 mark]

3. Consider using the formula

to approximate the function

ye = arcsin(x).

(a) Plot these two functions over the interval of x ∈ [0, 1] in the same figure, where the

approximate curve is of solid line, square markers and magenta colour, and the exact

curve is a dot-dashed line with square markers and black colour.

[4 marks]

(b) Plot the error incurred by the approximation, which is defined as the absolute difference

between the exact and the approximate values, over the same interval and in the same

figure as in (a). This error curve should be of dashed line, triangle (down) markers and

cyan colour.

[2 mark]

(c) The figure should also have the following features:

legends for the three curves ’Approximate’, ’Exact’ and ’Error’;

x-axis labelled as ’x values’ and y-axis labelled as ‘y(x)’;

title of ’Approximation of the Inverse Sine Function’.

[1 mark]

4. The function sin(x) can be approximated by the truncated Taylor series

(a) To illustrate how well the series approximates the sin(x) function, use a for loop to

generate a set of m plots, which correspond to the functions of y(x) = Pn

i=0(1)i x2i+1(2i+1)!

where n = 1, 2, . . . , m with m = 5 if the last digit of your student ID is odd or m = 6 if

the last digit of your student ID is even, respectively, over the interval of x ∈ [0, π] in the

same figure. All m curves should be of dotted blue lines. In addition, plot the function

y(x) = sin(x) as a solid red curve over the same interval and in the same figure.

[5 marks]

2

(b) To understand how the approximate value converges to the exact value with the increase

of number of terms in the summation, first set the value of x to a constant x = π/4. Then

use a for loop to generate an array f(i), i = 1, 2, . . . , 10, where the i-th element is given

[4 marks]

Plot the array f(i) as a dashed blue curve with x-mark and the function y(i) = sin(π/4)

as a solid black line over the interval i ∈ [0, 10] in a separate figure to part (a).

[2 marks]

(c) For the same constant value of the argument x = π/4, use a while loop to carry out the

summation in Equation (1) until the absolute value of the difference between the summed

value and the exact value of sin(π/4) is no larger than = 1010. Output the final result

of the summed value and the total number of iterations [i. e., n in Equation (1)] used for

the summation on screen (Command Window).

[6 marks]

3


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

python代写
微信客服:codinghelp