8
Tridiagonal linear systems A tridiagonal linear system of equations takes the form: A x 2 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 4 d 1 e 1 c 1 d 2 e 2 c 2 d 3 e 3 . . . . . . . . . . . . . . . . . . c n-2 d n-1 e n-1 c n-1 d n 3 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 5 2 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 4 x 1 x 2 x 3 . . . . . . x n-1 x n 3 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 5 = 2 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 4 b 1 b 2 b 3 . . . . . . b n-1 b n 3 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 5 The name tridiagonal comes from the fact that there are at most three non-zero entries per row of the coefficient matrix, and these entries can only appear on the main diagonal, sub-diagonal, and super-diagonal. These systems appear in many applications. b

Tridiagonal linear systemswright/courses/m365/TridiagonalSystems.pdf · The Thomas algorithm is implemented in the tridisolveMATLAB function on the course webpage. Exercise 1.Use

  • Upload
    others

  • View
    10

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Tridiagonal linear systemswright/courses/m365/TridiagonalSystems.pdf · The Thomas algorithm is implemented in the tridisolveMATLAB function on the course webpage. Exercise 1.Use

Tridiagonal linear systemsA tridiagonal linear system of equations takes the form:

A<latexit sha1_base64="l0WayqPXYX9f+FYmPJaH9r0o4Vc=">AAACKnicbVBNS8NAEN34WeN3PXpZLIKnkoii3ipePFa0KjRFNptpurjZhN2JWkJ/glf9Ff4aT8WrP8Rtm4OtPhh4vJlh5r0wk8Kg5w2dufmFxaXlyoq7ura+sbm1Xb01aa45tHgqU30fMgNSKGihQAn3mQaWhBLuwseLUf/uCbQRqbrBfgadhMVKdAVnaKXrc9d92Kp5dW8M+pf4JamREs2HbacaRCnPE1DIJTOm7XsZdgqmUXAJAzfIDWSMP7IY2pYqloDpFONfB3TfKhHtptqWQjpWf28ULDGmn4R2MmHYM7O9kfhfr51j97RTCJXlCIpPDnVzSTGlI+M0Eho4yr4ljGthf6W8xzTjaONxAwM2OxVjrwgQXvBZRPZOcSzUlJ+JCwzlwHVpoFkcQ6RF3EOboj+b2V/SOqyf1f2ro1qjUcZZIbtkjxwQn5yQBrkkTdIinMTklbyRd+fD+XSGztdkdM4pd3bIFJzvHzfepp0=</latexit><latexit sha1_base64="l0WayqPXYX9f+FYmPJaH9r0o4Vc=">AAACKnicbVBNS8NAEN34WeN3PXpZLIKnkoii3ipePFa0KjRFNptpurjZhN2JWkJ/glf9Ff4aT8WrP8Rtm4OtPhh4vJlh5r0wk8Kg5w2dufmFxaXlyoq7ura+sbm1Xb01aa45tHgqU30fMgNSKGihQAn3mQaWhBLuwseLUf/uCbQRqbrBfgadhMVKdAVnaKXrc9d92Kp5dW8M+pf4JamREs2HbacaRCnPE1DIJTOm7XsZdgqmUXAJAzfIDWSMP7IY2pYqloDpFONfB3TfKhHtptqWQjpWf28ULDGmn4R2MmHYM7O9kfhfr51j97RTCJXlCIpPDnVzSTGlI+M0Eho4yr4ljGthf6W8xzTjaONxAwM2OxVjrwgQXvBZRPZOcSzUlJ+JCwzlwHVpoFkcQ6RF3EOboj+b2V/SOqyf1f2ro1qjUcZZIbtkjxwQn5yQBrkkTdIinMTklbyRd+fD+XSGztdkdM4pd3bIFJzvHzfepp0=</latexit><latexit sha1_base64="l0WayqPXYX9f+FYmPJaH9r0o4Vc=">AAACKnicbVBNS8NAEN34WeN3PXpZLIKnkoii3ipePFa0KjRFNptpurjZhN2JWkJ/glf9Ff4aT8WrP8Rtm4OtPhh4vJlh5r0wk8Kg5w2dufmFxaXlyoq7ura+sbm1Xb01aa45tHgqU30fMgNSKGihQAn3mQaWhBLuwseLUf/uCbQRqbrBfgadhMVKdAVnaKXrc9d92Kp5dW8M+pf4JamREs2HbacaRCnPE1DIJTOm7XsZdgqmUXAJAzfIDWSMP7IY2pYqloDpFONfB3TfKhHtptqWQjpWf28ULDGmn4R2MmHYM7O9kfhfr51j97RTCJXlCIpPDnVzSTGlI+M0Eho4yr4ljGthf6W8xzTjaONxAwM2OxVjrwgQXvBZRPZOcSzUlJ+JCwzlwHVpoFkcQ6RF3EOboj+b2V/SOqyf1f2ro1qjUcZZIbtkjxwQn5yQBrkkTdIinMTklbyRd+fD+XSGztdkdM4pd3bIFJzvHzfepp0=</latexit><latexit sha1_base64="l0WayqPXYX9f+FYmPJaH9r0o4Vc=">AAACKnicbVBNS8NAEN34WeN3PXpZLIKnkoii3ipePFa0KjRFNptpurjZhN2JWkJ/glf9Ff4aT8WrP8Rtm4OtPhh4vJlh5r0wk8Kg5w2dufmFxaXlyoq7ura+sbm1Xb01aa45tHgqU30fMgNSKGihQAn3mQaWhBLuwseLUf/uCbQRqbrBfgadhMVKdAVnaKXrc9d92Kp5dW8M+pf4JamREs2HbacaRCnPE1DIJTOm7XsZdgqmUXAJAzfIDWSMP7IY2pYqloDpFONfB3TfKhHtptqWQjpWf28ULDGmn4R2MmHYM7O9kfhfr51j97RTCJXlCIpPDnVzSTGlI+M0Eho4yr4ljGthf6W8xzTjaONxAwM2OxVjrwgQXvBZRPZOcSzUlJ+JCwzlwHVpoFkcQ6RF3EOboj+b2V/SOqyf1f2ro1qjUcZZIbtkjxwQn5yQBrkkTdIinMTklbyRd+fD+XSGztdkdM4pd3bIFJzvHzfepp0=</latexit>

x<latexit sha1_base64="tKau3Kem7CfZ3GLu3+iENlzdq9c=">AAACM3icbZDNSsNAEMc3fhu/2nr0slgETyURRb0VvHisYFVoStlsJuniZhN2J9oS+hpe9Sl8F8GTePUd3H4c1Dow8Oc/M8zML8ylMOh5b87C4tLyyurauruxubW9U6nWbkxWaA5tnslM34XMgBQK2ihQwl2ugaWhhNvw/mJcv30AbUSmrnGYQzdliRKx4AytFQQpw34Yl4OR6/Yqda/hTYLOC38m6mQWrV7VqQVRxosUFHLJjOn4Xo7dkmkUXMLIDQoDOeP3LIGOlYqlYLrl5OgRPbBORONM21RIJ+7PiZKlxgzT0HaOjzR/a2Pzv1qnwPisWwqVFwiKTxfFhaSY0TEBGgkNHOXQCsa1sLdS3meacbSc3MCAhagS7JcBwgAfRWT3lCdC/fpn+gWG0oKjgWZJApEWSR8tRf8vs3nRPmqcN/yr43qzOcO5RvbIPjkkPjklTXJJWqRNOMnJE3kmL86r8+58OJ/T1gVnNrNLfoXz9Q2r56r0</latexit><latexit sha1_base64="tKau3Kem7CfZ3GLu3+iENlzdq9c=">AAACM3icbZDNSsNAEMc3fhu/2nr0slgETyURRb0VvHisYFVoStlsJuniZhN2J9oS+hpe9Sl8F8GTePUd3H4c1Dow8Oc/M8zML8ylMOh5b87C4tLyyurauruxubW9U6nWbkxWaA5tnslM34XMgBQK2ihQwl2ugaWhhNvw/mJcv30AbUSmrnGYQzdliRKx4AytFQQpw34Yl4OR6/Yqda/hTYLOC38m6mQWrV7VqQVRxosUFHLJjOn4Xo7dkmkUXMLIDQoDOeP3LIGOlYqlYLrl5OgRPbBORONM21RIJ+7PiZKlxgzT0HaOjzR/a2Pzv1qnwPisWwqVFwiKTxfFhaSY0TEBGgkNHOXQCsa1sLdS3meacbSc3MCAhagS7JcBwgAfRWT3lCdC/fpn+gWG0oKjgWZJApEWSR8tRf8vs3nRPmqcN/yr43qzOcO5RvbIPjkkPjklTXJJWqRNOMnJE3kmL86r8+58OJ/T1gVnNrNLfoXz9Q2r56r0</latexit><latexit sha1_base64="tKau3Kem7CfZ3GLu3+iENlzdq9c=">AAACM3icbZDNSsNAEMc3fhu/2nr0slgETyURRb0VvHisYFVoStlsJuniZhN2J9oS+hpe9Sl8F8GTePUd3H4c1Dow8Oc/M8zML8ylMOh5b87C4tLyyurauruxubW9U6nWbkxWaA5tnslM34XMgBQK2ihQwl2ugaWhhNvw/mJcv30AbUSmrnGYQzdliRKx4AytFQQpw34Yl4OR6/Yqda/hTYLOC38m6mQWrV7VqQVRxosUFHLJjOn4Xo7dkmkUXMLIDQoDOeP3LIGOlYqlYLrl5OgRPbBORONM21RIJ+7PiZKlxgzT0HaOjzR/a2Pzv1qnwPisWwqVFwiKTxfFhaSY0TEBGgkNHOXQCsa1sLdS3meacbSc3MCAhagS7JcBwgAfRWT3lCdC/fpn+gWG0oKjgWZJApEWSR8tRf8vs3nRPmqcN/yr43qzOcO5RvbIPjkkPjklTXJJWqRNOMnJE3kmL86r8+58OJ/T1gVnNrNLfoXz9Q2r56r0</latexit><latexit sha1_base64="tKau3Kem7CfZ3GLu3+iENlzdq9c=">AAACM3icbZDNSsNAEMc3fhu/2nr0slgETyURRb0VvHisYFVoStlsJuniZhN2J9oS+hpe9Sl8F8GTePUd3H4c1Dow8Oc/M8zML8ylMOh5b87C4tLyyurauruxubW9U6nWbkxWaA5tnslM34XMgBQK2ihQwl2ugaWhhNvw/mJcv30AbUSmrnGYQzdliRKx4AytFQQpw34Yl4OR6/Yqda/hTYLOC38m6mQWrV7VqQVRxosUFHLJjOn4Xo7dkmkUXMLIDQoDOeP3LIGOlYqlYLrl5OgRPbBORONM21RIJ+7PiZKlxgzT0HaOjzR/a2Pzv1qnwPisWwqVFwiKTxfFhaSY0TEBGgkNHOXQCsa1sLdS3meacbSc3MCAhagS7JcBwgAfRWT3lCdC/fpn+gWG0oKjgWZJApEWSR8tRf8vs3nRPmqcN/yr43qzOcO5RvbIPjkkPjklTXJJWqRNOMnJE3kmL86r8+58OJ/T1gVnNrNLfoXz9Q2r56r0</latexit>

2

6666666666666664

d1 e1

c1 d2 e2

c2 d3 e3. . .

. . .. . .

. . .. . .

. . .

cn�2 dn�1 en�1

cn�1 dn

3

7777777777777775

2

6666666666666664

x1

x2

x3

...

...

xn�1

xn

3

7777777777777775

=

2

6666666666666664

b1

b2

b3......

bn�1

bn

3

7777777777777775

<latexit sha1_base64="y/W9bE0+F+voao/baYzQn82cqME=">AAAD33icjVJdb9MwFHUbPkb42sYjPFhUTLxQNe0m4AFpghckeBgSZZOaqrKd29Ra4kT2zdYqyjtPiFd+CD+Gf4PjFLZ+IGEp9dHx8Tm+t5fniTTY6/1qtb0bN2/d3rnj3713/8HD3b39LyYrtIChyJJMn3FmIJEKhigxgbNcA0t5Aqf8/F19fnoB2shMfcZFDuOUxUpOpWBoqcle62eoQcGlyNKUqagMmdZsYVADillVBt2jyg85xFKVPGWo5bzyo0lADyi43zD0hQPRpO/IfkMeUOFgNBk4evCHtlsUZWi2g0bxf5o6olQv+pWLsSioXFSDrsmWwqARKuqHYCv9W856eXNbj709t+9326DewgsXv4LmV1E1rNZ832w488aZN8783878yplvcfb9yW6n1+25RTdBsAQdslwn9o/eD6NMFCkoFAkzZhT0chyXTKMUCdiEwkDOxDmLYWShYimYcekGrKLPLBPRaabtp5A69vqNkqXGLFJulfaNM7N+VpPbzkYFTl+NS6nyAkGJJmhaJBQzWk8rjaQGgcnCAia0tG+lYsY0E2hn2g8N2IFXMc7KEGGOlzKyOeWRVCv1NFUgT2znaKhZHEOkZTxD28VgvWebYNjvvu4Gnw47x4fLdu6Qx+QpeU4C8pIck/fkhAyJaD9pv21/aH/0uPfV++Z9b6Tt1vLOI7KyvB+/AUzKK9c=</latexit><latexit sha1_base64="y/W9bE0+F+voao/baYzQn82cqME=">AAAD33icjVJdb9MwFHUbPkb42sYjPFhUTLxQNe0m4AFpghckeBgSZZOaqrKd29Ra4kT2zdYqyjtPiFd+CD+Gf4PjFLZ+IGEp9dHx8Tm+t5fniTTY6/1qtb0bN2/d3rnj3713/8HD3b39LyYrtIChyJJMn3FmIJEKhigxgbNcA0t5Aqf8/F19fnoB2shMfcZFDuOUxUpOpWBoqcle62eoQcGlyNKUqagMmdZsYVADillVBt2jyg85xFKVPGWo5bzyo0lADyi43zD0hQPRpO/IfkMeUOFgNBk4evCHtlsUZWi2g0bxf5o6olQv+pWLsSioXFSDrsmWwqARKuqHYCv9W856eXNbj709t+9326DewgsXv4LmV1E1rNZ832w488aZN8783878yplvcfb9yW6n1+25RTdBsAQdslwn9o/eD6NMFCkoFAkzZhT0chyXTKMUCdiEwkDOxDmLYWShYimYcekGrKLPLBPRaabtp5A69vqNkqXGLFJulfaNM7N+VpPbzkYFTl+NS6nyAkGJJmhaJBQzWk8rjaQGgcnCAia0tG+lYsY0E2hn2g8N2IFXMc7KEGGOlzKyOeWRVCv1NFUgT2znaKhZHEOkZTxD28VgvWebYNjvvu4Gnw47x4fLdu6Qx+QpeU4C8pIck/fkhAyJaD9pv21/aH/0uPfV++Z9b6Tt1vLOI7KyvB+/AUzKK9c=</latexit><latexit sha1_base64="y/W9bE0+F+voao/baYzQn82cqME=">AAAD33icjVJdb9MwFHUbPkb42sYjPFhUTLxQNe0m4AFpghckeBgSZZOaqrKd29Ra4kT2zdYqyjtPiFd+CD+Gf4PjFLZ+IGEp9dHx8Tm+t5fniTTY6/1qtb0bN2/d3rnj3713/8HD3b39LyYrtIChyJJMn3FmIJEKhigxgbNcA0t5Aqf8/F19fnoB2shMfcZFDuOUxUpOpWBoqcle62eoQcGlyNKUqagMmdZsYVADillVBt2jyg85xFKVPGWo5bzyo0lADyi43zD0hQPRpO/IfkMeUOFgNBk4evCHtlsUZWi2g0bxf5o6olQv+pWLsSioXFSDrsmWwqARKuqHYCv9W856eXNbj709t+9326DewgsXv4LmV1E1rNZ832w488aZN8783878yplvcfb9yW6n1+25RTdBsAQdslwn9o/eD6NMFCkoFAkzZhT0chyXTKMUCdiEwkDOxDmLYWShYimYcekGrKLPLBPRaabtp5A69vqNkqXGLFJulfaNM7N+VpPbzkYFTl+NS6nyAkGJJmhaJBQzWk8rjaQGgcnCAia0tG+lYsY0E2hn2g8N2IFXMc7KEGGOlzKyOeWRVCv1NFUgT2znaKhZHEOkZTxD28VgvWebYNjvvu4Gnw47x4fLdu6Qx+QpeU4C8pIck/fkhAyJaD9pv21/aH/0uPfV++Z9b6Tt1vLOI7KyvB+/AUzKK9c=</latexit><latexit sha1_base64="y/W9bE0+F+voao/baYzQn82cqME=">AAAD33icjVJdb9MwFHUbPkb42sYjPFhUTLxQNe0m4AFpghckeBgSZZOaqrKd29Ra4kT2zdYqyjtPiFd+CD+Gf4PjFLZ+IGEp9dHx8Tm+t5fniTTY6/1qtb0bN2/d3rnj3713/8HD3b39LyYrtIChyJJMn3FmIJEKhigxgbNcA0t5Aqf8/F19fnoB2shMfcZFDuOUxUpOpWBoqcle62eoQcGlyNKUqagMmdZsYVADillVBt2jyg85xFKVPGWo5bzyo0lADyi43zD0hQPRpO/IfkMeUOFgNBk4evCHtlsUZWi2g0bxf5o6olQv+pWLsSioXFSDrsmWwqARKuqHYCv9W856eXNbj709t+9326DewgsXv4LmV1E1rNZ832w488aZN8783878yplvcfb9yW6n1+25RTdBsAQdslwn9o/eD6NMFCkoFAkzZhT0chyXTKMUCdiEwkDOxDmLYWShYimYcekGrKLPLBPRaabtp5A69vqNkqXGLFJulfaNM7N+VpPbzkYFTl+NS6nyAkGJJmhaJBQzWk8rjaQGgcnCAia0tG+lYsY0E2hn2g8N2IFXMc7KEGGOlzKyOeWRVCv1NFUgT2znaKhZHEOkZTxD28VgvWebYNjvvu4Gnw47x4fLdu6Qx+QpeU4C8pIck/fkhAyJaD9pv21/aH/0uPfV++Z9b6Tt1vLOI7KyvB+/AUzKK9c=</latexit>

