Office of Academic Resources
Chulalongkorn University
Chulalongkorn University

Home / Help

AuthorLangtangen, Hans Petter. author
TitlePython Scripting for Computational Science [electronic resource] / by Hans Petter Langtangen
ImprintBerlin, Heidelberg : Springer Berlin Heidelberg : Imprint: Springer, 2004
Connect tohttp://dx.doi.org/10.1007/978-3-662-05450-5
Descript XXII, 732 p. 446 illus. online resource

SUMMARY

The primary purpose of this book is to help scientists and engineers workยญ ing intensively with computers to become more productive, have more fun, and increase the reliability of their investigations. Scripting in the Python programming language can be a key tool for reaching these goals [27,29]. The term scripting means different things to different people. By scripting I mean developing programs of an administering nature, mostly to organize your work, using languages where the abstraction level is higher and programยญ ming is more convenient than in Fortran, C, C++, or Java. Perl, Python, Ruby, Scheme, and Tel are examples of languages supporting such high-level programming or scripting. To some extent Matlab and similar scientific comยญ puting environments also fall into this category, but these environments are mainly used for computing and visualization with built-in tools, while scriptยญ ing aims at gluing a range of different tools for computing, visualization, data analysis, file/directory management, user interfaces, and Internet communiยญ cation. So, although Matlab is perhaps the scripting language of choiee in computational science today, my use of the term scripting goes beyond typiยญ cal Matlab scripts. Python stands out as the language of choice for scripting in computational science because of its very elean syntax, rieh modularizaยญ tion features, good support for numerical computing, and rapidly growing popularity. What Scripting is About


CONTENT

1 Introduction -- 2 Getting Started with Python Scripting -- 3 Basic Python -- 4 Numerical Computing in Python -- 5 Combining Python with Fortran, C, and C++ -- 6 Introduction to GUI Programming -- 7 Web Interfaces and CGI Programming -- 8 Advanced Python -- 9 Fortran Programming with NumPy Arrays -- 10 C and C++ Programming with NumPy Arrays -- 11 More Advanced GUI Programming -- 12 Tools and Examples -- A Setting up the Required Software Environment -- A.1 Installation on Unix Systems -- A.1.1 A Suggested Directory Structure -- A.1.2 Setting Some Environment Variables -- A.1.3 Installing Tcl/Tk and Additional Modules -- A.1.4 Installing Python -- A.1.5 Installing Python Modules -- A.1.6 Installing Gnuplot -- A.1.7 Installing SWIG -- A.1.8 Summary of Environment Variables -- A.1.9 Testing the Installation of Scripting Utilities -- A.2 Installation on Windows Systems -- B Elements of Software Engineering -- B.1 Building and Using Modules -- B.1.1 Single-File Modules -- B.1.2 Multi-File Modules -- B.1.3 Debugging and Troubleshooting -- B.2 Tools for Documenting Python Software -- B.2.1 Doc Strings -- B.2.2 Tools for Automatic Documentation -- B.3 Coding Standards -- B.3.1 Style Guide -- B.3.2 Pythonic Programming -- B.4 Verification of Scripts -- B.4.1 Automating Regression Tests -- B.4.2 Implementing a Tool for Regression Tests -- B.4.3 Writing a Test Script -- B.4.4 Verifying Output from Numerical Computations -- B.4.5 Automatic Doc String Testing -- B.4.6 Unit Testing -- B.5 Version Control Management -- B.5.1 Getting Started with CVS -- B.5.2 Building Scripts to Simplify the Use of CVS -- B.6 Exercises


Mathematics Software engineering Computer mathematics Physics Computational intelligence Mathematics Computational Science and Engineering Numerical and Computational Physics Software Engineering/Programming and Operating Systems Computational Intelligence



Location



Office of Academic Resources, Chulalongkorn University, Phayathai Rd. Pathumwan Bangkok 10330 Thailand

Contact Us

Tel. 0-2218-2929,
0-2218-2927 (Library Service)
0-2218-2903 (Administrative Division)
Fax. 0-2215-3617, 0-2218-2907

Social Network

  line

facebook   instragram