Computing Software Basics 7 2.1 Making Computers Obey 7 2.2 Computer Languages 7 2.3 Programming Warmup 9 2.3.1 Java-Scanner Implementation 10 2.3.2 C Implementation 11 2.3.3 Fortran Implementation 12 2.4 Shells, Editors, and Programs 12 2.5 Limited Range and Precision of Numbers 13 2.6 Number Representation 13 2.7 IEEE Floating Point Numbers 14 2.8 Over/Underflows Exercise 20 2.9 Machine Precision 21 2.10 Determine Your Machine Precision 23 2.11 Structured Program Design 24 2.12 Summing Series 26 2.13 Numeric Summation 26 2.14 Good and Bad Pseudocode 27 2.15 Assessment 27 3 Errors and Uncertainties in Computations 29 3.1 Living with Errors 29 3.2 Types of Errors 29 3.3 Model for Disaster: Subtractive Cancellation 31 3.4 Subtractive Cancellation Exercises 32 3.5 Model for Roundoff Error Accumulation 34 Computationyal Physics. Problem Solving with Computers (2nd edn).
I n this article we describe the Web-enhanced computational-physics course and textbook we developed in the Physics Department at Oregon State University. The goal of our efforts is to provide an improved medium for teaching physics and for incorporating some basics of high-performance computing into university curricula. The improvement comes by using the computer as a tool for amplifying the student's cognitive and reasoning abilities, and by using the World Wide Web to provide what is otherwise too difficult to provide. The course is aimed at upper-division undergraduates in science and engineering; it also benefits beginning graduate students. The book, Computational Physics, Problem Solving with Computers, 1 contains more than enough projects for a twoquarter course and is enhanced by links to free, interactive Web tutorials containing sonifications, animations, Java applets, and research-based codes. To appreciate the Web enhancements, the reader is encouraged to follow the links given as references or to read the Web version of this article at http://www.aip.org/cip/pdf/landau.pdf. We developed the course and wrote the text over a sevenyear period with support from the U.S. Department of Energy, the U.S. National Science Foundation (NSF), and the IBM Corp. Our Web materials were developed over the last three years with support from the Undergraduate Computational Engineering and Science project (UCES) 2 and the Northwest Alliance for Computational Science and Engineering (NACSE), 3,4 an NSF Metacenter Regional Alliance. To supplement our materials, we have also included links to Webenhanced instructional materials at Syracuse University 5 and the Shodor Foundation. 6 Our package of educational materials is not what we planned to write 10 years ago when we started the discussions that led to our Computational Physics course. We thought then that the Computer Science Department would teach students what they needed to know about computers, and the Mathematics Department would teach them what they needed to know about numerical methods and statistics. We would teach them how to apply mathematical and computer knowledge to doing physics problems on computers. However, we have found that the students who take our Computational Physics course generally do not bring knowledge of these other disciplines with them. Many of the materials we have developed would, in a more perfect world, be taught and written by experts in other fields. It is probably for the better that we could not follow our original plans. On the one hand, if physicists who conduct research with computers tell students they need to know "this" in computer science and "that" in mathematics, students get the message that the knowledge they acquire in their other courses is useful. On the other hand, it easier for students to understand interdisciplinary subject matter and to master complex systems when they study physics, mathematics, and computer science concepts in the language and from the perspective of a scientist focused on problem solving. C...
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.
hi@scite.ai
10624 S. Eastern Ave., Ste. A-614
Henderson, NV 89052, USA
Copyright © 2024 scite LLC. All rights reserved.
Made with 💙 for researchers
Part of the Research Solutions Family.