The name tridiagonal comes from the fact that there are at most three non-zero entries per row of the coefficient matrix, and these entries can only appear on the main diagonal, sub-diagonal, and super-diagonal.

These systems appear in many applications.

b<latexit sha1_base64="oRobbVdF72LaOzwQrnVx0NYiSyE=">AAACMXicbVBNS8NAEN34bfxq69HLYhE8lUQU9Vbw4rGCVbEpZbOZpIubTdidqCX0X3jVX+Gf0ZN49U+4/TiodWDg8WaGee+FuRQGPe/NmZtfWFxaXll119Y3Nrcq1dqVyQrNoc0zmembkBmQQkEbBUq4yTWwNJRwHd6djebX96CNyNQlDnLopixRIhacoaVug5RhP4zLcNir1L2GNy46C/wpqJNptXpVpxZEGS9SUMglM6bjezl2S6ZRcAlDNygM5IzfsQQ6FiqWgumWY8lDumeZiMaZtq2QjtmfFyVLjRmkod0cSTR/ZyPyv1mnwPikWwqVFwiKTx7FhaSY0ZF/GgkNHOXAAsa1sFop7zPNONqU3MCAjVAl2C8DhEd8EJH9Ux4J9cvPxAWGcui6NNAsSSDSIumjTdH/m9ksaB80Thv+xWG92ZzGuUJ2yC7ZJz45Jk1yTlqkTThR5Ik8kxfn1Xl3PpzPyeqcM73ZJr/K+foGDrWqtg==</latexit><latexit sha1_base64="oRobbVdF72LaOzwQrnVx0NYiSyE=">AAACMXicbVBNS8NAEN34bfxq69HLYhE8lUQU9Vbw4rGCVbEpZbOZpIubTdidqCX0X3jVX+Gf0ZN49U+4/TiodWDg8WaGee+FuRQGPe/NmZtfWFxaXll119Y3Nrcq1dqVyQrNoc0zmembkBmQQkEbBUq4yTWwNJRwHd6djebX96CNyNQlDnLopixRIhacoaVug5RhP4zLcNir1L2GNy46C/wpqJNptXpVpxZEGS9SUMglM6bjezl2S6ZRcAlDNygM5IzfsQQ6FiqWgumWY8lDumeZiMaZtq2QjtmfFyVLjRmkod0cSTR/ZyPyv1mnwPikWwqVFwiKTx7FhaSY0ZF/GgkNHOXAAsa1sFop7zPNONqU3MCAjVAl2C8DhEd8EJH9Ux4J9cvPxAWGcui6NNAsSSDSIumjTdH/m9ksaB80Thv+xWG92ZzGuUJ2yC7ZJz45Jk1yTlqkTThR5Ik8kxfn1Xl3PpzPyeqcM73ZJr/K+foGDrWqtg==</latexit><latexit sha1_base64="oRobbVdF72LaOzwQrnVx0NYiSyE=">AAACMXicbVBNS8NAEN34bfxq69HLYhE8lUQU9Vbw4rGCVbEpZbOZpIubTdidqCX0X3jVX+Gf0ZN49U+4/TiodWDg8WaGee+FuRQGPe/NmZtfWFxaXll119Y3Nrcq1dqVyQrNoc0zmembkBmQQkEbBUq4yTWwNJRwHd6djebX96CNyNQlDnLopixRIhacoaVug5RhP4zLcNir1L2GNy46C/wpqJNptXpVpxZEGS9SUMglM6bjezl2S6ZRcAlDNygM5IzfsQQ6FiqWgumWY8lDumeZiMaZtq2QjtmfFyVLjRmkod0cSTR/ZyPyv1mnwPikWwqVFwiKTx7FhaSY0ZF/GgkNHOXAAsa1sFop7zPNONqU3MCAjVAl2C8DhEd8EJH9Ux4J9cvPxAWGcui6NNAsSSDSIumjTdH/m9ksaB80Thv+xWG92ZzGuUJ2yC7ZJz45Jk1yTlqkTThR5Ik8kxfn1Xl3PpzPyeqcM73ZJr/K+foGDrWqtg==</latexit><latexit sha1_base64="oRobbVdF72LaOzwQrnVx0NYiSyE=">AAACMXicbVBNS8NAEN34bfxq69HLYhE8lUQU9Vbw4rGCVbEpZbOZpIubTdidqCX0X3jVX+Gf0ZN49U+4/TiodWDg8WaGee+FuRQGPe/NmZtfWFxaXll119Y3Nrcq1dqVyQrNoc0zmembkBmQQkEbBUq4yTWwNJRwHd6djebX96CNyNQlDnLopixRIhacoaVug5RhP4zLcNir1L2GNy46C/wpqJNptXpVpxZEGS9SUMglM6bjezl2S6ZRcAlDNygM5IzfsQQ6FiqWgumWY8lDumeZiMaZtq2QjtmfFyVLjRmkod0cSTR/ZyPyv1mnwPikWwqVFwiKTx7FhaSY0ZF/GgkNHOXAAsa1sFop7zPNONqU3MCAjVAl2C8DhEd8EJH9Ux4J9cvPxAWGcui6NNAsSSDSIumjTdH/m9ksaB80Thv+xWG92ZzGuUJ2yC7ZJz45Jk1yTlqkTThR5Ik8kxfn1Xl3PpzPyeqcM73ZJr/K+foGDrWqtg==</latexit>

Page 2: Tridiagonal linear systemswright/courses/m365/TridiagonalSystems.pdf · The Thomas algorithm is implemented in the tridisolveMATLAB function on the course webpage. Exercise 1.Use

Example: multistage countercurrent extractor

2

666666666666664

�(W + Sm) Sm 0 0

W �(W + Sm) Sm 0

0 W �(W + Sm) Sm

0 0 W �(W + Sm)

3

777777777777775

2

666666666666664

x1

x2

x3

x4

3

777777777777775

=

2

666666666666664

�Wxin

0

0

�Syin

3

777777777777775

Example: n = 4, W = 145, S = 27, m = 7, xin = 0.15, yin = 0

Model problem from previous lecture

Page 3: Tridiagonal linear systemswright/courses/m365/TridiagonalSystems.pdf · The Thomas algorithm is implemented in the tridisolveMATLAB function on the course webpage. Exercise 1.Use

Example: multistage countercurrent extractorModel problem from previous lecture

cj = W, j = 1, . . . , n� 1,

dj = �(W + Sm), j = 1, . . . , n,

ej = Sm, j = 1, . . . , n� 1,<latexit sha1_base64="Yi/D5IJygcVv6SdiGmmV06daJM4=">AAACinicbVHBThsxEHWWlsK2QKBHLlajIhAh2i0gihBSJDj0CIIQpGwUeb2TjcH2ruxZ2miV7+s39CN6ba91sjmUwEiWnt574/E8x7kUFoPgV81bevN2+d3Kqv/+w9r6Rn1z685mheHQ4ZnMzH3MLEihoYMCJdznBpiKJXTjx4up3n0CY0Wmb3GcQ1+xVIuh4AwdNagzPnigO+e024zO6MN52IxkkqFt6gMHIz+p1IPd7v6N2lv0NKmzQGW5Ua/cMNUH9UbQCmZFX4JwDhpkXleDzdpWlGS8UKCRS2ZtLwxy7JfMoOASJn5UWMgZf2Qp9BzUTIHtl7MsJvSzYxI6zIw7GumM/b+jZMrasYqdUzEc2UVtSr6m9Qocfu2XQucFgubVoGEhKWZ0GixNhAGOcuwA40a4t1I+YoZxdPH7kQX3NzrFURkh/MDvInFzymOhn+1TbYGxnPg+jQxLU0iMSEfoUgwXM3sJOl9ap63w+qjRbs/jXCHb5BPZJSE5IW3yjVyRDuHkJ/lN/pC/3pp36J16Z5XVq817PpJn5V3+A0rLwEA=</latexit><latexit sha1_base64="Yi/D5IJygcVv6SdiGmmV06daJM4=">AAACinicbVHBThsxEHWWlsK2QKBHLlajIhAh2i0gihBSJDj0CIIQpGwUeb2TjcH2ruxZ2miV7+s39CN6ba91sjmUwEiWnt574/E8x7kUFoPgV81bevN2+d3Kqv/+w9r6Rn1z685mheHQ4ZnMzH3MLEihoYMCJdznBpiKJXTjx4up3n0CY0Wmb3GcQ1+xVIuh4AwdNagzPnigO+e024zO6MN52IxkkqFt6gMHIz+p1IPd7v6N2lv0NKmzQGW5Ua/cMNUH9UbQCmZFX4JwDhpkXleDzdpWlGS8UKCRS2ZtLwxy7JfMoOASJn5UWMgZf2Qp9BzUTIHtl7MsJvSzYxI6zIw7GumM/b+jZMrasYqdUzEc2UVtSr6m9Qocfu2XQucFgubVoGEhKWZ0GixNhAGOcuwA40a4t1I+YoZxdPH7kQX3NzrFURkh/MDvInFzymOhn+1TbYGxnPg+jQxLU0iMSEfoUgwXM3sJOl9ap63w+qjRbs/jXCHb5BPZJSE5IW3yjVyRDuHkJ/lN/pC/3pp36J16Z5XVq817PpJn5V3+A0rLwEA=</latexit><latexit sha1_base64="Yi/D5IJygcVv6SdiGmmV06daJM4=">AAACinicbVHBThsxEHWWlsK2QKBHLlajIhAh2i0gihBSJDj0CIIQpGwUeb2TjcH2ruxZ2miV7+s39CN6ba91sjmUwEiWnt574/E8x7kUFoPgV81bevN2+d3Kqv/+w9r6Rn1z685mheHQ4ZnMzH3MLEihoYMCJdznBpiKJXTjx4up3n0CY0Wmb3GcQ1+xVIuh4AwdNagzPnigO+e024zO6MN52IxkkqFt6gMHIz+p1IPd7v6N2lv0NKmzQGW5Ua/cMNUH9UbQCmZFX4JwDhpkXleDzdpWlGS8UKCRS2ZtLwxy7JfMoOASJn5UWMgZf2Qp9BzUTIHtl7MsJvSzYxI6zIw7GumM/b+jZMrasYqdUzEc2UVtSr6m9Qocfu2XQucFgubVoGEhKWZ0GixNhAGOcuwA40a4t1I+YoZxdPH7kQX3NzrFURkh/MDvInFzymOhn+1TbYGxnPg+jQxLU0iMSEfoUgwXM3sJOl9ap63w+qjRbs/jXCHb5BPZJSE5IW3yjVyRDuHkJ/lN/pC/3pp36J16Z5XVq817PpJn5V3+A0rLwEA=</latexit><latexit sha1_base64="Yi/D5IJygcVv6SdiGmmV06daJM4=">AAACinicbVHBThsxEHWWlsK2QKBHLlajIhAh2i0gihBSJDj0CIIQpGwUeb2TjcH2ruxZ2miV7+s39CN6ba91sjmUwEiWnt574/E8x7kUFoPgV81bevN2+d3Kqv/+w9r6Rn1z685mheHQ4ZnMzH3MLEihoYMCJdznBpiKJXTjx4up3n0CY0Wmb3GcQ1+xVIuh4AwdNagzPnigO+e024zO6MN52IxkkqFt6gMHIz+p1IPd7v6N2lv0NKmzQGW5Ua/cMNUH9UbQCmZFX4JwDhpkXleDzdpWlGS8UKCRS2ZtLwxy7JfMoOASJn5UWMgZf2Qp9BzUTIHtl7MsJvSzYxI6zIw7GumM/b+jZMrasYqdUzEc2UVtSr6m9Qocfu2XQucFgubVoGEhKWZ0GixNhAGOcuwA40a4t1I+YoZxdPH7kQX3NzrFURkh/MDvInFzymOhn+1TbYGxnPg+jQxLU0iMSEfoUgwXM3sJOl9ap63w+qjRbs/jXCHb5BPZJSE5IW3yjVyRDuHkJ/lN/pC/3pp36J16Z5XVq817PpJn5V3+A0rLwEA=</latexit>

b1 = �Wxin,

bj = 0, j = 2, . . . , n� 1,

bn = �Syin<latexit sha1_base64="x6MO/wh2Qfxp9OnphZ9a6dFFzOM=">AAACc3icbVFdSxtBFJ1sv+zaj6iP7cNg2tKHJOyKoqUIgi/SJ0ubRsiEZXb2ZjM6O7vM3LWGZf+Tv6bQJ/0VPjvZBKnaCwOHc+7h3nsmLpS0GAR/W96Tp8+ev1h56a++ev3mbXtt/ZfNSyNgIHKVm5OYW1BSwwAlKjgpDPAsVjCMzw7n+vAcjJW5/omzAsYZT7WcSMHRUVH7WxyF9NM+7Q0vooqZjEpddxnz4+h0Tgdd9pWe7m91mUpytF3dCxdqpevG9mN2Z4vanaAfNEUfg3AJOmRZx9Faa50luSgz0CgUt3YUBgWOK25QCgW1z0oLBRdnPIWRg5pnYMdVc3RNPzomoZPcuKeRNuy/jopn1s6y2HVmHKf2oTYn/6eNSpzsjSupixJBi8WgSako5nSeIE2kAYFq5gAXRrpdqZhywwW6nH1mwX2CTnFaMYQL/C0TN6facQHd26DZF2NV+z5lhqcpJEamU3Qphg8zewwGW/0v/fD7dudgexnnCnlHNslnEpJdckCOyDEZEEEuyR9yRa5bN957b9P7sGj1WkvPBrlXXu8WMjq72Q==</latexit><latexit sha1_base64="x6MO/wh2Qfxp9OnphZ9a6dFFzOM=">AAACc3icbVFdSxtBFJ1sv+zaj6iP7cNg2tKHJOyKoqUIgi/SJ0ubRsiEZXb2ZjM6O7vM3LWGZf+Tv6bQJ/0VPjvZBKnaCwOHc+7h3nsmLpS0GAR/W96Tp8+ev1h56a++ev3mbXtt/ZfNSyNgIHKVm5OYW1BSwwAlKjgpDPAsVjCMzw7n+vAcjJW5/omzAsYZT7WcSMHRUVH7WxyF9NM+7Q0vooqZjEpddxnz4+h0Tgdd9pWe7m91mUpytF3dCxdqpevG9mN2Z4vanaAfNEUfg3AJOmRZx9Faa50luSgz0CgUt3YUBgWOK25QCgW1z0oLBRdnPIWRg5pnYMdVc3RNPzomoZPcuKeRNuy/jopn1s6y2HVmHKf2oTYn/6eNSpzsjSupixJBi8WgSako5nSeIE2kAYFq5gAXRrpdqZhywwW6nH1mwX2CTnFaMYQL/C0TN6facQHd26DZF2NV+z5lhqcpJEamU3Qphg8zewwGW/0v/fD7dudgexnnCnlHNslnEpJdckCOyDEZEEEuyR9yRa5bN957b9P7sGj1WkvPBrlXXu8WMjq72Q==</latexit><latexit sha1_base64="x6MO/wh2Qfxp9OnphZ9a6dFFzOM=">AAACc3icbVFdSxtBFJ1sv+zaj6iP7cNg2tKHJOyKoqUIgi/SJ0ubRsiEZXb2ZjM6O7vM3LWGZf+Tv6bQJ/0VPjvZBKnaCwOHc+7h3nsmLpS0GAR/W96Tp8+ev1h56a++ev3mbXtt/ZfNSyNgIHKVm5OYW1BSwwAlKjgpDPAsVjCMzw7n+vAcjJW5/omzAsYZT7WcSMHRUVH7WxyF9NM+7Q0vooqZjEpddxnz4+h0Tgdd9pWe7m91mUpytF3dCxdqpevG9mN2Z4vanaAfNEUfg3AJOmRZx9Faa50luSgz0CgUt3YUBgWOK25QCgW1z0oLBRdnPIWRg5pnYMdVc3RNPzomoZPcuKeRNuy/jopn1s6y2HVmHKf2oTYn/6eNSpzsjSupixJBi8WgSako5nSeIE2kAYFq5gAXRrpdqZhywwW6nH1mwX2CTnFaMYQL/C0TN6facQHd26DZF2NV+z5lhqcpJEamU3Qphg8zewwGW/0v/fD7dudgexnnCnlHNslnEpJdckCOyDEZEEEuyR9yRa5bN957b9P7sGj1WkvPBrlXXu8WMjq72Q==</latexit><latexit sha1_base64="x6MO/wh2Qfxp9OnphZ9a6dFFzOM=">AAACc3icbVFdSxtBFJ1sv+zaj6iP7cNg2tKHJOyKoqUIgi/SJ0ubRsiEZXb2ZjM6O7vM3LWGZf+Tv6bQJ/0VPjvZBKnaCwOHc+7h3nsmLpS0GAR/W96Tp8+ev1h56a++ev3mbXtt/ZfNSyNgIHKVm5OYW1BSwwAlKjgpDPAsVjCMzw7n+vAcjJW5/omzAsYZT7WcSMHRUVH7WxyF9NM+7Q0vooqZjEpddxnz4+h0Tgdd9pWe7m91mUpytF3dCxdqpevG9mN2Z4vanaAfNEUfg3AJOmRZx9Faa50luSgz0CgUt3YUBgWOK25QCgW1z0oLBRdnPIWRg5pnYMdVc3RNPzomoZPcuKeRNuy/jopn1s6y2HVmHKf2oTYn/6eNSpzsjSupixJBi8WgSako5nSeIE2kAYFq5gAXRrpdqZhywwW6nH1mwX2CTnFaMYQL/C0TN6facQHd26DZF2NV+z5lhqcpJEamU3Qphg8zewwGW/0v/fD7dudgexnnCnlHNslnEpJdckCOyDEZEEEuyR9yRa5bN957b9P7sGj1WkvPBrlXXu8WMjq72Q==</latexit>

