The essential introduction to computational science―now fully updated and expanded
Computational science is an exciting new field at the intersection of the sciences, computer science, and mathematics because much scientific investigation now involves computing as well as theory and experiment. This textbook provides students with a versatile and accessible introduction to the subject. It assumes only a background in high school algebra, enables instructors to follow tailored pathways through the material, and is the only textbook of its kind designed specifically for an introductory course in the computational science and engineering curriculum. While the text itself is generic, an accompanying website offers tutorials and files in a variety of software packages.
This fully updated and expanded edition features two new chapters on agent-based simulations and modeling with matrices, ten new project modules, and an additional module on diffusion. Besides increased treatment of high-performance computing and its applications, the book also includes additional quick review questions with answers, exercises, and individual and team projects.
"synopsis" may belong to another edition of this title.
Angela B. Shiflet is the Larry Hearn McCalla Professor of Mathematics and Computer Science and director of computational science at Wofford College. George W. Shiflet is the Larry Hearn McCalla Professor of Biology at Wofford College.
Preface, xxiii,
1 OVERVIEW,
2 SYSTEM DYNAMICS PROBLEMS WITH RATE PROPORTIONAL TO AMOUNT,
3 FORCE AND MOTION,
4 SYSTEM DYNAMICS MODELS WITH INTERACTIONS,
5 COMPUTATIONAL ERROR,
6 SIMULATION TECHNIQUES,
7 ADDITIONAL SYSTEM DYNAMICS PROJECTS,
8 DATA-DRIVEN MODELS,
9 SIMULATING WITH RANDOMNESS,
10 CELLULAR AUTOMATON DIFFUSION SIMULATIONS,
11 AGENT-BASED MODELS,
12 HIGH-PERFORMANCE COMPUTING,
13 MATRIX MODELS,
14 ADDITIONAL CELLULAR AUTOMATA, AGENT-BASED AND MATRIX PROJECTS,
Glossary, 777,
Answers to Selected Exercises, 801,
Index, 807,
OVERVIEW
MODULE 1.1
Overview of Computational Science
Scientific revolutions are "those non-cumulative developmental episodes in which in an older paradigm is replaced in whole or in part by an incompatible new one." —Thomas Kuhn, The Structure of Scientific Revolutions
Normally, "the scientific revolution" refers to the discoveries of the sixteenth and seventeenth centuries in Europe, which changed the western view of the natural world. This revolution began with the sun-centered universe of Copernicus and continued until Newton proposed universal gravitation and laws of motion. Nature was the object of much interest, and the exploration of the New World with all its discoveries continued to feed the desire to understand nature.
During the twentieth century, according to the eminent string-theory physicist Michio Kaku, there were three scientific revolutions—the quantum revolution, the biomolecular revolution, and the computer revolution (Kaku 1998). Few can doubt the rapidity with which recent scientific advances have been made with each new discovery or insight changing our view of our planet, its inhabitants, and often the universe. The accomplishments of that century augurs very well for the current one.
Early in the twenty-first century, Microsoft Research convened a workshop of international authorities to devise a "vision and roadmap of the evolution, challenges and potential of computer science and computing in scientific research during the next fifteen years." The outcome was "Towards 2020 Science." What they predicted marks the beginnings of a new scientific revolution, where computation will become more than an adjunct supporter of scientific research. Computational principles and tools will become integrated into science, changing the fundamental way that science is practiced. Computational science in both theoretical and experimental sciences will greatly augment the rates of scientific advances that will benefit the planet and our species (Microsoft Research 2006). For example, the results of the human genome project, which depended upon large-scale computational science, have encouraged a myriad of new research and development in government, university, and commercial laboratories. One significant outcome from these projects will be a far better understanding of molecular mechanisms that underlie human diseases and their more effective treatments.
In 2005, the President's Information Technology Advisory Committee released the report "Computational Science: Ensuring America's Competiveness" (Report to the President 2005). They concluded that computational science and high-performance computing could be integral to innovations in all of the sciences (biological/ biomedical, physical, and social), engineering, industry, and defense. Advances in computation allow us to acquire and analyze enormous streams of data, making it possible to consider and solve problems heretofore unapproachable. Computational science also allows us to build models, visualize phenomena, and conduct experiments difficult or impossible in the laboratory. We can now examine interactions in systems that involve more than one discipline, encouraging us to collaborate with specialists in other fields. Such collaboration should lead to solutions that are creative, synergistic, sustainable, and economically favorable.
Computational science, the fast-growing interdisciplinary field that is at the intersection of the sciences, computer science, and mathematics, will require scientists who are appropriately trained. The experts who produced "Towards 2020 Science" predicted that future scientists who are not computationally and mathematically literate will be unable to do science. Chemistry professor Robert Harrison, director of the Joint Institute for Computational Sciences at the University of Tennessee, states in the JICS Mission webpage, "To translate even the most elementary theories into useful tools for physical chemistry discovery, you have to do large-scale computation." He states further, "If you look at students coming into our graduate program from the undergraduate world, those that haven't already had some exposure to computation, such as thinking algorithmically, solving problems on the computer, and the little bits of applied math that you need to understand all of that, ... have lost a year or two of productivity at the graduate level. But it's not only the undergraduate students coming into graduate school that have this issue; it's also our undergrads going off into the larger world. Industry and many other aspects of the commercial world use simulation and computation in diverse ways" (JICS).
Computational science, which combines computer simulation, scientific visualization, mathematical modeling, computer programming, data structures, networking, database design, symbolic computation, and high-performance computing, can transform practices in a diverse range of disciplines. Its computer models and simulations offer valuable approaches to problems in many areas, as the following examples indicate.
1. Scientists at Los Alamos National Laboratory and the University of Minnesota wrote, "Mathematical modeling has impacted our understanding of HIV pathogenesis. Before modeling was brought to bear in a serious manner, AIDS was thought to be a slow disease in which treatment could be delayed until symptoms appeared, and patients were not monitored very aggressively. In the large, multicenter AIDS cohort studies aimed at monitoring the natural history of the disease, blood typically was drawn every six months. There was a poor understanding of the biological processes that were responsible for the observed levels of virus in the blood and the rapidity at which the virus became drug resistant. Modeling, coupled with advances in technology, has changed all of this." Dynamic modeling has not only revealed important features of HIV pathogenesis but has advanced the drug treatment regime for AIDS patients (Perelson and Nelson 1999). Since then, Perelson and other researchers have applied modeling to enhance our understanding of the hepatitis C virus, which causes widespread infections and is the primary cause of liver cancer in the United States. Such models have already revealed much about the pathogenesis of the virus, the effectiveness of treatments (interferon/ribavirin and direct antiviral agents), and the influence of genetic variants in the kinetics of the virus (Dahari et al. 2011).
2. From the 1960s, numerical weather prediction has revolutionized forecasting. "Since then, forecasting has improved side by side with the evolution of computing technology, and advances in computing continue to drive better forecasting as weather researchers develop improved numerical models" (Pittsburgh Supercomputing Center 2001). A Weather Research and Forecasting (WRF) Model was released in 2000. The latest version of this model utilizes "multiple dynamical cores, a 3-dimensional variational data assimilation system, and a software architecture allowing for computational parallelism and system extensibility." This sophisticated, mesoscale [horizontal scale of 2 to 2000 kilometers (km)] numerical weather-prediction system is useful for forecasting and research. An array of partners, including the National Center for Atmospheric Research (NCAR), the National Oceanic and Atmospheric Administration (NOAA), other governmental and military organizations, universities, plus some international groups, continuously revise the WRF model. With this efficient, adaptable model for forecasting, researchers can conduct simulations using real data or idealized designs. In 2007, a specialized version of WRF was initiated for forecasting and research on hurricanes (WRF).
3. A multidisciplinary team at the University of Tennessee's Institute for Environmental Modeling is using computational ecology to study complex options for ecological management of the Everglades. Louis Gross, Director of the Institute, says that "computational technology, coupled with mathematics and ecology, will play an ever-increasing role in generating vital information society needs to make tough decisions about its surroundings" (Lymn 2003). South Florida has a well-known history of disruptions to normal water flow. The UT group has developed a parallelized landscape population model (ALFISH) to integrate with other models in a multiscale ecological multimodel (Across-Trophic Level System Simulation, ATLSS). ALFISH is used to model the effects on freshwater fish (planktivorous and piscivirous) of different water-management plans. These fish populations represent food resources for wading birds, and researchers can link the fish model with wading bird models to help sustain the higher-level multimodel (Wang et al. 2006).
4. Application of computer modeling has fueled the debate in another, rather unexpected area—linguistics. The origin of the Indo-European family of languages is rather hotly debated between proponents of two hypotheses—Eurasian steppes, 6000 years (yr) ago versus Anatolia (mostly in present-day Turkey), 8000 to 9500 yr ago. This family of languages has given rise to more than 400 modern languages, spoken by about three billion people. Recently, Quentin Atkinson and colleagues utilized evolutionary models, often employed to ascertain the origin of viruses that lead to epidemics, to analyze this problem. Based on common vocabulary words from various languages in the family, the model supports Anatolian origin, as agricultural techniques were broadcast. Although certainly not resolving the argument, the results have given experts in this field something to consider carefully. (Bouckaert et al. 2012)
Projects
1. Investigate three applications of computational science involving different scientific areas and write at least a paragraph on each. List references.
2. Investigate an application of computational science and write a three-page, typed, double-spaced paper on the topic. List references.
MODULE 1.2
The Modeling Process
Introduction
The process of making and testing hypotheses about models and then revising designs or theories has its foundation in the experimental sciences. Similarly, computational scientists use modeling to analyze complex, real-world problems in order to predict what might happen with some course of action. For instance, Professor Muneo Hori and colleagues from the Earthquake Research Institute, the University of Tokyo, Japan, use high-performance computation with sophisticated models to simulate earthquakes, making quantitative predictions of infrastructural damages, response, and recovery to help minimize damage, death, and injury (Lalith and Hori 2012). Professor Liming Liang, statistical geneticist at Harvard School of Public Health, uses computational and statistical tools to better understand the genetic variation in complex human diseases, such as dyslipidemia, cancer, and type 2 diabetes (Liang). Cognitive scientists, such as Professor Ken Koedinger at the Human-Computer Interaction Institute, Carnegie-Mellon University, develop computer models of student reasoning and learning to aid in the design educational software and to guide teaching practices (Koedinger). Both civilian and military organizations commonly employ drones (unmanned aerial vehicles, UAVs). Whether to monitor air quality or supervise combat forces, this technology is becoming more and more important, but the operation of the drones is quite complex. While a postdoctoral fellow at MIT, Dr. Luca Bertuccelli worked with a team using models to develop new decision support systems, enabling the operators of these craft to make better decisions (Bertuccelli). Arboviruses are arthropod-borne viruses that cause diseases, such as West Nile encephalitis, dengue fever, and yellow fever. A mathematical modeling team at the Universidad Nacional Autónoma de México has been modeling the dynamics of such infections. A better understanding of these viruses will improve outbreak predictions, interventions, and responses (Vargus and Cruz-Pacheco 2010).
Model Classifications
Several classification categories for models exist. A system we are modeling exhibits probabilistic, or stochastic, behavior if it appears that an element of chance exists. For example, the path of a hurricane is probabilistic. In contrast, a behavior can be deterministic, such as the position of a falling object in a vacuum. Similarly, models can be deterministic or probabilistic. A probabilistic, or stochastic, model exhibits random effects, while a deterministic model does not. The results of a deterministic model depend on the initial conditions; and in the case of computer implementation with particular input, the output is the same for each program execution. As we see in Module 9.2, "Simulations," and other modules, we can have a probabilistic model for a deterministic situation, such as a model that uses random numbers to estimate the area under a curve.
We can also classify models as static or dynamic. In a static model, we do not consider time, so that the model is comparable to a snapshot or a map. For example, a model of the weight of a salamander as being proportional to the cube of its length has variables for weight and length but not for time. By contrast, in a dynamic model, time changes, so that such a model is comparable to an animated cartoon or a movie. For example, the number of salamanders in an area undergoing development changes with time; hence, a model of such a population is dynamic. Many of the models we consider in this text are dynamic and employ a static component as part of the dynamic model.
When time changes continuously and smoothly, the model is continuous. If time changes in incremental steps, the model is discrete. A discrete model is analogous to a movie. A sequence of frames moves so quickly that the viewer perceives motion. However, in a live play, the action is continuous. Just as a discrete sequence of movie frames represents the continuous motion of actors, we often develop discrete computer models of continuous situations.
Steps of the Modeling Process
The modeling process is cyclic and closely parallels the scientific method and the software life cycle for the development of a major software project. The process is cyclic because at any step we might return to an earlier stage to make revisions and continue the process from that point.
The steps of the modeling process are as follows:
1. Analyze the problem.
We must first study the situation sufficiently to identify the problem precisely and understand its fundamental questions clearly. At this stage, we determine the problem's objective and decide on the problem's classification, such as deterministic or stochastic. Only with a clear, precise problem identification can we translate the problem into mathematical symbols and develop and solve the model.
2. Formulate a model.
In this stage, we design the model, forming an abstraction of the system we are modeling. Some of the tasks of this step are as follows:
a. Gather data.
We collect relevant data to gain information about the system's behavior.
b. Make simplifying assumptions and document them.
In formulating a model, we should attempt to be as simple as reasonably possible. Thus, we frequently decide to simplify some of the factors and to ignore other factors that do not seem as important. Most problems are entirely too complex to consider every detail, and doing so would only make the model impossible to solve or to run in a reasonable amount of time on a computer. Moreover, factors often exist that do not appreciably affect outcomes. Besides simplifying factors, we may decide to return to Step 1 to restrict further the problem under investigation.
c. Determine variables and units.
We must determine and name the variables. An independent variable is the variable on which others depend. In many applications, time is an independent variable. The model will try to explain the dependent variables. For example, in simulating the trajectory of a ball, time is an independent variable; and the height and the horizontal distance from the initial position are dependent variables whose values depend on the time. To simplify the model, we may decide to neglect some variables (such as air resistance), treat certain variables as constants, or aggregate several variables into one. While deciding on the variables, we must also establish their units, such as days as the unit for time.
d. Establish relationships among variables and submodels.
If possible, we should draw a diagram of the model, breaking it into submodels and indicating relationships among variables. To simplify the model, we may assume that some of the relationships are simpler than they really are. For example, we might assume that two variables are related in a linear manner instead of in a more complex way.
Excerpted from INTRODUCTION TO COMPUTATIONAL SCIENCE by Angela B. Shiflet, George W. Shiflet. Copyright © 2014 Princeton University Press. Excerpted by permission of PRINCETON UNIVERSITY PRESS.
All rights reserved. No part of this excerpt may be reproduced or reprinted without permission in writing from the publisher.
Excerpts are provided by Dial-A-Book Inc. solely for the personal use of visitors to this web site.
"About this title" may belong to another edition of this title.
FREE shipping within U.S.A.
Destination, rates & speedsSeller: SecondSale, Montgomery, IL, U.S.A.
Condition: Good. Item in good condition. Textbooks may not include supplemental items i.e. CDs, access codes etc. Seller Inventory # 00082980048
Quantity: 2 available
Seller: Campus Bookstore, Denton, TX, U.S.A.
hardcover. Condition: Good. May contain highlighting/underlining/notes/etc. May have used stickers on cover. Access codes and supplements are not guaranteed to be included with used books. Ships same or next day. Expedited shipping: 3-5 business days, Standard shipping: 4-14 business days. Seller Inventory # UNT-LIEB-065-034525
Quantity: 1 available
Seller: HPB-Red, Dallas, TX, U.S.A.
Hardcover. Condition: Good. Connecting readers with great books since 1972! Used textbooks may not include companion materials such as access codes, etc. May have some wear or writing/highlighting. We ship orders daily and Customer Service is our top priority! Seller Inventory # S_433538229
Quantity: 1 available
Seller: One Planet Books, Columbia, MO, U.S.A.
hardcover. Condition: Good. Second. Ships in a BOX from Central Missouri! May not include working access code. Will not include dust jacket. Has used sticker(s) and some writing and/or highlighting. UPS shipping for most packages, (Priority Mail for AK/HI/APO/PO Boxes). Seller Inventory # 001463068U
Quantity: 1 available
Seller: BooksRun, Philadelphia, PA, U.S.A.
Hardcover. Condition: Good. Second. Ship within 24hrs. Satisfaction 100% guaranteed. APO/FPO addresses supported. Seller Inventory # 0691160716-11-1
Quantity: 1 available
Seller: Goodbooks Company, Springdale, AR, U.S.A.
Condition: good. Has a sturdy binding with some shelf wear. May have some markings or highlighting. Used copies may not include access codes or Cd's. Slight bending may be present. Seller Inventory # GBV.0691160716.G
Quantity: 1 available
Seller: Goodbooks Company, Springdale, AR, U.S.A.
Condition: acceptable. This copy may contain significant wear, including bending, heavy writing, tears, and or water damage. This book is a functional copy, not necessarily a beautiful copy. Copy may have loose pages. May not include access codes or CDs. May be an Ex library book with stickers and stamps. Dustjacket may be missing. Seller Inventory # GBV.0691160716.A
Quantity: 2 available
Seller: Textbooks_Source, Columbia, MO, U.S.A.
hardcover. Condition: Good. Second. Ships in a BOX from Central Missouri! May not include working access code. Will not include dust jacket. Has used sticker(s) and some writing or highlighting. UPS shipping for most packages, (Priority Mail for AK/HI/APO/PO Boxes). Seller Inventory # 001463068U
Quantity: 7 available
Seller: Swan Trading Company, GEORGETOWN, TX, U.S.A.
hardcover. Condition: Good. Second. Hardcover ex-library with typical marks shows moderate cover wear. Text is unmarked. Ships FAST! Seller Inventory # 2407090006
Quantity: 1 available
Seller: Bulrushed Books, Moscow, ID, U.S.A.
Condition: Good. LIGHTNING FAST SHIPPING! Text In Good condition- Has Used Stickers, pages may have marks and notes throughout and on edges Binding solid. Ships Fast! Seller Inventory # #120D-0064
Quantity: 1 available