Accuracy, Condition Numbers and Pivoting

Accuracy Condition Numbers and Pivoting:

In this lecture we will discuss two separate issues of accuracy in solving linear systems. The firstpivoting is methods that ensure that Gaussian elimination proceeds as accurately as possible.

The second condition number is determining of how bad a matrix is. We will observe that if a matrixhas a bad condition number the solutions are unbalanced with respect to small changes in data.

The effect of rounding:

All computers store numbers as limited strings of binary floating point digits. This limits numbers toa preset number of significant digits and implies that after even the most basic calculations, roundingmust happen.

Consider the following exaggerated illustration- presume that our computer can only store 2 significantdigits and it is asked to do Gaussian elimination on:

847_gausssian elimination.jpg

Doing the exclusion exactly would produce:

1328_gaussian elimination_2.jpg

However rounding to 2 digits our computer would store this as:

1263_gaussian elimination_3.jpg

Backsolving this abridged system gives:

x1 = 0, x2 = 3.

This seems fine until you understand that backsolving the unrounded system gives

x1 = −1, x2 = 3.001.

Row Pivoting:

A way to fix the problem is to utilize pivoting which signifies to switch rows of the matrix. Asswitching rows of the augmented matrix now corresponds to switching the order of the equationsno harm is done:

2088_row pivoting.jpg

Exact removal would produce:

759_exact elimination.jpg

Storing this result with only 2 important digits gives:

1145_backsolving procedures.jpg

Now backsolving produces:

x1= −1, x2 = 3,

Which is precisely right.

The reason this worked is for the reason that 1 is bigger than 0.001. To pivot us switch rows therefore that the largestentry in a column is the one used to eliminate the others. In bigger matrices subsequent to each column iscompleted compare the diagonal element of the next column with all the entries below it. Switchit (as well as the entire row) with the one with greatest absolute value. For illustration in the followingmatrix the first column is finished as well as before doing the second column pivoting must occur since:

|− 2| >|1|:

1459_pivoting.jpg

Pivoting the 2nd as well as 3rd rows would produce:

27_pivoting_2.jpg

Condition number:

In some systems problems take place even without rounding. Consider the subsequent augmented matrices:

1115_augmented matrices.jpg

Here we have the same A however two different input vectors:

b1 = (3/2, 1)′and b2 = (3/2, 5/6)′

which are appealing close to one another. You would expect afterwards that the solutions x1 and x2 wouldalso be close. Notice that this matrix doesn’t need pivoting. Eliminating precisely we get:

8_augmented matrices.jpg

Now solving we discover:

x1 = (0, 3)′ and x2 = (1, 1)′

which aren’t close at all despite the fact that we did the calculations exactly. This pretence a newproblem some matrices are extremely sensitive to small changes in input data. The extent of thissensitivity is calculated by the condition number. The description of condition number is- considerall small changes δA as well as δb in A and b and the resulting change δx in the solution x. Then,

155_condition number.jpg

Put one more way changes in the input data get multiplied by the condition number to producechanges in the outputs. Therefore a high condition number is bad. It entails that small errors in theinput can cause large errors in the output.

In Mat lab enter:

> H = hilb(2)

which must result in the matrix above. Mat lab produces the condition number of a matrix withthe command:

>cond(H)

Therefore for this matrix small errors in the input can get magnified by 19 in the output. After that try thematrix:

> A = [ 1.2969 0.8648 ; .2161 .1441]
>cond(A)

For this matrix little errors in the input can get magnified by 2.5×108 in the output! (We will observethis happen in the exercise.) This is obviously not extremely good for engineering where all measurements,constants as well as inputs are approximate.

Is there a resolution to the problem of bad condition numbers? Typically bad condition numbers in engineering contexts result from poor design. Therefore the engineering solution to bad conditioning is redesign.

Ultimately find the determinant of the matrix A above

>det(A)

Which will be little. If det(A) = 0 then the matrix is remarkable which is bad for the reason that it implies therewill not be a unique solution. The case here det(A) ≈ 0 is as well bad because it means the matrix isalmost singular. Even though det(A) ≈ 0 in general indicates that the condition number will be largethey are actually independent things. To observe this find the determinant and condition number ofthe matrix [1e-10,0;0,1e-10] and the matrix [1e+10,0;0,1e-10].

Latest technology based Matlab Programming Online Tutoring Assistance

Tutors, at the www.tutorsglobe.com, take pledge to provide full satisfaction and assurance in Matlab Programming help via online tutoring. Students are getting 100% satisfaction by online tutors across the globe. Here you can get homework help for Matlab Programming, project ideas and tutorials. We provide email based Matlab Programming help. You can join us to ask queries 24x7 with live, experienced and qualified online tutors specialized in Matlab Programming. Through Online Tutoring, you would be able to complete your homework or assignments at your home. Tutors at the TutorsGlobe are committed to provide the best quality online tutoring assistance for Matlab Programming Homework help and assignment help services. They use their experience, as they have solved thousands of the Matlab Programming assignments, which may help you to solve your complex issues of Matlab Programming. TutorsGlobe assure for the best quality compliance to your homework. Compromise with quality is not in our dictionary. If we feel that we are not able to provide the homework help as per the deadline or given instruction by the student, we refund the money of the student without any delay.