2

6666666666666664

d1 e1

c1 d2 e2

c2 d3 e3. . .

. . .. . .

. . .. . .

. . .

cn�2 dn�1 en�1

cn�1 dn

3

7777777777777775

2

6666666666666664

x1

x2

x3

...

...

xn�1

xn

3

7777777777777775

=

2

6666666666666664

b1

b2

b3......

bn�1

bn

3

7777777777777775

<latexit sha1_base64="y/W9bE0+F+voao/baYzQn82cqME=">AAAD33icjVJdb9MwFHUbPkb42sYjPFhUTLxQNe0m4AFpghckeBgSZZOaqrKd29Ra4kT2zdYqyjtPiFd+CD+Gf4PjFLZ+IGEp9dHx8Tm+t5fniTTY6/1qtb0bN2/d3rnj3713/8HD3b39LyYrtIChyJJMn3FmIJEKhigxgbNcA0t5Aqf8/F19fnoB2shMfcZFDuOUxUpOpWBoqcle62eoQcGlyNKUqagMmdZsYVADillVBt2jyg85xFKVPGWo5bzyo0lADyi43zD0hQPRpO/IfkMeUOFgNBk4evCHtlsUZWi2g0bxf5o6olQv+pWLsSioXFSDrsmWwqARKuqHYCv9W856eXNbj709t+9326DewgsXv4LmV1E1rNZ832w488aZN8783878yplvcfb9yW6n1+25RTdBsAQdslwn9o/eD6NMFCkoFAkzZhT0chyXTKMUCdiEwkDOxDmLYWShYimYcekGrKLPLBPRaabtp5A69vqNkqXGLFJulfaNM7N+VpPbzkYFTl+NS6nyAkGJJmhaJBQzWk8rjaQGgcnCAia0tG+lYsY0E2hn2g8N2IFXMc7KEGGOlzKyOeWRVCv1NFUgT2znaKhZHEOkZTxD28VgvWebYNjvvu4Gnw47x4fLdu6Qx+QpeU4C8pIck/fkhAyJaD9pv21/aH/0uPfV++Z9b6Tt1vLOI7KyvB+/AUzKK9c=</latexit><latexit sha1_base64="y/W9bE0+F+voao/baYzQn82cqME=">AAAD33icjVJdb9MwFHUbPkb42sYjPFhUTLxQNe0m4AFpghckeBgSZZOaqrKd29Ra4kT2zdYqyjtPiFd+CD+Gf4PjFLZ+IGEp9dHx8Tm+t5fniTTY6/1qtb0bN2/d3rnj3713/8HD3b39LyYrtIChyJJMn3FmIJEKhigxgbNcA0t5Aqf8/F19fnoB2shMfcZFDuOUxUpOpWBoqcle62eoQcGlyNKUqagMmdZsYVADillVBt2jyg85xFKVPGWo5bzyo0lADyi43zD0hQPRpO/IfkMeUOFgNBk4evCHtlsUZWi2g0bxf5o6olQv+pWLsSioXFSDrsmWwqARKuqHYCv9W856eXNbj709t+9326DewgsXv4LmV1E1rNZ832w488aZN8783878yplvcfb9yW6n1+25RTdBsAQdslwn9o/eD6NMFCkoFAkzZhT0chyXTKMUCdiEwkDOxDmLYWShYimYcekGrKLPLBPRaabtp5A69vqNkqXGLFJulfaNM7N+VpPbzkYFTl+NS6nyAkGJJmhaJBQzWk8rjaQGgcnCAia0tG+lYsY0E2hn2g8N2IFXMc7KEGGOlzKyOeWRVCv1NFUgT2znaKhZHEOkZTxD28VgvWebYNjvvu4Gnw47x4fLdu6Qx+QpeU4C8pIck/fkhAyJaD9pv21/aH/0uPfV++Z9b6Tt1vLOI7KyvB+/AUzKK9c=</latexit><latexit sha1_base64="y/W9bE0+F+voao/baYzQn82cqME=">AAAD33icjVJdb9MwFHUbPkb42sYjPFhUTLxQNe0m4AFpghckeBgSZZOaqrKd29Ra4kT2zdYqyjtPiFd+CD+Gf4PjFLZ+IGEp9dHx8Tm+t5fniTTY6/1qtb0bN2/d3rnj3713/8HD3b39LyYrtIChyJJMn3FmIJEKhigxgbNcA0t5Aqf8/F19fnoB2shMfcZFDuOUxUpOpWBoqcle62eoQcGlyNKUqagMmdZsYVADillVBt2jyg85xFKVPGWo5bzyo0lADyi43zD0hQPRpO/IfkMeUOFgNBk4evCHtlsUZWi2g0bxf5o6olQv+pWLsSioXFSDrsmWwqARKuqHYCv9W856eXNbj709t+9326DewgsXv4LmV1E1rNZ832w488aZN8783878yplvcfb9yW6n1+25RTdBsAQdslwn9o/eD6NMFCkoFAkzZhT0chyXTKMUCdiEwkDOxDmLYWShYimYcekGrKLPLBPRaabtp5A69vqNkqXGLFJulfaNM7N+VpPbzkYFTl+NS6nyAkGJJmhaJBQzWk8rjaQGgcnCAia0tG+lYsY0E2hn2g8N2IFXMc7KEGGOlzKyOeWRVCv1NFUgT2znaKhZHEOkZTxD28VgvWebYNjvvu4Gnw47x4fLdu6Qx+QpeU4C8pIck/fkhAyJaD9pv21/aH/0uPfV++Z9b6Tt1vLOI7KyvB+/AUzKK9c=</latexit><latexit sha1_base64="y/W9bE0+F+voao/baYzQn82cqME=">AAAD33icjVJdb9MwFHUbPkb42sYjPFhUTLxQNe0m4AFpghckeBgSZZOaqrKd29Ra4kT2zdYqyjtPiFd+CD+Gf4PjFLZ+IGEp9dHx8Tm+t5fniTTY6/1qtb0bN2/d3rnj3713/8HD3b39LyYrtIChyJJMn3FmIJEKhigxgbNcA0t5Aqf8/F19fnoB2shMfcZFDuOUxUpOpWBoqcle62eoQcGlyNKUqagMmdZsYVADillVBt2jyg85xFKVPGWo5bzyo0lADyi43zD0hQPRpO/IfkMeUOFgNBk4evCHtlsUZWi2g0bxf5o6olQv+pWLsSioXFSDrsmWwqARKuqHYCv9W856eXNbj709t+9326DewgsXv4LmV1E1rNZ832w488aZN8783878yplvcfb9yW6n1+25RTdBsAQdslwn9o/eD6NMFCkoFAkzZhT0chyXTKMUCdiEwkDOxDmLYWShYimYcekGrKLPLBPRaabtp5A69vqNkqXGLFJulfaNM7N+VpPbzkYFTl+NS6nyAkGJJmhaJBQzWk8rjaQGgcnCAia0tG+lYsY0E2hn2g8N2IFXMc7KEGGOlzKyOeWRVCv1NFUgT2znaKhZHEOkZTxD28VgvWebYNjvvu4Gnw47x4fLdu6Qx+QpeU4C8pIck/fkhAyJaD9pv21/aH/0uPfV++Z9b6Tt1vLOI7KyvB+/AUzKK9c=</latexit>

Example: System for a general n<latexit sha1_base64="xPbzUB34ZPva3FjyRCaBTe7M6EI=">AAACXXicbZDPbtNAEMY3BtpiSknLgQOXFSkSp8iOQLQ9VaqQOBZBaKU4isbrsbPq/rF2x9DIyovwNL3CG3DjUdg4OdCWOX36ZkbfzC+vlfSUJL970YOHj7a2dx7HT3af7j3r7x989bZxAsfCKusuc/CopMExSVJ4WTsEnSu8yK/OVv2Lb+i8tOYLLWqcaqiMLKUACtas/zYzVpoCDWWE15SX7Ydr0LXC5Qn/vPCEmpfWceAVGn Sg+KE5jGf9QTJMuuL3RboRA7ap89l+7yArrGh0yBEKvJ+kSU3TFhxJEbLirPFYg7iCCidBGtDop2333pK/Dk7RnVFaQ7xz/91oQXu/0HmY1EBzf7e3Mv/XmzRUHk1baeqG0Ih1UNkoTpavWPFCOhSkFkGAcDLcysUcHAgKROPMY8BtKpq3Hbvvsgg57Ttpbv2z/oJytYxjnjmoKiycrOYUKKZ3md0X49HweJh+Gg1ORxucO+wle8XesJS9Z6fsIztnYybYD3bDfrJfvT/RVrQb7a1Ho95m5zm7VdGLv42Xt2Q=</latexit><latexit sha1_base64="xPbzUB34ZPva3FjyRCaBTe7M6EI=">AAACXXicbZDPbtNAEMY3BtpiSknLgQOXFSkSp8iOQLQ9VaqQOBZBaKU4isbrsbPq/rF2x9DIyovwNL3CG3DjUdg4OdCWOX36ZkbfzC+vlfSUJL970YOHj7a2dx7HT3af7j3r7x989bZxAsfCKusuc/CopMExSVJ4WTsEnSu8yK/OVv2Lb+i8tOYLLWqcaqiMLKUACtas/zYzVpoCDWWE15SX7Ydr0LXC5Qn/vPCEmpfWceAVGn Sg+KE5jGf9QTJMuuL3RboRA7ap89l+7yArrGh0yBEKvJ+kSU3TFhxJEbLirPFYg7iCCidBGtDop2333pK/Dk7RnVFaQ7xz/91oQXu/0HmY1EBzf7e3Mv/XmzRUHk1baeqG0Ih1UNkoTpavWPFCOhSkFkGAcDLcysUcHAgKROPMY8BtKpq3Hbvvsgg57Ttpbv2z/oJytYxjnjmoKiycrOYUKKZ3md0X49HweJh+Gg1ORxucO+wle8XesJS9Z6fsIztnYybYD3bDfrJfvT/RVrQb7a1Ho95m5zm7VdGLv42Xt2Q=</latexit><latexit sha1_base64="xPbzUB34ZPva3FjyRCaBTe7M6EI=">AAACXXicbZDPbtNAEMY3BtpiSknLgQOXFSkSp8iOQLQ9VaqQOBZBaKU4isbrsbPq/rF2x9DIyovwNL3CG3DjUdg4OdCWOX36ZkbfzC+vlfSUJL970YOHj7a2dx7HT3af7j3r7x989bZxAsfCKusuc/CopMExSVJ4WTsEnSu8yK/OVv2Lb+i8tOYLLWqcaqiMLKUACtas/zYzVpoCDWWE15SX7Ydr0LXC5Qn/vPCEmpfWceAVGn Sg+KE5jGf9QTJMuuL3RboRA7ap89l+7yArrGh0yBEKvJ+kSU3TFhxJEbLirPFYg7iCCidBGtDop2333pK/Dk7RnVFaQ7xz/91oQXu/0HmY1EBzf7e3Mv/XmzRUHk1baeqG0Ih1UNkoTpavWPFCOhSkFkGAcDLcysUcHAgKROPMY8BtKpq3Hbvvsgg57Ttpbv2z/oJytYxjnjmoKiycrOYUKKZ3md0X49HweJh+Gg1ORxucO+wle8XesJS9Z6fsIztnYybYD3bDfrJfvT/RVrQb7a1Ho95m5zm7VdGLv42Xt2Q=</latexit><latexit sha1_base64="xPbzUB34ZPva3FjyRCaBTe7M6EI=">AAACXXicbZDPbtNAEMY3BtpiSknLgQOXFSkSp8iOQLQ9VaqQOBZBaKU4isbrsbPq/rF2x9DIyovwNL3CG3DjUdg4OdCWOX36ZkbfzC+vlfSUJL970YOHj7a2dx7HT3af7j3r7x989bZxAsfCKusuc/CopMExSVJ4WTsEnSu8yK/OVv2Lb+i8tOYLLWqcaqiMLKUACtas/zYzVpoCDWWE15SX7Ydr0LXC5Qn/vPCEmpfWceAVGn Sg+KE5jGf9QTJMuuL3RboRA7ap89l+7yArrGh0yBEKvJ+kSU3TFhxJEbLirPFYg7iCCidBGtDop2333pK/Dk7RnVFaQ7xz/91oQXu/0HmY1EBzf7e3Mv/XmzRUHk1baeqG0Ih1UNkoTpavWPFCOhSkFkGAcDLcysUcHAgKROPMY8BtKpq3Hbvvsgg57Ttpbv2z/oJytYxjnjmoKiycrOYUKKZ3md0X49HweJh+Gg1ORxucO+wle8XesJS9Z6fsIztnYybYD3bDfrJfvT/RVrQb7a1Ho95m5zm7VdGLv42Xt2Q=</latexit>

Page 4: Tridiagonal linear systemswright/courses/m365/TridiagonalSystems.pdf · The Thomas algorithm is implemented in the tridisolveMATLAB function on the course webpage. Exercise 1.Use

Solving tridiagonal linear systemsTridiagonal linear systems can be solved very efficiently by using a special version of the Gaussian elimination algorithm.

This algorithm is called the Thomas algorithm (or sometimes the Crout algorithm).

2

66666666664

d1 e1 b1c1 d2 e2 b2

c2 d3 e3 b3. . .

. . .. . .

.... . .

. . .. . .

...cn�2 dn�1 en�1 bn�1

cn�1 dn bn

3

77777777775

