5
JULY /AUGUST 2010 Copublishe d by the IEEE CS and the AIP 1521-961 5/10/$26.00 © 2010 IEEE  7 B OOKS Editors: Larry Engelhardt, [email protected] Stephen P. Weppner , weppnesp@ecke rd.edu G enerally, text- books on a topic such as C programming are evolu- tionary, not revolution- ary. In contrast, Harry Cheng’s entry is an innovative textbook and pro- gramming environment that denes a new interactive paradigm for learn- ing and using C and C++ that’s par- ticularly well suited for scientists and engineers. 1 Cheng has developed a cross- platform (Windows, Linux, Mac) C/C++ interpreter and environment called Ch that fully supports the 1989 ANSI C (C89) standard. It also supports major features of the C99 standard and C++.  The packa ge’ s capa bilitie s range from command-line interactive processing and embedded programming to a full integrated development environment (IDE) for program development and debugging. Ch is unique for scientic programming in that it includes ap- propriate data types (such as complex numbers and computational arrays); a complete 2D and 3D plotting package; and an extensive library of numerical analysis functions, including tools for data analysis, root nding/optimization, linear algebra, fast Fourier transforms, special functions, and numerical solu- tions to differential equations. The Ch interpreter system is thoroughly inte- grated into t he textbook’s presenta tion, and thus offers a comprehensive pack- age for C programming. In my January 2010 programming course, the students were almost equally split between Mac and PC us- ers. Cheng’s software and textbook package let us all focus on develop- ing programs, w ithout conce rns about merging computer tools—that is, compilers and plotting and analysis packages—on multiple platforms. Overview: C and (a Bit) Beyond Chapter 2 begins with the requisite introduction of “Hello, World.” This chapter also gives students an over-  view of how to use the ChIDE sys- tem to run and debug programs, and how to use the Ch command shell to execute Unix-like commands and interactive Ch programs. Finally, Chapter 2 explains how to set up the environment to use an external com- piler, such as gcc or Microsoft Visual C++, so students can compile and link executables from ChIDE. Thus, by the chapter’s end, students are ready to run their programs either interac- tively or using an external compiler/ linker. Testifying to the Ch system’s strength, only a few students in the course decided to install a C/C++ compiler , and t hey did so only because they needed faster execution times for their nal projects than were possible using the interpreted Ch language.  The bulk of the textbook— Chapters 3 through 16—offers a thorough introduction to the C programming language. Each chapter includes numerous example programs  with pseu doc ode and o wcha rts, and a large collection of end-of-chapter prob- lems. Starting in Chapter 6, the text- book introduces the SoftIntegration Graphics Library (SIGL), which you can use to plot functions and data sets in 2D and 3D. Because my course strongly emphasizes numerical so- lutions to science and engineering problems, visual izing results is invalu- able. This graphics package made it straightforward for students to plot their simulation results, whether on a Mac or a PC. Most chapters also included a “Making It Work” section  with advanced topics such as deni ng compiler macros or using the  make command. In a post-use survey, stu- dents reportedly felt that the book contained enough examples to help them with their assignments, but few had read these “Making It Work” sections. Chapters 18 and 19 introduce basic concepts of C++ object-oriented pro- gramming, while Chapter 20 offers a more complete summary of the SIGL C++ graphics library. Placing this C++ material toward the book’s end insures that it doesn’t interrupt the ow of the introduction to C. How- ever, when students got to this sec- tion, they felt like they were starting over, such as when they learned about stream input/output and enhanced C++ features such as classes and AN INTRODUCTION TO C AND CH: Y OUR ONE-S TOP SHOP FOR SCIENTIFIC COMPUTING By Tom Huber Harry H. Cheng, C for Engineers and Scientists. An Interpretive Approach, McGraw Hill, 2010, ISBN: 978-0077290467, 91 1 pp.; the student e dition of the Ch inter- preter system is available at www.softintegration.com.

05492948

Embed Size (px)

Citation preview

Page 1: 05492948

7272019 05492948

httpslidepdfcomreaderfull05492948 15

JULYAUGUST 2010 Copublished by the IEEE CS and the AIP 1521-961510$2600 copy 2010 IEEE 7

B O O K S

Editors Larry Engelhardt lengelhardtfmarionedu

Stephen P Weppner weppnespeckerdedu

G

enerally text-books on a

topic such as Cprogramming are evolu-tionary not revolution-

ary In contrast Harry Chengrsquos entryis an innovative textbook and pro-gramming environment that definesa new interactive paradigm for learn-ing and using C and C++ thatrsquos par-ticularly well suited for scientists andengineers1

Cheng has developed a cross-platform (Windows Linux Mac) CC++interpreter and environment called Chthat fully supports the 1989 ANSI C(C89) standard It also supports majorfeatures of the C99 standard and C++

The packagersquos capabilities range fromcommand-line interactive processingand embedded programming to a fullintegrated development environment(IDE) for program development anddebugging Ch is unique for scientificprogramming in that it includes ap-

propriate data types (such as complexnumbers and computational arrays) acomplete 2D and 3D plotting packageand an extensive library of numericalanalysis functions including tools fordata analysis root findingoptimizationlinear algebra fast Fourier transformsspecial functions and numerical solu-tions to differential equations The Chinterpreter system is thoroughly inte-grated into the textbookrsquos presentationand thus offers a comprehensive pack-

age for C programming

In my January 2010 programmingcourse the students were almost

equally split between Mac and PC us-ers Chengrsquos software and textbookpackage let us all focus on develop-ing programs without concerns aboutmerging computer toolsmdashthat iscompilers and plotting and analysispackagesmdashon multiple platforms

Overview C and(a Bit) BeyondChapter 2 begins with the requisiteintroduction of ldquoHello Worldrdquo Thischapter also gives students an over-

view of how to use the ChIDE sys-tem to run and debug programs andhow to use the Ch command shellto execute Unix-like commands andinteractive Ch programs FinallyChapter 2 explains how to set up theenvironment to use an external com-piler such as gcc or Microsoft VisualC++ so students can compile and linkexecutables from ChIDE Thus by

the chapterrsquos end students are readyto run their programs either interac-tively or using an external compiler linker Testifying to the Ch systemrsquosstrength only a few students in thecourse decided to install a CC++compiler and they did so only becausethey needed faster execution times fortheir final projects than were possibleusing the interpreted Ch language

The bulk of the textbookmdashChapters 3 through 16mdashoffers a

thorough introduction to the C

programming language Each chapterincludes numerous example programs

with pseudocode and flowcharts and alarge collection of end-of-chapter prob-lems Starting in Chapter 6 the text-book introduces the SoftIntegrationGraphics Library (SIGL) which youcan use to plot functions and datasets in 2D and 3D Because my coursestrongly emphasizes numerical so-lutions to science and engineeringproblems visualizing results is invalu-able This graphics package made itstraightforward for students to plottheir simulation results whether ona Mac or a PC Most chapters alsoincluded a ldquoMaking It Workrdquo section

with advanced topics such as definingcompiler macros or using the make command In a post-use survey stu-dents reportedly felt that the bookcontained enough examples to helpthem with their assignments but fewhad read these ldquoMaking It Workrdquosections

Chapters 18 and 19 introduce basicconcepts of C++ object-oriented pro-gramming while Chapter 20 offers amore complete summary of the SIGLC++ graphics library Placing thisC++ material toward the bookrsquos endinsures that it doesnrsquot interrupt theflow of the introduction to C How-ever when students got to this sec-tion they felt like they were startingover such as when they learned aboutstream inputoutput and enhanced

C++ features such as classes and

AN INTRODUCTION TO C AND CHYOUR ONE-STOP SHOP FOR SCIENTIFIC COMPUTING

By Tom Huber

Harry H Cheng C for Engineers and Scientists An Interpretive Approach McGraw

Hill 2010 ISBN 978-0077290467 911 pp the student edition of the Ch inter-

preter system is available at wwwsoftintegrationcom

7272019 05492948

httpslidepdfcomreaderfull05492948 25

B O O K S

8 COMPUTING IN SCIENCE amp ENGINEERING

object-oriented programming Onestudent asked why we spent timelearning some of the standard Cstructures if there were better C++ al-ternatives (In the future Irsquoll likely in-corporate some of this material earlierin the course so students can use theseenhanced capabilities) Chapters 1721 and 22 introduce some of the Chfeatures that make it an excellent lan-guage choice for scientific program-ming including complex numbers

