ME 800-Level Courses (Subject & Course Level) - Grade Details
(with breakdown by course and instructor)
ME 800-Level Courses - All Courses/Instructors
Average Grade - 3.675
Median Grade - 4.0
Latest grades from Spring 2025
ME 800-Level Courses - Overview
| Course Number | Instructor | Grade Info | Number of Students | Latest Grade Data | Breakdown | ||
|---|---|---|---|---|---|---|---|
| ME 800 | Indrek S Wichman | Average Grade - 3.581 Median Grade - 3.5 |
142 | Fall 2023 | |||
| ME 800 | Thomas Pence | Average Grade - 3.632 Median Grade - 4.0 |
275 | Fall 2024 | |||
| ME 802 | Norbert H Mueller | Average Grade - 3.705 Median Grade - 4.0 |
22 | Spring 2013 | |||
| ME 810 | Indrek S Wichman | Average Grade - 3.393 Median Grade - 3.5 |
14 | Spring 2024 | |||
| ME 810 | Joerg Petrasch | Average Grade - 3.370 Median Grade - 3.5 |
23 | Spring 2020 | |||
| ME 812 | Craig W Somerton | Average Grade - 3.562 Median Grade - 4.0 |
16 | Fall 2011 | |||
| ME 812 | Junghoon Yeom | Average Grade - 3.585 Median Grade - 3.5 |
41 | Fall 2017 | |||
| ME 812 | Neil Thomas Wright | Average Grade - 3.671 Median Grade - 4.0 |
38 | Fall 2013 | |||
| ME 812 | Yuping Wang | Average Grade - 3.583 Median Grade - 4.0 |
12 | Fall 2024 | |||
| ME 814 | Giles J Brereton | Average Grade - 3.731 Median Grade - 4.0 |
13 | Spring 2014 | |||
| ME 820 | Patrick Y Kwon | Average Grade - 3.406 Median Grade - 3.5 |
145 | Fall 2022 | |||
| ME 820 | Seungik Baek | Average Grade - 3.511 Median Grade - 3.5 |
87 | Fall 2024 | |||
| ME 820 | Tamara Reid Bush | Average Grade - 3.763 Median Grade - 4.0 |
19 | Fall 2012 | |||
| ME 821 | Sara Roccabianca | Average Grade - 3.919 Median Grade - 4.0 |
193 | Spring 2024 | |||
| ME 821 | Siva Nadimpalli | Average Grade - 3.521 Median Grade - 4.0 |
24 | Spring 2025 | |||
| ME 821 | Thomas Pence | Average Grade - 3.536 Median Grade - 3.5 |
14 | Spring 2012 | |||
| ME 822 | Elisa Toulson | Average Grade - 3.625 Median Grade - 4.0 |
12 | Spring 2014 | |||
| ME 824 | Thomas Pence | Average Grade - 3.750 Median Grade - 4.0 |
24 | Spring 2017 | |||
| ME 825 | Xinran Xiao | Average Grade - 3.610 Median Grade - 3.5 |
59 | Spring 2017 | |||
| ME 826 | Dahsin Liu | Average Grade - 3.750 Median Grade - 4.0 |
12 | Fall 2012 | |||
| ME 830 | Farhad Ansari Jaberi | Average Grade - 3.627 Median Grade - 4.0 |
71 | Fall 2015 | |||
| ME 830 | Junlin Yuan | Average Grade - 3.945 Median Grade - 4.0 |
146 | Fall 2024 | |||
| ME 830 | Ricardo Mejia-Alvarez | Average Grade - 3.795 Median Grade - 4.0 |
22 | Fall 2017 | |||
| ME 832 | Ahmed M Naguib | Average Grade - 3.146 Median Grade - 3.0 |
25 | Spring 2016 | |||
| ME 834 | Farhad Ansari Jaberi | Average Grade - 3.529 Median Grade - 4.0 |
17 | Fall 2019 | |||
| ME 836 | Ahmed M Naguib | Average Grade - 3.850 Median Grade - 4.0 |
11 | Fall 2024 | |||
| ME 840 | Farhad Ansari Jaberi | Average Grade - 3.755 Median Grade - 4.0 |
93 | Spring 2025 | |||
| ME 840 | Junlin Yuan | Average Grade - 3.818 Median Grade - 4.0 |
11 | Spring 2018 | |||
| ME 851 | Bahare Kiumarsi | Average Grade - 3.654 Median Grade - 3.5 |
13 | Fall 2023 | |||
| ME 851 | Hamidreza Modares | Average Grade - 3.955 Median Grade - 4.0 |
11 | Fall 2024 | |||
| ME 854 | Guoming G Zhu | Average Grade - 3.708 Median Grade - 4.0 |
53 | Spring 2020 | |||
| ME 859 | Hamidreza Modares | Average Grade - 3.800 Median Grade - 4.0 |
15 | Spring 2020 | |||
| ME 859 | Hassan Khalil | Average Grade - 3.557 Median Grade - 3.5 |
61 | Spring 2019 | |||
| ME 859 | Jongeun Choi | Average Grade - 3.733 Median Grade - 4.0 |
15 | Spring 2014 | |||
| ME 859 | Ranjan Mukherjee | Average Grade - 3.348 Median Grade - 3.5 |
23 | Spring 2018 | |||
| ME 860 | Brian F Feeny | Average Grade - 3.686 Median Grade - 4.0 |
148 | Summer 2024 | |||
| ME 860 | Firas Khasawneh | Average Grade - 3.312 Median Grade - 3.5 |
16 | Fall 2018 | |||
| ME 861 | Brian F Feeny | Average Grade - 3.900 Median Grade - 4.0 |
27 | Spring 2025 | |||
| ME 861 | Daniel Joseph Segalman | Average Grade - 3.591 Median Grade - 4.0 |
11 | Spring 2017 | |||
| ME 861 | Ranjan Mukherjee | Average Grade - 3.446 Median Grade - 3.5 |
30 | Spring 2021 | |||
| ME 861 | Steven W Shaw | Average Grade - 3.587 Median Grade - 3.5 |
23 | Spring 2013 | |||
| ME 872 | Alejandro R Diaz | Average Grade - 3.304 Median Grade - 3.5 |
79 | Spring 2014 | |||
| ME 872 | Andre Benard | Average Grade - 3.861 Median Grade - 4.0 |
98 | Spring 2025 | |||
| ME 872 | Lik-Chuan Lee | Average Grade - 3.672 Median Grade - 4.0 |
102 | Spring 2024 | |||
| ME 891 | Galit Pelled | Average Grade - 3.957 Median Grade - 4.0 |
23 | Fall 2022 | |||
| ME 891 | Haseung Chung | Average Grade - 3.708 Median Grade - 4.0 |
12 | Spring 2021 | |||
| ME 891 | Himanshu Sahasrabudhe | Average Grade - 3.958 Median Grade - 4.0 |
36 | Fall 2022 | |||
| ME 891 | Patton Allison | Average Grade - 4.000 Median Grade - 4.0 |
12 | Fall 2021 | |||
| ME 891 | Ricardo Mejia-Alvarez | Average Grade - 4.000 Median Grade - 4.0 |
34 | Spring 2021 | |||
| ME 891 | Tong Gao | Average Grade - 4.000 Median Grade - 4.0 |
12 | Fall 2021 | |||
| ME 892 | Craig Gunn | Non-numeric grade system used. Grade Count: 217 |
217 | Fall 2024 | |||
Back to Overview for ME 800-Level Courses
ME 800 - Engineering Analysis
Use of analytical methods of mathematics in engineering applications. Applications of partial differential equations to thermal-fluid and vibration problems, vector calculus and tensor analysis in fluid and solid mechanics, and analytical function theory in mechanics.
Indrek S Wichman
Average Grade - 3.581
Median Grade - 3.5
Latest grades from Fall 2023
Back to Overview for ME 800-Level Courses
ME 800 - Engineering Analysis
Use of analytical methods of mathematics in engineering applications. Applications of partial differential equations to thermal-fluid and vibration problems, vector calculus and tensor analysis in fluid and solid mechanics, and analytical function theory in mechanics.
Thomas Pence
Average Grade - 3.632
Median Grade - 4.0
Latest grades from Fall 2024
Back to Overview for ME 800-Level Courses
ME 802 - Advanced Classical Thermodynamics
Postulational treatment of the laws of thermodynamics. Equilibrium and maximum entropy postulates. Principles for general systems.
Norbert H Mueller
Average Grade - 3.705
Median Grade - 4.0
Latest grades from Spring 2013
Back to Overview for ME 800-Level Courses
ME 810 - Advanced Classical Thermodynamics
Postulational treatment of the laws of thermodynamics. Equilibrium and maximum entropy postulates. Principles for general systems.
Indrek S Wichman
Average Grade - 3.393
Median Grade - 3.5
Latest grades from Spring 2024
Back to Overview for ME 800-Level Courses
ME 810 - Advanced Classical Thermodynamics
Postulational treatment of the laws of thermodynamics. Equilibrium and maximum entropy postulates. Principles for general systems.
Joerg Petrasch
Average Grade - 3.370
Median Grade - 3.5
Latest grades from Spring 2020
Back to Overview for ME 800-Level Courses
ME 812 - Conductive Heat Transfer
Theory of steady and unsteady heat conduction. Derivation of describing equations and boundary conditions. Numerical methods. Nonlinear problems.
Craig W Somerton
Average Grade - 3.562
Median Grade - 4.0
Latest grades from Fall 2011
Back to Overview for ME 800-Level Courses
ME 812 - Conductive Heat Transfer
Theory of steady and unsteady heat conduction. Derivation of describing equations and boundary conditions. Numerical methods. Nonlinear problems.
Junghoon Yeom
Average Grade - 3.585
Median Grade - 3.5
Latest grades from Fall 2017
Back to Overview for ME 800-Level Courses
ME 812 - Conductive Heat Transfer
Theory of steady and unsteady heat conduction. Derivation of describing equations and boundary conditions. Numerical methods. Nonlinear problems.
Neil Thomas Wright
Average Grade - 3.671
Median Grade - 4.0
Latest grades from Fall 2013
Back to Overview for ME 800-Level Courses
ME 812 - Conductive Heat Transfer
Theory of steady and unsteady heat conduction. Derivation of describing equations and boundary conditions. Numerical methods. Nonlinear problems.
Yuping Wang
Average Grade - 3.583
Median Grade - 4.0
Latest grades from Fall 2024
Back to Overview for ME 800-Level Courses
ME 814 - Convective Heat Transfer
Analysis of convective transfer of heat, mass and momentum in boundary layers and ducts. Thermal instability. Free convection.
Giles J Brereton
Average Grade - 3.731
Median Grade - 4.0
Latest grades from Spring 2014
Back to Overview for ME 800-Level Courses
ME 820 - Continuum Mechanics
Mathematical tools of continuum mechanics, stress principles, kinematics of deformation and motion, fundamental laws and equations. Applications in linear elasticity and classical fluids.
Patrick Y Kwon
Average Grade - 3.406
Median Grade - 3.5
Latest grades from Fall 2022
Back to Overview for ME 800-Level Courses
ME 820 - Continuum Mechanics
Mathematical tools of continuum mechanics, stress principles, kinematics of deformation and motion, fundamental laws and equations. Applications in linear elasticity and classical fluids.
Seungik Baek
Average Grade - 3.511
Median Grade - 3.5
Latest grades from Fall 2024
Back to Overview for ME 800-Level Courses
ME 820 - Continuum Mechanics
Mathematical tools of continuum mechanics, stress principles, kinematics of deformation and motion, fundamental laws and equations. Applications in linear elasticity and classical fluids.
Tamara Reid Bush
Average Grade - 3.763
Median Grade - 4.0
Latest grades from Fall 2012
Back to Overview for ME 800-Level Courses
ME 821 - Linear Elasticity
Fundamentals of isotropic linear elasticity. Solution of plane elasticity problems. St. Venant bending and torsion. Singular solutions. Basic three-dimensional solutions.
Sara Roccabianca
Average Grade - 3.919
Median Grade - 4.0
Latest grades from Spring 2024
Back to Overview for ME 800-Level Courses
ME 821 - Linear Elasticity
Fundamentals of isotropic linear elasticity. Solution of plane elasticity problems. St. Venant bending and torsion. Singular solutions. Basic three-dimensional solutions.
Siva Nadimpalli
Average Grade - 3.521
Median Grade - 4.0
Latest grades from Spring 2025
Back to Overview for ME 800-Level Courses
ME 821 - Linear Elasticity
Fundamentals of isotropic linear elasticity. Solution of plane elasticity problems. St. Venant bending and torsion. Singular solutions. Basic three-dimensional solutions.
Thomas Pence
Average Grade - 3.536
Median Grade - 3.5
Latest grades from Spring 2012
Back to Overview for ME 800-Level Courses
ME 822 - Combustion
Thermodynamics and chemical kinetics. Multicomponent systems. Premixed and diffusion flames. Flame radiation.
Elisa Toulson
Average Grade - 3.625
Median Grade - 4.0
Latest grades from Spring 2014
Back to Overview for ME 800-Level Courses
ME 824 - Plasticity
Yield conditions, stress-strain relations, plastic potential, hardening theories, torsion, bending. Thick walled shells under internal pressure. Limit analysis. Slip line theory.
Thomas Pence
Average Grade - 3.750
Median Grade - 4.0
Latest grades from Spring 2017
Back to Overview for ME 800-Level Courses
ME 825 - Experimental Mechanics
Measurement of strain, displacement, velocity, and acceleration using resistance strain gages, accelerometers, and related methods. Detailed study of strain gages and accelerometers. Transducer design. Basic modal analysis.
Xinran Xiao
Average Grade - 3.610
Median Grade - 3.5
Latest grades from Spring 2017
Back to Overview for ME 800-Level Courses
ME 826 - Laminated Composite Materials
Fundamentals of anisotropic elasticity and their application to laminated composite plates. Unique states of deformation, stress, and failure not encountered in isotropic, homogeneous materials.
Dahsin Liu
Average Grade - 3.750
Median Grade - 4.0
Latest grades from Fall 2012
Back to Overview for ME 800-Level Courses
ME 830 - Fluid Mechanics I
Integral and differential conservation laws, Navier-Stokes' equations, and exact solutions. Laminar boundary layer theory, similarity solutions, and approximate methods. Thermal effects and instability phenomena.
Farhad Ansari Jaberi
Average Grade - 3.627
Median Grade - 4.0
Latest grades from Fall 2015
Back to Overview for ME 800-Level Courses
ME 830 - Fluid Mechanics I
Integral and differential conservation laws, Navier-Stokes' equations, and exact solutions. Laminar boundary layer theory, similarity solutions, and approximate methods. Thermal effects and instability phenomena.
Junlin Yuan
Average Grade - 3.945
Median Grade - 4.0
Latest grades from Fall 2024
Back to Overview for ME 800-Level Courses
ME 830 - Fluid Mechanics I
Integral and differential conservation laws, Navier-Stokes' equations, and exact solutions. Laminar boundary layer theory, similarity solutions, and approximate methods. Thermal effects and instability phenomena.
Ricardo Mejia-Alvarez
Average Grade - 3.795
Median Grade - 4.0
Latest grades from Fall 2017
Back to Overview for ME 800-Level Courses
ME 832 - Fluid Mechanics II
Inviscid flow, vortex motion, flow past bodies. Complex variables and conformal mapping. One-dimensional steady and unsteady compressible flow, shock waves and Prandtl-Meyer expansion. Small perturbations theory and method of characteristics.
Ahmed M Naguib
Average Grade - 3.146
Median Grade - 3.0
Latest grades from Spring 2016
Back to Overview for ME 800-Level Courses
ME 834 - Fundamentals of Turbulence
Statistical descriptions of turbulent flows: isotropic, free shear and wall bounded. Correlation and spectral descriptions. Conditional probabilities and coherent motions. Experimental methods. Scaling relationships.
Farhad Ansari Jaberi
Average Grade - 3.529
Median Grade - 4.0
Latest grades from Fall 2019
Back to Overview for ME 800-Level Courses
ME 836 - Experimental Methods in Fluid Mechanics
Modern techniques of fluid mechanics measurement and data analysis. Pressure, temperature and velocity measurement techniques. Optical diagnostics.
Ahmed M Naguib
Average Grade - 3.850
Median Grade - 4.0
Latest grades from Fall 2024
Back to Overview for ME 800-Level Courses
ME 840 - Computational Fluid Dynamics and Heat Transfer
Theory and application of finite difference and finite volume methods to selected fluid mechanics and heat transfer models including the full potential flow model, the systems of Euler and Navier-Stokes equations, and turbulence. Grid generation techniques.
Farhad Ansari Jaberi
Average Grade - 3.755
Median Grade - 4.0
Latest grades from Spring 2025
Back to Overview for ME 800-Level Courses
ME 840 - Computational Fluid Dynamics and Heat Transfer
Theory and application of finite difference and finite volume methods to selected fluid mechanics and heat transfer models including the full potential flow model, the systems of Euler and Navier-Stokes equations, and turbulence. Grid generation techniques.
Junlin Yuan
Average Grade - 3.818
Median Grade - 4.0
Latest grades from Spring 2018
Back to Overview for ME 800-Level Courses
ME 851 - Linear Systems and Control
State models and their stability, controllability, and observability properties. Finding minimal realizations of transfer functions. Design of state and output feedback controllers. Design of state observers. LQ regulator and the Kalman filter. Time-varying systems.
Bahare Kiumarsi
Average Grade - 3.654
Median Grade - 3.5
Latest grades from Fall 2023
Back to Overview for ME 800-Level Courses
ME 851 - Linear Systems and Control
State models and their stability, controllability, and observability properties. Finding minimal realizations of transfer functions. Design of state and output feedback controllers. Design of state observers. LQ regulator and the Kalman filter. Time-varying systems.
Hamidreza Modares
Average Grade - 3.955
Median Grade - 4.0
Latest grades from Fall 2024
Back to Overview for ME 800-Level Courses
ME 854 - Robust Control
Linear systems and norms for signals and systems. Investigation of stability and performance of control systems. Model reduction, uncertainty, and robustness. Parameterization of stabilizing controllers, Ricatti equations and related factorizations. Application to H-2, H-infinity, and L-1 control.
Guoming G Zhu
Average Grade - 3.708
Median Grade - 4.0
Latest grades from Spring 2020
Back to Overview for ME 800-Level Courses
ME 859 - Nonlinear Systems and Control
Second-order systems and fundamental properties of solutions. Lyapunov stability, input-output stability, passivity, absolute stability, and linearization. Design of feedback controllers using integral control, feedback linearization, sliding mode control, Lyapunov redesign, passivity-based control, and recursive methods. Applications to electrical and mechanical systems.
Hamidreza Modares
Average Grade - 3.800
Median Grade - 4.0
Latest grades from Spring 2020
Back to Overview for ME 800-Level Courses
ME 859 - Nonlinear Systems and Control
Second-order systems and fundamental properties of solutions. Lyapunov stability, input-output stability, passivity, absolute stability, and linearization. Design of feedback controllers using integral control, feedback linearization, sliding mode control, Lyapunov redesign, passivity-based control, and recursive methods. Applications to electrical and mechanical systems.
Hassan Khalil
Average Grade - 3.557
Median Grade - 3.5
Latest grades from Spring 2019
Back to Overview for ME 800-Level Courses
ME 859 - Nonlinear Systems and Control
Second-order systems and fundamental properties of solutions. Lyapunov stability, input-output stability, passivity, absolute stability, and linearization. Design of feedback controllers using integral control, feedback linearization, sliding mode control, Lyapunov redesign, passivity-based control, and recursive methods. Applications to electrical and mechanical systems.
Jongeun Choi
Average Grade - 3.733
Median Grade - 4.0
Latest grades from Spring 2014
Back to Overview for ME 800-Level Courses
ME 859 - Nonlinear Systems and Control
Second-order systems and fundamental properties of solutions. Lyapunov stability, input-output stability, passivity, absolute stability, and linearization. Design of feedback controllers using integral control, feedback linearization, sliding mode control, Lyapunov redesign, passivity-based control, and recursive methods. Applications to electrical and mechanical systems.
Ranjan Mukherjee
Average Grade - 3.348
Median Grade - 3.5
Latest grades from Spring 2018
Back to Overview for ME 800-Level Courses
ME 860 - Theory of Vibrations
Discrete systems and continua. Analytical mechanics. Variational principles. Modal analysis. Function spaces. Eigenfunction expansions. Integral transforms. Stability. Approximations. Perturbations.
Brian F Feeny
Average Grade - 3.686
Median Grade - 4.0
Latest grades from Summer 2024
Back to Overview for ME 800-Level Courses
ME 860 - Theory of Vibrations
Discrete systems and continua. Analytical mechanics. Variational principles. Modal analysis. Function spaces. Eigenfunction expansions. Integral transforms. Stability. Approximations. Perturbations.
Firas Khasawneh
Average Grade - 3.312
Median Grade - 3.5
Latest grades from Fall 2018
Back to Overview for ME 800-Level Courses
ME 861 - Advanced Dynamics
Dynamics of systems of particles and rigid bodies. Energy and momentum principles. Lagrangian and Hamiltonian methods. Euler angles. Applications in system dynamics and vibrations.
Brian F Feeny
Average Grade - 3.900
Median Grade - 4.0
Latest grades from Spring 2025
Back to Overview for ME 800-Level Courses
ME 861 - Advanced Dynamics
Dynamics of systems of particles and rigid bodies. Energy and momentum principles. Lagrangian and Hamiltonian methods. Euler angles. Applications in system dynamics and vibrations.
Daniel Joseph Segalman
Average Grade - 3.591
Median Grade - 4.0
Latest grades from Spring 2017
Back to Overview for ME 800-Level Courses
ME 861 - Advanced Dynamics
Dynamics of systems of particles and rigid bodies. Energy and momentum principles. Lagrangian and Hamiltonian methods. Euler angles. Applications in system dynamics and vibrations.
Ranjan Mukherjee
Average Grade - 3.446
Median Grade - 3.5
Latest grades from Spring 2021
Back to Overview for ME 800-Level Courses
ME 861 - Advanced Dynamics
Dynamics of systems of particles and rigid bodies. Energy and momentum principles. Lagrangian and Hamiltonian methods. Euler angles. Applications in system dynamics and vibrations.
Steven W Shaw
Average Grade - 3.587
Median Grade - 3.5
Latest grades from Spring 2013
Back to Overview for ME 800-Level Courses
ME 872 - Finite Element Method
Theory and application of the finite element method to the solution of continuum type problems in heat transfer, fluid mechanics, and stress analysis.
Alejandro R Diaz
Average Grade - 3.304
Median Grade - 3.5
Latest grades from Spring 2014
Back to Overview for ME 800-Level Courses
ME 872 - Finite Element Method
Theory and application of the finite element method to the solution of continuum type problems in heat transfer, fluid mechanics, and stress analysis.
Andre Benard
Average Grade - 3.861
Median Grade - 4.0
Latest grades from Spring 2025
Back to Overview for ME 800-Level Courses
ME 872 - Finite Element Method
Theory and application of the finite element method to the solution of continuum type problems in heat transfer, fluid mechanics, and stress analysis.
Lik-Chuan Lee
Average Grade - 3.672
Median Grade - 4.0
Latest grades from Spring 2024
Back to Overview for ME 800-Level Courses
ME 891 - Selected Topics in Mechanical Engineering
Special topics in mechanical engineering of current importance.
Galit Pelled
Average Grade - 3.957
Median Grade - 4.0
Latest grades from Fall 2022
Back to Overview for ME 800-Level Courses
ME 891 - Selected Topics in Mechanical Engineering
Special topics in mechanical engineering of current importance.
Haseung Chung
Average Grade - 3.708
Median Grade - 4.0
Latest grades from Spring 2021
Back to Overview for ME 800-Level Courses
ME 891 - Selected Topics in Mechanical Engineering
Special topics in mechanical engineering of current importance.
Himanshu Sahasrabudhe
Average Grade - 3.958
Median Grade - 4.0
Latest grades from Fall 2022
Back to Overview for ME 800-Level Courses
ME 891 - Selected Topics in Mechanical Engineering
Special topics in mechanical engineering of current importance.
Patton Allison
Average Grade - 4.000
Median Grade - 4.0
Latest grades from Fall 2021
Back to Overview for ME 800-Level Courses
ME 891 - Selected Topics in Mechanical Engineering
Special topics in mechanical engineering of current importance.
Ricardo Mejia-Alvarez
Average Grade - 4.000
Median Grade - 4.0
Latest grades from Spring 2021
Back to Overview for ME 800-Level Courses
ME 891 - Selected Topics in Mechanical Engineering
Special topics in mechanical engineering of current importance.
Tong Gao
Average Grade - 4.000
Median Grade - 4.0
Latest grades from Fall 2021
Back to Overview for ME 800-Level Courses
ME 892 - Mechanical Engineering Seminar
Attend and present seminars in order to develop research and presentation skills relevant to mechanical engineering.
Craig Gunn
Latest grades from Fall 2024