2. Ch 2 Solutions to Linear Equations
2. Ch 2 Solutions to Linear Equations
2 7 8
3 2 4 0
2 7 8
a 21 a 23 a 21 a 23
M 12 a 21a 33 a 23a 31 C12 M 12
a 31 a 33 a 31 a 33
What is a cofactor?
Sign of cofactor -
- -
-
Find the minor and cofactor of a33
2 4 - 3
A 1 0 4
Minor 2 4
2 - 1 2 M 33 2 0 4 1 4
1 0
Cofactor C ( 1) ( 3 3 ) M M 4
33 33 33
Cofactor method of obtaining the
determinant of a matrix
det( A ) a 1j C 1j a 2j C 2j a n jC n j
1 0 2 -3
A= 3 4 0 1
det(A) = a11C11 +a12C12 + a13C13 +a14C14
-1 5 2 -2
0 1 1 3
4 0 1 3 0 1 3 4 1
det(A)=(1) 5 2 -2 - (0) -1 2 -2 +2 -1 5 -2
1 1 3 0 1 3 0 1 3
3 4 0
- (-3) -1 5 2 = (1)(35)-0+(2)(62)-(-3)(13)=198
0 1 1
Example : evaluate
1 5 -3
det(A)= 1 0 2
3 -1 2
By a cofactor along the third column
det(A)=a13C13 +a23C23+a33C33
4 1 0 1 5 1 5
det(A)= -3* (-1) +2*(-1)5 +2*(-1)6
3 -1 3 -1 1 0
= det(A)= -3(-1-0)+2(-1)5(-1-15)+2(0-5)=25
Quadratic form
d1 k11 k12
Let d k
Symmetric
d 2 k 21 k 22 matrix
Then
k11 k12 d1
U d k d d1 d 2
T
k12 k 22 d 2
k11d1 k12 d 2
d1 d 2
k12 d1 k 22 d 2
d1 (k11d1 k12 d 2 ) d 2 (k12 d1 k 22 d 2 )
k11d1 2k12 d1 d 2 k 22 d 2
2 2
Differentiation of quadratic form
Differentiate U wrt d1
U
2 k11 d 1 2 k12 d 2
d 1
Differentiate U wrt d2
U
2 k12 d 1 2 k 22 d 2
d 2
Differentiation of quadratic form
Hence
U
U d 1 k11 k12 d 1
2
d U k12 k 22 d 2
d 2
2k d
Solution of Equations
1. Gauss Elimination
The equations of the form solved by successively eliminating unknowns.
ai1/a11 are simply the row multipliers that were referred to in the example discussed previously. Also, a11 is
referred to as a pivot. The reduction is carried out for all the elements in the shaded area in above for which i
and j range from 2 to n . The elements in rows 2 to n of the first column are zeroes since x1 is eliminated. In
the computer implementation, we need not set them to zero, but they are zeroes for our consideration. At the
start of step 2, we thus have
The elements in the shaded area in above equation are reduced at step 2. We now show the start
of step k and the operations at step k in
At step k , elements in the shaded area are reduced. The general reduction scheme with limits on indices
may be put as follows: In step k ,
After (n – 1) steps, we get
The superscripts are for the convenience of presentation. In the computer implementation, these superscripts
can be avoided. We now drop the superscripts for convenience, and the back-substitution process is given by
𝑥n =bn / ann, and then
The algorithm discussed above is given below in the form of computer logic.
The other modification is related to the DO LOOP index (the third DO LOOP in the previous algorithm):
DO j = i, n
2.2 Banded, Symmetric Banded Matrices; Data Storage and Memory Optimization
In a banded matrix, all of the nonzero elements are contained within a band; outside of the band all
elements are zero. The stiffness matrix that we will come across in subsequent chapters is a symmetric
and banded matrix. Consider an (n x n) symmetric banded matrix:
First Second
Algorithm 2: Symmetric Banded Matrix
Back-substitution
Forward elimination
Solution with Multiple Right Sides
Often, we need to solve Ax = b with the same A, but with different bs. This happens in the finite element method
when we wish to analyze the same structure for different loading conditions. In this situation, it is computationally
more economical to separate the calculations associated with A from those associated with b . The reason
for this is that the number of operations in reduction of an (n x n) matrix A to its triangular form is proportional to
n3 , while the number of operations for reduction of b and back-substitution is proportional only to n2 . For large n,
this difference is significant.
The previous algorithm for a symmetric banded matrix is modified accordingly as follows:
We now discuss the reduction of column j , 2 … j … n, assuming that columns to the left of j have been fully
reduced. The coefficients can be represented in the following form:
The reduction of column j requires only elements from columns to the left of j and appropriately reduced elements
from column j. We note that for column j, the number of steps needed is j - 1. Also, since a11 is not reduced, we
need to reduce columns 2 to n only. The logic is now given as
We can see that if there are a set of zeroes at the top of a column, the operations need to be carried out only on
the elements ranging from the first nonzero element to the diagonal. This leads naturally to the skyline solution.
Skyline Solution: If there are zeroes at the top of a column, only the elements starting from the first nonzero
value need be stored. The line separating the top zeroes from the first nonzero element is called the skyline .
Consider the example
For efficiency, only the
active columns need be
stored. These can be
stored in a column
vector A and a diagonal
pointer vector ID as
2.2 Frontal Solution (Banded, Symmetric Banded Matrices)
• It is also known as the wave front solution
• For symmetric and banded coefficient matrix (the stiffness matrix), it is useful.
• Here, assembly of the system stiffness matrix is combined with the solution phase.
• The method results in a considerable reduction in computer memory requirements, especially for large
models.
• The stiffness matrix is banded and sparse (many zero-valued terms)
• In the frontal solution technique, the entire system stiffness matrix is not assembled as such. Instead,
method utilizes the fact that a degree of freedom (an unknown) can be eliminated when the rows and
columns of the stiffness matrix corresponding to that degree of freedom are complete.
• Eliminating a degree of freedom means that we can write an equation for that degree of freedom
in terms of other degrees of freedom and forcing functions. When such an equation is obtained,
it is written to a file and removed from memory.
• The net result is triangularization of the system stiffness matrix and the solutions are obtained by simple
back substitution.
Observe that the procedure has triangularized the system stiffness matrix without formally assembling
that matrix. If we take out the constraint equation, the remaining equations are easily solved by back
substitution. Here, forces are known.
a) Gauss-Seidel Method
An iterative method.
Basic Procedure:
-Algebraically solve each linear equation for xi
-Assume an initial guess solution array
-Solve for each xi and repeat
-Use absolute relative approximate error after each iteration
to check if error is within a pre-specified tolerance.
Gauss-Seidel Method
Why?
The Gauss-Seidel Method allows the user to control round-off error.
c2 a21 x1 a23 x3 a2 n xn
x2 From equation 2
a22
c a x a x an 1,n 2 xn 2 an 1,n xn From equation n-1
xn 1 n 1 n 1,1 1 n 1, 2 2
an 1,n 1
cn an1 x1 an 2 x2 an ,n 1 xn 1
xn From equation n
ann
Gauss-Seidel Method
Algorithm
General Form of each equation
n
a
n
c1 a1 j x j cn 1 n 1, j xj
j 1 j 1
j n 1
x1
j 1 xn 1
a11 an 1,n 1
n
n
c2 a2 j x j c n a nj x j
j 1 j 1
j n
x2
j 2
xn
a 22 a nn
Gauss-Seidel Method
Algorithm
General Form for any row ‘i’
n
ci aij x j
j 1
j i
xi , i 1,2, , n.
aii
a1 1
a 2
Initial Guess: Assume an initial guess of
2
a3 5
Gauss-Seidel Method: Example 1
When solving for a2, how many of the initial guess values were used?
Gauss-Seidel Method: Example 1
Finding the absolute relative approximate error
xinew xiold At the end of the first iteration
a i new
100
xi
a1 3.6720
a 7.8510
3.6720 1.0000 2
a 1 x100 72.76%
3.6720 a3 155.36
155.36 5.0000
a 3 x100 103.22%
155.36
Gauss-Seidel Method: Example 1
Iteration #2
Using
a1 3.6720 the values of ai are found:
a 7.8510 106.8 5 7.8510 155.36
2 a1 12.056
a3 155.36 25
from iteration #1
177.2 6412.056 155.36
a2 54.882
8
Iteration a1 a 1 % a2 a 2 % a3 a 3 %
1 3.6720 72.767 −7.8510 125.47 −155.36 103.22
2 12.056 69.543 −54.882 85.695 −798.34 80.540
3 47.182 74.447 −255.51 78.521 −3448.9 76.852
4 193.33 75.595 −1093.4 76.632 −14440 76.116
5 800.53 75.850 −4577.2 76.112 −60072 75.963
6 3322.6 75.906 −19049 75.972 −249580 75.931
Notice – The relative errors are not decreasing at any significant rate
a 1 0.29048
Also, the solution is not converging to the true solution of
a
2 19 .690
a 3 1.0857
Gauss-Seidel Method: Pitfall
What went wrong?
Even though done correctly, the answer is not converging to the
correct answer
This example illustrates a pitfall of the Gauss-Siedel method: not all
systems of equations will converge.
Is there a fix?
One class of system of equations always converges: One with a diagonally
dominant coefficient matrix.
The inequalities are all true and at least one row is strictly greater than:
Therefore: The solution should converge using the Gauss-Siedel Method
Gauss-Seidel Method: Example 2
Rewriting each equation With an initial guess of
12 3 5 a1 1 x1 1
1 5 3 a 28 x 0
2 2
3 7 13 a3 76 x3 1
1 3 x 2 5 x3 1 30 51
x1 x1 0.50000
12 12
4.9000 0
a 2
100 100.00%
4.9000
3.0923 1.0000
a 3
100 67.662%
3.0923
The maximum absolute relative error after the first iteration is 100%
Gauss-Seidel Method: Example 2
After Iteration #1
x1 0.5000
x 4.9000
2
x3 3.0923
76 30.14679 74.900
x3 3.8118
13
Gauss-Seidel Method: Example 2
This is much larger than the maximum absolute relative error obtained in
iteration #1. Is this a problem?
Gauss-Seidel Method: Example 2
Repeating more iterations, the following values are obtained
Iteration a1 a 1 % a2 a 2 % a3 a 3 %
x1 0.99919 x1 1
The solution obtained x 3.0001 is close to the exact solution of x 3 .
2 2
x3 4.0001 x3 4
Gauss-Seidel Method: Example 3
Given the system of equations
Iteration a1 a 1 % A2 a 2 % a3 a 3 %
1 21.000 95.238 0.80000 100.00 50.680 98.027
2 −196.15 110.71 14.421 94.453 −462.30 110.96
3 −1995.0 109.83 −116.02 112.43 4718.1 109.80
4 −20149 109.90 1204.6 109.63 −47636 109.90
5 2.0364×105 109.89 −12140 109.92 4.8144×105 109.89
6 −2.0579×105 109.89 1.2272×105 109.89 −4.8653×106 109.89
x1 x2 x3 3
2 x1 3x2 4 x3 9
x1 7 x2 x3 9
Questions?
2 b) Conjugate Gradient Method
The conjugate gradient method
is an iterative method that is
used to solve large symmetric
linear systems Ax=b.
x0∈RN,r0=b−x0,p0=r0
u T Av u , v A : Au , v u , AT v u , Av
Two vectors are conjugate if and only if they are orthogonal with respect to this inner product. Being
conjugate is a symmetric relation: if u is conjugate to v, then v is conjugate to u. Suppose that
P p1 ,..., pn
n
is a set of n mutually conjugate vectors (with respect to A). Then P forms a basis for , and we may
express the solution x* of Ax b in this basis:
n
x* i pi
i 1
2
The existence of a unique minimizer is apparent since its second derivative is given by a symmetric positive-
definite matrix
2 f ( x) A
and that the minimizer (use Df(x)=0) solves the initial problem is obvious from its first derivative
f ( x) Ax b
Taking the first basis vector p0 (residual) to be the negative of the gradient of f at x = x0.
The gradient of f equals Ax − b. Starting with an initial guess x0, this means we take p0 = b − Ax0.
The other vectors in the basis will be conjugate to the gradient, hence the name conjugate gradient method.
Let rk be the residual at the kth step:
rk b Axk
rk is the negative gradient of f at x = xk, so the gradient descent method would require to move in the direction rk.
However, we insist that the directions pk be conjugate to each other. A practical way to enforce this, is by requiring
that the next search direction be built out of the current residual and all previous search directions. This gives the
following expression: piT Ark
pk rk T
pi
ik
pi pi
Next optimal location is given by:
xk 1 xk k pk
pkT (b Axk ) pkT rk
and, k T
T
pk Apk pk Apk
The expression for 𝜶k is derived by minimizing the expression for f(xk+1) and minimizing it wrt 𝜶k:
The algorithm requires storage of all previous searching directions and residue vectors, as well as many
matrix-vector multiplications, and thus can be computationally expensive. However, a closer analysis of
the algorithm shows that ri is orthogonal to rj , i.e., riT rj 0 (i j ) . Also, pi is A-orthogonal pj, i.e.,
piT Ap j 0 (i j ). This can be regarded that as the algorithm progresses, p and r span the same Krylov subspace.
i i
Here, ri form the orthogonal basis with respect to standard inner product, and pi form the orthogonal
basis with respect to inner product induced by A. Therefore, xk can be regarded as the projection of x on
the Krylov subspace.
Solution:
Problem:
Fourier Integrals
Discrete Fourier Transform (DFT)
Fast Fourier Transform (FFT)
Discrete Fourier Transform (DFT) and Fast Fourier Transform (FFT)
-L L
-L- L
nx nx
f L ( x ) a0 a n cos bn sin
n 1 L L
n
a0 a n coswn x bn sin wn x , wn
n 1 L
a n coswn x bn sin wn x
n 0
( n 1) n
Note that : Δw wn 1 wn
L L L
f L ( x)
1 cosw x w L f ( v ) cos(w v )dv sin w x w L f ( v ) sin( w v )dv
n 0 n L L n n L L n
As L , w 0, ( )w ( )dw
f L ( x)
1 cosw x w L f ( v ) cos(w v )dv sin w x w L f ( v ) sin( w v )dv
n 0 n L L n n L L n
0
1
f ( v ) cos(wv )dvcos(wx ) f ( v ) sin( wv )dvsin( wx )dw
1
0
f ( x ) A( w) cos(wx ) B( w) sin( wx )dw : Fourier integral of f(x)
0
1 1
where A( w) f ( v ) cos(wv )dv, B( w) f ( v ) sin( wv )dv
Fourier Cosine & Sine Integrals
1
If the function f(x) is even A(w)
f (v ) cos(wv )dv
0
1 1 2
( )dv ( )dv f (v ) cos(wv )dv
0 0
B( w) 0
f ( x ) A( w) cos(wx )dw : Fourier Cosine Integral
0
1
If the function f(x) is odd B(w)
f (v ) sin( wv )dv
A( w) 0, f ( x ) B( w) sin( wx )dw : Fourier Sine Integral
0
Example
1 for - 1 x 1
Let f(x)
0 for x 1
1
1 1 2 sin( w)
A( w) f ( v ) cos(wv )dv cos(wv )dv
1 w
1 1
1 1
B( w)
f ( v ) sin( wv )dv sin( wv )dv 0
1
1
1.5
1
f 10 ( x)
f 100 ( x)
g( x)
0
0.5
2 1 0 1 2
2 x 2
Similar to Fourier series approximation, the Fourier integral approximation
improves as the integration limit increases. It is expected that the integral will
converges to the real function when the integration limit is increased to infinity.
Physical interpretation: The higher the integration limit means more higher
frequency sinusoidal components have been included in the approximation.
(similar effect has been observed when larger n is used in Fourier series
approximation)
This suggests that we can be interpreted as the frequency of each of the
sinusoidal wave used to approximate the real function.
Suggestion: A(w) can be interpreted as the amplitude function of the specific
sinusoidal wave (similar to the Fourier coefficient in Fourier series expansion).
Fourier Cosine Transform
For an even function f(x) :
2
f ( x ) A( w) cos(wx )dw, where A( w) f ( v ) cos(wv )dv.
0
0
2 ˆ
Define A(w) f c ( w)
2
fˆc ( w) A( w) f ( x ) cos(wx )dx, v has been replaced by x
2 0
2
f ( x ) A( w) cos(wx )dw fˆ ( w) cos(wx )dw
0
0
c
2 ˆ
Define B(w) f S ( w)
2
fˆS ( w) B( w) f ( x ) sin( wx )dx, v has been replaced by x
2 0
2
f ( x ) B( w) sin( wx )dw fˆ ( w) sin( wx )dw
0
0
S