computational arrays and advancednumerical analysis subroutines

The textbook concludes with an ex-tensive chapter introducing Matlabincluding useful tables that directlycompare operators and functions in

Matlab and Ch Although the bookis obviously focused on C program-ming this Matlab chapter was oneof the reasons I chose it Through-out my course I introduced Matlabstructuresmdashsuch as arrays con-ditional execution and loopsmdashas

students learned their C counter-parts Most homework sets includedprogramming problems in both Cand Matlab Unfortunately all ofChapter 23rsquos exercises involve hav-ing students use Matlab to solve cor-responding exercises from earliersections It would be beneficial to in-corporate some problems that focusmore specifically on Matlabrsquos unique

vector-based paradigm part icularlyfor solving array-based problems and

linear algebra

Strengths and ShortcomingsBy far the textbookrsquos greateststrength is its close integration withthe Ch interpreter system which

includes ChIDE a scientific graphingpackage and a full library of numeri-cal analysis subroutines In previ-ous offerings of this course I had tostart out by preparing handouts andtutorials on how to use the IDE andcompiler system (such as Compaq

Visual Fortran or Microsoft Visual

C++) the third-party graphics system(such as pgplot) and other numericallibraries It typically required a fewdays to ensure that students could getthem all working together particularlyif they were working on their own

computers instead of departmental labmachines Such tools are all includedin the student edition of Ch and are

well documented in the textbook it-self Further the SIGL graphics li-brary produces high-quality graphs ofdatasets for scientific and engineering

applications which is well documentedin the Ch Language Environment Ref-erence Guidemdasha 1000-plus-page PDFfile installed with the system TheSoftIntegration website also offers ex-tensive SIGL sample programs SIGL

works for static plots but not for real-time plots or animation

The bookrsquos major shortcoming was its surprising lack of discussionof numerical methods In Chapter 6one sample program illustrates the

bisection method for numerical root

finding and one of the exercises re-quires students to modify it to imple-ment Newtonrsquos method Chapter 10includes sections on linear algebraand introduces the subroutinelinsolve() a built-in Ch functionand Clapackrsquos dgesv_() functionBeyond these examples and a briefdiscussion in Chapter 22 of some ofChrsquos numerous built-in numericalfunctions therersquos no discussion of orexercises for other numerical tech-

niques such as numerical integration differentiation and solving ordinarydifferential equations (ODEs)

In my view therersquos pedagogical value in having students code andunderstand basic algorithms such assolving an ODE using a simple Eulerpredictorcorrector or fourth-orderRunge-Kutta method Doing so helpsthem understand some of the tradeoffsof accuracy round-off error execu-tion times and step size that are lessreadily apparent when using a cannedfunction such as oderk() which isChrsquos built-in fifth-order adaptive step-size Runge-Kutta subroutine Becausescience and engineering students arelikely to encounter numerical model-ing at some point in their academic orprofessional career a programmingcourse is an ideal place to empowerthem with an understanding of thebasic principles of numerical analy-

sis Hopefully a second edition of thetextbook will incorporate more exten-sive discussion of these techniquesalong with appropriate examples andexercises

Obviously an essential feature ofthis textbook package is the Ch in-terpreter system In running severalsimple benchmark programs codeexecutes at about 11000 the speed ofcompiled C code In previous yearssuch a huge difference in performance

greatly limited interpretersrsquo appeal

The textbookrsquos greatest strength is its close integration

with the Ch interpreter system which includes ChIDE

a scientific graphing package and a full library of

numerical analysis subroutines

7272019 05492948

httpslidepdfcomreaderfull05492948 35

JULYAUGUST 2010 9

However because we now have fasterprocessors the Ch interpreterrsquos speed

was more than adequate for all but themost demanding computational tasks

And for the most part the cross-platform compatibility and conve-nience of not having to compile andlink code outweigh any performancepenalty The only significant differ-ence between the Ch systemrsquos studentand professional editions is the limi-tation of arrays to 20000 elements

in the former this was generally nota problem for the programs and proj-ects in my course

SoftIntegrationrsquos technical supportstaff was highly responsive when wenotified them of bugs they gener-ally made a patched version available

within a day The extensive numericalanalysis libraryrsquos Ch Language Envi-ronment Reference Guide includes well-documented subroutines for many ofthe numerical tasks that an engineer-ing or science student is likely to en-counter However because the bookoffers only a minimal introduction tonumerical methods students mightnot be in a position to fully utilize thislibrary This is because the book failsto introduce the advantages and disad-

vantages of numerical versus analyt ictechniques so students might lack thesensitivity required to set up problems

and interpret results in light of round-off error step sizes and so on

The book includes a CD of the stu-dent edition of Ch for Windows ver-sion 61 and indicates that students candownload and license the correspond-ing version for Mac OSX and Linuxfree of charge However as of this

writing SoftIntegration changed itslicensing and now charges to purchasethe latest student version (currently63) from its website though it does of-

fer a 30-day free trial Instructors candistribute the latest version of the stu-dent edition to their classes if they usethe textbook and purchase a licensefor the softwarersquos professional editionfor their instructional lab While thepricingmdashparticularly for academic andstudent licensesmdashis very competitivechanging the student editionrsquos licens-ing might reduce the packagersquos appealparticularly for students who want tolearn CC++ on their own

The bottom line for a post-usereview is one question Would I

use the text again In the case of C for Engineers and Scientists An Interpre-tive Approach the answer is yes I dealt

with the bookrsquos major weaknessmdashthelack of an introduction to numeri-cal methodsmdashby including handouts

and supplemental homework Andultimately the weakness was over-

whelmed by the textbookrsquos exceptionalstrength it let me introduce the C pro-gramming language within a cross-platform environment that enablednumerical analysis and visualizationStudents agreed with this assessmentin their post-use survey when asked

whether the book should be used in fu-ture course offerings all students an-swered ldquoyesrdquo After using this textbook

and the Ch interpreter I have a newrespect for the role of interpreters as analternative to traditional compilers forintroducing computer programming

Reference1 HH Cheng ldquoC for the Courserdquo

ASME Mechanical Eng Sept 2009

pp 50ndash52 httpmemagazine

asmeorgArticles2009september

C_Coursecfm

Tom Huber is a physics professor at

Gustavus Adolphus College in St Peter

Minnesota He has extensive programming

and modeling experience in both academia

and industry and frequently teaches a sci-

entific programming course during the col-

legersquos month-long January term Huber has

a PhD in experimental nuclear physics from

the University of Wyoming Contact him at

hubergacedu

Roger W Pryor Multiphysics Modeling Using C OMSOLmdashA First Principles Approach

Jones and Bartlett Publishers 2011 ISBN 978-0763779993 852 pp

COMSOL MULTIPHYSICS FOR DUMMIES

By Christian Schroumlder

With the pub-lication of

Mult iphysic s Modeling Using C OMSOL

author Roger W Pryor

has identified and filled the missinglink in the existing literature on fi-nite element modeling (FEM) us-ing C983151983149983155983151983148 Multiphysics This is

a hands-on introduction that lets

scientists and engineers quickly startbuilding and solving models of dif-ferent physical device structures tosee how they behave on a computerbefore attempting to build physicalprototypes This book is an excel-lent resource written to be accessibleto rookies in the FEM field as wellas offering valuable information foradvanced users

In the bookrsquos introductory chap-

ter Pryor explains how to read and

7272019 05492948

httpslidepdfcomreaderfull05492948 45

B O O K S

10 COMPUTING IN SCIENCE amp ENGINEERING

use the book He includes two de-tailed tables to help readers quicklyfind the specific concepts and tech-niques presented in various chapters

The introduction also offers the de-tails required to get started with thesoftware including installation andhardware (which are important tothe C983151983149983155983151983148 Multiphysics modelingenvironmentrsquos performance) as wellas coordinate systems

In addition to these technical mat-

ters the author also offers an initialintroduction to several importantaspects of the FEM modeling pro-cess by demonstrating how to cre-ate simple 1D models of one- two-and three-pane thermal insulation

