Workshop on Teaching Computational Science (WTCS) Session 1

Time and Date: 10:15 - 11:55 on 3rd June 2015

Room: M201

Chair: Alfredo Tirado-Ramos

117 Developing a Hands-On Course Around Building and Testing High Performance Computing Clusters [abstract]
Abstract: We describe a successful approach to designing and implementing a High Performance Computing (HPC) class focused on creating competency in building, configuring, programming, troubleshooting, and benchmarking HPC clusters. By coordinating with campus services, we were able to avoid any additional costs to the students or the university. Students built three twelve-unit independently-operating clusters. Working groups were formed for each cluster and they installed the operating system, created users, connected to the campus network and wrote a variety of scripts and parallel programs while documenting the process. We describe how we solved unexpected problems encountered along the way. We illustrate through pre- and post-course surveys that students gained substantial knowledge in fundamental aspects of HPC through the hands-on approach of creating their own clusters.
Karl Frinkle, Mike Morris
269 Interactively Exploring the Connection between Bidirectional Compression and Star Bicoloring [abstract]
Abstract: The connection between scientific computing and graph theory is detailed for a particular problem called bidirectional compression. This scientific computing problem consists of finding a pair of seed matrices in automatic differentiation. In terms of graph theory, the problem is nothing but finding a star bicoloring of a suitably defined graph. An interactive educational module is designed and implemented to illustrate the connection between bidirectional com- pression and star bicoloring. The web-based module is intended to be used in classroom to illustrate the intricate nature of this combinatorial problem.
M. Ali Rostami, Martin Buecker
651 Scientific Workflows with XMDD: A Way to Use Process Modeling in Computational Science Education [abstract]
Abstract: Process models are well suited to describe in a formal but still intuitive fashion what a system should do. They can thus play a central role in problem-based computational science education with regard to qualifying students for the design and implementation of software applications for their specific needs without putting the focus on the technical part of coding. eXtreme Model Driven Design (XMDD) is a software development paradigm that explicitly focuses on the What (solving problems) rather than on the How (the technical skills of writing code). In this paper we describe how we apply an XMDD-based process modeling and execution framework for scientific workflow projects in the scope of a computer science course for students with a background in natural sciences.
Anna-Lena Lamprecht, Tiziana Margaria
152 Teaching Science Using Computationally-Based Investigations [abstract]
Abstract: Wofford College has initiated a computational laboratory course, Scientific Investigations Using Computation, which satisfies one of its Bachelor of Science requirements. In the course, which one professor teaches, students explore important concepts in science and, using computational tools, implement the scientific method to gain a better understanding of the natural world. Before the first class for a topic, which usually takes one week, students read a module by the authors of this abstract. Some of the topics are the carbon cycle, global warming, disease, adaptation and mimicry, fur patterns, membranes, gas laws, chemical kinetics, and enzyme kinetics. Each module includes a discussion of the topic, quick review questions, points of inquiry for further investigation, and references. In class, students take an online quiz from the quick review questions and complete an enriching activity related to the topic. Typically, in pairs or larger groups, students are assigned points of inquiry to investigate, develop, and present for subsequent periods in the week. A topic culminates in a three-hour laboratory, where students perform experiments at computers using the agent-based modeling tool NetLogo and the spreadsheet Excel. NetLogo, which is free to download, includes numerous computational models that have levels for Interface to run the simulation and view the results, Information about the model, and Code, which the user can view and change. Laboratory guidelines by the authors lead the students through the material in a step-by-step fashion. As well as conducting experiments computationally, the students modify the code to refine the models. Thus, the class examines scientific topics using the scientific method and various resources, gains an appreciation of the utility of computational simulations, and starts to learn to program and to think algorithmically.
Angela Shiflet and George Shiflet
158 DNA and普通話(Mandarin): Bringing introductory programming to the Life Sciences and Digital Humanities [abstract]
Abstract: The ability to write software (to script, to program, to code) is a vital skill for students and their future data-centric, multidisciplinary careers. We present a ten-year effort to teach introductory programming skills in domain-focused courses to students across divisions in our liberal arts college. By creatively working with colleagues in Biology, Statistics, and now English, we have designed, modified, and offered six iterations of two courses: “DNA” and “Computing for Poets”. Larger percentages of women have consistently enrolled in these two courses vs. the traditional first course in the major. We share our open source course materials and present here our use of a blended learning classroom that leverages the increasing quality of online video lectures and programming practice sites in an attempt to maximize faculty-student interactions in class.
Mark Leblanc, Michael Drout