In the first edition of this book, the fundamentals for computational astrophysics were outlined, focusing on the use of the Astronomical Multipurpose Software Environment (AMUSE), which is a general-purpose simulation environment in astrophysics written in Python. AMUSE allows you to combine existing solvers to build new applications that can be combined again to study gradually more complex situations. This enables the growth of multi-physics and multi-scale application software in a hierarchical fashion, testing each intermediate step as the complexity of the software continues to increase.
The second edition of the book will be fully compatible with Python3, which requires a major overhaul of the current scripts presented in the book. In addition, it will include examples for cosmology, Adaptive-Mesh-Refinement hydro solvers, multiple treatment, and devote chapters on integrating planetary systems in star clusters (using Nemesis and LonelyPlanets), and hydrodynamics of star formation. An explanation will be added on how to install AMUSE on a supercomputer, run it with SLURM, run it in multi-node mode, and with GPU support. AMUSE has been used over the last several years for education Master's students at Leiden Observatory. For this purpose a range of Python Notebooks have been generated, which will be discussed in an additional chapter in which the course material will be discussed. In total, 3 chapters and 2 appendices will be added: 1: Make your own AMUSE-derivatives 2: How to add your own code to AMUSE 3: Multi-scale simulations in young star forming regions 4: How to integrate planetary systems in a star cluster 5: AMUSE as a course for Masters' students