windows Chapter 2 completes theintroduction by addressing materialsand material databases including adiscussion of how to obtain additionalresources related to material proper-ties This topic is vital to the modelingprocess as the accuracy and reliabil-ity of a modelrsquos results depend heavilyon the material properties used in thesimulation

A Practical Hands-On GuideIn subsequent chapters the authorprovides detailed hands-on practice ofFEM modeling using C983151983149983155983151983148 Multi-physics with increasing complexityranging from 1D models based on

the Korteweg-de-Vries equation formodeling soliton wave propagation(Chapter 3) to complex 3D modelsof a Helmholtz coilrsquos magnetic field(Chapter 8) In Chapter 9 Pryor discuss-es the concept of perfectly matchedlayers for modeling reflection-freeboundaries in electromagnetic prob-lems and the final chapter deals withthe bioheat equation This last topicplays an important role in develop-ing and analyzing new therapeutic

medical techniques (such as killing

tumors) and the author presents twobioheat models that demonstrate theeffect of laser heating and microwaveheating on biological tissue

At first glance 852 pages aboutFEM using a single tool might seemdaunting However the book is not amathematics book Pryor completelyleaves out the mathematical back-ground of the FEM and numericalsolving techniques This is an excel-lent approach many other books treat

that topic in depth and such knowl-edge isnrsquot particularly important forthe practical modeler

In contrast to other FEM booksmdasheven those tightly related to C983151983149983155983151983148

Multiphysicsmdashthis book isnrsquot dedi-cated to one special engineering fieldsuch as mechanical engineering orcomputational fluid dynamics In-stead it deals with a wide variety ofapplication modes available in C983151983149983155983151983148

Multiphysics Given this variety itrsquosimportant that the book be organizedsuch that readers can jump directlyto chapters of interest without miss-ing important information from otherchapters This book achieves that andoffers further aid by providing a con-sistent structure within each chapter(except Chapter 2 which deals withmaterials) First each chapter offersan ldquoIn This Chapterrdquo paragraph

which summarizes the content fol-

lowed by modeling considerationsand physical background The de-scription of the actual modeling pro-cess also adheres to a specific patternas follows

bull select an appropriate C983151983149983155983151983148 Multi-physics application mode whichspecifies the partial differentialequations to be solved

bull implement the model geometry us-ing either the built-in CAD drawing

tool or the CAD import function

bull specify the subdomain settings in-cluding material properties and ini-tial values

bull specify boundary values which com-pletes the physical modeling process

bull partition (or discretize) the modelinto finite elements during themeshing-step

bull select one of the built-in solvers tosolve the partial differential equa-tions and

bull visualize interpret and discuss the

results

Finally each chapter ends with a shortsummary

Almost every page contains detailedscreenshots that guide readers safelythrough the modeling process Infact by reading the book and simul-taneously carrying out each modelingstep on their computer screens read-ers can quickly learn the basic ideasrequired for successful modeling withC983151983149983155983151983148 Multiphysics The authoralso describes real-world applicationsfor each model which makes the texteven more satisfying

Key Features and DrawbacksPerhaps the bookrsquos most importantfeature is the notes that Pryor insertsbetween the paragraphs Here thereader gets key information takendirectly from the authorrsquos practical

experience This gives the impres-sion of attending a ldquovirtualrdquo trainingcourse Itrsquos as if the author is standingright behind you while yoursquore readingand modeling giving you importantinformation that you needmdashwithoutcharging an extra training fee Onceagain the 852 pages donrsquot containcondensed scientific information Infact readers will find many identicalparagraphs phrases and notes thatreappear throughout the book Al-

though this adds length it also frees

7272019 05492948

httpslidepdfcomreaderfull05492948 55

JULYAUGUST 2010 11

readers from needing to mark the pages where important information appearsonly once which is usually the case inldquotraditionalrdquo science books

This book is definitely not usefulfor the reader who is generally inter-ested in FEM and numerical methodsitrsquos designed specifically for hands-onmodeling with C983151983149983155983151983148 Multiphysicsand as such itrsquos readable only in com-bination with this software Moreoverseveral chapters require additional

modules (such as the Heat-Transfer- ACDC- and Materials-Library-module) that arenrsquot included in thebasic software package Pryor providesa table in the introduction that shows

which chapter requires which modulehowever given that these additionalmodules arenrsquot free of charge it wouldhave been useful to mention the needfor them on the bookrsquos back coverto offer a clear warning to potentialreaders

With the exception of Chapter 1the author begins all technical chap-ters with the development of a modelderived from models available inthe C983151983149983155983151983148 Multiphysics installationpackage Following this is a model

variation and analysis of the results Although each modelrsquos constructionis described and discussed in greatdetail most models lack importantinformation regarding the physical

background especially regarding theuse of specific C983151983149983155983151983148 tool settingsor application modes In Chapter 1for example Pryor develops a seriesof 1D window models based on one-two- and three-glass panes For theboundary conditions he selects ldquoHeatfluxrdquo and instructs the reader to entera value of 15 in the ldquoHeat transfer co-efficientrdquo window however he doesnrsquotexplain the valuersquos origin or meaning

From my own experience in teach-

ing mathematical modeling with

C983151983149983155983151983148 Multiphysics I know that de-fining and setting the correct bound-ary conditions is very challenging forbeginners I therefore would expecta more detailed discussion about thetypes of boundary conditions in generaland the source of this specific value

A similar situation occurs in Chapter 4Here Pryor introduces the con-cept of the moving mesh applicationmode in electrochemical polishingand the use of weak constraints in the

Hall effect model In both cases heinstructs readers to select a particu-lar setting without offering any ad-ditional explanation of these powerfultechniques The only hint given is areference to the C OMSOL Multiphysics

Modeling Guide that comes with thesoftware

Two additional aspects of thebook leave significant room for im-provement in future editions Firsteach chapter includes referencesbut most are links to Wikipedia orto the softwarersquos manual As read-ers will quickly realize a simpleGoogle search would yield thesame information Similarly mostof the ldquoproblemsrdquo that appear fol-lowing each chapter simply repeat

whatrsquos presented earlier in the chap-ter and few actually deal with in-teresting extensions of the materialthat has been discussed

The book offers a highly use-ful DVD supplement containing allmodels developed and discussed ineach chapter as well as Microsoft

Word documents containing all of thebookrsquos figures and screenshots Thelatter is very valuable for teachingpurposes

Generally the book is well andclearly written which is especially im-portant for international users Thetype setting of equations is sometimes

rather poor However because the

book doesnrsquot focus on mathematicsthis is acceptable

Pryor did a great job of puttingtogether examples for many dif-

ferent application domains that canbe solved by using C983151983149983155983151983148 Multi-physics In each chapter he clearlydescribes the modeling process of-fers detailed discussion of possiblemodeling errors and results and

provides the most important back-ground information Together withthe original C983151983149983155983151983148 handbooksprovided with the C983151983149983155983151983148 Multi-physics software package this bookis an excellent starter and is highly

valuable for teaching purposes Ad- vanced modelers who want to knowmore about mathematical or physicaldetails can find them in other bookson FEM Several such books useC983151983149983155983151983148 Multiphysics but typicallyfocus only on specific application do-mains In this regard Pryorrsquos bookis very much a missing link offeringa useful supplement to the literatureon FEM modeling with C983151983149983155983151983148

Multiphysics

Christian Schroumlder is a professor in the De-

partment of Engineering Sciences and Math-

ematics at the University of Applied Sciences

Bielefeld in Germany His current research

involves high-performance computing com-

putational material science and engineer-

ing with a focus on finite element modeling

using COMSOL Multiphysics Schroumlder has

a PhD in theoretical physics from the Uni-

versity of Osnabruumlck in Osnabruumlck Ger-

many Contact him at christianschroeder

fh-bielefeldde

Selected articles and columns from

IEEE Computer Society publica-

tions are also available for free at http

ComputingNowcomputerorg

Page 2: 05492948

7272019 05492948

httpslidepdfcomreaderfull05492948 25

B O O K S

8 COMPUTING IN SCIENCE amp ENGINEERING

object-oriented programming Onestudent asked why we spent timelearning some of the standard Cstructures if there were better C++ al-ternatives (In the future Irsquoll likely in-corporate some of this material earlierin the course so students can use theseenhanced capabilities) Chapters 1721 and 22 introduce some of the Chfeatures that make it an excellent lan-guage choice for scientific program-ming including complex numbers

