- Data Structure
- Networking
- RDBMS
- Operating System
- Java
- MS Excel
- iOS
- HTML
- CSS
- Android
- Python
- C Programming
- C++
- C#
- MongoDB
- MySQL
- Javascript
- PHP
- Physics
- Chemistry
- Biology
- Mathematics
- English
- Economics
- Psychology
- Social Studies
- Fashion Studies
- Legal Studies
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
Swift Program to Find the Trace and Normal of a given Matrix
In this article, we will learn how to write a swift program to find trace and normal of a given matrix.
Calculating the Trace of a given Matrix
Trace is known as the sum of primary diagonal elements of the given square matrix. For example, we have a 3x3 square matrix −
2 3 4 3 4 6 1 3 2
So the primary diagonal elements are 2, 4 and 2. Hence the trace of the given 3x3 matrix is 2+4+2 = 8.
Algorithm
Step 1 − Define the size of the matrix.
Step 2 − Create a function
Step 3 − Declare a variable to store the sum.
Step 4 − Run a for loop to iterate through each element and add all the diagonal elements with each other.
sum += mxt[y][y]
Step 5 − Create a matrix
Step 6 − Call the function and pass the matrix into it.
Step 7 − Print the output
Example
Following Swift program to find trace of a given matrix.
import Foundation import Glibc // Size of the matrix var size = 5 // Function to find a trace of the given matrix func Trace(mxt:[[Int]]){ var sum = 0 for y in 0..<size{ sum += mxt[y][y] } print("Trace of the matrix is:", sum) } // Creating 5x5 matrix of integer type var matrix : [[Int]] = [[1, 3, 4, 1, 2], [2, 8, 2, 5, 6], [3, 4, 3, 4, 3], [8, 4, 3, 4, 6], [7, 5, 5, 9, 1]] print("Matrix:") for x in 0..<size{ for y in 0..<size{ print(matrix[x][y], terminator:" ") } print("\n") } // Calling the function Trace(mxt:matrix)
Output
Matrix: 1 3 4 1 2 2 8 2 5 6 3 4 3 4 3 8 4 3 4 6 7 5 5 9 1 Trace of the matrix is: 17
Here in the above code, we have a 5x5 matrix. Now we create a function to find the trace. So to calculate the trace we run a for loop to find the primary diagonal elements and then add them together.
Calculating the Normal of a given Matrix
Normal is defined as the square root of the sum of the square of the elements of the given matrix. For example, we have a 3x3 square matrix −
2 3 4 3 4 6 1 3 2
So first, we find the sum of the squares of the elements −
$\mathrm{Sq \:=\: 2^2 \:+\: 3^2\: +\: 4^2\: +\: 3^2\: + \:4^2\: + \:6^2\: +\: 1^2\: + \:3^2\: +\: 2^2 }$
$\mathrm{Sq\: = \:4 + \:9 \:+ \:16 \:+\: 9 \:+ \:16 \:+ \:36 \:+ \:1 \:+ \:9 \:+ \:4}$
$\mathrm{Sq \:=\: 104}$
So the normal is $\mathrm{\sqrt{104}\:=\: 10.198039027185}$
Algorithm
Step 1 − Define the size of the matrix.
Step 2 − Create a function
Step 3 − Declare a variable to store the sum.
Step 4 − Run a for loop to iterate through each element and add the square of all the elements with each other.
sum += mxt[x][y] * mxt[x][y]
Step 5 − Find the normal by calculating the square root of the sum of the square of the elements using sqrt() function. Int(sqrt(Double(sum)))
Step 6 − Create a matrix
Step 7 − Call the function and pass the matrix into it.
Step 8 − Print the output
Example
Following Swift program to find the normal of a given matrix.
import Foundation import Glibc // Size of the matrix var size = 4 // Function to find normal of the given matrix func Normal(mxt:[[Int]]){ var sum = 0 for x in 0..<size{ for y in 0..<size{ sum += mxt[x][y] * mxt[x][y] } } print("Normal of the matrix is:", Int(sqrt(Double(sum)))) } // Creating 4x4 matrix of integer type var matrix : [[Int]] = [[1, 3, 4, 1], [2, 2, 2, 5], [3, 4, 3, 4], [9, 9, 9, 9]] print("Matrix:") for x in 0..<size{ for y in 0..<size{ print(matrix[x][y], terminator:" ") } print("\n") } // Calling the function Normal(mxt:matrix)
Output
Matrix: 1 3 4 1 2 2 2 5 3 4 3 4 9 9 9 9 Normal of the matrix is: 20
Here in the above code, we have a 4x4 matrix. Now we create a function to find the normal. So to calculate normal first we find the sum of the squares of all the matrix elements and then we find the square root of the obtained sum using the sqrt() function. It is a predefined function to calculate the square root of any value. Hence, the normal of the given matrix is 20.