This spring I will be teaching a series of tutorials through the Maryland Advanced Research Computing Center (MARCC). Here are the details:
Spring 2017: Introduction to Scientific Computing
Computers, one of the most important tools in science and engineering, find applications in all aspects of academia and industry alike. Though expected to employ this tool effectively, few scientist and engineers have been trained to harness the power at their fingertips, and most could benefit significantly from a high-level exposure to scientific computing methodology. This tutorial series will introduce many computational tools, tricks, and tips that would otherwise take years of trial and error to learn.
During the spring semester, we will offer the tutorial series at the Johns Hopkins University Homewood campus:
- Mondays from 3:00 pm to 5:00 pm in Malone G33, beginning 30 January and ending 1 May
- Tuesdays from 3:00 pm to 5:00 pm in Bloomberg 462, beginning 31 January and ending 2 May
During the summer, we will repeat the tutorial series at the Johns Hopkins University School of Medicine: details to be announced
No prior experience is required. Please bring a laptop to participate in the tutorials.
The tutorial series is designed to build on itself as it progresses and we strongly discourage skipping tutorials. For a smaller time commitment, consider attending one of our training workshops.
These are the topics that we plan to cover:
- Week 1: Computer hardware basics (single-user, cluster)
- Week 2: Connecting to a remote system
- Week 3: Linux basics (navigation, Bash, Vim, file transfer)
- Week 4: MARCC environment (lmod, Slurm)
- Week 5: Code repositories (Git)
- Week 6: C basics (compiling, linking, debugging, profiling)
- Week 7: Installing packages/libraries
- Week 8: Python basics
- Week 9: Python data analysis
- Week 10: Data visualization (ParaView)
- Week 11: Parallelization (OpenMP, MPI, Cuda)
- Week 12: Data management plans
- Week 13: LaTeX basics
We reserve the right to modify this schedule as the tutorial series progresses.
Click here to register for this free MARCC Training Series.
I am happy to announce that I will be offering a new course for Intersession 2017 at Johns Hopkins University, entitled Introduction to Scientific Computing (EN.530.391.13). The interactive two-credit course designed to teach upper-level undergraduate students and new graduate students about the true capabilities of their computers–beyond email and internet–will take place from 10 through 26 January 2017.
As with all Intersession courses, Introduction to Scientific Computing will be offered free of charge to students enrolled at Johns Hopkins University for the fall 2015 semester.
Registration for Intersession 2017 opens 6 December 2016 at 07:00. Have a question about the course? Submit a comment below or contact me.
The most important tool in science and engineering, computers find applications in all aspects of academia and industry alike. Though expected to employ this tool effectively, few scientists or engineers have been trained to harness the power at their fingertips, and most could benefit significantly from a high-level exposure to scientific computing methodology. This course will introduce many computational tools, tricks, and tips that would otherwise require years of trial and error to learn.
This course will be strongly focused on increasing user proficiency with computational resources, such as those provided by the Maryland Advanced Research Computing Center (MARCC) run by Johns Hopkins University.
Schedule: 13:00-16:00 on Tuesday, Wednesday, and Friday 10-26 January 2017
- Computer hardware basics
- Computer software basics (compilers, linkers, libraries, etc.)
- Using Linux (connecting, navigating, text editing, software installation, etc.)
- Scripting (bash and python)
- Code development best practices (style, modularity, etc.)
- Code development tools (repositories, debuggers, profilers, etc.)
- Introduction to high-performance computing (MARCC and other shared systems)
- Parallelization (OpenMP, MPI, Cuda)
I am happy to announce that I will be offering a new course for Intersession 2016 at Johns Hopkins University, entitled Applications in Scientific Computing (EN.530.390.13). The interactive two-credit course designed as an introduction to scientific computing for upper-level undergraduate students will take place from 4 through 22 January 2016. New graduate students are also encouraged to attend.
As will all Intersession courses, Applications in Scientific Computing will be offered free of charge to students enrolled at Johns Hopkins University for the fall 2015 semester. All reference textbooks used for the course will be freely available online.
Registration for Intersession 2016 opens 1 December. For more information, submit a comment below or contact me.
Scientific discovery and computing capability have progressed inseparably for more than the last century, but few theoretically-focused courses find time to discuss this important connection. Guided by various examples borrowed from physics and engineering courses, we will interactively explore methods of solving problems numerically using contemporary computational tools. Example problems will draw from the following fields: dynamical systems, continuum mechanics, molecular dynamics, and robotics.
Prerequisites: calculus, differential equations, linear algebra
Schedule: 13:00-16:00 on Tuesday, Wednesday, and Friday from 4 through 22 January 2016
- Computer hardware
- Data structures
- Sources of error
- Sorting and selection
- Numerical discretization
- Interpolation and extrapolation
- Random number generation
- Solution of linear systems
- Integration of functions
- Initial- and boundary-value problems