Documente Academic
Documente Profesional
Documente Cultură
Faculty of Engineering
Semester 1, 2004
ENGG1801 Engineering Computing Tutorial Notes
-2-
ENGG1801 Engineering Computing Tutorial Notes
Contents
Overview .................................................................................................................................... 4
Assignment Submissions........................................................................................................ 4
-3-
ENGG1801 Engineering Computing Tutorial Notes
Overview
These tutorial notes contain instructions and a set of practice problems for the MATLAB
section of the course ENG1801 Engineering Computing. In order to gain a good
understanding of engineering computing, especially programming using MATALAB, you
should work through these tutorial problems, attempting to stick closely to the proposed
schedule. You will need to develop practice in programming in order to pass the quizzes and
final exam that will make up the formal assessment in this course.
Assignment Submissions
You are required to submit assignments in only the CAD section of this course. Instructions
for submitting the CAD assignments using the SolidWorks package will be provided
separately. The tutorial problems in this set of notes will NOT be collected and marked, but
you should ensure you can complete them successfully in order to gain the required
competence in computing. You should expect several quizzes during the semester. These are
designed to test your understanding and competency in programming. Some will form part of
your final assessment. Further details will be provided separately.
-4-
ENGG1801 Engineering Computing Tutorial Notes
Login
The machines in Computer Access Laboratory form part of a Windows network and require a
login procedure. You should have been issued with a user name and password as part of your
1st year enrolment. At the end of each session remember to logout because if you don’t the
next person using your machine will have access to all your files. You can logout by
simultaneously holding down three keys. They are “Alt” “Ctrl” “Delete”. When you press
these three keys a dialog will be displayed. Click the “Logout” command button.
To operate software loaded on any PC, select the appropriate Icon (known as a short cut) on
the left hand margin of the screen by double clicking with the left mouse button.
Alternatively, single click Start at the bottom left hand corner of the screen, then Programs,
then the software you want to use, selected by name.
To examine the folders and file structure in any drive of the PC click with the left hand mouse
button on the icon: My Computer. This should allow you to investigate the contents of the
all drives attached to the computer. You may open a folder, i.e., see the files within a folder,
by clicking on the folder icon.
To find any particular folder or file you may: select - Start, Find, then enter the name or part
of the name of what you are looking for. You may search all drives or a particular one,
e.g.,A:, C: etc.
MyUni is the University of Sydney intranet system (also known as USydNet) and can be
accessed by clicking the MyUni icon from the university home page. Alternatively you can
enter the address of the MyUni page directly in the address bar in your browser, i.e.,
http://intranet.usyd.edu.au/student/. To access MyUni you will need to enter your user name
and password, which should have been included in the letter confirming your enrolment into
this course.
-5-
ENGG1801 Engineering Computing Tutorial Notes
MyUni provides you with an email account and access to other useful information such as
change of enrolment, exam seat numbers etc. In this tutorial session check your email. You
should have received a message from the course co-ordinator. If not, please advise a tutor. In
addition, check what facilities and information are available to you and ask a tutor if you
require further assistance or explanation.
-6-
ENGG1801 Engineering Computing Tutorial Notes
You should work your way through the demonstration of Excel. Some abbreviations and
concepts are introduced which will be useful later. Excel has evolved from the earliest
spreadsheets, which began as means of carrying out simple mathematical operations on lists
or tables of numbers. For example, it can be used to provide simple accounting and to
balance budgets. It can include text (to make it readable), mathematical expressions (for a
wide range of calculations) and graph functions (to present results comprehensively).
Word processors are to us what typewriters and off-set printers used to be to previous
generations. They are a means of preparing legible, comprehensive text documents. You no
longer need a professional type-setter to generate pages that look as if they come from a text
book. You can have words, diagrams, photos, tables of numbers, and even equations in a
single document, all checked for spelling errors, in single or multiple column layouts.
Exercise in Excel
In this exercise you will establish a simple Excel spreadsheet that tabulates a gas pressure (P)
at various temperatures (T) and volumes (V). The gas pressure is calculated using the van der
Waals equation:
RT a
P= − 2
V −b V
The values of “a” and “b” depend on the gas and the values that we will use in this exercise
are for carbon dioxide. R is the gas constant, with units of litre.atm/mol.K. The units of
pressure, volume and temperature are atmospheres, litres and degrees K, respectively.
An illustration of the type of spreadsheet that you are required to establish in this exercise is
shown in Figure 3. You can create the sheet by starting Microsoft Excel and then following
these steps:
• Select cell B3 and type in “R”
• Select cell B4 and type in 0.082058
• Select cell C3 and type in “Gas”
• Select cell C4 and type in CO2. Highlight the “2” in the formula bar and then use the
menu “Format” then “Cell” to change the “2” to subscript.
• Select cell D3 and enter “a”
• Select cell D4 and enter 3.59
• Select cell E3 and enter “b”
• Select cell E4 and enter 0.0427
• Select cell A6 and enter “Volume”
• Enter the following values shown in cells A8:A11, i.e., 0.20, 0.25, 0.30, 0.35
-7-
ENGG1801 Engineering Computing Tutorial Notes
The symbol “^” is typed by pressing the “Shift” then the “6” key. It is used to raise a
value to a power and in this example the value in cell A7 is being squared.
This particular formula calculates the value for the pressure when the volume is 0.2
(value in cell A8) and the temperature is 270 degrees (Kelvin) (value in cell B7).
• Select cell B8 and press the right button on the mouse and select “Copy”. Highlight
the rectangular block defined by columns B to D and rows 8 to 11. Press the right
button on the mouse and select “Paste special” and then select “Formulas”. The
pressure values for each combination of volume and temperature should now be
displayed. There should be 5 digits after the decimal place.
Highlight the rectangular block where the pressure values are displayed and select the
“Format–Cells” menu option. Select the “Number” tab from the dialog box that
should be displayed. Select “Number” from the category list and enter “2” in the text
box labelled “Decimal places”. Two decimal places may be the default value that is
shown and this case no change is required here. Press the “OK” button and the
spreadsheet that you have constructed should then be of similar appearance to the one
shown in Figure 3.
-8-
ENGG1801 Engineering Computing Tutorial Notes
7. You may wish to use Excel to draw a graph of these results. An example is indicated
in Figure 4. Ask your tutor if you don’t now how to produce something similar.
Behaviour of CO2
70.00
60.00
50.00
Pressure (atm)
40.00
T=270
30.00 T=280
T=290
20.00
10.00
0.00
0.15 0.2 0.25 0.3 0.35 0.4
Volume (litre)
Exercise in Word
In this exercise you are required to produce a Word document that contains the instructions
for the Excel exercise described in the previous section. The Word document should
reproduce the layout of these instructions as closely as possible. These hints should help you
duplicate the layout of the instructions.
1. The main font used for the heading “EXERCISE IN MICROSOFT EXCEL” is “Times
New Roman”, 12 point, bold. The font used for the word “EXCEL” is “Arial”, 12 point,
bold.
2. The font used for the body of the text is “Times New Roman”, 12 point.
3. The equation has been entered using the Microsoft equation object. You may decide to
type the equation in as normal text and then it will be displayed in this way:
P = ( RT / (V – b) ) – ( a / V2 )
4. The bullets are generated by selecting the “Format–Numbers and Bullets” option.
5. The Excel spreadsheet is imported into the Word document using the “Insert-Object”
menu option, then selecting the “Create form file” tab and using the “Browse” option to
locate the spreadsheet that you have saved from the previous exercise.
-9-
ENGG1801 Engineering Computing Tutorial Notes
6. Alternatively, you may copy the relevant cells of the spreadsheet to the clipboard and then
past them into Word. To do so, open the spreadsheet, highlight the cells you want to
copy, and select the “Copy” option from the “Edit” menu or the appropriate toolbar. Then
highlight or open the Word document and select “Edit” and “Paste Special”. You may
then choose how you want to paste the spreadsheet into your document, e.g., either as an
actual spreadsheet or as an image (in your choice of format). The latter results in a much
smaller Word document. The former retains the flexibility of allowing you to open the
spreadsheet from within Word, but results in a much larger Word file. A third option is to
paste a link to the original Excel file. The advantage of using a link is that if the
spreadsheet is updated at any, the spreadsheet table appearing in Word will also be
updated whenever the Word file is next opened.
- 10 -
ENGG1801 Engineering Computing Tutorial Notes
Tutorial Week 3
Text Operations in MATLAB
Exercise 1
Enter an input command that prompts the user for the number of trucks that are available on
site and assigns the value entered to the variable nTrucks. Enter a number and check the
result that is displayed.
Exercise 2
Exercise 3
Enter an input command that uses the variable, promptAddress, and assigns the address that
is entered to the variable siteAddress.
Exercise 4
Write a series of commands that count the number of lines required to print the address,
assuming that a new line must be started when a comma is encountered in the address.
Exercise 5
Use the command fprintf to display the message: “Site Address: ”, and then display the
address that you have stored in variable siteAddress on the same line.
Exercise 6
Exercise 7
Use the command fprintf to display the message “Number of trucks currently available: ”,
and then display the value stored in variable nTrucks.
Exercise 8
The density of air (ρ) may be estimated using the ideal gas law as,
PM
ρ=
RT
- 11 -
ENGG1801 Engineering Computing Tutorial Notes
Use variable names “rho”, “P”, “M”, “R” and “T” and calculate ρ for P = 1.2 atm at T = 24
and 76 deg C.
Exercise 2
The van der Waals equation for the pressure of a gas at various temperatures and volumes can
be written as:
nRT n2a
P= − 2
V − nb V
The values of the constants a and b vary for each gas and for oxygen the values are a = 1.36
L2-atm/mol2 and b = 0.0318 L/mol. The constant R = 0.08206 litre.atm/mol.K.
Use variable names that are the same as the symbols used in the equation and calculate the
pressure in atmospheres (atm) of 0.18 moles (n = 0.18) of oxygen when V = 0.04 litre, T =
290K.
Exercise 3
Determine the value of the variable “y” from the following expression.
y=
(9 + 5x − x ) e
2 sin( x )
( x +1 )
for x = -2.2, 0, 2.8
- 12 -
ENGG1801 Engineering Computing Tutorial Notes
Tutorial Week 4
In this tutorial session you are required to write a program (M-file) that checks whether the
values of three parameters entered via the keyboard define a circle, point-circle or an
imaginary circle. This exercise requires the use of the commands input and fprintf and the
logical construct if. These topics are covered in the lecture notes in the first part of chapter 4.
Description of Problem
The equation of a circle can be written in the following general form:
x 2 + y 2 + Dx + Ey + F = 0
The circle has a centre at (-D/2, -E/2) and radius given by:
D 2 + E 2 − 4F
2
If the term D2 + E2 – 4F is zero, the graph of the equation represents a point-circle (a circle
with zero radius). When D2 + E2 – 4F is negative the radius is imaginary and this situation is
sometimes described by saying that the circle is imaginary.
Program Specifications
Read D, E, and F from the keyboard. The program should firstly calculate the value of
D2 + E2 – 4F, write out the values of D, E and F and an accompanying message describing
whether these values define a circle, point-circle or imaginary circle. If the values correspond
to a circle the program should then output the value for the radius and the coordinates of the
centre of the circle. If the values correspond to a point-circle the program should then output
the coordinates of the centre of the circle. Test the program using three sets of data:
- 13 -
ENGG1801 Engineering Computing Tutorial Notes
Description of Problem
Structural engineers are required to predict the deformations of beams. A general expression
for the central deflection (vertical movement downwards at the centre of the beam) of a
simple, uniform beam carrying a concentrated load, W, is given below.
a b
WL3 1 a b
3 3
b
δ = 8 − +3 − 4
48 EI 2 L L L
The term in the angle brackets “〈 〉” only exists when the contents are positive. These are
referred to as Macaulay brackets or Macaulay terms. E is the Young’s modulus of the
material used to construct the beam (steel, timber, concrete, etc.) and I is the second moment
of area (moment of inertia) of the beam and depends on the cross-sectional shape of the beam
(circular, rectangular, etc.)
A general expression for the central deflection of a simple, uniform beam carrying a
distributed loading, w, is given below.
a
b
wL4 1 a a b
4 4 4
1 b a b a b
δ = 4 − −4 − − 21 − + 21 − − 3 − 2 − −
96 EI 2 L 2 L L L L L L L
When the deflections are in the elastic range the principle of superposition can be used and
the central deflection of a beam under combined loading can be predicted by summing the
two terms.
- 14 -
ENGG1801 Engineering Computing Tutorial Notes
Program Specifications
Write a program that calculates the central deflection of a beam under combined loading. The
program should read the values of W, w, E, I, L and the values for a and b which specify the
positions of the concentrated and distributed loads. Test the program on the beam shown
below.
75 kN 0.02 kN/mm
1500
4400 2700
Not to scale
9000 mm
E = 2 x 105 kN/mm2
I = 1 x 108 mm4
- 15 -
ENGG1801 Engineering Computing Tutorial Notes
Description of Problem
Computing the value of an integral is a fundamental analytic operation often performed
numerically by civil engineering programs. The code computes the “area under the curve” to
an acceptable degree of accuracy. This procedure for computing an integral is often called
quadrature by numerical analysts. All methods of quadrature require the integrand to be
evaluated at discrete points, i.e., the discrete function values f(x1), f(x2), f(x3), ... f(xn) are
calculated at the points x1, x2, x3, ... xn.
The trapezoidal method approximates the integral by dividing the area under the curve into N
trapeziums or trapezoids, as shown below. Recall that the area of a trapezium is the product
of the average length of the two parallel sides and the perpendicular distance by which they
are separated. For a region composed of N trapezoids this leads to the following quadrature
formula:
N
f ( xi ) + f ( xi +1 )
t = ∑ ( xi +1 − xi )
i =1 2
f(x)
x1 x2 x3 x4 x5 x
The mid-point method (or rectangle rule) divides the area under the curve into a discrete
number of rectangles, as illustrated below, and is twice as accurate as the trapezoid method.
b
If we are to compute ∫a
f ( x) we divide the interval [a, b] into N rectangles and calculate the
height of each rectangle as the value of f at the midpoint of the interval f((xi + xi+1)/2). This
leads to the quadrature formula:
- 16 -
ENGG1801 Engineering Computing Tutorial Notes
f ( x)
f((x4+x5)/2)
x1 x2 x3 x4 x5 x
N
x + xi +1
r = ∑ ( xi +1 − xi ) f i
i =1 2
Examination of ways to reduce the errors in these two methods leads to a simple method that
has much greater accuracy. This method is called Simpson’s rule. Multiplying the formula
for the rectangle method by two, adding the formula for the trapezoidal method and then
dividing the overall result by three leads to Simpson’s rule that states:
b
w
∫ f ( x) dx ≈ 3 ( f ( x ) + 4 f ( x
a
1 2 ) + 2 f ( x3 ) + 4 f ( x 4 ) + 2 f ( x5 ) + KK + f ( x n ) )
Program Specifications
Write three programs to evaluate an approximation to the definite integral
2π
∫e
x
cos x dx
π
2
Program 1
The program should calculate Simpson’s rule by dividing the interval [π/2, 2π] into eight
divisions. The value that the program must calculate is:
w
( f ( x1 ) + 4 f ( x2 ) + 2 f ( x3 ) + 4 f ( x4 ) + 2 f ( x5 ) + 4 f ( x6 ) + 2 f ( x7 ) + 4 f ( x8 ) + f ( x9 ) )
3
The program should not make use of either a FOR loop or an IF statement.
- 17 -
ENGG1801 Engineering Computing Tutorial Notes
Program 2
Modify the previous program by now employing a FOR loop to sum the nine terms. Note that
the first and last terms, f(x1) and f(x9), are multiplied by one. The even numbered terms, i.e.
the second, fourth, sixth and eight terms are multiplied by two. The odd numbered terms, i.e.
the third, fifth and seventh terms are multiplied by four. You should use an IF statement to
decide whether the function value should be multiplied by one, two or four. The “mod”
function can be used to determine whether a number is odd or even. The “mod” function
returns the signed remainder after division. For example, if the variable “nterm” is even and
divided by 2
mod(nterm,2) == 0
Program 3
Modify the previous program by adding an outer loop to existing program. This outer loop
determines the number of divisions that the interval is divided into.
The program should firstly divide the interval [π/2, 2π] into two divisions, compute the
integral, and then successively double the number of intervals (4, 8, 16, 32, ....) until the value
computed differs by less than 10-6 from the correct value which is:
2π
∫e
x
cos x dx =
2
(e − eπ / 2 )
1 2π
π
2
Additionally, the MATLAB function quad can be used to determine the value derived from
Simpson’s rule. Note that when the quad function is employed to calculate the integral the
function must be specified as ‘exp(x).*cos(x)’.
The program should calculate the correct value from the analytic solution and use this value to
determine when the numerical value differs by less than 1.E-06. It should produce a table of
the number of intervals, the corresponding computed value of the integral and the difference
between the computed and exact value. The first three rows of the table are shown below.
- 18 -
ENGG1801 Engineering Computing Tutorial Notes
Tutorial Week 9
Matrix Manipulations
The work covered in this tutorial session is described in the lecture notes starting on page 2-2.
Exercise 1
2.6 1 3 5 7 9
−5 2 8 10
4 6
3 − 4 14
[A] = [1 − 5 76 2 2] [B ] = 3.1 [C ] = 1 2 3 4 5 [D ] = 2 0 3
− 4.3
2 3 4 5 6 5 − 4 3
2 9 7 5 3 1
Calculate the following and check that the result displayed from your calculation is correct.
Calculate Answers
− 9 .0
− 10.6
[F] = [C] * [B] [F ] = − 5.3
− 6 .9
− 7 .0
1.0000 0 − 0.0000
[K] = [J] * [D]
[K ] = 0 1.0000 − 0.0000
− 0.0000 − 0.0000 1.0000
- 19 -
ENGG1801 Engineering Computing Tutorial Notes
Exercise 2
1) Create a new matrix, [L], by deleting the third row of matrix [C], using the colon
operator.
2) Display the 15 digits of each number that form the result of the calculation
[H] = E * [C]T
Exercise 3
2 x1 + x2 + x3 = 2
− x1 + 3x 2 + x3 = 1
5 x1 + x2 − x3 = 2
where [C] is the matrix of coefficients, {x} are the unknown values of x1, x2 and x3. The
vector {b} stores the values on the right hand side of the equations.
Multiply the matrix of coefficients [C] by the solution {x} and check that the result of this
multiplication is the right hand side {b}.
Exercise 4
− 2 1 3 1 − 1 2 3 4
[A] = 5 − 2 7 [B ] = 5 − 1 − 2 2 1
− 6 3 1 7 − 6 2 3 9
Write a series of commands that inspects the value of each element in matrix [C] and returns
the total number of values greater than zero, equal to zero and less than zero.
Function Plotting in 2D
Plot the expression,
y=
(9 + 5x − x ) e
2 sin( x )
( x +1 )
over the range 1 ≤ x ≤ 5 using a step size of 0.1. Label this plot appropriately.
- 20 -
ENGG1801 Engineering Computing Tutorial Notes
Tutorial Week 10
In this tutorial session you are required to write two programs that each produces a figure
generated using low level graphics functions.
Figure 1
The program produces plots of the function z, where
sin(t )
z= t= x2 + y2
t
The inputs to the program are the minimum and maximum x and y values and the number of
points in each direction at which the function is calculated. Note that the function z is
undefined at t = 0, i.e., at x = y = 0. Your program will need to cater for this feature by
making appropriate use of the MATLAB function eps.
White background.
X axis labelled “(x) Coordinate”, Y axis labelled “(y) Coordinate”, Z axis labelled
“Z”.
Figure 2
The density of air (ρ) may be estimated using the ideal gas law as,
PM
ρ=
RT
Yellow background. The lines forming the plot are black. Title in bold font that reads
“Density of Air ρ (g/litre)”.
X axis labelled “Pressure (atm)”, Y axis labelled “Temperature (K)”, Z axis labelled
“ρ = PM / RT”.
ρ values contoured using function mesh covering the ranges 0.5 ≤ P ≤ 2 atm and 20 ≤
T ≤ 100 deg C. Divide the P and T ranges into nine equally spaced divisions. This
will result in ten points along each of the P and T ranges.
- 21 -
ENGG1801 Engineering Computing Tutorial Notes
Tutorial Week 11
Non-linear Algebraic Equations
One way to solve a non-linear algebraic equation g(x) = 0 is by rearranging the equation into
the form x = h(x) and using the iterative algorithm xi+1 = h(xi). Clearly, this direct substitution
method requires an initial starting guess (x0).
This approach is commonly used in flowsheeting packages to solve the material and energy
balance equations for processes that involve recycle streams. However, this method can be
slow to converge and for some rearrangements (note that it is often possible to come up with a
number of alternative x = h(x) expressions) diverges even with a good starting guess.
For flow through a “smooth” pipe at Reynolds numbers (Re) above 4000, the friction factor f
(used to calculate pressure drop through the pipe) is given by the formula:
1
(
= 0.86 ln Re )
f − 0.8
f
Note that once Re is given, the above is an implicit equation in f (that is, it cannot be
rearranged into a version that can be solved directly for f).
Note also that this equation can be rearranged into the following "direct substitution" form:
1
f =
(0.86 ln(Re f ) − 0.8) 2
Using a while loop, write a Matlab program that solves the above equation for the friction
factor for a given Reynolds number. Your program should check that both convergence to the
required accuracy (i.e. successive estimates of f should differ by less than 10-5) has been
attained and that the maximum number of iterations (set at 10) has not been exceeded.
Note that all iterative methods require an initial ‘guess’ at the solution. Estimates taken from
a Moody chart are that f ≅ 0.03 at Re = 104 and f ≅ 0.012 at Re = 106.
The program must produce a tabulation of the iteration number, the corresponding computed
value of the friction factor and the difference between this value and the value computed in
the previous iteration. An example is shown below.
Reynolds number > 10000
1 0.0317 -
2 0.0315 2.7232e-004
3 0.0315 4.1405e-005
4 0.0315 6.3239e-006
- 22 -
ENGG1801 Engineering Computing Tutorial Notes
are assumed to reach equilibrium within the reactor. The extent of each reaction (defined as
the percentage of the ethane entering the reactor that undergoes a particular reaction) are
denoted by ξ1 and ξ2, respectively.
On page 526, a calculation scheme is given for this process simulation – the first step of
which is to solve the following two nonlinear equations for ξ1 and ξ2:
f1(ξ1, ξ2) = ξ1 (ξ1 + 2ξ2) – 3.75 (100 – ξ1 – ξ2) (100 + ξ1 + 2ξ2) = 0 (3)
f2(ξ1, ξ2) = ξ2 (ξ1 + 2ξ2)2 – 0.135 (100 – ξ1 – ξ2) (100 + ξ1 + 2ξ2)2 = 0 (4)
In this tutorial you write a MATLAB script file that solves these two non-linear simultaneous
equations. The method you should use to solve these equations is described in the following
section.
Solution Method
If an approximation is made to the solution (ξ10 , ξ 20 ) then the solution (ξ1, ξ2 ) is
ξ 2 = ξ 20 + ∆ξ 2 (6)
and
∂f ∂f
f1 (ξ10 + ∆ξ1 , ξ 20 + ∆ξ 2 ) ≈ f1 (ξ10 , ξ 20 ) + ∆ ξ1 + ∆ξ 2 (7)
∂ξ1 ∂ξ 2
∂f ∂f
f 2 (ξ10 + ∆ξ1 , ξ 20 + ∆ξ 2 ) ≈ f 2 (ξ10 , ξ 20 ) + ∆ξ1 + ∆ξ 2 (8)
∂ξ1 ∂ξ 2
∂f ∂f
0 ≈ f1 (ξ10 , ξ 20 ) + ∆ξ1 + ∆ξ 2 (9)
∂ξ1 ∂ξ 2
∂f ∂f
0 ≈ f 2 (ξ10 , ξ 20 ) + ∆ξ1 + ∆ξ 2 (10)
∂ξ1 ∂ξ 2
- 23 -
ENGG1801 Engineering Computing Tutorial Notes
or
∂f ∂f
− f1 (ξ10 , ξ 20 ) ≈ ∆ξ1 + ∆ξ 2 (11)
∂ξ1 ∂ξ 2
∂f ∂f
− f 2 (ξ10 , ξ 20 ) ≈ ∆ξ1 + ∆ξ 2 (12)
∂ξ1 ∂ξ 2
The solution to these as two simultaneous equations with the unknowns ∆ξ1 and ∆ξ2 requires
an iterative procedure and the steps that must be followed are:
[1] Make an assumption for (ξ10 , ξ 20 ) . Reasonable starting values for ξ1 and ξ2 are 50%
and 10%, respectively.
[2] Solve equations 11 and 12 for ∆ξ1 and ∆ξ2
ξ 21 = ξ 20 + ∆ξ 2 (14)
[4] Repeat steps 2 and 3 until the function values (equations 3 and 4) are less than .01%.
The output from your program must include the table shown below. You should check that
your program correctly calculates the values shown for the first two iterations.
Iteration xi-1 xi-2 f1 f2
Partial Derivatives
The partial derivatives of these two functions are:
∂f1
= 9.5ξ1 + 13.25ξ 2 (15)
∂ξ1
∂f1
= 13.25ξ1 − 375 + 15ξ 2 (16)
∂ξ 2
∂f 2
= 2ξ 2 (ξ1 + 2ξ 2 ) + .135(100 + ξ1 + 2ξ 2 ) − 0.270(100 − ξ1 − ξ 2 )(100 + ξ1 + 2ξ 2 )
2
(17)
∂ξ1
- 24 -
ENGG1801 Engineering Computing Tutorial Notes
∂f 2
= (ξ1 + 2ξ 2 ) + 4ξ 2 (ξ1 + 2ξ 2 ) + 0.135(100 + ξ1 + 2ξ 2 ) − 0.540(100 − ξ1 − ξ 2 )(100 + ξ1 + 2ξ 2 )
2 2
∂ξ 2
(18)
There are numerous “toolboxes” that can be licensed for use with MATLAB. There is a
numerical analysis toolbox that includes a function named fsolve, that can be used to solve
simultaneous non-linear equations. If your program works correctly then you have written the
equivalent of this toolbox function.
Reference
Felder, R.M. and Rousseau, R.W. Elementary principles of chemical processes, 675pp, 3rd
Edition, John Wiley and Sons, 2000.
- 25 -