<latexit sha1_base64="BEkr2hu4eNIAOQSftLOIK+wewKw=">AAADaHichZLNjtMwEMedlo8lfG2XA0JcrK2ouLBq2kXABa3EheMiUXaluqoce5pamziRPVmoQh6Hp+EKB56Bl8B1gmi7KzFRor9nfmOPJxMXqbI4HP4KOt0bN2/d3rsT3r13/8HD/d7BJ5uXRsBE5GluzmNuIVUaJqgwhfPCAM/iFM7ii3fr+NklGKty/RFXBcwynmi1UIKjc817wVuWwgKnIYshUbrixvBVXYnGvoo6lPOIDij4778ndmvGQuHdcj7yyGgLGK2BARXeLedjj4w3gHEDDCiTMkd7rfDhS79o4f/gu/C6gEq/GNW+CKei2hfyV8WN2uDbjKjJ0C1T05CBlm2DQmZUssRZON/vD4+G3uhVEbWiT1o7dR0/YDIXZQYaRcqtnUbDAmduX1QiBbdzaaHg4oInMHVS8wzsrPJ/uqbPnEfSRW7cq5F672ZGxTNrV1nsyIzj0u7G1s7rYtMSF69nldJFiaBFc9CiTCnmdD02VCoDAtOVE1wY5WqlYskNF+iGK2QW3OTpBJcVQ/iCn5V051Qvld66T3MLjNM6DCkzPElA+j66Lka7PbsqJqOjN0fRh+P+yXHbzj3ylByS5yQir8gJeU9OyYSI4FvwPfgR/Oz87va6j7tPGrQTtDmPyJZ1D/8AA+r8bA==</latexit><latexit sha1_base64="BEkr2hu4eNIAOQSftLOIK+wewKw=">AAADaHichZLNjtMwEMedlo8lfG2XA0JcrK2ouLBq2kXABa3EheMiUXaluqoce5pamziRPVmoQh6Hp+EKB56Bl8B1gmi7KzFRor9nfmOPJxMXqbI4HP4KOt0bN2/d3rsT3r13/8HD/d7BJ5uXRsBE5GluzmNuIVUaJqgwhfPCAM/iFM7ii3fr+NklGKty/RFXBcwynmi1UIKjc817wVuWwgKnIYshUbrixvBVXYnGvoo6lPOIDij4778ndmvGQuHdcj7yyGgLGK2BARXeLedjj4w3gHEDDCiTMkd7rfDhS79o4f/gu/C6gEq/GNW+CKei2hfyV8WN2uDbjKjJ0C1T05CBlm2DQmZUssRZON/vD4+G3uhVEbWiT1o7dR0/YDIXZQYaRcqtnUbDAmduX1QiBbdzaaHg4oInMHVS8wzsrPJ/uqbPnEfSRW7cq5F672ZGxTNrV1nsyIzj0u7G1s7rYtMSF69nldJFiaBFc9CiTCnmdD02VCoDAtOVE1wY5WqlYskNF+iGK2QW3OTpBJcVQ/iCn5V051Qvld66T3MLjNM6DCkzPElA+j66Lka7PbsqJqOjN0fRh+P+yXHbzj3ylByS5yQir8gJeU9OyYSI4FvwPfgR/Oz87va6j7tPGrQTtDmPyJZ1D/8AA+r8bA==</latexit><latexit sha1_base64="BEkr2hu4eNIAOQSftLOIK+wewKw=">AAADaHichZLNjtMwEMedlo8lfG2XA0JcrK2ouLBq2kXABa3EheMiUXaluqoce5pamziRPVmoQh6Hp+EKB56Bl8B1gmi7KzFRor9nfmOPJxMXqbI4HP4KOt0bN2/d3rsT3r13/8HD/d7BJ5uXRsBE5GluzmNuIVUaJqgwhfPCAM/iFM7ii3fr+NklGKty/RFXBcwynmi1UIKjc817wVuWwgKnIYshUbrixvBVXYnGvoo6lPOIDij4778ndmvGQuHdcj7yyGgLGK2BARXeLedjj4w3gHEDDCiTMkd7rfDhS79o4f/gu/C6gEq/GNW+CKei2hfyV8WN2uDbjKjJ0C1T05CBlm2DQmZUssRZON/vD4+G3uhVEbWiT1o7dR0/YDIXZQYaRcqtnUbDAmduX1QiBbdzaaHg4oInMHVS8wzsrPJ/uqbPnEfSRW7cq5F672ZGxTNrV1nsyIzj0u7G1s7rYtMSF69nldJFiaBFc9CiTCnmdD02VCoDAtOVE1wY5WqlYskNF+iGK2QW3OTpBJcVQ/iCn5V051Qvld66T3MLjNM6DCkzPElA+j66Lka7PbsqJqOjN0fRh+P+yXHbzj3ylByS5yQir8gJeU9OyYSI4FvwPfgR/Oz87va6j7tPGrQTtDmPyJZ1D/8AA+r8bA==</latexit><latexit sha1_base64="BEkr2hu4eNIAOQSftLOIK+wewKw=">AAADaHichZLNjtMwEMedlo8lfG2XA0JcrK2ouLBq2kXABa3EheMiUXaluqoce5pamziRPVmoQh6Hp+EKB56Bl8B1gmi7KzFRor9nfmOPJxMXqbI4HP4KOt0bN2/d3rsT3r13/8HD/d7BJ5uXRsBE5GluzmNuIVUaJqgwhfPCAM/iFM7ii3fr+NklGKty/RFXBcwynmi1UIKjc817wVuWwgKnIYshUbrixvBVXYnGvoo6lPOIDij4778ndmvGQuHdcj7yyGgLGK2BARXeLedjj4w3gHEDDCiTMkd7rfDhS79o4f/gu/C6gEq/GNW+CKei2hfyV8WN2uDbjKjJ0C1T05CBlm2DQmZUssRZON/vD4+G3uhVEbWiT1o7dR0/YDIXZQYaRcqtnUbDAmduX1QiBbdzaaHg4oInMHVS8wzsrPJ/uqbPnEfSRW7cq5F672ZGxTNrV1nsyIzj0u7G1s7rYtMSF69nldJFiaBFc9CiTCnmdD02VCoDAtOVE1wY5WqlYskNF+iGK2QW3OTpBJcVQ/iCn5V051Qvld66T3MLjNM6DCkzPElA+j66Lka7PbsqJqOjN0fRh+P+yXHbzj3ylByS5yQir8gJeU9OyYSI4FvwPfgR/Oz87va6j7tPGrQTtDmPyJZ1D/8AA+r8bA==</latexit>

Key ideas of the algorithm: 1. Reduction to upper triangular form only requires eliminating cj terms.2. Resulting upper triangular matrix only has two non-zeros per row.

Step 1: upper triangular form

for i = 1 to n� 1 doµ = ci/didi+1 = di+1 � µeibi+1 = bi+1 � µbi

end<latexit sha1_base64="MCx9CH0NNS4G3CDWqP0nXTqe44o=">AAACzHicbVFNa9wwFJTdr8T92qTHXkTXhULJxl5akhwCgV56awrdJrBajCw/2yKybKTntIvxtX+kv6r/pvJmG7rJvtNo3gwa5qWNkhaj6I/nP3j46PGTnd3g6bPnL16O9va/27o1AmaiVrW5TLkFJTXMUKKCy8YAr1IFF+nVp2F/cQ3Gylp/w2UDi4oXWuZScHRUMvqd14aG8jSkMcWahvogDmlWU8YCVtqGC+iiyVTqnoasaukpFYk8zBIZblNkSSffx71T/UMHdHCBe/VbHemtI91wpLcO0FkyGkeTaDX0PojXYEzWc57sefssq0VbgUahuLXzOGpw0XGDUijoA9ZacDmueAFzBzWvwC66VZs9feuYjA695LVGumL/d3S8snZZpU5ZcSzt3d1AbtvNW8yPF53UTYugxc1HeauG3ofT0EwaEKiWDnBhpMtKRckNF+gOGDAL7rq6wLJjCD/xh8zcP91H1+NGglVeTFUfBJQZXhSQGVmU6FqM73Z2H8ymk5NJ/HU6PvuwrnOHvCZvyDsSkyNyRj6TczIjwtv1Dr1j78T/4rd+5/c3Ut9be16RjfF//QU5Y9Yc</latexit><latexit sha1_base64="MCx9CH0NNS4G3CDWqP0nXTqe44o=">AAACzHicbVFNa9wwFJTdr8T92qTHXkTXhULJxl5akhwCgV56awrdJrBajCw/2yKybKTntIvxtX+kv6r/pvJmG7rJvtNo3gwa5qWNkhaj6I/nP3j46PGTnd3g6bPnL16O9va/27o1AmaiVrW5TLkFJTXMUKKCy8YAr1IFF+nVp2F/cQ3Gylp/w2UDi4oXWuZScHRUMvqd14aG8jSkMcWahvogDmlWU8YCVtqGC+iiyVTqnoasaukpFYk8zBIZblNkSSffx71T/UMHdHCBe/VbHemtI91wpLcO0FkyGkeTaDX0PojXYEzWc57sefssq0VbgUahuLXzOGpw0XGDUijoA9ZacDmueAFzBzWvwC66VZs9feuYjA695LVGumL/d3S8snZZpU5ZcSzt3d1AbtvNW8yPF53UTYugxc1HeauG3ofT0EwaEKiWDnBhpMtKRckNF+gOGDAL7rq6wLJjCD/xh8zcP91H1+NGglVeTFUfBJQZXhSQGVmU6FqM73Z2H8ymk5NJ/HU6PvuwrnOHvCZvyDsSkyNyRj6TczIjwtv1Dr1j78T/4rd+5/c3Ut9be16RjfF//QU5Y9Yc</latexit><latexit sha1_base64="MCx9CH0NNS4G3CDWqP0nXTqe44o=">AAACzHicbVFNa9wwFJTdr8T92qTHXkTXhULJxl5akhwCgV56awrdJrBajCw/2yKybKTntIvxtX+kv6r/pvJmG7rJvtNo3gwa5qWNkhaj6I/nP3j46PGTnd3g6bPnL16O9va/27o1AmaiVrW5TLkFJTXMUKKCy8YAr1IFF+nVp2F/cQ3Gylp/w2UDi4oXWuZScHRUMvqd14aG8jSkMcWahvogDmlWU8YCVtqGC+iiyVTqnoasaukpFYk8zBIZblNkSSffx71T/UMHdHCBe/VbHemtI91wpLcO0FkyGkeTaDX0PojXYEzWc57sefssq0VbgUahuLXzOGpw0XGDUijoA9ZacDmueAFzBzWvwC66VZs9feuYjA695LVGumL/d3S8snZZpU5ZcSzt3d1AbtvNW8yPF53UTYugxc1HeauG3ofT0EwaEKiWDnBhpMtKRckNF+gOGDAL7rq6wLJjCD/xh8zcP91H1+NGglVeTFUfBJQZXhSQGVmU6FqM73Z2H8ymk5NJ/HU6PvuwrnOHvCZvyDsSkyNyRj6TczIjwtv1Dr1j78T/4rd+5/c3Ut9be16RjfF//QU5Y9Yc</latexit><latexit sha1_base64="MCx9CH0NNS4G3CDWqP0nXTqe44o=">AAACzHicbVFNa9wwFJTdr8T92qTHXkTXhULJxl5akhwCgV56awrdJrBajCw/2yKybKTntIvxtX+kv6r/pvJmG7rJvtNo3gwa5qWNkhaj6I/nP3j46PGTnd3g6bPnL16O9va/27o1AmaiVrW5TLkFJTXMUKKCy8YAr1IFF+nVp2F/cQ3Gylp/w2UDi4oXWuZScHRUMvqd14aG8jSkMcWahvogDmlWU8YCVtqGC+iiyVTqnoasaukpFYk8zBIZblNkSSffx71T/UMHdHCBe/VbHemtI91wpLcO0FkyGkeTaDX0PojXYEzWc57sefssq0VbgUahuLXzOGpw0XGDUijoA9ZacDmueAFzBzWvwC66VZs9feuYjA695LVGumL/d3S8snZZpU5ZcSzt3d1AbtvNW8yPF53UTYugxc1HeauG3ofT0EwaEKiWDnBhpMtKRckNF+gOGDAL7rq6wLJjCD/xh8zcP91H1+NGglVeTFUfBJQZXhSQGVmU6FqM73Z2H8ymk5NJ/HU6PvuwrnOHvCZvyDsSkyNyRj6TczIjwtv1Dr1j78T/4rd+5/c3Ut9be16RjfF//QU5Y9Yc</latexit>

Augmented system

Page 5: Tridiagonal linear systemswright/courses/m365/TridiagonalSystems.pdf · The Thomas algorithm is implemented in the tridisolveMATLAB function on the course webpage. Exercise 1.Use

Solving tridiagonal linear systemsTridiagonal linear systems can be solved very efficiently by using a special version of the Gaussian elimination algorithm.

This algorithm is called the Thomas algorithm (or sometime Crout).

Key ideas of the algorithm: 1. Reduction to upper triangular form only requires eliminating cj terms.2. Resulting upper triangular matrix only has two non-zeros per row.

xn = bn/dnfor i = n� 1 to 1 do

xi = (bi � eixi+1)/diend

<latexit sha1_base64="0GJaKywBBWwRvF+ItFDb5VSqzIw=">AAACkXicbVFLb9NAEN6YVzGvtHDjsiJGKkINdgTiIVWK4ILEpUiEVoqjaL0e26uu19buGBpZ/ovc+R9cQYzdHGjLHGY+zew3M/tNUmvlMAx/jrxr12/cvLVz279z9979B+Pdva+uaqyEhax0ZU8S4UArAwtUqOGktiDKRMNxcvqhrx9/A+tUZb7gpoZVKXKjMiUFUmo9LoKzdWs6fsiTPr5Iex/wOPazyvJAHQY8MAdRwLHiEU+rvhIXrhYS2nA6U0SlDor4+wmFAw7kqaV6HnXPqJsaeoFJ1+NJOA0H41dBtAUTtrWj9e5oL04r2ZRgUGrh3DIKa1y1wqKSGjo/bhzQHqcihyVBI0pwq3aQpONPKZPy/g9ZZZAP2X8ZrSid25QJvSwFFu5yrU/+r7ZsMHuzapWpGwQjzwdlje716fXlqbIgUW8ICGkV7cplIayQSFfwYwd0IpNj0cYIZ/hdpTSnfUU6Xthg2BcT3fk+j63Ic0itygskFaPLml0Fi9n07TT6PJvMX27l3GGP2RO2zyL2ms3ZR3bEFkyyH+wX+83+eI+8d97ce3/+1BttOQ/ZBfM+/QXDCMUI</latexit><latexit sha1_base64="0GJaKywBBWwRvF+ItFDb5VSqzIw=">AAACkXicbVFLb9NAEN6YVzGvtHDjsiJGKkINdgTiIVWK4ILEpUiEVoqjaL0e26uu19buGBpZ/ovc+R9cQYzdHGjLHGY+zew3M/tNUmvlMAx/jrxr12/cvLVz279z9979B+Pdva+uaqyEhax0ZU8S4UArAwtUqOGktiDKRMNxcvqhrx9/A+tUZb7gpoZVKXKjMiUFUmo9LoKzdWs6fsiTPr5Iex/wOPazyvJAHQY8MAdRwLHiEU+rvhIXrhYS2nA6U0SlDor4+wmFAw7kqaV6HnXPqJsaeoFJ1+NJOA0H41dBtAUTtrWj9e5oL04r2ZRgUGrh3DIKa1y1wqKSGjo/bhzQHqcihyVBI0pwq3aQpONPKZPy/g9ZZZAP2X8ZrSid25QJvSwFFu5yrU/+r7ZsMHuzapWpGwQjzwdlje716fXlqbIgUW8ICGkV7cplIayQSFfwYwd0IpNj0cYIZ/hdpTSnfUU6Xthg2BcT3fk+j63Ic0itygskFaPLml0Fi9n07TT6PJvMX27l3GGP2RO2zyL2ms3ZR3bEFkyyH+wX+83+eI+8d97ce3/+1BttOQ/ZBfM+/QXDCMUI</latexit><latexit sha1_base64="0GJaKywBBWwRvF+ItFDb5VSqzIw=">AAACkXicbVFLb9NAEN6YVzGvtHDjsiJGKkINdgTiIVWK4ILEpUiEVoqjaL0e26uu19buGBpZ/ovc+R9cQYzdHGjLHGY+zew3M/tNUmvlMAx/jrxr12/cvLVz279z9979B+Pdva+uaqyEhax0ZU8S4UArAwtUqOGktiDKRMNxcvqhrx9/A+tUZb7gpoZVKXKjMiUFUmo9LoKzdWs6fsiTPr5Iex/wOPazyvJAHQY8MAdRwLHiEU+rvhIXrhYS2nA6U0SlDor4+wmFAw7kqaV6HnXPqJsaeoFJ1+NJOA0H41dBtAUTtrWj9e5oL04r2ZRgUGrh3DIKa1y1wqKSGjo/bhzQHqcihyVBI0pwq3aQpONPKZPy/g9ZZZAP2X8ZrSid25QJvSwFFu5yrU/+r7ZsMHuzapWpGwQjzwdlje716fXlqbIgUW8ICGkV7cplIayQSFfwYwd0IpNj0cYIZ/hdpTSnfUU6Xthg2BcT3fk+j63Ic0itygskFaPLml0Fi9n07TT6PJvMX27l3GGP2RO2zyL2ms3ZR3bEFkyyH+wX+83+eI+8d97ce3/+1BttOQ/ZBfM+/QXDCMUI</latexit><latexit sha1_base64="0GJaKywBBWwRvF+ItFDb5VSqzIw=">AAACkXicbVFLb9NAEN6YVzGvtHDjsiJGKkINdgTiIVWK4ILEpUiEVoqjaL0e26uu19buGBpZ/ovc+R9cQYzdHGjLHGY+zew3M/tNUmvlMAx/jrxr12/cvLVz279z9979B+Pdva+uaqyEhax0ZU8S4UArAwtUqOGktiDKRMNxcvqhrx9/A+tUZb7gpoZVKXKjMiUFUmo9LoKzdWs6fsiTPr5Iex/wOPazyvJAHQY8MAdRwLHiEU+rvhIXrhYS2nA6U0SlDor4+wmFAw7kqaV6HnXPqJsaeoFJ1+NJOA0H41dBtAUTtrWj9e5oL04r2ZRgUGrh3DIKa1y1wqKSGjo/bhzQHqcihyVBI0pwq3aQpONPKZPy/g9ZZZAP2X8ZrSid25QJvSwFFu5yrU/+r7ZsMHuzapWpGwQjzwdlje716fXlqbIgUW8ICGkV7cplIayQSFfwYwd0IpNj0cYIZ/hdpTSnfUU6Xthg2BcT3fk+j63Ic0itygskFaPLml0Fi9n07TT6PJvMX27l3GGP2RO2zyL2ms3ZR3bEFkyyH+wX+83+eI+8d97ce3/+1BttOQ/ZBfM+/QXDCMUI</latexit>