computational arrays and advancednumerical analysis subroutines

The textbook concludes with an ex-tensive chapter introducing Matlabincluding useful tables that directlycompare operators and functions in

Matlab and Ch Although the bookis obviously focused on C program-ming this Matlab chapter was oneof the reasons I chose it Through-out my course I introduced Matlabstructuresmdashsuch as arrays con-ditional execution and loopsmdashas

students learned their C counter-parts Most homework sets includedprogramming problems in both Cand Matlab Unfortunately all ofChapter 23rsquos exercises involve hav-ing students use Matlab to solve cor-responding exercises from earliersections It would be beneficial to in-corporate some problems that focusmore specifically on Matlabrsquos unique

vector-based paradigm part icularlyfor solving array-based problems and

linear algebra

Strengths and ShortcomingsBy far the textbookrsquos greateststrength is its close integration withthe Ch interpreter system which

includes ChIDE a scientific graphingpackage and a full library of numeri-cal analysis subroutines In previ-ous offerings of this course I had tostart out by preparing handouts andtutorials on how to use the IDE andcompiler system (such as Compaq

Visual Fortran or Microsoft Visual

C++) the third-party graphics system(such as pgplot) and other numericallibraries It typically required a fewdays to ensure that students could getthem all working together particularlyif they were working on their own

computers instead of departmental labmachines Such tools are all includedin the student edition of Ch and are

well documented in the textbook it-self Further the SIGL graphics li-brary produces high-quality graphs ofdatasets for scientific and engineering

applications which is well documentedin the Ch Language Environment Ref-erence Guidemdasha 1000-plus-page PDFfile installed with the system TheSoftIntegration website also offers ex-tensive SIGL sample programs SIGL

works for static plots but not for real-time plots or animation

The bookrsquos major shortcoming was its surprising lack of discussionof numerical methods In Chapter 6one sample program illustrates the

bisection method for numerical root

finding and one of the exercises re-quires students to modify it to imple-ment Newtonrsquos method Chapter 10includes sections on linear algebraand introduces the subroutinelinsolve() a built-in Ch functionand Clapackrsquos dgesv_() functionBeyond these examples and a briefdiscussion in Chapter 22 of some ofChrsquos numerous built-in numericalfunctions therersquos no discussion of orexercises for other numerical tech-

niques such as numerical integration differentiation and solving ordinarydifferential equations (ODEs)

In my view therersquos pedagogical value in having students code andunderstand basic algorithms such assolving an ODE using a simple Eulerpredictorcorrector or fourth-orderRunge-Kutta method Doing so helpsthem understand some of the tradeoffsof accuracy round-off error execu-tion times and step size that are lessreadily apparent when using a cannedfunction such as oderk() which isChrsquos built-in fifth-order adaptive step-size Runge-Kutta subroutine Becausescience and engineering students arelikely to encounter numerical model-ing at some point in their academic orprofessional career a programmingcourse is an ideal place to empowerthem with an understanding of thebasic principles of numerical analy-

sis Hopefully a second edition of thetextbook will incorporate more exten-sive discussion of these techniquesalong with appropriate examples andexercises

Obviously an essential feature ofthis textbook package is the Ch in-terpreter system In running severalsimple benchmark programs codeexecutes at about 11000 the speed ofcompiled C code In previous yearssuch a huge difference in performance

greatly limited interpretersrsquo appeal

The textbookrsquos greatest strength is its close integration

with the Ch interpreter system which includes ChIDE

a scientific graphing package and a full library of

numerical analysis subroutines

7272019 05492948

httpslidepdfcomreaderfull05492948 35

JULYAUGUST 2010 9

However because we now have fasterprocessors the Ch interpreterrsquos speed

was more than adequate for all but themost demanding computational tasks

And for the most part the cross-platform compatibility and conve-nience of not having to compile andlink code outweigh any performancepenalty The only significant differ-ence between the Ch systemrsquos studentand professional editions is the limi-tation of arrays to 20000 elements

in the former this was generally nota problem for the programs and proj-ects in my course

SoftIntegrationrsquos technical supportstaff was highly responsive when wenotified them of bugs they gener-ally made a patched version available

within a day The extensive numericalanalysis libraryrsquos Ch Language Envi-ronment Reference Guide includes well-documented subroutines for many ofthe numerical tasks that an engineer-ing or science student is likely to en-counter However because the bookoffers only a minimal introduction tonumerical methods students mightnot be in a position to fully utilize thislibrary This is because the book failsto introduce the advantages and disad-

vantages of numerical versus analyt ictechniques so students might lack thesensitivity required to set up problems

and interpret results in light of round-off error step sizes and so on

The book includes a CD of the stu-dent edition of Ch for Windows ver-sion 61 and indicates that students candownload and license the correspond-ing version for Mac OSX and Linuxfree of charge However as of this

writing SoftIntegration changed itslicensing and now charges to purchasethe latest student version (currently63) from its website though it does of-

fer a 30-day free trial Instructors candistribute the latest version of the stu-dent edition to their classes if they usethe textbook and purchase a licensefor the softwarersquos professional editionfor their instructional lab While thepricingmdashparticularly for academic andstudent licensesmdashis very competitivechanging the student editionrsquos licens-ing might reduce the packagersquos appealparticularly for students who want tolearn CC++ on their own

The bottom line for a post-usereview is one question Would I

use the text again In the case of C for Engineers and Scientists An Interpre-tive Approach the answer is yes I dealt

with the bookrsquos major weaknessmdashthelack of an introduction to numeri-cal methodsmdashby including handouts

and supplemental homework Andultimately the weakness was over-

whelmed by the textbookrsquos exceptionalstrength it let me introduce the C pro-gramming language within a cross-platform environment that enablednumerical analysis and visualizationStudents agreed with this assessmentin their post-use survey when asked

whether the book should be used in fu-ture course offerings all students an-swered ldquoyesrdquo After using this textbook

and the Ch interpreter I have a newrespect for the role of interpreters as analternative to traditional compilers forintroducing computer programming

Reference1 HH Cheng ldquoC for the Courserdquo

ASME Mechanical Eng Sept 2009

pp 50ndash52 httpmemagazine

asmeorgArticles2009september

C_Coursecfm

Tom Huber is a physics professor at

Gustavus Adolphus College in St Peter

Minnesota He has extensive programming

and modeling experience in both academia

and industry and frequently teaches a sci-

entific programming course during the col-

legersquos month-long January term Huber has

a PhD in experimental nuclear physics from

the University of Wyoming Contact him at

hubergacedu

Roger W Pryor Multiphysics Modeling Using C OMSOLmdashA First Principles Approach

Jones and Bartlett Publishers 2011 ISBN 978-0763779993 852 pp

COMSOL MULTIPHYSICS FOR DUMMIES

By Christian Schroumlder

With the pub-lication of

Mult iphysic s Modeling Using C OMSOL

author Roger W Pryor

has identified and filled the missinglink in the existing literature on fi-nite element modeling (FEM) us-ing C983151983149983155983151983148 Multiphysics This is

a hands-on introduction that lets

scientists and engineers quickly startbuilding and solving models of dif-ferent physical device structures tosee how they behave on a computerbefore attempting to build physicalprototypes This book is an excel-lent resource written to be accessibleto rookies in the FEM field as wellas offering valuable information foradvanced users

In the bookrsquos introductory chap-

ter Pryor explains how to read and

7272019 05492948

httpslidepdfcomreaderfull05492948 45

B O O K S

10 COMPUTING IN SCIENCE amp ENGINEERING

use the book He includes two de-tailed tables to help readers quicklyfind the specific concepts and tech-niques presented in various chapters

The introduction also offers the de-tails required to get started with thesoftware including installation andhardware (which are important tothe C983151983149983155983151983148 Multiphysics modelingenvironmentrsquos performance) as wellas coordinate systems

In addition to these technical mat-

ters the author also offers an initialintroduction to several importantaspects of the FEM modeling pro-cess by demonstrating how to cre-ate simple 1D models of one- two-and three-pane thermal insulation

windows Chapter 2 completes theintroduction by addressing materialsand material databases including adiscussion of how to obtain additionalresources related to material proper-ties This topic is vital to the modelingprocess as the accuracy and reliabil-ity of a modelrsquos results depend heavilyon the material properties used in thesimulation

