Classroom Projects

NPS, Summer 2020


Setting up Focus Group

Documentation and Coding Repo


  • Focused Group is created for different Projects.
  • Group leader(s) will be assigned for proper managemant and documaentation of the projects in GitHub.
  • Group members will work in several sections of the projects and contribute equally. Multiple Jupyter notebooks will be created and managed in the assigned GitHub repo.
  • Each group will bring update wikely or biweekly. Each group will be supervised by NPS School of Computing group.

Read More Project Repo
Problem Identification

From Classroom Syllabus


  • Each Focus group will follow one of the subject syllabus (e.g., Classical Mechanics, Electrodynamics, Mathematical Physics, Quantum Physics, Condensed Matter Physics,Statistical Physics) and figure out the problems that can be translated into coding problem
  • Each problem will be organized in a single Jupyter notebook with sufficient documentation (e.g.,title, subtitle, description, mathematical equation, algorithm design, seudocode, coding section and enough visualization)
  • Focused group member can participate in multiple problems under the leadership of group leader(s) and supervision of group supervisor. Goup leader(s) will take care of proper management of all problem selected.

Read More Project Repo
Numerical Methods and Simulation

Translation of problems into Numerical Method and Simulation


  • Mojority of the problems in Physics (e.g., Classical mechanics, Electrodynamics, Mathematical Physics ) can be translated into Numerical Method problem (e.g., Integration, Differentiation, interpolation, Root finding, Optimization, Algebraic Operations, data fitting) while some problems in Statistical Physics and Condensed Matter Physics can be translated into Simulation Problem (e.g., Monte Carlo Simulation family)
  • Numpy and Scipy are two strong Libraries in Python with diverse opportunity to implement these Numerical Methods in Physics problem
  • Each Focus group will try to implement Numerical Method in their project whenever possible. Introductory concepts in Numerical Method is delivered in Introductory Python training course.

Read More Project Repo
Data Visualization

Dataframe, Data Plotting 2D, 3D, and Animation


  • Majority of the problems in Physics generates sufficient intermediate data (e.g., array, matrix, vector, functions, 3D surface) for visualization. Visualization of data offers a distinct opportunity to descibe the problem in figure or movie.
  • Several introductory (pylab, matplotlib, seaborn, plotly) and advanced datavisualization (d3.js, tree.js, OpenGL, WebGL) tchniques will be explored for various type of problems in physics
  • Some problem can be developed as wedget for interactive data plotting and visualization (e.g., changing parameter value using linear scale or value input window)
  • Simple time evolution, simulation or roated reference frame can be implemented to create classroom animation (GIF) by collecting number of timeline plots and rotated plots.
  • Read More Project Repo