Step 2: Back substitution

Upper triangular system (row echelon form)2

66666666664

d1 e1 b1d2 e2 b2

d3 e3 b3. . .

. . ....

. . .. . .

...dn�1 en�1 bn�1

dn bn

3

77777777775

<latexit sha1_base64="a5wDxcD0Djfmr359n21glMmNMW0=">AAADSHicdZLLjtMwFIadDJchXObCEglZVIzYUDXtIGA3EhuWg0SZkeqqcpzT1BrHieyTgSpkydOwhafgCXgMVogdrhNE24FjJfp9vt8+8YmTUkmLg8H3INy5dv3Gzd1b0e07d+/t7R8cvrNFZQSMRaEKc55wC0pqGKNEBeelAZ4nCs6Si1crfnYJxspCv8VlCdOcZ1rOpeDoUrOD4CFTMMdJxBLIpK65MXzZ1KKNj6KJ0llMjyj499+RuDljkVPpbOj5cIMOV/SIej7yfLRGRy31nKVpgXZdrAa79JPO9l/jtq2rWOunceOr/lFJq9aMnVV3sKERA512DYiYkdkCp9FsvzfoD3zQqyLuRI90ceo6esjSQlQ5aBSKWzuJByVO3b4ohQK3c2Wh5OKCZzBxUvMc7LT2f7Khj10mpfPCuEcj9dn1FTXPrV3miXPmHBd2m62S/2KTCucvprXUZYWgRVtoXimKBV1dC5pKAwLV0gkujHTfSsWCGy7QXZ6IWXA3S2e4qBnCB3wvU1enfib1xnnaU2CimiiizPAsg9T30XUx3u7ZVTEe9l/24zfHvZPjrp275AF5RJ6QmDwnJ+Q1OSVjIoJPwefgS/A1/Bb+CH+Gv1prGHRr7pON2Al/Awjm8kE=</latexit><latexit sha1_base64="a5wDxcD0Djfmr359n21glMmNMW0=">AAADSHicdZLLjtMwFIadDJchXObCEglZVIzYUDXtIGA3EhuWg0SZkeqqcpzT1BrHieyTgSpkydOwhafgCXgMVogdrhNE24FjJfp9vt8+8YmTUkmLg8H3INy5dv3Gzd1b0e07d+/t7R8cvrNFZQSMRaEKc55wC0pqGKNEBeelAZ4nCs6Si1crfnYJxspCv8VlCdOcZ1rOpeDoUrOD4CFTMMdJxBLIpK65MXzZ1KKNj6KJ0llMjyj499+RuDljkVPpbOj5cIMOV/SIej7yfLRGRy31nKVpgXZdrAa79JPO9l/jtq2rWOunceOr/lFJq9aMnVV3sKERA512DYiYkdkCp9FsvzfoD3zQqyLuRI90ceo6esjSQlQ5aBSKWzuJByVO3b4ohQK3c2Wh5OKCZzBxUvMc7LT2f7Khj10mpfPCuEcj9dn1FTXPrV3miXPmHBd2m62S/2KTCucvprXUZYWgRVtoXimKBV1dC5pKAwLV0gkujHTfSsWCGy7QXZ6IWXA3S2e4qBnCB3wvU1enfib1xnnaU2CimiiizPAsg9T30XUx3u7ZVTEe9l/24zfHvZPjrp275AF5RJ6QmDwnJ+Q1OSVjIoJPwefgS/A1/Bb+CH+Gv1prGHRr7pON2Al/Awjm8kE=</latexit><latexit sha1_base64="a5wDxcD0Djfmr359n21glMmNMW0=">AAADSHicdZLLjtMwFIadDJchXObCEglZVIzYUDXtIGA3EhuWg0SZkeqqcpzT1BrHieyTgSpkydOwhafgCXgMVogdrhNE24FjJfp9vt8+8YmTUkmLg8H3INy5dv3Gzd1b0e07d+/t7R8cvrNFZQSMRaEKc55wC0pqGKNEBeelAZ4nCs6Si1crfnYJxspCv8VlCdOcZ1rOpeDoUrOD4CFTMMdJxBLIpK65MXzZ1KKNj6KJ0llMjyj499+RuDljkVPpbOj5cIMOV/SIej7yfLRGRy31nKVpgXZdrAa79JPO9l/jtq2rWOunceOr/lFJq9aMnVV3sKERA512DYiYkdkCp9FsvzfoD3zQqyLuRI90ceo6esjSQlQ5aBSKWzuJByVO3b4ohQK3c2Wh5OKCZzBxUvMc7LT2f7Khj10mpfPCuEcj9dn1FTXPrV3miXPmHBd2m62S/2KTCucvprXUZYWgRVtoXimKBV1dC5pKAwLV0gkujHTfSsWCGy7QXZ6IWXA3S2e4qBnCB3wvU1enfib1xnnaU2CimiiizPAsg9T30XUx3u7ZVTEe9l/24zfHvZPjrp275AF5RJ6QmDwnJ+Q1OSVjIoJPwefgS/A1/Bb+CH+Gv1prGHRr7pON2Al/Awjm8kE=</latexit><latexit sha1_base64="a5wDxcD0Djfmr359n21glMmNMW0=">AAADSHicdZLLjtMwFIadDJchXObCEglZVIzYUDXtIGA3EhuWg0SZkeqqcpzT1BrHieyTgSpkydOwhafgCXgMVogdrhNE24FjJfp9vt8+8YmTUkmLg8H3INy5dv3Gzd1b0e07d+/t7R8cvrNFZQSMRaEKc55wC0pqGKNEBeelAZ4nCs6Si1crfnYJxspCv8VlCdOcZ1rOpeDoUrOD4CFTMMdJxBLIpK65MXzZ1KKNj6KJ0llMjyj499+RuDljkVPpbOj5cIMOV/SIej7yfLRGRy31nKVpgXZdrAa79JPO9l/jtq2rWOunceOr/lFJq9aMnVV3sKERA512DYiYkdkCp9FsvzfoD3zQqyLuRI90ceo6esjSQlQ5aBSKWzuJByVO3b4ohQK3c2Wh5OKCZzBxUvMc7LT2f7Khj10mpfPCuEcj9dn1FTXPrV3miXPmHBd2m62S/2KTCucvprXUZYWgRVtoXimKBV1dC5pKAwLV0gkujHTfSsWCGy7QXZ6IWXA3S2e4qBnCB3wvU1enfib1xnnaU2CimiiizPAsg9T30XUx3u7ZVTEe9l/24zfHvZPjrp275AF5RJ6QmDwnJ+Q1OSVjIoJPwefgS/A1/Bb+CH+Gv1prGHRr7pON2Al/Awjm8kE=</latexit>

Page 6: Tridiagonal linear systemswright/courses/m365/TridiagonalSystems.pdf · The Thomas algorithm is implemented in the tridisolveMATLAB function on the course webpage. Exercise 1.Use

Solving tridiagonal linear systems: recap

Step 2 : Back substitutionUpper triangular system (row echelon form)2

66666666664

d1 e1 b1d2 e2 b2

d3 e3 b3. . .

. . ....

. . .. . .

...dn�1 en�1 bn�1

dn bn

3

77777777775

<latexit sha1_base64="a5wDxcD0Djfmr359n21glMmNMW0=">AAADSHicdZLLjtMwFIadDJchXObCEglZVIzYUDXtIGA3EhuWg0SZkeqqcpzT1BrHieyTgSpkydOwhafgCXgMVogdrhNE24FjJfp9vt8+8YmTUkmLg8H3INy5dv3Gzd1b0e07d+/t7R8cvrNFZQSMRaEKc55wC0pqGKNEBeelAZ4nCs6Si1crfnYJxspCv8VlCdOcZ1rOpeDoUrOD4CFTMMdJxBLIpK65MXzZ1KKNj6KJ0llMjyj499+RuDljkVPpbOj5cIMOV/SIej7yfLRGRy31nKVpgXZdrAa79JPO9l/jtq2rWOunceOr/lFJq9aMnVV3sKERA512DYiYkdkCp9FsvzfoD3zQqyLuRI90ceo6esjSQlQ5aBSKWzuJByVO3b4ohQK3c2Wh5OKCZzBxUvMc7LT2f7Khj10mpfPCuEcj9dn1FTXPrV3miXPmHBd2m62S/2KTCucvprXUZYWgRVtoXimKBV1dC5pKAwLV0gkujHTfSsWCGy7QXZ6IWXA3S2e4qBnCB3wvU1enfib1xnnaU2CimiiizPAsg9T30XUx3u7ZVTEe9l/24zfHvZPjrp275AF5RJ6QmDwnJ+Q1OSVjIoJPwefgS/A1/Bb+CH+Gv1prGHRr7pON2Al/Awjm8kE=</latexit><latexit sha1_base64="a5wDxcD0Djfmr359n21glMmNMW0=">AAADSHicdZLLjtMwFIadDJchXObCEglZVIzYUDXtIGA3EhuWg0SZkeqqcpzT1BrHieyTgSpkydOwhafgCXgMVogdrhNE24FjJfp9vt8+8YmTUkmLg8H3INy5dv3Gzd1b0e07d+/t7R8cvrNFZQSMRaEKc55wC0pqGKNEBeelAZ4nCs6Si1crfnYJxspCv8VlCdOcZ1rOpeDoUrOD4CFTMMdJxBLIpK65MXzZ1KKNj6KJ0llMjyj499+RuDljkVPpbOj5cIMOV/SIej7yfLRGRy31nKVpgXZdrAa79JPO9l/jtq2rWOunceOr/lFJq9aMnVV3sKERA512DYiYkdkCp9FsvzfoD3zQqyLuRI90ceo6esjSQlQ5aBSKWzuJByVO3b4ohQK3c2Wh5OKCZzBxUvMc7LT2f7Khj10mpfPCuEcj9dn1FTXPrV3miXPmHBd2m62S/2KTCucvprXUZYWgRVtoXimKBV1dC5pKAwLV0gkujHTfSsWCGy7QXZ6IWXA3S2e4qBnCB3wvU1enfib1xnnaU2CimiiizPAsg9T30XUx3u7ZVTEe9l/24zfHvZPjrp275AF5RJ6QmDwnJ+Q1OSVjIoJPwefgS/A1/Bb+CH+Gv1prGHRr7pON2Al/Awjm8kE=</latexit><latexit sha1_base64="a5wDxcD0Djfmr359n21glMmNMW0=">AAADSHicdZLLjtMwFIadDJchXObCEglZVIzYUDXtIGA3EhuWg0SZkeqqcpzT1BrHieyTgSpkydOwhafgCXgMVogdrhNE24FjJfp9vt8+8YmTUkmLg8H3INy5dv3Gzd1b0e07d+/t7R8cvrNFZQSMRaEKc55wC0pqGKNEBeelAZ4nCs6Si1crfnYJxspCv8VlCdOcZ1rOpeDoUrOD4CFTMMdJxBLIpK65MXzZ1KKNj6KJ0llMjyj499+RuDljkVPpbOj5cIMOV/SIej7yfLRGRy31nKVpgXZdrAa79JPO9l/jtq2rWOunceOr/lFJq9aMnVV3sKERA512DYiYkdkCp9FsvzfoD3zQqyLuRI90ceo6esjSQlQ5aBSKWzuJByVO3b4ohQK3c2Wh5OKCZzBxUvMc7LT2f7Khj10mpfPCuEcj9dn1FTXPrV3miXPmHBd2m62S/2KTCucvprXUZYWgRVtoXimKBV1dC5pKAwLV0gkujHTfSsWCGy7QXZ6IWXA3S2e4qBnCB3wvU1enfib1xnnaU2CimiiizPAsg9T30XUx3u7ZVTEe9l/24zfHvZPjrp275AF5RJ6QmDwnJ+Q1OSVjIoJPwefgS/A1/Bb+CH+Gv1prGHRr7pON2Al/Awjm8kE=</latexit><latexit sha1_base64="a5wDxcD0Djfmr359n21glMmNMW0=">AAADSHicdZLLjtMwFIadDJchXObCEglZVIzYUDXtIGA3EhuWg0SZkeqqcpzT1BrHieyTgSpkydOwhafgCXgMVogdrhNE24FjJfp9vt8+8YmTUkmLg8H3INy5dv3Gzd1b0e07d+/t7R8cvrNFZQSMRaEKc55wC0pqGKNEBeelAZ4nCs6Si1crfnYJxspCv8VlCdOcZ1rOpeDoUrOD4CFTMMdJxBLIpK65MXzZ1KKNj6KJ0llMjyj499+RuDljkVPpbOj5cIMOV/SIej7yfLRGRy31nKVpgXZdrAa79JPO9l/jtq2rWOunceOr/lFJq9aMnVV3sKERA512DYiYkdkCp9FsvzfoD3zQqyLuRI90ceo6esjSQlQ5aBSKWzuJByVO3b4ohQK3c2Wh5OKCZzBxUvMc7LT2f7Khj10mpfPCuEcj9dn1FTXPrV3miXPmHBd2m62S/2KTCucvprXUZYWgRVtoXimKBV1dC5pKAwLV0gkujHTfSsWCGy7QXZ6IWXA3S2e4qBnCB3wvU1enfib1xnnaU2CimiiizPAsg9T30XUx3u7ZVTEe9l/24zfHvZPjrp275AF5RJ6QmDwnJ+Q1OSVjIoJPwefgS/A1/Bb+CH+Gv1prGHRr7pON2Al/Awjm8kE=</latexit>

xn = bn/dnfor i = n� 1 to 1 do

xi = (bi � eixi+1)/diend

