1Chapter 1
63Case Studies in Scientific Programming
2Introduction to Scientific Programming
6410.1 Real-world Examples and Applications
31.1 What is Scientific Programming
6510.1.1 Astrophysics: Simulating Stellar Evolution
41.2 Overview of Scientific Programming
6610.1.2 Healthcare: Personalized Medicine through Genomic Analysis
51.3 What can We do with Scientific Programming?
6710.1.3 Manufacturing: Optimizing Industrial Processes
61.4 More Real-World Examples of Scientific Programming
6810.1.4 Environmental Science: Climate Modeling
71.5 Using Scientific Programming and Social Media to Respond to Disasters
6910.1.5 Finance: Algorithmic Trading Strategies
81.6 Importance of Python in Scientific Computing
7010.2 Reproducible Research Practices
91.7 Setting Up Your Python Environment
7110.2.1 Computational Biology: Transparent Genomic Analyses
101.7.1 The Initial Illustration: Hi, Everyone!: 1.7.2 Different Ways to Use Python
7210.2.2 Physics: Simulating Quantum Systems
111.8 The Future of Scientific Programming
7310.2.3 Social Sciences: Transparent Data Analysis
121.9 Conclusion
7410.2.4 Earth Sciences: Reproducible Climate Modeling
13Chapter 2
7510.2.5 Data Science: Transparent Machine Learning Models
14Python Basics for Scientists
7610.3 Showcasing the Impact of Scientific Programming
152.1 Python Data Types and Variables
7710.3 Showcasing the Impact of Scientific Programming
162.2 Control Structures: Loops and Conditionals
7810.3.1 Interdisciplinary Collaboration: The LIGO Project
172.3 Functions and Modular Programming
7910.3.3 Precision Agriculture: Optimizing Crop Yield
182.4 Python Libraries for Scientific Computing
8010.3.4 Epidemiology: Modeling Disease Spread
19Conclusion:
8110.3.5 Space Exploration: Navigation and Data Analysis
20Chapter 3
82Chapter 11
21NumPy: Foundation for Scientific Computing
83Beyond Basics: Advanced Topics
223.1 Introduction to NumPy Arrays: 3.1.1 Introduction to NumPy Arrays: Unveiling the Core of Scientific Computing
8411.1 Metaheuristic Hybridization
233.2 Essential Operations with NumPy
8511.2 Coevolutionary Systems
243.3 Linear Algebra with NumPy
8611.3 Human-in-the-Loop Evolutionary Systems
253.3 Linear Algebra with NumPy
8711.1 Parallel Computing and Distributed Computing
263.4 NumPy’s Random Module for Simulations: 3.4.1 NumPy’s Random Module for Simulations
8811.2 GPU Computing with Python
273.5 Conclusion
8911.3 Introduction to High-Performance Computing
28Chapter 4
90Conclusion
29Data Manipulation with Pandas
91Chapter 12
304.1 Introduction to Pandas DataFrames
92Future Trends in Scientific Programming
314.2 Data Cleaning and Preprocessing
9312.1 Emerging Technologies and Tools
324.3 Analyzing and Visualizing Data with Pandas:
9412.2 The Role of Python in Future Scientific Computing
334.4 Conclusion
9512.3 Opportunities and Challenges Ahead
34Chapter 5
96Conclusion
35Scientific Plotting with Matplotlib
97Chapter 13
365.1 Creating Basic Plots with Matplotlib
98Appendices
375.2 Advanced Plotting Techniques
99A. Installing and Configuring Python and Libraries
385.3 Customizing and Enhancing Plots
100B. Glossary of Terms
39Conclusion
101C. Additional Resources for Scientific Programming
40Chapter 6
102Index
41Introduction to Scientific Computing with SciPy
103A
426.1 Solving Mathematical Problems with SciPy
104B
436.2 Numerical Integration and Differentiation: 6.2.1 Numerical Integration and Differentiation with SciPy: Bridging the Analytical and Computational Realms
105C
446.3 Signal Processing and Image Processing with SciPy: 6.3.1 Signal Processing and Image Processing with SciPy: A Symphony of Computational Sensibility
106D
45Chapter 7
107E
46Symbolic Mathematics with SymPy
108F
477.1 Introduction: Symbolic Mathematics with SymPy
109G
487.1 Performing Symbolic Computations
110H
497.2 Solving Equations and Algebraic Manipulations
111I
507.3 Symbolic Calculus and Differential Equations
112K
51Chapter 8
113L
52Scientific Programming in Practice
114M
538.1 Introduction to Scientific Programming in Practice
115N
548.2 Best Practices in Scientific Programming
116O
558.2: Version Control and Collaboration with Git
117P
568.3: Writing Efficient and Readable Code
118R
578.4 Conclusion: Navigating the Realms of Scientific Programming in Practice
119S
58Chapter 9
120T
59Introduction to Machine Learning with scikit-learn
121U
609.1 Introduction to Machine Learning with scikit-learn: Bridging Theory and Practice for Data-driven Insights
122V
619.2 Overview of Machine Learning Concepts: Unveiling the Foundations of Intelligent Systems
123W
62Chapter 10