5 - NumPy for Engineering Numerical Computation — Topics & Learning Outcomes

📋 Module Topics🎯 Student Learning Outcomes

Module Topics

Numpy Functions

A summary of Numpy functions

Introduction to NumPy and the ndarray

Covers what NumPy is, why it is the cornerstone of numerical engineering computation in Python, and how the ndarray differs fundamentally from a Python list.

Creating NumPy Arrays

Explores the full range of array construction methods, from converting Python sequences to using specialized initialization functions that generate arrays of specific values or ranges.

Element-Wise Operations and Universal Functions

Describes how NumPy performs arithmetic and mathematical operations element-by-element using ufuncs, enabling vectorized computation without explicit Python loops.

Broadcasting

Explains NumPy's broadcasting mechanism that allows arithmetic operations between arrays of different but compatible shapes without copying data.

Indexing, Slicing, and Fancy Indexing

Covers all methods for accessing and selecting subsets of array elements, from basic integer indexing and slices to advanced Boolean and integer-array indexing.

Reshaping, Transposing, and Array Manipulation

Explains how to change the shape and layout of arrays without altering their data, including reshape, transpose, flatten, and stacking operations fundamental to preparing data for engineering algorithms.

Linear Algebra with NumPy

Covers NumPy's linear algebra capabilities, including matrix multiplication, decompositions, solving linear systems, and computing norms and determinants as needed for engineering analysis.

Statistical and Mathematical Functions

Introduces NumPy's built-in statistical descriptors and mathematical functions that enable rapid characterization of engineering data and evaluation of mathematical expressions over arrays.

Student Learning Outcomes

By the end of this module, students will be able to:

MO1
Construct NumPy arrays using creation functions such as np.array(), np.arange(), np.linspace(), and constant-value initializers appropriate to a given engineering computation context
Level: ApplyType: CognitiveCourse mapping: CO1
MO2
Apply vectorized element-wise operations and broadcasting rules to perform arithmetic across arrays of compatible but different shapes without explicit Python loops
Level: ApplyType: CognitiveCourse mapping: CO3
MO3
Select subsets of array data using integer indexing, slicing, Boolean masking, and fancy indexing to extract or filter engineering datasets
Level: ApplyType: CognitiveCourse mapping: CO1
MO4
Solve a system of linear equations and compute eigenvalues of a square matrix using NumPy's numpy.linalg functions
Level: ApplyType: CognitiveCourse mapping: CO3
MO5
Calculate descriptive statistics and evaluate trigonometric or polynomial functions over arrays to characterize engineering data
Level: ApplyType: CognitiveCourse mapping: CO3

Course Outcomes (reference)

CO1Use variables, arrays and object structures appropriate to solve engineering problems.
CO2Write computer functions to meet specific calculation needs.
CO3Write computer programs to solve mathematical expressions and engineering problems