<latexit sha1_base64="0GJaKywBBWwRvF+ItFDb5VSqzIw=">AAACkXicbVFLb9NAEN6YVzGvtHDjsiJGKkINdgTiIVWK4ILEpUiEVoqjaL0e26uu19buGBpZ/ovc+R9cQYzdHGjLHGY+zew3M/tNUmvlMAx/jrxr12/cvLVz279z9979B+Pdva+uaqyEhax0ZU8S4UArAwtUqOGktiDKRMNxcvqhrx9/A+tUZb7gpoZVKXKjMiUFUmo9LoKzdWs6fsiTPr5Iex/wOPazyvJAHQY8MAdRwLHiEU+rvhIXrhYS2nA6U0SlDor4+wmFAw7kqaV6HnXPqJsaeoFJ1+NJOA0H41dBtAUTtrWj9e5oL04r2ZRgUGrh3DIKa1y1wqKSGjo/bhzQHqcihyVBI0pwq3aQpONPKZPy/g9ZZZAP2X8ZrSid25QJvSwFFu5yrU/+r7ZsMHuzapWpGwQjzwdlje716fXlqbIgUW8ICGkV7cplIayQSFfwYwd0IpNj0cYIZ/hdpTSnfUU6Xthg2BcT3fk+j63Ic0itygskFaPLml0Fi9n07TT6PJvMX27l3GGP2RO2zyL2ms3ZR3bEFkyyH+wX+83+eI+8d97ce3/+1BttOQ/ZBfM+/QXDCMUI</latexit><latexit sha1_base64="0GJaKywBBWwRvF+ItFDb5VSqzIw=">AAACkXicbVFLb9NAEN6YVzGvtHDjsiJGKkINdgTiIVWK4ILEpUiEVoqjaL0e26uu19buGBpZ/ovc+R9cQYzdHGjLHGY+zew3M/tNUmvlMAx/jrxr12/cvLVz279z9979B+Pdva+uaqyEhax0ZU8S4UArAwtUqOGktiDKRMNxcvqhrx9/A+tUZb7gpoZVKXKjMiUFUmo9LoKzdWs6fsiTPr5Iex/wOPazyvJAHQY8MAdRwLHiEU+rvhIXrhYS2nA6U0SlDor4+wmFAw7kqaV6HnXPqJsaeoFJ1+NJOA0H41dBtAUTtrWj9e5oL04r2ZRgUGrh3DIKa1y1wqKSGjo/bhzQHqcihyVBI0pwq3aQpONPKZPy/g9ZZZAP2X8ZrSid25QJvSwFFu5yrU/+r7ZsMHuzapWpGwQjzwdlje716fXlqbIgUW8ICGkV7cplIayQSFfwYwd0IpNj0cYIZ/hdpTSnfUU6Xthg2BcT3fk+j63Ic0itygskFaPLml0Fi9n07TT6PJvMX27l3GGP2RO2zyL2ms3ZR3bEFkyyH+wX+83+eI+8d97ce3/+1BttOQ/ZBfM+/QXDCMUI</latexit><latexit sha1_base64="0GJaKywBBWwRvF+ItFDb5VSqzIw=">AAACkXicbVFLb9NAEN6YVzGvtHDjsiJGKkINdgTiIVWK4ILEpUiEVoqjaL0e26uu19buGBpZ/ovc+R9cQYzdHGjLHGY+zew3M/tNUmvlMAx/jrxr12/cvLVz279z9979B+Pdva+uaqyEhax0ZU8S4UArAwtUqOGktiDKRMNxcvqhrx9/A+tUZb7gpoZVKXKjMiUFUmo9LoKzdWs6fsiTPr5Iex/wOPazyvJAHQY8MAdRwLHiEU+rvhIXrhYS2nA6U0SlDor4+wmFAw7kqaV6HnXPqJsaeoFJ1+NJOA0H41dBtAUTtrWj9e5oL04r2ZRgUGrh3DIKa1y1wqKSGjo/bhzQHqcihyVBI0pwq3aQpONPKZPy/g9ZZZAP2X8ZrSid25QJvSwFFu5yrU/+r7ZsMHuzapWpGwQjzwdlje716fXlqbIgUW8ICGkV7cplIayQSFfwYwd0IpNj0cYIZ/hdpTSnfUU6Xthg2BcT3fk+j63Ic0itygskFaPLml0Fi9n07TT6PJvMX27l3GGP2RO2zyL2ms3ZR3bEFkyyH+wX+83+eI+8d97ce3/+1BttOQ/ZBfM+/QXDCMUI</latexit><latexit sha1_base64="0GJaKywBBWwRvF+ItFDb5VSqzIw=">AAACkXicbVFLb9NAEN6YVzGvtHDjsiJGKkINdgTiIVWK4ILEpUiEVoqjaL0e26uu19buGBpZ/ovc+R9cQYzdHGjLHGY+zew3M/tNUmvlMAx/jrxr12/cvLVz279z9979B+Pdva+uaqyEhax0ZU8S4UArAwtUqOGktiDKRMNxcvqhrx9/A+tUZb7gpoZVKXKjMiUFUmo9LoKzdWs6fsiTPr5Iex/wOPazyvJAHQY8MAdRwLHiEU+rvhIXrhYS2nA6U0SlDor4+wmFAw7kqaV6HnXPqJsaeoFJ1+NJOA0H41dBtAUTtrWj9e5oL04r2ZRgUGrh3DIKa1y1wqKSGjo/bhzQHqcihyVBI0pwq3aQpONPKZPy/g9ZZZAP2X8ZrSid25QJvSwFFu5yrU/+r7ZsMHuzapWpGwQjzwdlje716fXlqbIgUW8ICGkV7cplIayQSFfwYwd0IpNj0cYIZ/hdpTSnfUU6Xthg2BcT3fk+j63Ic0itygskFaPLml0Fi9n07TT6PJvMX27l3GGP2RO2zyL2ms3ZR3bEFkyyH+wX+83+eI+8d97ce3/+1BttOQ/ZBfM+/QXDCMUI</latexit>

2

66666666664

d1 e1 b1c1 d2 e2 b2

c2 d3 e3 b3. . .

. . .. . .

.... . .

. . .. . .

...cn�2 dn�1 en�1 bn�1

cn�1 dn bn

3

77777777775

<latexit sha1_base64="BEkr2hu4eNIAOQSftLOIK+wewKw=">AAADaHichZLNjtMwEMedlo8lfG2XA0JcrK2ouLBq2kXABa3EheMiUXaluqoce5pamziRPVmoQh6Hp+EKB56Bl8B1gmi7KzFRor9nfmOPJxMXqbI4HP4KOt0bN2/d3rsT3r13/8HD/d7BJ5uXRsBE5GluzmNuIVUaJqgwhfPCAM/iFM7ii3fr+NklGKty/RFXBcwynmi1UIKjc817wVuWwgKnIYshUbrixvBVXYnGvoo6lPOIDij4778ndmvGQuHdcj7yyGgLGK2BARXeLedjj4w3gHEDDCiTMkd7rfDhS79o4f/gu/C6gEq/GNW+CKei2hfyV8WN2uDbjKjJ0C1T05CBlm2DQmZUssRZON/vD4+G3uhVEbWiT1o7dR0/YDIXZQYaRcqtnUbDAmduX1QiBbdzaaHg4oInMHVS8wzsrPJ/uqbPnEfSRW7cq5F672ZGxTNrV1nsyIzj0u7G1s7rYtMSF69nldJFiaBFc9CiTCnmdD02VCoDAtOVE1wY5WqlYskNF+iGK2QW3OTpBJcVQ/iCn5V051Qvld66T3MLjNM6DCkzPElA+j66Lka7PbsqJqOjN0fRh+P+yXHbzj3ylByS5yQir8gJeU9OyYSI4FvwPfgR/Oz87va6j7tPGrQTtDmPyJZ1D/8AA+r8bA==</latexit><latexit sha1_base64="BEkr2hu4eNIAOQSftLOIK+wewKw=">AAADaHichZLNjtMwEMedlo8lfG2XA0JcrK2ouLBq2kXABa3EheMiUXaluqoce5pamziRPVmoQh6Hp+EKB56Bl8B1gmi7KzFRor9nfmOPJxMXqbI4HP4KOt0bN2/d3rsT3r13/8HD/d7BJ5uXRsBE5GluzmNuIVUaJqgwhfPCAM/iFM7ii3fr+NklGKty/RFXBcwynmi1UIKjc817wVuWwgKnIYshUbrixvBVXYnGvoo6lPOIDij4778ndmvGQuHdcj7yyGgLGK2BARXeLedjj4w3gHEDDCiTMkd7rfDhS79o4f/gu/C6gEq/GNW+CKei2hfyV8WN2uDbjKjJ0C1T05CBlm2DQmZUssRZON/vD4+G3uhVEbWiT1o7dR0/YDIXZQYaRcqtnUbDAmduX1QiBbdzaaHg4oInMHVS8wzsrPJ/uqbPnEfSRW7cq5F672ZGxTNrV1nsyIzj0u7G1s7rYtMSF69nldJFiaBFc9CiTCnmdD02VCoDAtOVE1wY5WqlYskNF+iGK2QW3OTpBJcVQ/iCn5V051Qvld66T3MLjNM6DCkzPElA+j66Lka7PbsqJqOjN0fRh+P+yXHbzj3ylByS5yQir8gJeU9OyYSI4FvwPfgR/Oz87va6j7tPGrQTtDmPyJZ1D/8AA+r8bA==</latexit><latexit sha1_base64="BEkr2hu4eNIAOQSftLOIK+wewKw=">AAADaHichZLNjtMwEMedlo8lfG2XA0JcrK2ouLBq2kXABa3EheMiUXaluqoce5pamziRPVmoQh6Hp+EKB56Bl8B1gmi7KzFRor9nfmOPJxMXqbI4HP4KOt0bN2/d3rsT3r13/8HD/d7BJ5uXRsBE5GluzmNuIVUaJqgwhfPCAM/iFM7ii3fr+NklGKty/RFXBcwynmi1UIKjc817wVuWwgKnIYshUbrixvBVXYnGvoo6lPOIDij4778ndmvGQuHdcj7yyGgLGK2BARXeLedjj4w3gHEDDCiTMkd7rfDhS79o4f/gu/C6gEq/GNW+CKei2hfyV8WN2uDbjKjJ0C1T05CBlm2DQmZUssRZON/vD4+G3uhVEbWiT1o7dR0/YDIXZQYaRcqtnUbDAmduX1QiBbdzaaHg4oInMHVS8wzsrPJ/uqbPnEfSRW7cq5F672ZGxTNrV1nsyIzj0u7G1s7rYtMSF69nldJFiaBFc9CiTCnmdD02VCoDAtOVE1wY5WqlYskNF+iGK2QW3OTpBJcVQ/iCn5V051Qvld66T3MLjNM6DCkzPElA+j66Lka7PbsqJqOjN0fRh+P+yXHbzj3ylByS5yQir8gJeU9OyYSI4FvwPfgR/Oz87va6j7tPGrQTtDmPyJZ1D/8AA+r8bA==</latexit><latexit sha1_base64="BEkr2hu4eNIAOQSftLOIK+wewKw=">AAADaHichZLNjtMwEMedlo8lfG2XA0JcrK2ouLBq2kXABa3EheMiUXaluqoce5pamziRPVmoQh6Hp+EKB56Bl8B1gmi7KzFRor9nfmOPJxMXqbI4HP4KOt0bN2/d3rsT3r13/8HD/d7BJ5uXRsBE5GluzmNuIVUaJqgwhfPCAM/iFM7ii3fr+NklGKty/RFXBcwynmi1UIKjc817wVuWwgKnIYshUbrixvBVXYnGvoo6lPOIDij4778ndmvGQuHdcj7yyGgLGK2BARXeLedjj4w3gHEDDCiTMkd7rfDhS79o4f/gu/C6gEq/GNW+CKei2hfyV8WN2uDbjKjJ0C1T05CBlm2DQmZUssRZON/vD4+G3uhVEbWiT1o7dR0/YDIXZQYaRcqtnUbDAmduX1QiBbdzaaHg4oInMHVS8wzsrPJ/uqbPnEfSRW7cq5F672ZGxTNrV1nsyIzj0u7G1s7rYtMSF69nldJFiaBFc9CiTCnmdD02VCoDAtOVE1wY5WqlYskNF+iGK2QW3OTpBJcVQ/iCn5V051Qvld66T3MLjNM6DCkzPElA+j66Lka7PbsqJqOjN0fRh+P+yXHbzj3ylByS5yQir8gJeU9OyYSI4FvwPfgR/Oz87va6j7tPGrQTtDmPyJZ1D/8AA+r8bA==</latexit>

Step 1 : Upper triangular form

for i = 1 to n� 1 doµ = ci/didi+1 = di+1 � µeibi+1 = bi+1 � µbi

end<latexit sha1_base64="MCx9CH0NNS4G3CDWqP0nXTqe44o=">AAACzHicbVFNa9wwFJTdr8T92qTHXkTXhULJxl5akhwCgV56awrdJrBajCw/2yKybKTntIvxtX+kv6r/pvJmG7rJvtNo3gwa5qWNkhaj6I/nP3j46PGTnd3g6bPnL16O9va/27o1AmaiVrW5TLkFJTXMUKKCy8YAr1IFF+nVp2F/cQ3Gylp/w2UDi4oXWuZScHRUMvqd14aG8jSkMcWahvogDmlWU8YCVtqGC+iiyVTqnoasaukpFYk8zBIZblNkSSffx71T/UMHdHCBe/VbHemtI91wpLcO0FkyGkeTaDX0PojXYEzWc57sefssq0VbgUahuLXzOGpw0XGDUijoA9ZacDmueAFzBzWvwC66VZs9feuYjA695LVGumL/d3S8snZZpU5ZcSzt3d1AbtvNW8yPF53UTYugxc1HeauG3ofT0EwaEKiWDnBhpMtKRckNF+gOGDAL7rq6wLJjCD/xh8zcP91H1+NGglVeTFUfBJQZXhSQGVmU6FqM73Z2H8ymk5NJ/HU6PvuwrnOHvCZvyDsSkyNyRj6TczIjwtv1Dr1j78T/4rd+5/c3Ut9be16RjfF//QU5Y9Yc</latexit><latexit sha1_base64="MCx9CH0NNS4G3CDWqP0nXTqe44o=">AAACzHicbVFNa9wwFJTdr8T92qTHXkTXhULJxl5akhwCgV56awrdJrBajCw/2yKybKTntIvxtX+kv6r/pvJmG7rJvtNo3gwa5qWNkhaj6I/nP3j46PGTnd3g6bPnL16O9va/27o1AmaiVrW5TLkFJTXMUKKCy8YAr1IFF+nVp2F/cQ3Gylp/w2UDi4oXWuZScHRUMvqd14aG8jSkMcWahvogDmlWU8YCVtqGC+iiyVTqnoasaukpFYk8zBIZblNkSSffx71T/UMHdHCBe/VbHemtI91wpLcO0FkyGkeTaDX0PojXYEzWc57sefssq0VbgUahuLXzOGpw0XGDUijoA9ZacDmueAFzBzWvwC66VZs9feuYjA695LVGumL/d3S8snZZpU5ZcSzt3d1AbtvNW8yPF53UTYugxc1HeauG3ofT0EwaEKiWDnBhpMtKRckNF+gOGDAL7rq6wLJjCD/xh8zcP91H1+NGglVeTFUfBJQZXhSQGVmU6FqM73Z2H8ymk5NJ/HU6PvuwrnOHvCZvyDsSkyNyRj6TczIjwtv1Dr1j78T/4rd+5/c3Ut9be16RjfF//QU5Y9Yc</latexit><latexit sha1_base64="MCx9CH0NNS4G3CDWqP0nXTqe44o=">AAACzHicbVFNa9wwFJTdr8T92qTHXkTXhULJxl5akhwCgV56awrdJrBajCw/2yKybKTntIvxtX+kv6r/pvJmG7rJvtNo3gwa5qWNkhaj6I/nP3j46PGTnd3g6bPnL16O9va/27o1AmaiVrW5TLkFJTXMUKKCy8YAr1IFF+nVp2F/cQ3Gylp/w2UDi4oXWuZScHRUMvqd14aG8jSkMcWahvogDmlWU8YCVtqGC+iiyVTqnoasaukpFYk8zBIZblNkSSffx71T/UMHdHCBe/VbHemtI91wpLcO0FkyGkeTaDX0PojXYEzWc57sefssq0VbgUahuLXzOGpw0XGDUijoA9ZacDmueAFzBzWvwC66VZs9feuYjA695LVGumL/d3S8snZZpU5ZcSzt3d1AbtvNW8yPF53UTYugxc1HeauG3ofT0EwaEKiWDnBhpMtKRckNF+gOGDAL7rq6wLJjCD/xh8zcP91H1+NGglVeTFUfBJQZXhSQGVmU6FqM73Z2H8ymk5NJ/HU6PvuwrnOHvCZvyDsSkyNyRj6TczIjwtv1Dr1j78T/4rd+5/c3Ut9be16RjfF//QU5Y9Yc</latexit><latexit sha1_base64="MCx9CH0NNS4G3CDWqP0nXTqe44o=">AAACzHicbVFNa9wwFJTdr8T92qTHXkTXhULJxl5akhwCgV56awrdJrBajCw/2yKybKTntIvxtX+kv6r/pvJmG7rJvtNo3gwa5qWNkhaj6I/nP3j46PGTnd3g6bPnL16O9va/27o1AmaiVrW5TLkFJTXMUKKCy8YAr1IFF+nVp2F/cQ3Gylp/w2UDi4oXWuZScHRUMvqd14aG8jSkMcWahvogDmlWU8YCVtqGC+iiyVTqnoasaukpFYk8zBIZblNkSSffx71T/UMHdHCBe/VbHemtI91wpLcO0FkyGkeTaDX0PojXYEzWc57sefssq0VbgUahuLXzOGpw0XGDUijoA9ZacDmueAFzBzWvwC66VZs9feuYjA695LVGumL/d3S8snZZpU5ZcSzt3d1AbtvNW8yPF53UTYugxc1HeauG3ofT0EwaEKiWDnBhpMtKRckNF+gOGDAL7rq6wLJjCD/xh8zcP91H1+NGglVeTFUfBJQZXhSQGVmU6FqM73Z2H8ymk5NJ/HU6PvuwrnOHvCZvyDsSkyNyRj6TczIjwtv1Dr1j78T/4rd+5/c3Ut9be16RjfF//QU5Y9Yc</latexit>

