Notes From Class
Week 1: September 3 and 5, 2025.
In-person Instruction: September 3 and 5.
-
Topic (2025-09-03): Welcome to ENCE 201.
-
Topic (2025-09-05): Civil Information Systems (Introduction) (Part 1):
(pdf)
-
Topic (2025-09-05): Civil Information Systems (Near-Term Challenges) (Part 2):
(pdf)
-
YouTube: Coding with Kylie:
Python for the Complete Beginner
-
Homework 1: Homework 1
Due: September 19.
Week 2: September 8, 10 and 12, 2025.
In-person Instruction: September 8, 10 and 12.
-
Topic (2025-09-08): Civil Information Systems (Modern Computing/AI-ML) (Part 3):
(pdf)
-
Topic (2025-09-08): Civil Information Systems (Urban Applications) (Part 4):
(pdf)
-
Download: Overview of Civil Information Systems, Parts 1-5
(pdf)
(Version 2025-09-02).
PYTHON I: INTRODUCTION
-
Topic (2025-09-10): What is Python? Program Development (Part 1):
(pdf)
-
Topic (2025-09-12): Data Types, Variables, Arithmetic Expressions, etc (Part 2):
(pdf)
-
Download Python Code:
Click here to download a zip
file of the Python code (Version: 2025-09-28):
Unpack, then look at the README.txt file.
This version contains scripts for:
-
Basic stuff: variables, math functions, loops, strings, methods, arrays, objects.
-
Formatting string output.
-
Reading input from CSV, SHP and JSON files.
-
Working with collections: lists, sets, and dictionaries.
-
Working with NumPy: matrix transformations and matrix linear algebra.
-
Working with Pandas: series and dataframes.
-
Working with GeoPandas: spatial data series and dataframes.
-
Creating two- and three-dimensional plots.
-
Working with dates and time, and (basic) time series.
-
Creating objects and working with inheritance mechanisms.
-
Solution of linear matrix equations/numerical Analysis
-
Symbolic computing with SciPy.
Also check out the folders: python-code.d/data/ and python-code.d/applications/ ... and folders therein.
Week 3: September 15, 17 and 19, 2025.
In-person Instruction: September 15 and 17.
In-person Homework/Computer Assistance: September 19.
-
Topic (2025-09-15):
First Program (Evaluate and Plot Sigmoid Function) (Part 3):
(pdf)
-
Topic (2025-09-17):
Builtin Collections (Lists, Dictionaries, and Sets) (Part 4):
(pdf)
-
Solutions:
Solutions to Homework 1
(pdf).
Week 4: September 22, 24 and 26, 2025.
In-person Instruction: September 22 and 24.
In-person Review/Homework/Computer Assistance: September 26.
-
Topic (2025-09-22):
Numerical Python (Working with NumPy) (Part 5):
(pdf)
-
Download:
Introduction to Python, Parts 1--5
(pdf)
(Version: 2025-09-02)
PYTHON II: TABULAR DATA AND SPATIAL DATA
-
Topic (2025-09-22):
Data-driven Development (Part 1)
(pdf)
-
Topic (2025-09-24):
Tabular Data and Dataset Transformation (Working with Pandas) (Part 2):
(pdf)
-
Homework 2: Homework 2
Due: October 10.
Note (Oct. 3): Minor update to wording in Question 2. The correct reference to the test program is:
python-code.d/applications/airports/TestAirportMaryland01.py
Draft visualization for international flights from BWI ...
Draft visualization for international flights, BWI to Cancun, MX ...
-
Software Update:
Click here to download a zip
file of the Python code (Version: 2025-09-28):
This version contains python programs that generate histograms (bar charts) in a variety of ways.
See python-code.d/charts/TestHistogram03.py.
Also see python-code.d/pandas/TestDataGroupBy01.py and TestDataGroupBy02.py.
Week 5: September 29, October 1 and 3, 2025.
In-person Instruction: September 29, October 1.
In-person Homework Assistance: October 3.
-
Topic (2025-09-29):
Spatial Data and Dataset Transformation (Working with GeoPandas) (Part 3):
(pdf)
-
Topic (2025-09-29):
Geospatial Applications (Part 4):
(pdf)
-
Download:
Python Data, Parts 1--4
(pdf)
(Version: 2025-09-02)
PYTHON III: OBJECT-ORIENTED DEVELOPMENT
-
Topic (2025-10-01): Objects and Classes (Part 1)
(pdf)
-
Topic (2025-10-01): Relationships Among Classes) (Part 2)
(pdf)
Week 6: October 6, 8 and 10, 2025.
In-person Instruction: October 6 and 8.
In-person Review Session: October 10.
-
Topic (2025-10-06): Composition of Object Models (Part 3)
(pdf)
-
Topic (2025-10-06): Working with Groups of Objects (Part 4)
(pdf)
-
Topic (2025-10-08): Spatial Modeling with Objects (Part 5)
(pdf)
-
Download: Object-Oriented Software Development (Parts 1--5)
(pdf)
(Version: 2025-10-06).
-
Solutions: Midterm 1 Exam, Fall Semester 2024
(pdf).
-
Solutions: Midterm 1 Exam, Spring Semester 2025
(pdf).
Week 7: October 13, 15 and 17, 2025.
No Instruction: October 13 and 14.
In-class Instruction: October 17.
-
Topic (2025-10-13): No class ...
Fall Semester Break
-
MIDTERM 1: October 15, 9am.
Here is the midterm exam (pdf).
NOTE:
You have 12 hrs (i.e., 9 am to 9 pm) to complete and return the exam.
Please make sure your name and e-mail are clearly written on the first page.
Open book and open notes. University rules on academic integrity apply.
Two questions covering programming with Python.
Good luck!
Study Hint: Review solutions to most recent midterm exams, and HW 1 and HW 2.
Instructions for Submitting Midterm I: See details on ENCE201 home page.
-
Solutions: Midterm 1 Exam
(pdf)
-
Solutions:
Solutions to Homework 2
(pdf)
HW2, Q1, Follow-Up:
In the solutions to HW 2, Figure 1 shows a very large scatter in the data,
indicating that by itself, age is a poor predictor of concrete compressive strength.
To quantify matters, the average strength = 35.8, with a mean square error (MSE) = 278.8.
This plot (downloaded from Google) shows that approximately 21 days are
needed for curing concrete to reach 90% of its ultimate compressive strength.
And then, the concerete strength increases very slowly ...
Data mining techniques can improve the accuracy of predictions by automatically
determining what combinations of factors (e.g., age, water, cement) affect
concrete compressive strength for curing concrete:
Root (MSE 278.81; observations 1030; prediction 35.818) # <--- This is Fig. 1, HW2.
|-- Split rule: Age <= 21.0 (MSE 153.56; observations 324; prediction 23.54)
|------ Split rule: Cement <= 354.5 (MSE 79.94; observations 230; prediction 18.7)
|------------ Split rule: Age <= 10.5 (MSE 52.39; observations 173; prediction 15.74)
|------------ Split rule: Age > 10.5 (MSE 53.92; observations 57; prediction 27.78)
|------ Split rule: Cement > 354.5 (MSE 136.53; observations 94; prediction 35.372)
|------------ Split rule: Water <= 183.05 (MSE 99.87; observations 58; prediction 39.99)
|------------ Split rule: Water > 183.05 (MSE 105.59; observations 36, prediction 27.99)
|-- Split rule: Age > 21.0 (MSE 235.38; No observations 706; prediction 41.45)
|------ Split rule: Cement <= 355.95 (MSE 162.58; observations 547; prediction 36.95)
|------------ Split rule: Cement <= 164.8 (MSE 82.7; observations 126; prediction 25.99)
|------------ Split rule: Cement > 164.8 (MSE 139.84; observations 421; prediction 40.22)
|------ Split rule: Cement > 355.95 (MSE 176.23; observations 159; prediction 56.93)
|------------ Split rule: Water <= 183.05 (MSE 92.32; observations 94; prediction 63.993)
|------------ Split rule: Water > 183.05 (MSE 121.6; observations 65; prediction 46.74)
Here's what the data mining says:
-
Age is the dominant predictor of concrete compressive strength,
particularly during the first 21 days of curing.
-
Concrete strength increases with levels of cement content (thank goodness).
-
If you want to maximize concrete compressive strength,
use lots of cement with moderate levels of water,
and then wait at least 21 days.
-
Too much water used in conjunction with high levels of cement content
will result in a decrease of concrete strength.
-
Handout:
Dr. Maria Coelho, Model-based Systems Engineering Research Scientist, Idaho National Labs,
Topic: Digital Engineering and Advanced Energy Systems
(pdf).
Week 8: October 20, 22 and 24, 2025.
In-person Instruction: October 20 and 22.
In-person Instruction/Homework Assistance: October 24.
-
Topic (2025-10-17): Numerical Accuracy (Representation and Roundoff Errors) (Part 1): (pdf)
-
Topic (2025-10-20): Numerical Accuracy (Subtractive Cancellation) (Part 2): (pdf)
-
Download:
Numerical Accuracy, Parts 1-2
(pdf)
(Version: 2023-07-02)
-
Topic (2025-10-20): Functional Approximation (Taylor Series) (Part 1)
(pdf)
-
Topic (2025-10-20): Functional Approximation (Fourier Series) (Part 2)
(pdf)
-
Download:
Functional Approximation, Parts 1-2
(pdf)
(Version: 2025-10-20).
-
Homework 3:
(pdf)
(All about programming with objects, roots of equations, and matrix linear algebra)
Due: Nov. 7.
Week 9: October 27, 29 and 31, 2025.
In-person Instruction: October 27 and 29.
Homework Assistance: October 31.
-
Topic (2025-10-27): Roots of Equations (Numerical Solution; Iterative Methods) (Part 1):
(pdf)
-
Topic (2025-10-27): Roots of Equations (Method of Bisection) (Part 2):
(pdf)
-
Topic (2025-10-27): Roots of Equations (Newton Raphson Iteration; Modified Newton Raphson)
(pdf)
-
Download: Roots of Equations, Parts 1-2-3
(pdf) (Version: 2025-10-20).
-
Topic (2025-10-29): Matrices and Vectors (Matrices and Matrix Properties) (Part 1):
(pdf)
-
Topic (2025-10-29): Matrices and Vectors (Vectors and Vector Properties) (Part 2):
(pdf)
-
Download:
Basic Introduction to Vectors and Matrices: Parts I and 2:
(pdf)
(Version: 2024-10-14)
-
Tutorial on Symbolic Python (pdf).
Week 10: November 3, 5 and 7, 2025.
In-person Instruction: November 3 and 5.
Homework Assistance: November 7.
-
Topic (2025-11-03): Linear Matrix Equations I (Solutions in 2 and 3 Dimensions) (Part 1):
(pdf) ...
-
Topic (2025-11-03): Linear Matrix Equations I (Determinant) (Part 2):
(pdf) ...
-
Topic (2025-11-03): Linear Matrix Equations I (Elementary Row Operations) (Part 3):
(pdf) ...
-
Topic (2025-11-03): Linear Matrix Equations I (Working Examples) (Part 4):
-
Download:
Linear Matrix Equations I,Parts 1-4
(pdf)
(Version: 2025-04-02)
-
Topic (2025-11-05): Linear Matrix Equations II (Gauss Elimination; No Pivoting) (Part 1) (pdf)
-
Topic (2025-11-05): Linear Matrix Equations II (Gauss Elimination with Partial Pivoting) (Part 2) (pdf)
-
Solutions:
Solutions to Homework 3
(pdf)
Leaning Tower of Lire:
So, it turns out that there are a number of interesting variations on the block stacking problem.
Consider, for example, the problem of stacking blocks to aximize the horizontal reach:
Mathematicians have shown that the maximum horizontal reach occurs when the blocks are stacked according
to a harmonic series. From the top, 1/2 overhang, then 1/4 overhang, then 1/6 overhang, and so forth.
This series is known to diverge, which implies infinite horizontal reach (quite counter intuitive).
Week 11: November 10, 12 and 14, 2025.
In-person Instruction: November 10 and 12.
In-person Homework Assistance: November 14.
-
Topic (2025-11-10): Linear Matrix Equations II (LU Decomposition) (Part 3) (pdf)
-
Download:
Linear Matrix Equations II, Parts 1-2-3
(pdf)
(Version: 2024-10-28)
-
Topic (2025-11-12): Interpolation and Curve Fitting (Divided Differences) (Part 1): (pdf) ...
-
Topic (2025-11-12): Interpolation and Curve Fitting (Lagrange Interpolation) (Part 2): (pdf) ...
-
Topic (2025-11-14): Interpolation and Curve Fitting (Least Squares) (Part 3): (pdf) ...
-
Download: Interpolation and Curve Fitting, Parts 1-2-3
(pdf)
(Version 2023-07-14).
-
Homework 4:
(pdf)
(All about least squares, accuracy of finite differences, polynomial interpolation) ...
Due: November 21.
Week 12: November 17, 19 and 21, 2025.
In-person Instruction: November 17 and 19.
Exam Review: November 21.
-
Topic (2025-11-17): Numerical Differentiation:
(pdf)
(Version 2023-07-15).
-
Topic (2025-11-19): Numerical Integration I (Trapezoid/Simpson's Rules) (Part 1): (pdf) ...
-
Topic (2025-11-19): Numerical Integration I (Trapezoid/Simpson's Rules) (Part 2): (pdf) ...
-
Download: Numerical Integration I, Parts 1-2
(pdf) (Version 2024-11-11).
-
Topic (2025-11-21): Review session ...
Solutions to Midterm II exam, Fall Semester 2023 (pdf)
Solutions to Midterm II exam, Spring Semester 2024 (pdf)
Solutions to Midterm II exam, Fall Semester 2024 (pdf) (pdf)
Solutions to Midterm II exam, Spring Semester 2025 (pdf)
-
Solutions to Homework 4 (pdf).
-
Homework 5:
(pdf)
(All numerical integration) ...
Due: December 10 (no extensions).
Week 14: November 24, 2025.
In-person Instruction: ...
-
MIDTERM 2: November 24, 9 am.
Here is the midterm exam (pdf).
NOTE:
You have 12 hrs to complete and return the exam.
Please make sure your name and e-mail are clearly written on the first page.
Open book and open notes. University rules on academic integrity apply.
Instructions for Submitting Midterm II:
See details on ENCE201 home page.
-
No class on November 26.
If possible, spend the day travelling to your family.
Happy Thanksgiving!
-
Solutions: Midterm 2 Exam
(pdf).
Week 16: December 1, 3 and 5, 2025.
In-person Instruction: December 1 and 3.
In-person Homework Assistance: December 5.
-
Topic (2025-12-01):
Numerical Integration II (Gauss Quadrature) (Part 1): (pdf) ...
-
Topic (2025-12-03):
Numerical Integration II (Rhomberg Integration) (Part 2): (pdf) ...
-
Topic (2025-12-03):
Numerical Integration II (Applications) (Part 3): (pdf) ...
-
Download: Numerical Integration II, Parts 1-2-3
(pdf)
(Version 2023-11-13).
Week 17: December 8, 10 and 12, 2025.
In-person Review: December 8 and 10 ...
-
Topic (2025-12-08): Solution of Ordinary Differential Equations ...
-
Download: Solution of Ordinary Differential Equations, Parts 1-2-3
(pdf)
(Version 2024-12-02).
-
Please fill out the Maryland Course Evaluation -- believe it or not, over time
we do try to improve the content and way in which courses are taught.
-
Solutions to Homework 5 (pdf).
-
Solutions to Recent Final Exams:
Spring Semester 2024 (pdf),
Fall Semester 2024 (pdf),
Spring Semester 2025 (pdf).
Week 18: December 18, 2025.
-
FINAL EXAM:
December 18, 4.00 pm.
Here is the final exam (pdf).
Good luck.
NOTE: You have 24 hrs to complete and return the exam.
Please make sure your name is clearly written on the first page.
Open book and open notes. University rules on academic integrity apply.
Five questions covering solution of linear matrix equations, least squares analysis,
roots of equations, and numerical integration with Trapezoid Rule, Simpson's Rule,
Gauss Quadrature and Romberg Integration.
Good luck!!
Last Modified: December 18, 2025,
Copyright © 2025, Department of Civil and Environmental Engineering, University of Maryland.