A Practical Hands-On GuideIn subsequent chapters the authorprovides detailed hands-on practice ofFEM modeling using C983151983149983155983151983148 Multi-physics with increasing complexityranging from 1D models based on

the Korteweg-de-Vries equation formodeling soliton wave propagation(Chapter 3) to complex 3D modelsof a Helmholtz coilrsquos magnetic field(Chapter 8) In Chapter 9 Pryor discuss-es the concept of perfectly matchedlayers for modeling reflection-freeboundaries in electromagnetic prob-lems and the final chapter deals withthe bioheat equation This last topicplays an important role in develop-ing and analyzing new therapeutic

medical techniques (such as killing

tumors) and the author presents twobioheat models that demonstrate theeffect of laser heating and microwaveheating on biological tissue

At first glance 852 pages aboutFEM using a single tool might seemdaunting However the book is not amathematics book Pryor completelyleaves out the mathematical back-ground of the FEM and numericalsolving techniques This is an excel-lent approach many other books treat

that topic in depth and such knowl-edge isnrsquot particularly important forthe practical modeler

In contrast to other FEM booksmdasheven those tightly related to C983151983149983155983151983148

Multiphysicsmdashthis book isnrsquot dedi-cated to one special engineering fieldsuch as mechanical engineering orcomputational fluid dynamics In-stead it deals with a wide variety ofapplication modes available in C983151983149983155983151983148

Multiphysics Given this variety itrsquosimportant that the book be organizedsuch that readers can jump directlyto chapters of interest without miss-ing important information from otherchapters This book achieves that andoffers further aid by providing a con-sistent structure within each chapter(except Chapter 2 which deals withmaterials) First each chapter offersan ldquoIn This Chapterrdquo paragraph

which summarizes the content fol-

lowed by modeling considerationsand physical background The de-scription of the actual modeling pro-cess also adheres to a specific patternas follows

bull select an appropriate C983151983149983155983151983148 Multi-physics application mode whichspecifies the partial differentialequations to be solved

bull implement the model geometry us-ing either the built-in CAD drawing

tool or the CAD import function

bull specify the subdomain settings in-cluding material properties and ini-tial values

bull specify boundary values which com-pletes the physical modeling process

bull partition (or discretize) the modelinto finite elements during themeshing-step

bull select one of the built-in solvers tosolve the partial differential equa-tions and

bull visualize interpret and discuss the

results

Finally each chapter ends with a shortsummary

Almost every page contains detailedscreenshots that guide readers safelythrough the modeling process Infact by reading the book and simul-taneously carrying out each modelingstep on their computer screens read-ers can quickly learn the basic ideasrequired for successful modeling withC983151983149983155983151983148 Multiphysics The authoralso describes real-world applicationsfor each model which makes the texteven more satisfying

Key Features and DrawbacksPerhaps the bookrsquos most importantfeature is the notes that Pryor insertsbetween the paragraphs Here thereader gets key information takendirectly from the authorrsquos practical

experience This gives the impres-sion of attending a ldquovirtualrdquo trainingcourse Itrsquos as if the author is standingright behind you while yoursquore readingand modeling giving you importantinformation that you needmdashwithoutcharging an extra training fee Onceagain the 852 pages donrsquot containcondensed scientific information Infact readers will find many identicalparagraphs phrases and notes thatreappear throughout the book Al-

though this adds length it also frees

7272019 05492948

httpslidepdfcomreaderfull05492948 55

JULYAUGUST 2010 11

readers from needing to mark the pages where important information appearsonly once which is usually the case inldquotraditionalrdquo science books

This book is definitely not usefulfor the reader who is generally inter-ested in FEM and numerical methodsitrsquos designed specifically for hands-onmodeling with C983151983149983155983151983148 Multiphysicsand as such itrsquos readable only in com-bination with this software Moreoverseveral chapters require additional

modules (such as the Heat-Transfer- ACDC- and Materials-Library-module) that arenrsquot included in thebasic software package Pryor providesa table in the introduction that shows

which chapter requires which modulehowever given that these additionalmodules arenrsquot free of charge it wouldhave been useful to mention the needfor them on the bookrsquos back coverto offer a clear warning to potentialreaders

With the exception of Chapter 1the author begins all technical chap-ters with the development of a modelderived from models available inthe C983151983149983155983151983148 Multiphysics installationpackage Following this is a model

variation and analysis of the results Although each modelrsquos constructionis described and discussed in greatdetail most models lack importantinformation regarding the physical

background especially regarding theuse of specific C983151983149983155983151983148 tool settingsor application modes In Chapter 1for example Pryor develops a seriesof 1D window models based on one-two- and three-glass panes For theboundary conditions he selects ldquoHeatfluxrdquo and instructs the reader to entera value of 15 in the ldquoHeat transfer co-efficientrdquo window however he doesnrsquotexplain the valuersquos origin or meaning

From my own experience in teach-

ing mathematical modeling with

C983151983149983155983151983148 Multiphysics I know that de-fining and setting the correct bound-ary conditions is very challenging forbeginners I therefore would expecta more detailed discussion about thetypes of boundary conditions in generaland the source of this specific value

A similar situation occurs in Chapter 4Here Pryor introduces the con-cept of the moving mesh applicationmode in electrochemical polishingand the use of weak constraints in the

Hall effect model In both cases heinstructs readers to select a particu-lar setting without offering any ad-ditional explanation of these powerfultechniques The only hint given is areference to the C OMSOL Multiphysics

Modeling Guide that comes with thesoftware

Two additional aspects of thebook leave significant room for im-provement in future editions Firsteach chapter includes referencesbut most are links to Wikipedia orto the softwarersquos manual As read-ers will quickly realize a simpleGoogle search would yield thesame information Similarly mostof the ldquoproblemsrdquo that appear fol-lowing each chapter simply repeat

whatrsquos presented earlier in the chap-ter and few actually deal with in-teresting extensions of the materialthat has been discussed

The book offers a highly use-ful DVD supplement containing allmodels developed and discussed ineach chapter as well as Microsoft

Word documents containing all of thebookrsquos figures and screenshots Thelatter is very valuable for teachingpurposes

Generally the book is well andclearly written which is especially im-portant for international users Thetype setting of equations is sometimes

rather poor However because the

book doesnrsquot focus on mathematicsthis is acceptable

Pryor did a great job of puttingtogether examples for many dif-

ferent application domains that canbe solved by using C983151983149983155983151983148 Multi-physics In each chapter he clearlydescribes the modeling process of-fers detailed discussion of possiblemodeling errors and results and

provides the most important back-ground information Together withthe original C983151983149983155983151983148 handbooksprovided with the C983151983149983155983151983148 Multi-physics software package this bookis an excellent starter and is highly

valuable for teaching purposes Ad- vanced modelers who want to knowmore about mathematical or physicaldetails can find them in other bookson FEM Several such books useC983151983149983155983151983148 Multiphysics but typicallyfocus only on specific application do-mains In this regard Pryorrsquos bookis very much a missing link offeringa useful supplement to the literatureon FEM modeling with C983151983149983155983151983148

Multiphysics

Christian Schroumlder is a professor in the De-

partment of Engineering Sciences and Math-

ematics at the University of Applied Sciences

Bielefeld in Germany His current research

involves high-performance computing com-

putational material science and engineer-

ing with a focus on finite element modeling

using COMSOL Multiphysics Schroumlder has

a PhD in theoretical physics from the Uni-

versity of Osnabruumlck in Osnabruumlck Ger-

many Contact him at christianschroeder

fh-bielefeldde

Selected articles and columns from

IEEE Computer Society publica-

tions are also available for free at http

ComputingNowcomputerorg

Page 3: 05492948

7272019 05492948

httpslidepdfcomreaderfull05492948 35

JULYAUGUST 2010 9

However because we now have fasterprocessors the Ch interpreterrsquos speed

was more than adequate for all but themost demanding computational tasks

And for the most part the cross-platform compatibility and conve-nience of not having to compile andlink code outweigh any performancepenalty The only significant differ-ence between the Ch systemrsquos studentand professional editions is the limi-tation of arrays to 20000 elements

in the former this was generally nota problem for the programs and proj-ects in my course

SoftIntegrationrsquos technical supportstaff was highly responsive when wenotified them of bugs they gener-ally made a patched version available