Augmented system

Note: For numerical stability, the algorithm should only be used when|d1| � |e1|, |dn| � |cn�1|, |dj | � |cj�1|+ |ej |, j = 2, . . . , n� 1

<latexit sha1_base64="GzpKOuyg+at2FNkAnroV5tUAsqk=">AAACk3icbVFNb9QwEPWGrxI+ui1SL1wsViAkllVSFQGCShVw4IJUJJZWWq9WjjObdeo4qT0BVkn+I9f+kV7B2Y1EPxjJ0vN7Mx7Pm6hQ0mIQnPW8Gzdv3b6zcde/d//Bw83+1vZ3m5dGwFjkKjfHEbegpIYxSlRwXBjgWaTgKDr52OpHP8BYmetvuCxgmvFEy7kUHB0166d1PAtryhI4pTU4OGSnJY+poyvd1PRZJwl3fRk2F+S0/ielrURftC9UaZv0jqb7u0Om4hzt0BVSxvxZfxCMglXQ6yDswIB0cTjb6m2zOBdlBhqF4tZOwqDAacUNSqGg8VlpoeDihCcwcVDzDOy0WpnS0KeOiek8N+5opCv2YkXFM2uXWeQyM44Le1Vryf9pkxLnb6aV1EWJoMW60bxUFHPaOkxjaUCgWjrAhZHur1QsuOEC3R58ZsEtSSe4qBjCL/wpY9eneiX1pXnWU2CkGt+nzPAkgdjIZIHOxfCqZ9fBeHf0dhR+3Rsc7HV2bpDH5Al5TkLymhyQz+SQjIkgv8k5+dMj3o733vvgfVqner2u5hG5FN6Xv3GmyNQ=</latexit><latexit sha1_base64="GzpKOuyg+at2FNkAnroV5tUAsqk=">AAACk3icbVFNb9QwEPWGrxI+ui1SL1wsViAkllVSFQGCShVw4IJUJJZWWq9WjjObdeo4qT0BVkn+I9f+kV7B2Y1EPxjJ0vN7Mx7Pm6hQ0mIQnPW8Gzdv3b6zcde/d//Bw83+1vZ3m5dGwFjkKjfHEbegpIYxSlRwXBjgWaTgKDr52OpHP8BYmetvuCxgmvFEy7kUHB0166d1PAtryhI4pTU4OGSnJY+poyvd1PRZJwl3fRk2F+S0/ielrURftC9UaZv0jqb7u0Om4hzt0BVSxvxZfxCMglXQ6yDswIB0cTjb6m2zOBdlBhqF4tZOwqDAacUNSqGg8VlpoeDihCcwcVDzDOy0WpnS0KeOiek8N+5opCv2YkXFM2uXWeQyM44Le1Vryf9pkxLnb6aV1EWJoMW60bxUFHPaOkxjaUCgWjrAhZHur1QsuOEC3R58ZsEtSSe4qBjCL/wpY9eneiX1pXnWU2CkGt+nzPAkgdjIZIHOxfCqZ9fBeHf0dhR+3Rsc7HV2bpDH5Al5TkLymhyQz+SQjIkgv8k5+dMj3o733vvgfVqner2u5hG5FN6Xv3GmyNQ=</latexit><latexit sha1_base64="GzpKOuyg+at2FNkAnroV5tUAsqk=">AAACk3icbVFNb9QwEPWGrxI+ui1SL1wsViAkllVSFQGCShVw4IJUJJZWWq9WjjObdeo4qT0BVkn+I9f+kV7B2Y1EPxjJ0vN7Mx7Pm6hQ0mIQnPW8Gzdv3b6zcde/d//Bw83+1vZ3m5dGwFjkKjfHEbegpIYxSlRwXBjgWaTgKDr52OpHP8BYmetvuCxgmvFEy7kUHB0166d1PAtryhI4pTU4OGSnJY+poyvd1PRZJwl3fRk2F+S0/ielrURftC9UaZv0jqb7u0Om4hzt0BVSxvxZfxCMglXQ6yDswIB0cTjb6m2zOBdlBhqF4tZOwqDAacUNSqGg8VlpoeDihCcwcVDzDOy0WpnS0KeOiek8N+5opCv2YkXFM2uXWeQyM44Le1Vryf9pkxLnb6aV1EWJoMW60bxUFHPaOkxjaUCgWjrAhZHur1QsuOEC3R58ZsEtSSe4qBjCL/wpY9eneiX1pXnWU2CkGt+nzPAkgdjIZIHOxfCqZ9fBeHf0dhR+3Rsc7HV2bpDH5Al5TkLymhyQz+SQjIkgv8k5+dMj3o733vvgfVqner2u5hG5FN6Xv3GmyNQ=</latexit><latexit sha1_base64="GzpKOuyg+at2FNkAnroV5tUAsqk=">AAACk3icbVFNb9QwEPWGrxI+ui1SL1wsViAkllVSFQGCShVw4IJUJJZWWq9WjjObdeo4qT0BVkn+I9f+kV7B2Y1EPxjJ0vN7Mx7Pm6hQ0mIQnPW8Gzdv3b6zcde/d//Bw83+1vZ3m5dGwFjkKjfHEbegpIYxSlRwXBjgWaTgKDr52OpHP8BYmetvuCxgmvFEy7kUHB0166d1PAtryhI4pTU4OGSnJY+poyvd1PRZJwl3fRk2F+S0/ielrURftC9UaZv0jqb7u0Om4hzt0BVSxvxZfxCMglXQ6yDswIB0cTjb6m2zOBdlBhqF4tZOwqDAacUNSqGg8VlpoeDihCcwcVDzDOy0WpnS0KeOiek8N+5opCv2YkXFM2uXWeQyM44Le1Vryf9pkxLnb6aV1EWJoMW60bxUFHPaOkxjaUCgWjrAhZHur1QsuOEC3R58ZsEtSSe4qBjCL/wpY9eneiX1pXnWU2CkGt+nzPAkgdjIZIHOxfCqZ9fBeHf0dhR+3Rsc7HV2bpDH5Al5TkLymhyQz+SQjIkgv8k5+dMj3o733vvgfVqner2u5hG5FN6Xv3GmyNQ=</latexit>

A tridiagonal matrix that satisfies this property is called diagonally dominant.

How many floating point operations are required?

Page 7: Tridiagonal linear systemswright/courses/m365/TridiagonalSystems.pdf · The Thomas algorithm is implemented in the tridisolveMATLAB function on the course webpage. Exercise 1.Use

ExerciseThe Thomas algorithm is implemented in the tridisolve MATLAB function on the course webpage.

Exercise

1. Use the tridisolve function to solve the Countercurrent exchanger problem.2. Compare the time it takes to solve this system with the time it takes standard

Gaussian elimination applied to the full matrix.

cj = W, j = 1, . . . , n� 1,

dj = �(W + Sm), j = 1, . . . , n,

ej = Sm, j = 1, . . . , n� 1,<latexit sha1_base64="Yi/D5IJygcVv6SdiGmmV06daJM4=">AAACinicbVHBThsxEHWWlsK2QKBHLlajIhAh2i0gihBSJDj0CIIQpGwUeb2TjcH2ruxZ2miV7+s39CN6ba91sjmUwEiWnt574/E8x7kUFoPgV81bevN2+d3Kqv/+w9r6Rn1z685mheHQ4ZnMzH3MLEihoYMCJdznBpiKJXTjx4up3n0CY0Wmb3GcQ1+xVIuh4AwdNagzPnigO+e024zO6MN52IxkkqFt6gMHIz+p1IPd7v6N2lv0NKmzQGW5Ua/cMNUH9UbQCmZFX4JwDhpkXleDzdpWlGS8UKCRS2ZtLwxy7JfMoOASJn5UWMgZf2Qp9BzUTIHtl7MsJvSzYxI6zIw7GumM/b+jZMrasYqdUzEc2UVtSr6m9Qocfu2XQucFgubVoGEhKWZ0GixNhAGOcuwA40a4t1I+YoZxdPH7kQX3NzrFURkh/MDvInFzymOhn+1TbYGxnPg+jQxLU0iMSEfoUgwXM3sJOl9ap63w+qjRbs/jXCHb5BPZJSE5IW3yjVyRDuHkJ/lN/pC/3pp36J16Z5XVq817PpJn5V3+A0rLwEA=</latexit><latexit sha1_base64="Yi/D5IJygcVv6SdiGmmV06daJM4=">AAACinicbVHBThsxEHWWlsK2QKBHLlajIhAh2i0gihBSJDj0CIIQpGwUeb2TjcH2ruxZ2miV7+s39CN6ba91sjmUwEiWnt574/E8x7kUFoPgV81bevN2+d3Kqv/+w9r6Rn1z685mheHQ4ZnMzH3MLEihoYMCJdznBpiKJXTjx4up3n0CY0Wmb3GcQ1+xVIuh4AwdNagzPnigO+e024zO6MN52IxkkqFt6gMHIz+p1IPd7v6N2lv0NKmzQGW5Ua/cMNUH9UbQCmZFX4JwDhpkXleDzdpWlGS8UKCRS2ZtLwxy7JfMoOASJn5UWMgZf2Qp9BzUTIHtl7MsJvSzYxI6zIw7GumM/b+jZMrasYqdUzEc2UVtSr6m9Qocfu2XQucFgubVoGEhKWZ0GixNhAGOcuwA40a4t1I+YoZxdPH7kQX3NzrFURkh/MDvInFzymOhn+1TbYGxnPg+jQxLU0iMSEfoUgwXM3sJOl9ap63w+qjRbs/jXCHb5BPZJSE5IW3yjVyRDuHkJ/lN/pC/3pp36J16Z5XVq817PpJn5V3+A0rLwEA=</latexit><latexit sha1_base64="Yi/D5IJygcVv6SdiGmmV06daJM4=">AAACinicbVHBThsxEHWWlsK2QKBHLlajIhAh2i0gihBSJDj0CIIQpGwUeb2TjcH2ruxZ2miV7+s39CN6ba91sjmUwEiWnt574/E8x7kUFoPgV81bevN2+d3Kqv/+w9r6Rn1z685mheHQ4ZnMzH3MLEihoYMCJdznBpiKJXTjx4up3n0CY0Wmb3GcQ1+xVIuh4AwdNagzPnigO+e024zO6MN52IxkkqFt6gMHIz+p1IPd7v6N2lv0NKmzQGW5Ua/cMNUH9UbQCmZFX4JwDhpkXleDzdpWlGS8UKCRS2ZtLwxy7JfMoOASJn5UWMgZf2Qp9BzUTIHtl7MsJvSzYxI6zIw7GumM/b+jZMrasYqdUzEc2UVtSr6m9Qocfu2XQucFgubVoGEhKWZ0GixNhAGOcuwA40a4t1I+YoZxdPH7kQX3NzrFURkh/MDvInFzymOhn+1TbYGxnPg+jQxLU0iMSEfoUgwXM3sJOl9ap63w+qjRbs/jXCHb5BPZJSE5IW3yjVyRDuHkJ/lN/pC/3pp36J16Z5XVq817PpJn5V3+A0rLwEA=</latexit><latexit sha1_base64="Yi/D5IJygcVv6SdiGmmV06daJM4=">AAACinicbVHBThsxEHWWlsK2QKBHLlajIhAh2i0gihBSJDj0CIIQpGwUeb2TjcH2ruxZ2miV7+s39CN6ba91sjmUwEiWnt574/E8x7kUFoPgV81bevN2+d3Kqv/+w9r6Rn1z685mheHQ4ZnMzH3MLEihoYMCJdznBpiKJXTjx4up3n0CY0Wmb3GcQ1+xVIuh4AwdNagzPnigO+e024zO6MN52IxkkqFt6gMHIz+p1IPd7v6N2lv0NKmzQGW5Ua/cMNUH9UbQCmZFX4JwDhpkXleDzdpWlGS8UKCRS2ZtLwxy7JfMoOASJn5UWMgZf2Qp9BzUTIHtl7MsJvSzYxI6zIw7GumM/b+jZMrasYqdUzEc2UVtSr6m9Qocfu2XQucFgubVoGEhKWZ0GixNhAGOcuwA40a4t1I+YoZxdPH7kQX3NzrFURkh/MDvInFzymOhn+1TbYGxnPg+jQxLU0iMSEfoUgwXM3sJOl9ap63w+qjRbs/jXCHb5BPZJSE5IW3yjVyRDuHkJ/lN/pC/3pp36J16Z5XVq817PpJn5V3+A0rLwEA=</latexit>

b1 = �Wxin,

bj = 0, j = 2, . . . , n� 1,

bn = �Syin<latexit sha1_base64="x6MO/wh2Qfxp9OnphZ9a6dFFzOM=">AAACc3icbVFdSxtBFJ1sv+zaj6iP7cNg2tKHJOyKoqUIgi/SJ0ubRsiEZXb2ZjM6O7vM3LWGZf+Tv6bQJ/0VPjvZBKnaCwOHc+7h3nsmLpS0GAR/W96Tp8+ev1h56a++ev3mbXtt/ZfNSyNgIHKVm5OYW1BSwwAlKjgpDPAsVjCMzw7n+vAcjJW5/omzAsYZT7WcSMHRUVH7WxyF9NM+7Q0vooqZjEpddxnz4+h0Tgdd9pWe7m91mUpytF3dCxdqpevG9mN2Z4vanaAfNEUfg3AJOmRZx9Faa50luSgz0CgUt3YUBgWOK25QCgW1z0oLBRdnPIWRg5pnYMdVc3RNPzomoZPcuKeRNuy/jopn1s6y2HVmHKf2oTYn/6eNSpzsjSupixJBi8WgSako5nSeIE2kAYFq5gAXRrpdqZhywwW6nH1mwX2CTnFaMYQL/C0TN6facQHd26DZF2NV+z5lhqcpJEamU3Qphg8zewwGW/0v/fD7dudgexnnCnlHNslnEpJdckCOyDEZEEEuyR9yRa5bN957b9P7sGj1WkvPBrlXXu8WMjq72Q==</latexit><latexit sha1_base64="x6MO/wh2Qfxp9OnphZ9a6dFFzOM=">AAACc3icbVFdSxtBFJ1sv+zaj6iP7cNg2tKHJOyKoqUIgi/SJ0ubRsiEZXb2ZjM6O7vM3LWGZf+Tv6bQJ/0VPjvZBKnaCwOHc+7h3nsmLpS0GAR/W96Tp8+ev1h56a++ev3mbXtt/ZfNSyNgIHKVm5OYW1BSwwAlKjgpDPAsVjCMzw7n+vAcjJW5/omzAsYZT7WcSMHRUVH7WxyF9NM+7Q0vooqZjEpddxnz4+h0Tgdd9pWe7m91mUpytF3dCxdqpevG9mN2Z4vanaAfNEUfg3AJOmRZx9Faa50luSgz0CgUt3YUBgWOK25QCgW1z0oLBRdnPIWRg5pnYMdVc3RNPzomoZPcuKeRNuy/jopn1s6y2HVmHKf2oTYn/6eNSpzsjSupixJBi8WgSako5nSeIE2kAYFq5gAXRrpdqZhywwW6nH1mwX2CTnFaMYQL/C0TN6facQHd26DZF2NV+z5lhqcpJEamU3Qphg8zewwGW/0v/fD7dudgexnnCnlHNslnEpJdckCOyDEZEEEuyR9yRa5bN957b9P7sGj1WkvPBrlXXu8WMjq72Q==</latexit><latexit sha1_base64="x6MO/wh2Qfxp9OnphZ9a6dFFzOM=">AAACc3icbVFdSxtBFJ1sv+zaj6iP7cNg2tKHJOyKoqUIgi/SJ0ubRsiEZXb2ZjM6O7vM3LWGZf+Tv6bQJ/0VPjvZBKnaCwOHc+7h3nsmLpS0GAR/W96Tp8+ev1h56a++ev3mbXtt/ZfNSyNgIHKVm5OYW1BSwwAlKjgpDPAsVjCMzw7n+vAcjJW5/omzAsYZT7WcSMHRUVH7WxyF9NM+7Q0vooqZjEpddxnz4+h0Tgdd9pWe7m91mUpytF3dCxdqpevG9mN2Z4vanaAfNEUfg3AJOmRZx9Faa50luSgz0CgUt3YUBgWOK25QCgW1z0oLBRdnPIWRg5pnYMdVc3RNPzomoZPcuKeRNuy/jopn1s6y2HVmHKf2oTYn/6eNSpzsjSupixJBi8WgSako5nSeIE2kAYFq5gAXRrpdqZhywwW6nH1mwX2CTnFaMYQL/C0TN6facQHd26DZF2NV+z5lhqcpJEamU3Qphg8zewwGW/0v/fD7dudgexnnCnlHNslnEpJdckCOyDEZEEEuyR9yRa5bN957b9P7sGj1WkvPBrlXXu8WMjq72Q==</latexit><latexit sha1_base64="x6MO/wh2Qfxp9OnphZ9a6dFFzOM=">AAACc3icbVFdSxtBFJ1sv+zaj6iP7cNg2tKHJOyKoqUIgi/SJ0ubRsiEZXb2ZjM6O7vM3LWGZf+Tv6bQJ/0VPjvZBKnaCwOHc+7h3nsmLpS0GAR/W96Tp8+ev1h56a++ev3mbXtt/ZfNSyNgIHKVm5OYW1BSwwAlKjgpDPAsVjCMzw7n+vAcjJW5/omzAsYZT7WcSMHRUVH7WxyF9NM+7Q0vooqZjEpddxnz4+h0Tgdd9pWe7m91mUpytF3dCxdqpevG9mN2Z4vanaAfNEUfg3AJOmRZx9Faa50luSgz0CgUt3YUBgWOK25QCgW1z0oLBRdnPIWRg5pnYMdVc3RNPzomoZPcuKeRNuy/jopn1s6y2HVmHKf2oTYn/6eNSpzsjSupixJBi8WgSako5nSeIE2kAYFq5gAXRrpdqZhywwW6nH1mwX2CTnFaMYQL/C0TN6facQHd26DZF2NV+z5lhqcpJEamU3Qphg8zewwGW/0v/fD7dudgexnnCnlHNslnEpJdckCOyDEZEEEuyR9yRa5bN957b9P7sGj1WkvPBrlXXu8WMjq72Q==</latexit>

