Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
Numerical simulations and case studies using Visual C++.NET
Salleh S., Zomaya A., Olariu S., Wiley-Interscience, New York, NY, 2005. 359 pp. Type: Book (9780471694618)
Date Reviewed: Jul 3 2006

A computer simulation is a computer program that attempts to simulate an abstract model of a particular system to gain insight into the operation of that system. As such, computer simulation has become a useful part of modeling many natural and technical systems. C++ is one of the most popular commercial general-purpose programming languages. Visual C++ is an integrated development environment (IDE) product for C++ engineered by Microsoft. The .NET framework is a software development platform created by Microsoft. It allows cross-language development and provides a large standard library, called Microsoft Foundation Classes (MFC). In this book, the authors describe and solve many numerical problems using Visual C++.NET and the rich resources in MFC.

Chapter 1 briefly describes the establishment of small programs using MFC. Furthermore, steps to create a first Windows program without using the Wizard are shown in a simple example. In chapter 2, three models for solving linear and nonlinear equations are discussed. Both linear and nonlinear equations are considered to be fundamental problems in numerical computing. While chapter 2 describes a non-Wizard solution for creating Windows programs, chapter 3 uses the Wizard approach to solve two problems in matrix algebra. Matrix algebra is one of the most important elements in scientific computing. In chapter 4, the authors demonstrate how friendly interfaces can help to solve differential equations. Differential equations are indispensable for the effective modeling of real-world problems. Two models are presented for illustration, one for ordinary differential equations and another for partial differential equations.

Curve drawing is an important component in numerical simulation and visualization. In chapter 5, two approaches for constructing curves are presented: through their functions, involving a series of iterations on the parameters in the function, and through the construction of a cubic spline. The latter approach is more challenging since the function is not given. In chapter 6, the authors present two small examples of using MFC involving images. The first example uses pixel manipulation for producing monotone color scales. The second example uses edge detection for finding the edges of an image. Applications involving images are present in many areas, including multimedia and signal processing.

In chapters 7 and 8, applications for solving graph-theoretic problems are discussed. First, a user-friendly interface for constructing a graph is presented. The interface allows the user to draw the nodes and the links of a graph by simply clicking the mouse at any place in the window. In addition, the authors describe an application for finding the minimum spanning tree and the shortest path of a graph.

Task scheduling is a big issue in a parallel and distributed computing system. The simulation and visualization model presented in chapter 9 covers only some basic elements of the problem. A model for scheduling tasks in a dependency graph (called the maximum magnitude) is introduced. The scheduling method produces results in the form of Gantt charts. This method can easily be used as a prototype model for other scheduling methods. Chapter 10 describes a simulation method better known as continuous simulation, where the system state is reevaluated at short intervals of time, just as in solving a differential equation by numerical integration. Not included in this book is a treatment of the much more efficient discrete-event simulation, where the simulation progress is from event to event, not from time unit to time unit.

The last chapter illustrates the solution of the channel assignment problem in wireless networks. The authors tackle two problems, one dealing with the assignment of channels to mobile users and the other dealing with the optimization problem of minimizing channels subject to two common electromagnetic constraints.

The models and methods presented in this book can easily be expanded or modified if required. Each chapter is accompanied by a complete source code listing. The code is clear and very well structured. Unfortunately, the source code is not made available to the reader in electronic form. The coverage of each topic is very brief, but sufficient. I recommend this book to anybody that needs to develop computer applications for numerical analysis.

Reviewer:  Klaus Galensa Review #: CR133010 (0706-0532)
Bookmark and Share
  Reviewer Selected
Featured Reviewer
 
 
Visual C++ (D.2.2 ... )
 
 
Environments (I.6.7 ... )
 
 
Visual Programming (D.1.7 )
 
Would you recommend this review?
yes
no
Other reviews under "Visual C++": Date
Microsoft Visual C++
Gurganus K., Alexander D., Academic Press Prof., Inc., San Diego, CA, 1994. Type: Book (9780123086501)
May 1 1995
Professional software development with Visual C++ 6.0 & MFC
Chien C., Charles River Media, Inc., Rockland, MA, 2002.  479, Type: Book (9781584500971)
Aug 2 2002
Pro Visual C++/CLI and the .NET 2.0 Platform
Fraser S., Apress, Berkeley, CA, 2005.  960, Type: Book (9781590596401)
Oct 17 2006
more...

E-Mail This Printer-Friendly
Send Your Comments
Contact Us
Reproduction in whole or in part without permission is prohibited.   Copyright 1999-2024 ThinkLoud®
Terms of Use
| Privacy Policy