Scilab/C4/Linear-equations-Gaussian-Methods/English-timed

From Script | Spoken-Tutorial
Revision as of 17:54, 10 July 2014 by Gaurav (Talk | contribs)

Jump to: navigation, search
Time Narration
00:01 Dear Friends,
00:02 Welcome to the spoken tutorial on “Solving System of Linear Equations using Gauss Elimination and Gauss-Jordan Methods”


00:12. At the end of this tutorial, you will learn how to:
00:15 Solve system of linear equations using Scilab
00:20 Develop Scilab code to solve linear equations


00:25 To record this tutorial, I am using
00:27 Ubuntu 12.04 as the operating system


00:31 with Scilab 5.3.3 version
00:36 To practise this tutorial, a learner should have basic knowledge of Scilab
00:40 and should know how to solve Linear Equations.
00:45 To learn Scilab, please refer to the relevant tutorials available on the Spoken Tutorial website.
00:52 A system of linear equations is a
00:55 Finite collection of linear equations of the same set of variables
01:00 Let us study Gauss elimination method
01:04 Given a system of equations
01:06 A x equal to b


01:08 with m equations and
01:10 n unknowns
01:12 We write the coefficients of the variables a one to a n
01:16 along with the constants b one to b n of the system of equations
01:22 in one matrix called the augmented matrix
01:27 How do we convert the augmented matrix to an upper triangular form matrix?
01:33 We do so by performing row wise manipulation of the matrix.


01:40 Let us solve this system of equations using Gaussian elimination method


01:45 Before we solve the system, let us go through the code for Gaussian elimination method.
01:52 The first line of the code is format e comma twenty.
01:58 This defines how many digits should be displayed in the answer.


02:04 The letter 'e' within single quotes denotes that the answer should be displayed in scientific notation


02:12 The number twenty is the number of digits that should be displayed.
02:17 The command funcprot is used to let Scilab know what to do when variables are redefined.
02:26


The argument zero specifies that Scilab need not do anything if the variables are redefined.
02:33 Other arguments are used to issue warnings or errors if the variables are redefined.
02:40 Next we use the input function.
02:43 It will display a message to the user and get the values of A and B matrices.
02:51 The message should be placed within double quotes.
02:55 The matrices that the user enters, will be stored in the variables A and b.
03:02 Here A is the coefficient matrix and b is the right-hand-side matrix or the constants matrix.
03:11 Then we define the function naive gaussian elimination.


03:15 And we state that A and b are the arguments of the function naive gaussian elimination.


03:22 We store the output in variable x.
03:27 Then we find the size of matrices A and b using the size command.
03:34 Since they are two dimensional matrices, we use n and n one to store the size of matrix A.
03:42 Similarly we can use m one and p for matrix b.


03:48 Then we have to determine if the matrices are compatible with each other and


03:53 if A is a square matrix.
03:57 If n and n one are not equal, then we display a message that Matrix A must be square.


04:05 If n and m one are not equal, we display a message


04:10 incompatible dimension of A and b.


04:15 If the matrices are compatible, we place matrices A and b in one matrix, C.


04:23 This matrix C is called augmented matrix.


04:28 The next block of code performs forward elimination.
04:32 This code converts the augmented matrix to upper triangular matrix form.


04:39 Finally, we perform back substitution.


04:42 Once the upper triangular matrix is obtained, we take the last row and find the value of the variable in that row.
04:52 Then once one variable is solved, we take this variable to solve the other variables.


04:59 Thus the system of linear equations is solved.


05:03 Let us save and execute the file.
05:06 Switch to Scilab console to solve the example.
05:10 On the console, we have a prompt to enter the value of the coefficient matrix.


05:17 So we enter the values of matrix A.


05:20 Type square bracket three point four one space one point two three space minus one point zero nine semi colon


05:33 two point seven one space two point one four space one point two nine semi colon



05:41 one point eight nine space minus one point nine one space minus one point eight nine close square bracket.



05:53 Press Enter


05:54 The next prompt is for matrix b.
05:57 So we type
05:58 open square bracket four point seven two semi colon three point one semi colon two point nine one close square bracket.


06:10 Press Enter


06:13 Then we call the function by typing


06:16 naive gaussian elimination open paranthesis A comma b close paranthesis



06:24 Press Enter


06:26 The solution to the system of linear equations is shown on Scilab console.
06:32 Next we shall study the Gauss- Jordan method.
06:36 In Gauss – Jordan Method
06:38 The first step is to form the augmented matrix.
06:42 To do this place the coefficient matrix A and the right hand side matrix b together in one matrix.
06:50 Then we perform row operations to convert matrix A to diagonal form.
06:56 In diagonal form, only the elements a i i are non-zero. Rest of the elements are zero.


07:05 Then we divide the diagonal element and corresponding element of right hand side element, by the diagonal element.
07:14 We do this to get diagonal element equal to one.
07:19 The resulting value of the elements of each row of the right hand side matrix gives the value of each variable.
07:27 Let us solve this example using Gauss- Jordan Method.
07:33 Let us look at the code first.
07:36 The first line of the code uses format function to specify the format of the displayed answers.
07:44 The parameter e specifies the answer should be in scientific notation.
07:49 Twenty (20) denotes that only twenty digits should be displayed.
07:55 Then we get the A and b matrix using the input function.
08:00 We define the function Gauss Jordan Elimination with input arguments A and b and output argument x.
08:11 We get the size of matrix A and store it in m and n
08:17 Similarly, we get the size of matrix b and store it in r and s
08:23 If the sizes of A and b are not compatible, we display an error on the console using error function.
08:33 Then we perform row operations to get diagonal form of the matrix.
08:38 Here pivot refers to the first non-zero element of a column.
08:45 Then we create a matrix of zeros called x with m rows and s columns.
08:52 Once we have the diagonal form,
08:54 we divide the right hand side part of augmented matrix by the corresponding diagonal element to get the value of each variable.


09:04 We store the value of each variable in x.
09:08 Then we return the value of x.
09:11 Finally, we end the function.
09:13 Now let us save and execute the function.
09:18 The prompt requires us to enter the value of matrix A.
09:22 So we type
09:23 open square bracket zero point seven comma one seven two five semi colon


09:31 zero point four three five two comma minus five point four three three close square bracket.
09:41 Press Enter


09:43 The next prompt is for vector b.
09:45 So we type open squre bracket one seven three nine semi colon


09:51 three point two seven one close square bracket


09:55 Press Enter


09:58 Then we call the function by typing
10:01 Gauss Jordan Elimination open paranthesis A comma b close paranthesis


10:08 Press Enter


10:10 The values of x one and x two are shown on the console.
10:15 Let us summarize this tutorial.
10:18 In this tutorial, we have learnt to:


10:21 Develop Scilab code for solving system of linear equations
10:25 Find the value of the unknown variables of a system of linear equations
10:32 Watch the video available at the link shown below
10:35 It summarises the Spoken Tutorial project


10:38 If you do not have good bandwidth, you can download and watch it
10:43 The spoken tutorial project Team
10:45 Conducts workshops using spoken tutorials


10:48 Gives certificates to those who pass an online test


10:52 For more details, please write to conatct@spoken-tutorial.org


10:59 Spoken Tutorial Project is a part of the Talk to a Teacher project


11:03 It is supported by the National Mission on Eduction through ICT, MHRD, Government of India.
11:10 More information on this mission is available at http://spoken-tutorial.org/NMEICT-Intro
11:21 This is Ashwini Patil signing off.
11:23 Thank you for joining.

Contributors and Content Editors

Gaurav, PoojaMoolya, Sandhya.np14