within a day The extensive numericalanalysis libraryrsquos Ch Language Envi-ronment Reference Guide includes well-documented subroutines for many ofthe numerical tasks that an engineer-ing or science student is likely to en-counter However because the bookoffers only a minimal introduction tonumerical methods students mightnot be in a position to fully utilize thislibrary This is because the book failsto introduce the advantages and disad-

vantages of numerical versus analyt ictechniques so students might lack thesensitivity required to set up problems

and interpret results in light of round-off error step sizes and so on

The book includes a CD of the stu-dent edition of Ch for Windows ver-sion 61 and indicates that students candownload and license the correspond-ing version for Mac OSX and Linuxfree of charge However as of this

writing SoftIntegration changed itslicensing and now charges to purchasethe latest student version (currently63) from its website though it does of-

fer a 30-day free trial Instructors candistribute the latest version of the stu-dent edition to their classes if they usethe textbook and purchase a licensefor the softwarersquos professional editionfor their instructional lab While thepricingmdashparticularly for academic andstudent licensesmdashis very competitivechanging the student editionrsquos licens-ing might reduce the packagersquos appealparticularly for students who want tolearn CC++ on their own

The bottom line for a post-usereview is one question Would I

use the text again In the case of C for Engineers and Scientists An Interpre-tive Approach the answer is yes I dealt

with the bookrsquos major weaknessmdashthelack of an introduction to numeri-cal methodsmdashby including handouts

and supplemental homework Andultimately the weakness was over-

whelmed by the textbookrsquos exceptionalstrength it let me introduce the C pro-gramming language within a cross-platform environment that enablednumerical analysis and visualizationStudents agreed with this assessmentin their post-use survey when asked

whether the book should be used in fu-ture course offerings all students an-swered ldquoyesrdquo After using this textbook

and the Ch interpreter I have a newrespect for the role of interpreters as analternative to traditional compilers forintroducing computer programming

Reference1 HH Cheng ldquoC for the Courserdquo

ASME Mechanical Eng Sept 2009

pp 50ndash52 httpmemagazine

asmeorgArticles2009september

C_Coursecfm

Tom Huber is a physics professor at

Gustavus Adolphus College in St Peter

Minnesota He has extensive programming

and modeling experience in both academia

and industry and frequently teaches a sci-

entific programming course during the col-

legersquos month-long January term Huber has

a PhD in experimental nuclear physics from

the University of Wyoming Contact him at

hubergacedu

Roger W Pryor Multiphysics Modeling Using C OMSOLmdashA First Principles Approach

Jones and Bartlett Publishers 2011 ISBN 978-0763779993 852 pp

COMSOL MULTIPHYSICS FOR DUMMIES

By Christian Schroumlder

With the pub-lication of

Mult iphysic s Modeling Using C OMSOL

author Roger W Pryor

has identified and filled the missinglink in the existing literature on fi-nite element modeling (FEM) us-ing C983151983149983155983151983148 Multiphysics This is

a hands-on introduction that lets

scientists and engineers quickly startbuilding and solving models of dif-ferent physical device structures tosee how they behave on a computerbefore attempting to build physicalprototypes This book is an excel-lent resource written to be accessibleto rookies in the FEM field as wellas offering valuable information foradvanced users

In the bookrsquos introductory chap-

ter Pryor explains how to read and

7272019 05492948

httpslidepdfcomreaderfull05492948 45

B O O K S

10 COMPUTING IN SCIENCE amp ENGINEERING

use the book He includes two de-tailed tables to help readers quicklyfind the specific concepts and tech-niques presented in various chapters

The introduction also offers the de-tails required to get started with thesoftware including installation andhardware (which are important tothe C983151983149983155983151983148 Multiphysics modelingenvironmentrsquos performance) as wellas coordinate systems

In addition to these technical mat-

ters the author also offers an initialintroduction to several importantaspects of the FEM modeling pro-cess by demonstrating how to cre-ate simple 1D models of one- two-and three-pane thermal insulation

windows Chapter 2 completes theintroduction by addressing materialsand material databases including adiscussion of how to obtain additionalresources related to material proper-ties This topic is vital to the modelingprocess as the accuracy and reliabil-ity of a modelrsquos results depend heavilyon the material properties used in thesimulation

A Practical Hands-On GuideIn subsequent chapters the authorprovides detailed hands-on practice ofFEM modeling using C983151983149983155983151983148 Multi-physics with increasing complexityranging from 1D models based on

the Korteweg-de-Vries equation formodeling soliton wave propagation(Chapter 3) to complex 3D modelsof a Helmholtz coilrsquos magnetic field(Chapter 8) In Chapter 9 Pryor discuss-es the concept of perfectly matchedlayers for modeling reflection-freeboundaries in electromagnetic prob-lems and the final chapter deals withthe bioheat equation This last topicplays an important role in develop-ing and analyzing new therapeutic

medical techniques (such as killing

tumors) and the author presents twobioheat models that demonstrate theeffect of laser heating and microwaveheating on biological tissue

At first glance 852 pages aboutFEM using a single tool might seemdaunting However the book is not amathematics book Pryor completelyleaves out the mathematical back-ground of the FEM and numericalsolving techniques This is an excel-lent approach many other books treat

that topic in depth and such knowl-edge isnrsquot particularly important forthe practical modeler

In contrast to other FEM booksmdasheven those tightly related to C983151983149983155983151983148

Multiphysicsmdashthis book isnrsquot dedi-cated to one special engineering fieldsuch as mechanical engineering orcomputational fluid dynamics In-stead it deals with a wide variety ofapplication modes available in C983151983149983155983151983148

Multiphysics Given this variety itrsquosimportant that the book be organizedsuch that readers can jump directlyto chapters of interest without miss-ing important information from otherchapters This book achieves that andoffers further aid by providing a con-sistent structure within each chapter(except Chapter 2 which deals withmaterials) First each chapter offersan ldquoIn This Chapterrdquo paragraph

which summarizes the content fol-

lowed by modeling considerationsand physical background The de-scription of the actual modeling pro-cess also adheres to a specific patternas follows

bull select an appropriate C983151983149983155983151983148 Multi-physics application mode whichspecifies the partial differentialequations to be solved

bull implement the model geometry us-ing either the built-in CAD drawing

tool or the CAD import function

bull specify the subdomain settings in-cluding material properties and ini-tial values

bull specify boundary values which com-pletes the physical modeling process

bull partition (or discretize) the modelinto finite elements during themeshing-step

bull select one of the built-in solvers tosolve the partial differential equa-tions and

bull visualize interpret and discuss the

results

Finally each chapter ends with a shortsummary

Almost every page contains detailedscreenshots that guide readers safelythrough the modeling process Infact by reading the book and simul-taneously carrying out each modelingstep on their computer screens read-ers can quickly learn the basic ideasrequired for successful modeling withC983151983149983155983151983148 Multiphysics The authoralso describes real-world applicationsfor each model which makes the texteven more satisfying

Key Features and DrawbacksPerhaps the bookrsquos most importantfeature is the notes that Pryor insertsbetween the paragraphs Here thereader gets key information takendirectly from the authorrsquos practical

experience This gives the impres-sion of attending a ldquovirtualrdquo trainingcourse Itrsquos as if the author is standingright behind you while yoursquore readingand modeling giving you importantinformation that you needmdashwithoutcharging an extra training fee Onceagain the 852 pages donrsquot containcondensed scientific information Infact readers will find many identicalparagraphs phrases and notes thatreappear throughout the book Al-

though this adds length it also frees

7272019 05492948

httpslidepdfcomreaderfull05492948 55

JULYAUGUST 2010 11

readers from needing to mark the pages where important information appearsonly once which is usually the case inldquotraditionalrdquo science books

This book is definitely not usefulfor the reader who is generally inter-ested in FEM and numerical methodsitrsquos designed specifically for hands-onmodeling with C983151983149983155983151983148 Multiphysicsand as such itrsquos readable only in com-bination with this software Moreoverseveral chapters require additional

modules (such as the Heat-Transfer- ACDC- and Materials-Library-module) that arenrsquot included in thebasic software package Pryor providesa table in the introduction that shows

