More physicists today are taking on the role of software developer as part of their research, but software development isn€t always easy or obvious, even for physicists. This practical book teaches essential so...

Buy Now From Amazon

More physicists today are taking on the role of software developer as part of their research, but software development isn€t always easy or obvious, even for physicists. This practical book teaches essential software development skills to help you automate and accomplish nearly any aspect of research in a physics-based field.

Written by two PhDs in nuclear engineering, this book includes practical examples drawn from a working knowledge of physics concepts. You€ll learn how to use the Python programming language to perform everything from collecting and analyzing data to building software and publishing your results.

In four parts, this book includes:

  • Getting Started: Jump into Python, the command line, data containers, functions, flow control and logic, and classes and objects
  • Getting It Done: Learn about regular expressions, analysis and visualization, NumPy, storing data in files and HDF5, important data structures in physics, computing in parallel, and deploying software
  • Getting It Right: Build pipelines and software, learn to use local and remote version control, and debug and test your code
  • Getting It Out There: Document your code, process and publish your findings, and collaborate efficiently; dive into software licenses, ownership, and copyright procedures


Similar Products

Think Python: How to Think Like a Computer ScientistPython Cookbook, Third editionLearn Python 3 the Hard Way: A Very Simple Introduction to the Terrifyingly Beautiful World of Computers and Code (Zed Shaw's Hard Way Series)Fluent Python: Clear, Concise, and Effective ProgrammingPython for Data Analysis: Data Wrangling with Pandas, NumPy, and IPythonPython Data Science Handbook: Essential Tools for Working with DataA Student's Guide to Python for Physical Modeling: Updated EditionPython Crash Course: A Hands-On, Project-Based Introduction to Programming