1.16k likes | 1.18k Views
Computational Methods and Programming M.Sc. II, Sem -IV Under Academic Flexibility (Credit) Scheme. Computation. Computation as a third pillar of science. Theory. Observation/ Experiment. Traditional view. Modern view. What are we going to study ?. Ordinary Differential equations
E N D
Computational Methods and ProgrammingM.Sc. II, Sem-IV Under Academic Flexibility (Credit) Scheme
Computation Computation as a third pillar of science Theory Observation/ Experiment Traditional view Modern view
What are we going to study ? • Ordinary Differential equations • Partial Differential Equations • Matrix Algebra • Monte Carlo Methods and Simulations
1. Ordinary Differential Equations • Types of differential equations • Numerical solutions of ordinary differential equations • Euler method • Applications to non-linear and vector equations • Leap-Frog method • Runge-Kutta method • The predictor corrector method • The intrinsic method
2. Partial Differential Equations • Types of equations • Elliptic Equations-Laplace’s equations • Hyperbolic Equations-Wave Equation, • Eularian-Lagrangian Methods • Parabolic Equations-Diffusion, • Conservative Methods- • The equation of continuity • Maxwell’s Equations • Dispersion
3. Matrix Algebra • Types of Matrices • Simple matrix problems • Elliptic equations-Poisson’s equation • System of equation and Matrix inversion • Iterative method- The Jacobi method • Matrix Eigen Value problems- Schrodinger’s Equation
4. Monte Carlo methods and Simulation • Random number generators • Monte Carlo Integration • The Metropolis Algorithm • The Ising model • Quantum Monte Carlo
Reference Books • 1. Potter D, Computational Physics, Wiley, Chichester, 1973 • 2. Press W H et. al., Numerical Recipes: The Art of Scientific Computing, CUP, Cambridge, 1992 • 3. Wolfrom S, Mathematica- A System For Doing Mathematics By Computer, Addison Wesley, 1991 • 4. Angus McKinnon, Computational Physics - 3rd/4th Year Option, Notes in .pdf format
Some questions on Unit No 3 and 4 • Discuss the types of matrices. • Explain the method of Elimination of unknowns, solve the following equations by the same: • 5x - 3y + 9z = 0.7 • 0.007x + 4.17y + 8.3z = 10.79 • 4x - 3.7y + 0.5z = 0.157 • and explain Write note on Gauss–Seidel Method • Explain Elliptic equations as a Poisson’s equation • State Matrix Eigen Value problems- Schrodinger’s Equation • What is Random number generators? • Write note on Monte-Carlo integration. • What is Metropolis Algorithm ? Explain Ising model in detail. • Write note on Quantum Monte Carlo
Chapter 3 Matrix Algebra Nearly every scientific problem which is solvable on a computer can be represented by matrices. However the ease of solution can depend crucially on the types of matrices involved. There are 3 main classes of problems which we might want to solve: 1. Trivial Algebraic Manipulation such as addition, A + B or multiplication, AB, of matrices. 2. Systems of equations: Ax = b where A and b are known and we have to find x. This also includes the case of finding the inverse, A-1. The standard example of such a problem is Poisson’s equation. 3. Eigenvalue Problems: Ax = x. This also includes the generalised eigenvalue problem: Ax = B x. Here we will consider the time–independent Schrodinger equation.
Matrices A matrix is defined as a square or rectangular array of numbers that obeys certain laws. This is a perfectly logical extension of familiar mathematical concepts. Use of Matrix We can write the linear equations given below more elegantly and compactly by collecting the coefficients in a 3×3 square array of numbers called a matrix:
Row matrix A row matrix consists of a single row. For example: Column matrix A column matrix consists of a single column. For example: Rank The rank m of a matrix is the maximal number of linearly independent row vectors it has; with 0 ≤ m ≤ n. As the triple scalar product for above matrix is not zero, they span a non zero volume, are linearly independent, and the homogeneous linear equations have only the trivial solution. In this case, the matrix is said to have rank 3.
Equality Two matrices A=B are defined to be equal if and only if aij =bij for all values of i and j. Example
Special matrices Square matrix Unit matrix Null matrix
Special matrices Square matrix A square matrix is of order m×m. A square matrix is symmetric if . For example: A square matrix is skew-symmetric if . For example:
Special matrices Unit matrix A unit matrix is a diagonal matrix with all elements on the leading diagonal being equal to unity. For example: The product of matrix A and the unit matrix is the matrix A:
Special matrices Null matrix A null matrix is one whose elements are all zero. Notice that But that if we cannot deduce that or
Trace In any square matrix the sum of the diagonal elements is called the trace. For example, Clearly, the trace is a linear operation: trace(A − B) = trace(A) − trace(B).
Matrix addition We also need to add and subtract matrices according to rules that, again, are suggested by and consistent with adding and subtracting linear equations. When we deal with two sets of linear equations in the same unknowns that we can add or subtract, then we add or subtract individual coefficients keeping the unknowns the same. This leads us to the definition A + B = C if and only if aij + bij = cijfor all values of i and j, with the elements combining according to the laws of ordinary algebra (or arithmetic if they are simple numbers). This means that A + B = B + A, commutation.
Two matrices of the same order are said to be conformable for addition or subtraction. • Two matrices of different orders cannot be added or subtracted, e.g., are NOT conformable for addition or subtraction.
Properties Matrices A, B and C are conformable, • A + B = B + A • A + (B +C) = (A + B) +C • l(A + B) = lA + lB, where l is a scalar (commutative law) (associative law) (distributive law)
Matrix subtraction: Example (Scalar multiplication and matrix subtraction) Find (a) 3A, (b) –B, (c) 3A – B Scalar multiplication:
Sol: (a) (b) (c)
Matrix Multiplication We now write linear equations in terms of matrices because their coefficients represent an array of numbers that we just defined as a matrix, The above inhomogeneous equations can be written similarly
Properties Matrices A, B and C are conformable, • A(B + C) = AB + AC • (A + B)C = AC + BC • A(BC) = (AB) C However • AB BA in general • AB = 0 NOT necessarily imply A = 0 orB = 0 • AB = ACNOT necessarily imply B = C
MatrixInversion We cannot define division of matrices, but for a square matrix A with nonzero determinant we can find a matrix A−1, called the inverse of A, so that A−1A = AA−1 = I.
Proof: Notes: (1) The inverse of A is denoted by Theorem : (The inverse of a matrix is unique) If B andC are both inverses of the matrix A, thenB = C. Consequently, the inverse of a matrix is unique.
Ans: Note that Example: Show B is the the inverse of matrix A.
Inverse of a 33 matrix Cofactor matrix of A The cofactor for each element of matrix A:
Simple C Program /* A first C Program*/ #include <stdio.h> void main() {printf("Happy New Year 2014 \n"); }
Matrix multiplication in c language 1 Requirements Design, develop and execute a program in C to read two matrices A (m x n) and B (p x q) and compute the product of A and B if the matrices are compatible for multiplication. The program must print the input matrices and the resultant matrix with suitable headings and format if the matrices are compatible for multiplication, otherwise the program must print a suitable message. (For the purpose of demonstration, the array sizes m, n, p, and q can all be less than or equal to 3) 2 Analysis c[i, j] = a[i,k] b[k,j]
3 Design 3.1 Algorithm Start Read matrix A[m,n] Read matrix B[p,q] if n is not equal to p, Print “Matrix Multiplication not possible”. stop Write matrix A[m,n] Write matrix B[p,q] for i = 0 to m-1 for j = 0 to q-1 c[i][j]=0; for k = 0 to n-1 c[i][j] += a[i][k]*b[k][j] write the matrix C[m,n] Stop
4 Code/ program #include <stdio.h> int main() { int m, n, p, q, c, d, k, sum = 0; int first[10][10], second[10][10], multiply[10][10]; printf("Enter the number of rows and columns of first matrix\n"); scanf("%d%d", &m, &n); printf("Enter the elements of first matrix\n"); for ( c = 0 ; c < m ; c++ ) for ( d = 0 ; d < n ; d++ ) scanf("%d", &first[c][d]); printf("Enter the number of rows and columns of second matrix\n"); scanf("%d%d", &p, &q); if ( n != p ) printf("Matrices with entered orders can't be multiplied with each other.\n"); else { printf("Enter the elements of second matrix\n"); for ( c = 0 ; c < p ; c++ ) for ( d = 0 ; d < q ; d++ ) scanf("%d", &second[c][d]); for ( c = 0 ; c < m ; c++ ) { for ( d = 0 ; d < q ; d++ ) { for ( k = 0 ; k < p ; k++ ) { sum = sum + first[c][k]*second[k][d]; } multiply[c][d] = sum; sum = 0; } } printf("Product of entered matrices:-\n"); for ( c = 0 ; c < m ; c++ ) { for ( d = 0 ; d < q ; d++ ) printf("%d\t", multiply[c][d]); printf("\n"); } } return 0; }
=MINVERSE(A2:C4) =MMULT(array1,array2) =MDETERM(array) =TRANSPOSE(A2:C2)
C code to find inverse of a matrix Inverse of a 3x3 matrix in c #include<stdio.h> intmain(){ inta[3][3],i,j; floatdeterminant=0; printf("Enter the 9 elements of matrix: "); for(i=0;i<3;i++) for(j=0;j<3;j++) scanf("%d",&a[i][j]); printf("\nThe matrix is\n"); for(i=0;i<3;i++){ printf("\n"); for(j=0;j<3;j++) printf("%d\t",a[i][j]); } for(i=0;i<3;i++) determinant = determinant + (a[0][i]*(a[1][(i+1)%3]*a[2][(i+2)%3] - a[1][(i+2)%3]*a[2][(i+1)%3])); printf("\nInverse of matrix is: \n\n"); for(i=0;i<3;i++){ for(j=0;j<3;j++) printf("%.2f\t",((a[(i+1)%3][(j+1)%3] * a[(i+2)%3][(j+2)%3]) - (a[(i+1)%3][(j+2)%3]*a[(i+2)%3][(j+1)%3]))/ determinant); printf("\n"); } return0; }
Example Find (a) the eigenvalues and (b) the eigenvectors of the matrix Solution: (a) The eigenvalues: The characteristic equation is which has two roots
(b) The eigenvectors: For =1 = 6 the system for eigen vectors assumes the form: (A I) X = 0 i.e. (A 6I) X = 0 Thus x1 = 4x2, and
For =2 = 1 the system for eigen vectors assumes the form Thus x1 = x2, and
Example Find a matrix S that diagonalizes Solution: We have first to find the eigenvalues and the corresponding eigen- vectors of matrix A. The characteristic equation of A is so that the eigenvalues of A are = 1 and = 5.