Contents

List of Figures

List of Tables

Preface

Chapter 1. Introduction

1.1  Nature of Scientific Computing

1.2  Talking to Computers

1.3  Instructional Guide

1.4  Exercises to Come Back To

PART 1. MAPLE (OR MATHEMATICA) BY DOING

Chapter 2. Getting Started with Maple

2.1  Setting Up Your Work Space

2.2  Maple’s Problem-Solving Environment

2.3  Maple’s Command Structure

2.4  Sums and sums

2.5  Execution Groups

2.6  Key Words and Concepts

2.7  Supplementary Exercises

Chapter 3. Numbers, Expressions, Functions; Rocket Golf

3.1  Problem: Viewing Rocket Golf

3.2  Theory: Einstein’s Special Relativity

3.3  Math: Integer, Rational and Irrational Numbers

3.4  CS: Floating-Point Numbers

3.5  Complex Numbers

3.6  Expressions

3.7  Assignment Statements

3.8  Equality (rhs, lhs)

3.9  Functions

3.10  User-Defined Functions

3.11  Reexpressing Answers

3.12  CS: Overflow, Underflow, and Round-Off Error

3.13  Solution: Viewing Rocket Golf

3.14  Extension: Tachyons*

3.15  Key Words and Concepts

3.16  Supplementary Exercises

Chapter 4. Visualizing Data, Abstract Types; Electric Fields

4.1  Why Visualization?

4.2  Problem: Stable Points in Electric Fields

4.3  Theory: Stability Criteria and Potential Energy

4.4  Basic 2-D Plots: plot

4.5  Compound (Abstract) Data Types: [Lists] and {Sets}

4.6  3-D (Surface) Plots of Analytic Functions

4.7  Solution: Dipole and Quadrupole Fields

4.8  Exploration: The Tripole

4.9  Extension: Yet More Plot Types*

4.10  Visualizing Numerical Data

4.11  Plotting a Matrix: matrixplot*

4.12  Animations of Data*

4.13  Key Words and Concepts

4.14  Supplementary Exercises

Chapter 5. Solving Equations, Differentiation; Towers

5.1  Problem: Maximum Height of a Tower

5.2  Model: Block Stacking

5.3  Math: Equations as Challenges

5.4  Solving a Single Equation: solve, fsolve

5.5  Solving Simultaneous Equations (Sets)

5.6  Solution to Tower Problem

5.7  Differentiation: limit, diff, D

5.8  Numerical Derivatives*

5.9  Alternate Solution: Maximum Tower Height

5.10  Assessment and Exploration

5.11  Auxiliary Problem: Nonlinear Oscillations

5.12  Key Words and Concepts

5.13  Supplementary Exercises

Chapter 6. Integration; Power and Energy Usage (Also 14)

6.1  Problem: Relating Power and Energy Usage

6.2  Empirical Models

6.3  Theory: Power and Energy Definitions

6.4  Maple: Tools for Integration

6.5  Problem Solution: Energy from Power

6.6  Key Words and Concepts

6.7  Supplementary Exercises

Chapter 7. Matrices and Vectors; Rotation

7.1  Problem: Rigid-Body Rotation

7.2  Math: Vectors and Matrices

7.3  Theory: Angular Momentum Dynamics

7.4  Maple: Linear Algebra Tools

7.5  Matrix Arithmetic and Operations

7.6  Solution: Rotating Rigid Bodies

7.7  Exploration: Principal Axes of Rotation*

7.8  Key Words and Concepts

7.9  Supplementary Exercises

Chapter 8. Searching, Programming; Dipsticks

8.1  Problem: Volume of Liquid in Spherical Tanks

8.2  Math: Volume Integration

8.3  Algorithm: Bisection Searches

8.4  Programming in Maple

8.5  Solution: Volume from Dipstick Height

8.6  Key Words and Concepts

8.7  Supplementary Exercises

PART 2. JAVA (OR FORTRAN90) BY DOING

Chapter 9. Getting Started with Java

9.1  Compiled Languages

9.2  Java Program Pieces

9.3  Entering and Running Your First Program

9.4  Looking Inside Area.java

9.5  Key Words

9.6  Supplementary Exercises

Chapter 10. Data Types, Limits, Methods; Rocket Golf

10.1  Problem and Theory (Same as Chapter 3)

10.2  Java’s Primitive Data Types

10.3  Methods (Functions) and Modular Programming

10.4  Solution: Viewing Rocket Golf

10.5  Your Problem: Modify Golf.java

10.6  Coercion and Overloading*

10.7  Key Words

10.8  Supplementary Exercises

Chapter 11. Visualization with Java, Classes, Packages

11.1  2-D Graphs within Java: PtPlot

11.2  Installing PtPlot: See Appendix C*

11.3  Classes and Packages*

11.4  Gnuplot Basics

11.5  Java Archives: jar*

Chapter 12. Flow Control via Logic; Projectiles

12.1  Problem: Frictionless Projectile Motion

12.2  Theory: Kinematics

12.3  Computer Science: Designing Structured Programs

