CSC 2700 Scientific Computing Spring 2014

RoomLDMC 1030
TimeTue & Thu from noon to 1:30
Kathy Traxler
officeLDMC 2013
aim & yahoo krtraxler
Frank Löffler
officeLDMC 2043
aim & skype knarrff

This course is intended as a very practical course for students in science, technology, engingeering, arts and mathematics (STEAM). Today when computation is considered the third pillar of science, students in many disciplines are not aware of the computational tools needed to work in collaborative research groups. They are also unaware of how to talk to the programmers in their group. This course focuses on teaching some of these tools and discusses topics to programmers in their groups.

We will discuss such matters as the practice of programming, in an attempt to expose all students to the development of programs. Programming is more than just writing code. Programmers must also assess tradeoffs, choose among design alternatives, debug and test, improve performance, and maintain software written by themselves and others. At the same time, they must be concerned with compatibility, robustness, and relieability, while meeting specifications and milestones.

We will also learn how to use many tools used by programmers and scientists in support of their development of systems and research.

Topics (tentatively)

  1. 01/16 Course Introduction
  2. 01/21 Linux Basics
  3. 01/23 Secure Shell
  4. 01/28 Sneaux
  5. 01/30 More Linux Basics
  6. 02/04 Introduction to the "vi" editor
  7. 02/06 Problem solving I
  8. 02/11 Problem solving II
  9. 02/13 Versioning Systems: svn/git
  10. 02/18 Compiling
  11. 02/20 Collaboration/Project Management
  12. 02/25 Project discussions, debugging/profiling
  13. 02/27 Make
  14. 03/06 Review
  15. 03/11 Midterm
  16. 03/13 Project discussions, Basics of Matplotlib
  17. 03/18 Visualization with Matplotlib I
  18. 03/20 Visualization with Matplotlib II
  19. 03/25 Another Tutorial on Matplotlib
  20. 03/27Project development by example
  21. 04/01
  22. 04/03 Project review
  23. 04/08 Latex
  24. 04/10 Visualization with Paraview, preparation: download and install ParaView, download data
  25. 04/22 Cactus
  26. 04/24 ...
  27. 04/29 ...
  28. 05/01 Review
  29. 05/0[68] Final

Group Projects


All assignments are required. They must be on time. Assignments will be algorithms, programs, short papers and presentations.

Grading scale is based on a ten point break with 91 – 100up being an ‘A’, 80 – 89 a ‘B’ and etc.


If you are absent unexpectedly let us know why as soon as possible, particularly if you have an assignment(s) due.

If you are absent due to travel for conferences, etc. let us know ahead of time so we can work out a plan to keep you up to date with lectures and assignments.