which chapter requires which modulehowever given that these additionalmodules arenrsquot free of charge it wouldhave been useful to mention the needfor them on the bookrsquos back coverto offer a clear warning to potentialreaders

With the exception of Chapter 1the author begins all technical chap-ters with the development of a modelderived from models available inthe C983151983149983155983151983148 Multiphysics installationpackage Following this is a model

variation and analysis of the results Although each modelrsquos constructionis described and discussed in greatdetail most models lack importantinformation regarding the physical

background especially regarding theuse of specific C983151983149983155983151983148 tool settingsor application modes In Chapter 1for example Pryor develops a seriesof 1D window models based on one-two- and three-glass panes For theboundary conditions he selects ldquoHeatfluxrdquo and instructs the reader to entera value of 15 in the ldquoHeat transfer co-efficientrdquo window however he doesnrsquotexplain the valuersquos origin or meaning

From my own experience in teach-

ing mathematical modeling with

C983151983149983155983151983148 Multiphysics I know that de-fining and setting the correct bound-ary conditions is very challenging forbeginners I therefore would expecta more detailed discussion about thetypes of boundary conditions in generaland the source of this specific value

A similar situation occurs in Chapter 4Here Pryor introduces the con-cept of the moving mesh applicationmode in electrochemical polishingand the use of weak constraints in the

Hall effect model In both cases heinstructs readers to select a particu-lar setting without offering any ad-ditional explanation of these powerfultechniques The only hint given is areference to the C OMSOL Multiphysics

Modeling Guide that comes with thesoftware

Two additional aspects of thebook leave significant room for im-provement in future editions Firsteach chapter includes referencesbut most are links to Wikipedia orto the softwarersquos manual As read-ers will quickly realize a simpleGoogle search would yield thesame information Similarly mostof the ldquoproblemsrdquo that appear fol-lowing each chapter simply repeat

whatrsquos presented earlier in the chap-ter and few actually deal with in-teresting extensions of the materialthat has been discussed

The book offers a highly use-ful DVD supplement containing allmodels developed and discussed ineach chapter as well as Microsoft

Word documents containing all of thebookrsquos figures and screenshots Thelatter is very valuable for teachingpurposes

Generally the book is well andclearly written which is especially im-portant for international users Thetype setting of equations is sometimes

rather poor However because the

book doesnrsquot focus on mathematicsthis is acceptable

Pryor did a great job of puttingtogether examples for many dif-

ferent application domains that canbe solved by using C983151983149983155983151983148 Multi-physics In each chapter he clearlydescribes the modeling process of-fers detailed discussion of possiblemodeling errors and results and

provides the most important back-ground information Together withthe original C983151983149983155983151983148 handbooksprovided with the C983151983149983155983151983148 Multi-physics software package this bookis an excellent starter and is highly

valuable for teaching purposes Ad- vanced modelers who want to knowmore about mathematical or physicaldetails can find them in other bookson FEM Several such books useC983151983149983155983151983148 Multiphysics but typicallyfocus only on specific application do-mains In this regard Pryorrsquos bookis very much a missing link offeringa useful supplement to the literatureon FEM modeling with C983151983149983155983151983148

Multiphysics

Christian Schroumlder is a professor in the De-

partment of Engineering Sciences and Math-

ematics at the University of Applied Sciences

Bielefeld in Germany His current research

involves high-performance computing com-

putational material science and engineer-

ing with a focus on finite element modeling

using COMSOL Multiphysics Schroumlder has

a PhD in theoretical physics from the Uni-

versity of Osnabruumlck in Osnabruumlck Ger-

many Contact him at christianschroeder

fh-bielefeldde

Selected articles and columns from

IEEE Computer Society publica-

tions are also available for free at http

ComputingNowcomputerorg

Page 4: 05492948

7272019 05492948

httpslidepdfcomreaderfull05492948 45

B O O K S

10 COMPUTING IN SCIENCE amp ENGINEERING

use the book He includes two de-tailed tables to help readers quicklyfind the specific concepts and tech-niques presented in various chapters

The introduction also offers the de-tails required to get started with thesoftware including installation andhardware (which are important tothe C983151983149983155983151983148 Multiphysics modelingenvironmentrsquos performance) as wellas coordinate systems

In addition to these technical mat-

ters the author also offers an initialintroduction to several importantaspects of the FEM modeling pro-cess by demonstrating how to cre-ate simple 1D models of one- two-and three-pane thermal insulation

windows Chapter 2 completes theintroduction by addressing materialsand material databases including adiscussion of how to obtain additionalresources related to material proper-ties This topic is vital to the modelingprocess as the accuracy and reliabil-ity of a modelrsquos results depend heavilyon the material properties used in thesimulation

A Practical Hands-On GuideIn subsequent chapters the authorprovides detailed hands-on practice ofFEM modeling using C983151983149983155983151983148 Multi-physics with increasing complexityranging from 1D models based on

the Korteweg-de-Vries equation formodeling soliton wave propagation(Chapter 3) to complex 3D modelsof a Helmholtz coilrsquos magnetic field(Chapter 8) In Chapter 9 Pryor discuss-es the concept of perfectly matchedlayers for modeling reflection-freeboundaries in electromagnetic prob-lems and the final chapter deals withthe bioheat equation This last topicplays an important role in develop-ing and analyzing new therapeutic

medical techniques (such as killing

tumors) and the author presents twobioheat models that demonstrate theeffect of laser heating and microwaveheating on biological tissue

At first glance 852 pages aboutFEM using a single tool might seemdaunting However the book is not amathematics book Pryor completelyleaves out the mathematical back-ground of the FEM and numericalsolving techniques This is an excel-lent approach many other books treat

that topic in depth and such knowl-edge isnrsquot particularly important forthe practical modeler

In contrast to other FEM booksmdasheven those tightly related to C983151983149983155983151983148

Multiphysicsmdashthis book isnrsquot dedi-cated to one special engineering fieldsuch as mechanical engineering orcomputational fluid dynamics In-stead it deals with a wide variety ofapplication modes available in C983151983149983155983151983148

Multiphysics Given this variety itrsquosimportant that the book be organizedsuch that readers can jump directlyto chapters of interest without miss-ing important information from otherchapters This book achieves that andoffers further aid by providing a con-sistent structure within each chapter(except Chapter 2 which deals withmaterials) First each chapter offersan ldquoIn This Chapterrdquo paragraph

which summarizes the content fol-

lowed by modeling considerationsand physical background The de-scription of the actual modeling pro-cess also adheres to a specific patternas follows

bull select an appropriate C983151983149983155983151983148 Multi-physics application mode whichspecifies the partial differentialequations to be solved

bull implement the model geometry us-ing either the built-in CAD drawing

tool or the CAD import function

bull specify the subdomain settings in-cluding material properties and ini-tial values

bull specify boundary values which com-pletes the physical modeling process

bull partition (or discretize) the modelinto finite elements during themeshing-step

bull select one of the built-in solvers tosolve the partial differential equa-tions and

bull visualize interpret and discuss the

results

Finally each chapter ends with a shortsummary

Almost every page contains detailedscreenshots that guide readers safelythrough the modeling process Infact by reading the book and simul-taneously carrying out each modelingstep on their computer screens read-ers can quickly learn the basic ideasrequired for successful modeling withC983151983149983155983151983148 Multiphysics The authoralso describes real-world applicationsfor each model which makes the texteven more satisfying

Key Features and DrawbacksPerhaps the bookrsquos most importantfeature is the notes that Pryor insertsbetween the paragraphs Here thereader gets key information takendirectly from the authorrsquos practical

experience This gives the impres-sion of attending a ldquovirtualrdquo trainingcourse Itrsquos as if the author is standingright behind you while yoursquore readingand modeling giving you importantinformation that you needmdashwithoutcharging an extra training fee Onceagain the 852 pages donrsquot containcondensed scientific information Infact readers will find many identicalparagraphs phrases and notes thatreappear throughout the book Al-

though this adds length it also frees

7272019 05492948

httpslidepdfcomreaderfull05492948 55

JULYAUGUST 2010 11

readers from needing to mark the pages where important information appearsonly once which is usually the case inldquotraditionalrdquo science books

This book is definitely not usefulfor the reader who is generally inter-ested in FEM and numerical methodsitrsquos designed specifically for hands-onmodeling with C983151983149983155983151983148 Multiphysicsand as such itrsquos readable only in com-bination with this software Moreoverseveral chapters require additional

