Education

Education

A graduate course whose spine is error control, an open textbook written as it is taught, twelve executable notebooks, research software with users, and undergraduate research that has reached conference presentations and a first-authored manuscript.

Open textbook, written as the course runs
12 executable notebooks
31 forks of the group's materials
6 courses across three institutions

The discipline being taught is the one being researched

Theory and software are often taught as two separate activities: learn the mechanics, then learn to drive the code. The harder part lies between them: deciding whether the model is appropriate, whether the computation resolves it, and whether the resulting answer can support an engineering decision.

When can a computed answer be acted on? A graduate finite element course built around a priori and a posteriori error, adaptivity and verification is not a course about software. It is a course about knowing what an answer is worth.

The reasoning cycleFive interlocking stages — observe the physical thing, choose the mathematics, discretize and solve, bound the error, then act or go back — with a return path from Verify to Model taken when the error is too large to act on.Observethe physical thingModelwhat to representComputediscretize, solveVerifybound the errorDecideact, or go backerror too large to act on
The unit of work, in a course and in the group alike. A model is not finished when it runs — it is finished when someone can say what it assumed, what was computed, how that was checked, and why the decision holds.

Four questions a student should be able to answer about a finished problem: what does this model assume, what did the software actually compute, how was the result checked, and why is the resulting design defensible. The same questions recur in the group’s work on reliable scientific AI, where approximation and error matter because decisions are made from the result.

In the classroom

Undergraduate

Machine Design

A compression-spring project, then an infinite-life fatigue condition added to it: a change in a mechanics formula visibly changes the feasible set. Students submit code and a report defending their assumptions.

Undergraduate and graduate

Applied FEA

Distributed tractions against resultant point forces on a heterogeneous plate, with convergence in strain energy required. The task is judging a model, not operating a solver.

Graduate

Advanced FEM

Students move from a strong-form boundary-value problem to its variational form, identify the trial and test spaces and the essential and natural boundary conditions, then connect each mathematical object to what the finite element code actually represents.

Assessment asks students to diagnose an incorrect boundary condition, an inconsistent unit or an unconverged mesh, not only to produce a plausible plot.

What the students built

Undergraduate → REU → master's

Ian Galloway

First author of the group's 2026 manuscript on magnetic soft material design, presented at a national conference.

Undergraduate researcher

Alison Reeves

Implemented four descriptions of interface fracture, calibrated one against a configuration with a known answer, and worked out what each of them costs and can represent.

Master's

Henry Anderson

Building the cohesive-contact model behind the group's failure and fatigue work, connecting particle–matrix separation to the response of magnetic soft composites.

Master's

Caleb Oien

Is building the route from optimized design to printed specimen, where a design acquires tolerances.

Outside the university, a Google Summer of Code project set with Patrick Diehl took a student through building a parallel nonlocal solver; the load-balancing algorithm it produced was published. The progression is the same each time: computational skills, a bounded question, verification, presentation, authorship.

Openness is a working method

The textbook is written in public as the course runs. New chapters appear as they are developed, so the material records not only the finished course but its construction. That follows the same principle that runs through the group’s computational work: make what is known, what has been checked, and what remains unresolved visible alongside the result.

The materials below are meant to be used, modified and tested by others, not simply posted as course artifacts.

Materials anyone can use

Open textbook, in progress

Advanced Finite Element Methods

4 of 13 chapters complete · GPL-3.0 · 3 forks

Written in the open alongside the graduate course. Current chapters develop the mathematical foundations, variational formulations and model problems, with later modules extending toward error estimation, adaptivity, mixed methods and PDE-constrained optimization.

Executable tutorial notebooks

fenics-demo

12 notebooks · MIT · 4 forks

Meshing with Gmsh and pygmsh; Poisson problems; Newton and Picard iterations written out before the library solver is introduced; linear elasticity and stress concentration in 2D and 3D; hyperelasticity; magnetoelasticity; and phase-field fracture. FEniCSx is used throughout, with legacy FEniCS implementations retained for comparison.

Research software

PeriDEM

75 stars · 20 forks · BSL-1.0 · JOSS

Granular media in which particles deform, break and rearrange. Published with its documentation and test cases, which is what makes a result reproducible rather than merely readable.

Research software

NLMech

19 stars · 4 forks · BSL-1.0 · archived

The asynchronous many-task solver library that grew from Google Summer of Code work on scalable nonlocal mechanics. The repository is preserved as an archived research-software record.

These materials are public, and each item lists its licence. Check the linked repository before adapting or redistributing: the reuse conditions differ by project.

Courses

South Dakota Mines 4

ME 322 — Machine Design I

Undergraduate machine design as a constrained decision: design variables, feasible sets, and mechanics-based verification.

Undergraduate

Fall 2024 · Spring 2025 · Fall 2025 · Spring 2026 · Fall 2026

ME 316 — Solid Mechanics

Undergraduate solid mechanics, with the emphasis on setting a problem up correctly before solving it.

Undergraduate

Spring 2026

University of Portsmouth 1

The University of Texas at Austin 1

Service to the same argument

Editorial work at the Journal of Open Source Software, whose purpose is to make research software citable and reviewable, sits alongside the Journal of Peridynamics and Nonlocal Modeling, Scientific Reports, NSF review panels, six conference minisymposia since 2020 and a USACM thematic conference.

If any of this is useful to you, say so

Teaching material is worth more when someone else picks it up, and the group would rather hear from people than count downloads. A few of the conversations we are actively interested in:

  • Educators using or adapting any of the material above: a chapter, a notebook, a whole module. Tell us what broke, what was missing, what you changed.
  • Faculty who want to co-develop a course or a shared module on computational mechanics, finite elements or error control.
  • Schools and teachers who would like a visit, a demonstration, or help building a computational activity for their students.
  • Middle and high-school students curious about how engineers simulate things that break, bend or flow. There is hands-on work here that does not require a degree to start on. Write and say what interests you.
  • Undergraduates anywhere, not only at Mines, looking for a first real computational problem to work on.

None of this needs a formal arrangement to begin. An email describing what you are trying to do is enough.

prashant.jha@sdsmt.edu