2

6666666666666664

d1 e1

c1 d2 e2

c2 d3 e3. . .

. . .. . .

. . .. . .

. . .

cn�2 dn�1 en�1

cn�1 dn

3

7777777777777775

2

6666666666666664

x1

x2

x3

...

...

xn�1

xn

3

7777777777777775

=

2

6666666666666664

b1

b2

b3......

bn�1

bn

3

7777777777777775

<latexit sha1_base64="y/W9bE0+F+voao/baYzQn82cqME=">AAAD33icjVJdb9MwFHUbPkb42sYjPFhUTLxQNe0m4AFpghckeBgSZZOaqrKd29Ra4kT2zdYqyjtPiFd+CD+Gf4PjFLZ+IGEp9dHx8Tm+t5fniTTY6/1qtb0bN2/d3rnj3713/8HD3b39LyYrtIChyJJMn3FmIJEKhigxgbNcA0t5Aqf8/F19fnoB2shMfcZFDuOUxUpOpWBoqcle62eoQcGlyNKUqagMmdZsYVADillVBt2jyg85xFKVPGWo5bzyo0lADyi43zD0hQPRpO/IfkMeUOFgNBk4evCHtlsUZWi2g0bxf5o6olQv+pWLsSioXFSDrsmWwqARKuqHYCv9W856eXNbj709t+9326DewgsXv4LmV1E1rNZ832w488aZN8783878yplvcfb9yW6n1+25RTdBsAQdslwn9o/eD6NMFCkoFAkzZhT0chyXTKMUCdiEwkDOxDmLYWShYimYcekGrKLPLBPRaabtp5A69vqNkqXGLFJulfaNM7N+VpPbzkYFTl+NS6nyAkGJJmhaJBQzWk8rjaQGgcnCAia0tG+lYsY0E2hn2g8N2IFXMc7KEGGOlzKyOeWRVCv1NFUgT2znaKhZHEOkZTxD28VgvWebYNjvvu4Gnw47x4fLdu6Qx+QpeU4C8pIck/fkhAyJaD9pv21/aH/0uPfV++Z9b6Tt1vLOI7KyvB+/AUzKK9c=</latexit><latexit sha1_base64="y/W9bE0+F+voao/baYzQn82cqME=">AAAD33icjVJdb9MwFHUbPkb42sYjPFhUTLxQNe0m4AFpghckeBgSZZOaqrKd29Ra4kT2zdYqyjtPiFd+CD+Gf4PjFLZ+IGEp9dHx8Tm+t5fniTTY6/1qtb0bN2/d3rnj3713/8HD3b39LyYrtIChyJJMn3FmIJEKhigxgbNcA0t5Aqf8/F19fnoB2shMfcZFDuOUxUpOpWBoqcle62eoQcGlyNKUqagMmdZsYVADillVBt2jyg85xFKVPGWo5bzyo0lADyi43zD0hQPRpO/IfkMeUOFgNBk4evCHtlsUZWi2g0bxf5o6olQv+pWLsSioXFSDrsmWwqARKuqHYCv9W856eXNbj709t+9326DewgsXv4LmV1E1rNZ832w488aZN8783878yplvcfb9yW6n1+25RTdBsAQdslwn9o/eD6NMFCkoFAkzZhT0chyXTKMUCdiEwkDOxDmLYWShYimYcekGrKLPLBPRaabtp5A69vqNkqXGLFJulfaNM7N+VpPbzkYFTl+NS6nyAkGJJmhaJBQzWk8rjaQGgcnCAia0tG+lYsY0E2hn2g8N2IFXMc7KEGGOlzKyOeWRVCv1NFUgT2znaKhZHEOkZTxD28VgvWebYNjvvu4Gnw47x4fLdu6Qx+QpeU4C8pIck/fkhAyJaD9pv21/aH/0uPfV++Z9b6Tt1vLOI7KyvB+/AUzKK9c=</latexit><latexit sha1_base64="y/W9bE0+F+voao/baYzQn82cqME=">AAAD33icjVJdb9MwFHUbPkb42sYjPFhUTLxQNe0m4AFpghckeBgSZZOaqrKd29Ra4kT2zdYqyjtPiFd+CD+Gf4PjFLZ+IGEp9dHx8Tm+t5fniTTY6/1qtb0bN2/d3rnj3713/8HD3b39LyYrtIChyJJMn3FmIJEKhigxgbNcA0t5Aqf8/F19fnoB2shMfcZFDuOUxUpOpWBoqcle62eoQcGlyNKUqagMmdZsYVADillVBt2jyg85xFKVPGWo5bzyo0lADyi43zD0hQPRpO/IfkMeUOFgNBk4evCHtlsUZWi2g0bxf5o6olQv+pWLsSioXFSDrsmWwqARKuqHYCv9W856eXNbj709t+9326DewgsXv4LmV1E1rNZ832w488aZN8783878yplvcfb9yW6n1+25RTdBsAQdslwn9o/eD6NMFCkoFAkzZhT0chyXTKMUCdiEwkDOxDmLYWShYimYcekGrKLPLBPRaabtp5A69vqNkqXGLFJulfaNM7N+VpPbzkYFTl+NS6nyAkGJJmhaJBQzWk8rjaQGgcnCAia0tG+lYsY0E2hn2g8N2IFXMc7KEGGOlzKyOeWRVCv1NFUgT2znaKhZHEOkZTxD28VgvWebYNjvvu4Gnw47x4fLdu6Qx+QpeU4C8pIck/fkhAyJaD9pv21/aH/0uPfV++Z9b6Tt1vLOI7KyvB+/AUzKK9c=</latexit><latexit sha1_base64="y/W9bE0+F+voao/baYzQn82cqME=">AAAD33icjVJdb9MwFHUbPkb42sYjPFhUTLxQNe0m4AFpghckeBgSZZOaqrKd29Ra4kT2zdYqyjtPiFd+CD+Gf4PjFLZ+IGEp9dHx8Tm+t5fniTTY6/1qtb0bN2/d3rnj3713/8HD3b39LyYrtIChyJJMn3FmIJEKhigxgbNcA0t5Aqf8/F19fnoB2shMfcZFDuOUxUpOpWBoqcle62eoQcGlyNKUqagMmdZsYVADillVBt2jyg85xFKVPGWo5bzyo0lADyi43zD0hQPRpO/IfkMeUOFgNBk4evCHtlsUZWi2g0bxf5o6olQv+pWLsSioXFSDrsmWwqARKuqHYCv9W856eXNbj709t+9326DewgsXv4LmV1E1rNZ832w488aZN8783878yplvcfb9yW6n1+25RTdBsAQdslwn9o/eD6NMFCkoFAkzZhT0chyXTKMUCdiEwkDOxDmLYWShYimYcekGrKLPLBPRaabtp5A69vqNkqXGLFJulfaNM7N+VpPbzkYFTl+NS6nyAkGJJmhaJBQzWk8rjaQGgcnCAia0tG+lYsY0E2hn2g8N2IFXMc7KEGGOlzKyOeWRVCv1NFUgT2znaKhZHEOkZTxD28VgvWebYNjvvu4Gnw47x4fLdu6Qx+QpeU4C8pIck/fkhAyJaD9pv21/aH/0uPfV++Z9b6Tt1vLOI7KyvB+/AUzKK9c=</latexit>

Page 8: Tridiagonal linear systemswright/courses/m365/TridiagonalSystems.pdf · The Thomas algorithm is implemented in the tridisolveMATLAB function on the course webpage. Exercise 1.Use

Sparse linear systems: spdiags• Tridiagonal systems are special examples of sparse linear systems.

• MATLAB provides a convenient way to create tridiagonal systems (and other sparse systems) with their spdiags function.

• For example, we can create the tridiagonal matrix in the linear system2

6666666666666664

d1 e1

c1 d2 e2

c2 d3 e3. . .

. . .. . .

. . .. . .

. . .

cn�2 dn�1 en�1

cn�1 dn

3

7777777777777775

2

6666666666666664

x1

x2

x3

...

...

xn�1

xn

3

7777777777777775

=

2

6666666666666664

b1

b2

b3......

bn�1

bn

3

7777777777777775

<latexit sha1_base64="y/W9bE0+F+voao/baYzQn82cqME=">AAAD33icjVJdb9MwFHUbPkb42sYjPFhUTLxQNe0m4AFpghckeBgSZZOaqrKd29Ra4kT2zdYqyjtPiFd+CD+Gf4PjFLZ+IGEp9dHx8Tm+t5fniTTY6/1qtb0bN2/d3rnj3713/8HD3b39LyYrtIChyJJMn3FmIJEKhigxgbNcA0t5Aqf8/F19fnoB2shMfcZFDuOUxUpOpWBoqcle62eoQcGlyNKUqagMmdZsYVADillVBt2jyg85xFKVPGWo5bzyo0lADyi43zD0hQPRpO/IfkMeUOFgNBk4evCHtlsUZWi2g0bxf5o6olQv+pWLsSioXFSDrsmWwqARKuqHYCv9W856eXNbj709t+9326DewgsXv4LmV1E1rNZ832w488aZN8783878yplvcfb9yW6n1+25RTdBsAQdslwn9o/eD6NMFCkoFAkzZhT0chyXTKMUCdiEwkDOxDmLYWShYimYcekGrKLPLBPRaabtp5A69vqNkqXGLFJulfaNM7N+VpPbzkYFTl+NS6nyAkGJJmhaJBQzWk8rjaQGgcnCAia0tG+lYsY0E2hn2g8N2IFXMc7KEGGOlzKyOeWRVCv1NFUgT2znaKhZHEOkZTxD28VgvWebYNjvvu4Gnw47x4fLdu6Qx+QpeU4C8pIck/fkhAyJaD9pv21/aH/0uPfV++Z9b6Tt1vLOI7KyvB+/AUzKK9c=</latexit><latexit sha1_base64="y/W9bE0+F+voao/baYzQn82cqME=">AAAD33icjVJdb9MwFHUbPkb42sYjPFhUTLxQNe0m4AFpghckeBgSZZOaqrKd29Ra4kT2zdYqyjtPiFd+CD+Gf4PjFLZ+IGEp9dHx8Tm+t5fniTTY6/1qtb0bN2/d3rnj3713/8HD3b39LyYrtIChyJJMn3FmIJEKhigxgbNcA0t5Aqf8/F19fnoB2shMfcZFDuOUxUpOpWBoqcle62eoQcGlyNKUqagMmdZsYVADillVBt2jyg85xFKVPGWo5bzyo0lADyi43zD0hQPRpO/IfkMeUOFgNBk4evCHtlsUZWi2g0bxf5o6olQv+pWLsSioXFSDrsmWwqARKuqHYCv9W856eXNbj709t+9326DewgsXv4LmV1E1rNZ832w488aZN8783878yplvcfb9yW6n1+25RTdBsAQdslwn9o/eD6NMFCkoFAkzZhT0chyXTKMUCdiEwkDOxDmLYWShYimYcekGrKLPLBPRaabtp5A69vqNkqXGLFJulfaNM7N+VpPbzkYFTl+NS6nyAkGJJmhaJBQzWk8rjaQGgcnCAia0tG+lYsY0E2hn2g8N2IFXMc7KEGGOlzKyOeWRVCv1NFUgT2znaKhZHEOkZTxD28VgvWebYNjvvu4Gnw47x4fLdu6Qx+QpeU4C8pIck/fkhAyJaD9pv21/aH/0uPfV++Z9b6Tt1vLOI7KyvB+/AUzKK9c=</latexit><latexit sha1_base64="y/W9bE0+F+voao/baYzQn82cqME=">AAAD33icjVJdb9MwFHUbPkb42sYjPFhUTLxQNe0m4AFpghckeBgSZZOaqrKd29Ra4kT2zdYqyjtPiFd+CD+Gf4PjFLZ+IGEp9dHx8Tm+t5fniTTY6/1qtb0bN2/d3rnj3713/8HD3b39LyYrtIChyJJMn3FmIJEKhigxgbNcA0t5Aqf8/F19fnoB2shMfcZFDuOUxUpOpWBoqcle62eoQcGlyNKUqagMmdZsYVADillVBt2jyg85xFKVPGWo5bzyo0lADyi43zD0hQPRpO/IfkMeUOFgNBk4evCHtlsUZWi2g0bxf5o6olQv+pWLsSioXFSDrsmWwqARKuqHYCv9W856eXNbj709t+9326DewgsXv4LmV1E1rNZ832w488aZN8783878yplvcfb9yW6n1+25RTdBsAQdslwn9o/eD6NMFCkoFAkzZhT0chyXTKMUCdiEwkDOxDmLYWShYimYcekGrKLPLBPRaabtp5A69vqNkqXGLFJulfaNM7N+VpPbzkYFTl+NS6nyAkGJJmhaJBQzWk8rjaQGgcnCAia0tG+lYsY0E2hn2g8N2IFXMc7KEGGOlzKyOeWRVCv1NFUgT2znaKhZHEOkZTxD28VgvWebYNjvvu4Gnw47x4fLdu6Qx+QpeU4C8pIck/fkhAyJaD9pv21/aH/0uPfV++Z9b6Tt1vLOI7KyvB+/AUzKK9c=</latexit><latexit sha1_base64="y/W9bE0+F+voao/baYzQn82cqME=">AAAD33icjVJdb9MwFHUbPkb42sYjPFhUTLxQNe0m4AFpghckeBgSZZOaqrKd29Ra4kT2zdYqyjtPiFd+CD+Gf4PjFLZ+IGEp9dHx8Tm+t5fniTTY6/1qtb0bN2/d3rnj3713/8HD3b39LyYrtIChyJJMn3FmIJEKhigxgbNcA0t5Aqf8/F19fnoB2shMfcZFDuOUxUpOpWBoqcle62eoQcGlyNKUqagMmdZsYVADillVBt2jyg85xFKVPGWo5bzyo0lADyi43zD0hQPRpO/IfkMeUOFgNBk4evCHtlsUZWi2g0bxf5o6olQv+pWLsSioXFSDrsmWwqARKuqHYCv9W856eXNbj709t+9326DewgsXv4LmV1E1rNZ832w488aZN8783878yplvcfb9yW6n1+25RTdBsAQdslwn9o/eD6NMFCkoFAkzZhT0chyXTKMUCdiEwkDOxDmLYWShYimYcekGrKLPLBPRaabtp5A69vqNkqXGLFJulfaNM7N+VpPbzkYFTl+NS6nyAkGJJmhaJBQzWk8rjaQGgcnCAia0tG+lYsY0E2hn2g8N2IFXMc7KEGGOlzKyOeWRVCv1NFUgT2znaKhZHEOkZTxD28VgvWebYNjvvu4Gnw47x4fLdu6Qx+QpeU4C8pIck/fkhAyJaD9pv21/aH/0uPfV++Z9b6Tt1vLOI7KyvB+/AUzKK9c=</latexit>

using A = spdiags([[c; 0] d [0; e]],[-1 0 1],n,n)

• The system can then be solved using backslashx = A\ b

• If A is diagonally dominant then MATLAB will automatically use the Thomas algorithm to solve this system.