modules (such as the Heat-Transfer- ACDC- and Materials-Library-module) that arenrsquot included in thebasic software package Pryor providesa table in the introduction that shows

which chapter requires which modulehowever given that these additionalmodules arenrsquot free of charge it wouldhave been useful to mention the needfor them on the bookrsquos back coverto offer a clear warning to potentialreaders

With the exception of Chapter 1the author begins all technical chap-ters with the development of a modelderived from models available inthe C983151983149983155983151983148 Multiphysics installationpackage Following this is a model

variation and analysis of the results Although each modelrsquos constructionis described and discussed in greatdetail most models lack importantinformation regarding the physical

background especially regarding theuse of specific C983151983149983155983151983148 tool settingsor application modes In Chapter 1for example Pryor develops a seriesof 1D window models based on one-two- and three-glass panes For theboundary conditions he selects ldquoHeatfluxrdquo and instructs the reader to entera value of 15 in the ldquoHeat transfer co-efficientrdquo window however he doesnrsquotexplain the valuersquos origin or meaning

From my own experience in teach-

ing mathematical modeling with

C983151983149983155983151983148 Multiphysics I know that de-fining and setting the correct bound-ary conditions is very challenging forbeginners I therefore would expecta more detailed discussion about thetypes of boundary conditions in generaland the source of this specific value

A similar situation occurs in Chapter 4Here Pryor introduces the con-cept of the moving mesh applicationmode in electrochemical polishingand the use of weak constraints in the

Hall effect model In both cases heinstructs readers to select a particu-lar setting without offering any ad-ditional explanation of these powerfultechniques The only hint given is areference to the C OMSOL Multiphysics

Modeling Guide that comes with thesoftware

Two additional aspects of thebook leave significant room for im-provement in future editions Firsteach chapter includes referencesbut most are links to Wikipedia orto the softwarersquos manual As read-ers will quickly realize a simpleGoogle search would yield thesame information Similarly mostof the ldquoproblemsrdquo that appear fol-lowing each chapter simply repeat

whatrsquos presented earlier in the chap-ter and few actually deal with in-teresting extensions of the materialthat has been discussed

The book offers a highly use-ful DVD supplement containing allmodels developed and discussed ineach chapter as well as Microsoft

Word documents containing all of thebookrsquos figures and screenshots Thelatter is very valuable for teachingpurposes

Generally the book is well andclearly written which is especially im-portant for international users Thetype setting of equations is sometimes

rather poor However because the

book doesnrsquot focus on mathematicsthis is acceptable

Pryor did a great job of puttingtogether examples for many dif-

ferent application domains that canbe solved by using C983151983149983155983151983148 Multi-physics In each chapter he clearlydescribes the modeling process of-fers detailed discussion of possiblemodeling errors and results and

provides the most important back-ground information Together withthe original C983151983149983155983151983148 handbooksprovided with the C983151983149983155983151983148 Multi-physics software package this bookis an excellent starter and is highly

valuable for teaching purposes Ad- vanced modelers who want to knowmore about mathematical or physicaldetails can find them in other bookson FEM Several such books useC983151983149983155983151983148 Multiphysics but typicallyfocus only on specific application do-mains In this regard Pryorrsquos bookis very much a missing link offeringa useful supplement to the literatureon FEM modeling with C983151983149983155983151983148

Multiphysics

Christian Schroumlder is a professor in the De-

partment of Engineering Sciences and Math-

ematics at the University of Applied Sciences

Bielefeld in Germany His current research

involves high-performance computing com-

putational material science and engineer-

ing with a focus on finite element modeling

using COMSOL Multiphysics Schroumlder has

a PhD in theoretical physics from the Uni-

versity of Osnabruumlck in Osnabruumlck Ger-

many Contact him at christianschroeder

fh-bielefeldde

Selected articles and columns from

IEEE Computer Society publica-

tions are also available for free at http

ComputingNowcomputerorg

Page 5: 05492948

7272019 05492948

httpslidepdfcomreaderfull05492948 55

JULYAUGUST 2010 11

readers from needing to mark the pages where important information appearsonly once which is usually the case inldquotraditionalrdquo science books

This book is definitely not usefulfor the reader who is generally inter-ested in FEM and numerical methodsitrsquos designed specifically for hands-onmodeling with C983151983149983155983151983148 Multiphysicsand as such itrsquos readable only in com-bination with this software Moreoverseveral chapters require additional

modules (such as the Heat-Transfer- ACDC- and Materials-Library-module) that arenrsquot included in thebasic software package Pryor providesa table in the introduction that shows

which chapter requires which modulehowever given that these additionalmodules arenrsquot free of charge it wouldhave been useful to mention the needfor them on the bookrsquos back coverto offer a clear warning to potentialreaders

With the exception of Chapter 1the author begins all technical chap-ters with the development of a modelderived from models available inthe C983151983149983155983151983148 Multiphysics installationpackage Following this is a model

variation and analysis of the results Although each modelrsquos constructionis described and discussed in greatdetail most models lack importantinformation regarding the physical

background especially regarding theuse of specific C983151983149983155983151983148 tool settingsor application modes In Chapter 1for example Pryor develops a seriesof 1D window models based on one-two- and three-glass panes For theboundary conditions he selects ldquoHeatfluxrdquo and instructs the reader to entera value of 15 in the ldquoHeat transfer co-efficientrdquo window however he doesnrsquotexplain the valuersquos origin or meaning

From my own experience in teach-

ing mathematical modeling with

C983151983149983155983151983148 Multiphysics I know that de-fining and setting the correct bound-ary conditions is very challenging forbeginners I therefore would expecta more detailed discussion about thetypes of boundary conditions in generaland the source of this specific value

A similar situation occurs in Chapter 4Here Pryor introduces the con-cept of the moving mesh applicationmode in electrochemical polishingand the use of weak constraints in the

Hall effect model In both cases heinstructs readers to select a particu-lar setting without offering any ad-ditional explanation of these powerfultechniques The only hint given is areference to the C OMSOL Multiphysics

Modeling Guide that comes with thesoftware

Two additional aspects of thebook leave significant room for im-provement in future editions Firsteach chapter includes referencesbut most are links to Wikipedia orto the softwarersquos manual As read-ers will quickly realize a simpleGoogle search would yield thesame information Similarly mostof the ldquoproblemsrdquo that appear fol-lowing each chapter simply repeat

whatrsquos presented earlier in the chap-ter and few actually deal with in-teresting extensions of the materialthat has been discussed

The book offers a highly use-ful DVD supplement containing allmodels developed and discussed ineach chapter as well as Microsoft

Word documents containing all of thebookrsquos figures and screenshots Thelatter is very valuable for teachingpurposes

Generally the book is well andclearly written which is especially im-portant for international users Thetype setting of equations is sometimes

rather poor However because the

book doesnrsquot focus on mathematicsthis is acceptable

Pryor did a great job of puttingtogether examples for many dif-

ferent application domains that canbe solved by using C983151983149983155983151983148 Multi-physics In each chapter he clearlydescribes the modeling process of-fers detailed discussion of possiblemodeling errors and results and

provides the most important back-ground information Together withthe original C983151983149983155983151983148 handbooksprovided with the C983151983149983155983151983148 Multi-physics software package this bookis an excellent starter and is highly

valuable for teaching purposes Ad- vanced modelers who want to knowmore about mathematical or physicaldetails can find them in other bookson FEM Several such books useC983151983149983155983151983148 Multiphysics but typicallyfocus only on specific application do-mains In this regard Pryorrsquos bookis very much a missing link offeringa useful supplement to the literatureon FEM modeling with C983151983149983155983151983148

Multiphysics

Christian Schroumlder is a professor in the De-

partment of Engineering Sciences and Math-

ematics at the University of Applied Sciences

Bielefeld in Germany His current research

involves high-performance computing com-

putational material science and engineer-

ing with a focus on finite element modeling

using COMSOL Multiphysics Schroumlder has

a PhD in theoretical physics from the Uni-

versity of Osnabruumlck in Osnabruumlck Ger-

many Contact him at christianschroeder

fh-bielefeldde

Selected articles and columns from

IEEE Computer Society publica-

tions are also available for free at http

ComputingNowcomputerorg