12.4  Flow Control via Logic

12.5  Implementation: Projectile.java

12.6  Solution: Projectile Trajectories

12.7  Key Words

12.8  Supplementary Exercises

Chapter 13. Java Input and Output*

13.1  Basic Input with Scanner

13.2  Streams: Standard Output, Input, and Error

13.3  I/O Exceptions: FileCatchThrow.java

13.4  Automatic Code Documentation: javadoc

13.5  Nonstandard Formatted Output: printf

Chapter 14. Numerical Integration; Power and Energy Usage

14.1  Problem (Same as Chapter 6): Power and Energy

14.2  Algorithms: Trapezoid and Simpson’s Rules

14.3  Assessment: Which Rule Is Better?

14.4  Key Words and Concepts

14.5  Supplementary Exercises

Chapter 15. Differential Equations with Java and Maple*

15.1  Problem: Projectile Motion with Drag

15.2  Model: Velocity-Dependent Drag

15.3  Algorithm: Numerical Differentiation

15.4  Math: Solving Differential Equations

15.5  Assessment: Balls Falling Out of the Sky?

15.6  Maple: Differential-Equation Tools

15.7  Maple Solution: Drag Velocity

15.8  Extract Operands

15.9  Drag ∝ v2 (Exercise)

15.10  Drag ∝ v3/2

15.11  Exploration: Planetary Motion*

15.12  Key Words

15.13  Supplementary Exercises

Chapter 16. Object-Oriented Programming; Complex Currents

16.1  Problem: Resonance in RLC Circuit

16.2  Math: Complex Numbers

16.3  Theory: Resistance Becomes Impedance

16.4  CS: Abstract Data Types, Objects

16.5  Java Solution: Complex Currents

16.6  Maple Solution: Complex Currents

16.7  Explorations: OOP Worked Examples*

16.8  Key Words

16.9  Java and Maple Exercises

Chapter 17. Arrays: Vectors, Matrices; Rigid-Body Rotations

17.1  Problem: Rigid-Body Rotations

17.2  Theory: Angular-Momentum Dynamics

17.3  CS, Math: Arrays, Vectors, and Matrices

17.4  Implementation: Inertia.java, Inertia3D.java

17.5  Jama: Java Matrix Library*

17.6  Key Words

17.7  Supplementary Exercises

Chapter 18. Advanced Objects; Baton Projectiles*

18.1  Problem: Trajectory of Thrown Baton

18.2  Theory: Combined Translation and Rotation

18.3  CS: OOP Design Concepts

18.4  Key Words

18.5  Supplementary Exercises

Chapter 19. Discrete Math, Arrays as Bins; Bug Dynamics*

19.1  Problem: Variability of Bug Populations

19.2  Theory: Self-Limiting Growth, Discrete Maps

19.3  Assessment: Properties of Nonlinear Maps

19.4  Exploration: Bifurcation Diagram, BugSort.java*

19.5  Exploration: Other Discrete Maps*

Chapter 20. 2-D Arrays: File I/O, PDEs; Realistic Capacitor

20.1  Problem: Field of Realistic Capacitor

20.2  Theory and Model: Electrostatics and PDEs

20.3  Algorithm: Finite Differences

20.4  Implementation: Laplace.java

20.5  Exploration: 2-D Capacitor

20.6  Exploration: 3-D Capacitor*

20.7  Key Words

Chapter 21. Web Computing, Applets, Primitive Graphics

21.1  What Is Web Computing?

21.2  Implementation: Get This to Work First

21.3  Exploration: Modify Applet1.java

21.4  Extension: PtPlot as Applet*

21.5  Extension: Applet with Button Input*

21.6  Extension: AWT, JFC, and Swing*

21.7  Example: Baton Applet, Jparabola.java*

21.8  Key Words

21.9  Supplementary Exercises

PART 3. image SURVIVAL GUIDE

Chapter 22. image for Text

22.1  Why image?

22.2  Structure of a image Document

22.3  Sample Input File (Sample.tex)

22.4  Sample image Output

22.5  Fonts for Text

22.6  Environments

22.7  Lists

22.8  Sections

Chapter 23. image for Mathematics

23.1  Entering Mathematics: Math Mode

23.2  Mathematical Symbols and Greek

23.3  Math Accents

23.4  Superscripts and Subscripts

23.5  Calculus and Sums

23.6  Changing Math Fonts

23.7  Math Functions

23.8  Fractions

23.9  Roots

23.10  Brackets (Delimiters)

23.11  Multiline Equations

23.12  Matrices and Math Arrays

23.13  Including Graphics

23.14  Exercise: Putting It All Together

Appendix A. Glossary

Appendix B. Maple Quick Reference, Debugging Help

Appendix C. Java Quick Reference and Installing Software

C.1  Java Elements

C.2  Transferring Files from the CD

C.3  Using our Maple Worksheets

C.4  Using our Java Programs

C.5  Installing PtPlot (or Other) Packages

C.6  Installing Java Developer’s Kit

Bibliography

Index

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.22.216.59