- Introduction to ROOT ›
- C++ Basics for ROOT ›
- ROOT Macros ›
- ROOT Objects and the ROOT Object Model ›
- Histograms ›
- Two-Dimensional Histograms ›
- Graphs ›
- Canvases and Plotting ›
- Styling ROOT Plots ›
- Mathematical Functions ›
- Curve Fitting ›
- ROOT Files ›
- TTrees ›
- Event-Based Data Analysis ›
- Working with Real Experimental Data ›
- Random Numbers and Simulations ›
- Statistical Analysis with ROOT ›
- Modern ROOT with RDataFrame ›
- ROOT and Python ›
- Advanced TTree Techniques ›
- ROOT for Particle and Nuclear Physics ›
- Debugging and Common ROOT Problems ›
- Writing Better ROOT Analysis Code ›
- Final Project ›
- Appendices ›
ROOT for Particle and Nuclear Physics
Views: 15
Where to Move
Move chapter:
- β° Introduction to ROOT
- β° What Is ROOT?
- β° Installing ROOT
- β° Starting ROOT
- β° Your First ROOT Session
-
- β° C++ Basics for ROOT
- β° Why ROOT Uses C++
- β° Variables and Data Types
- β° Operators
- β° Conditional Statements
- β° Loops
- β° Functions
- β° Arrays and Vectors
-
- β° ROOT Macros
- β° What Is a ROOT Macro?
- β° Running ROOT Macros
- β° Functions Inside ROOT Macros
- β° Compiling ROOT Macros
- β° Organizing a ROOT Project
-
- β° ROOT Objects and the ROOT Object Model
- β° Introduction to ROOT Classes
- β° Object Names and Titles
- β° ROOT Collections
- β° Inspecting ROOT Objects
-
- β° Histograms
- β° Introduction to Histograms
- β° Creating a 1D Histogram
- β° Filling Histograms
- β° Drawing Histograms
- β° Histogram Properties
- β° Accessing Histogram Bins
- β° Histogram Errors
- β° Normalizing Histograms
- β° Combining Histograms
-
- β° Two-Dimensional Histograms
- β° Creating 2D Histograms
- β° Filling 2D Histograms
- β° Drawing 2D Histograms
- β° Projections
- β° Profiles
-
- β° Graphs
- β° Introduction to TGraph
- β° Creating a TGraph
- β° Graph Styling
- β° TGraphErrors
- β° TGraphAsymmErrors
- β° MultiGraph
-
- β° Canvases and Plotting
- β° TCanvas
- β° Dividing a Canvas
- β° Drawing Multiple Objects
- β° Legends
- β° Text and Annotations
- β° Logarithmic Axes
- β° Saving Plots
-
- β° Styling ROOT Plots
- β° ROOT Plot Styles
- β° Axis Configuration
- β° Line Styles
- β° Marker Styles
- β° Publication-Quality Figures
-
- β° Mathematical Functions
- β° Introduction to TF1
- β° Built-in Functions
- β° Custom Functions
- β° Evaluating Functions
- β° Function Integrals
-
- β° Curve Fitting
- β° Introduction to Fitting
- β° Gaussian Fits
- β° Polynomial Fits
- β° Custom Fit Functions
- β° Fit Parameters
- β° Goodness of Fit
- β° Fit Residuals
- β° Fitting Graphs
-
- β° ROOT Files
- β° Introduction to ROOT Files
- β° Creating ROOT Files
- β° Writing Objects
- β° Reading ROOT Files
- β° Exploring ROOT Files
- β° Directories Inside ROOT Files
-
- β° TTrees
- β° Introduction to TTrees
- β° Creating a TTree
- β° Filling a TTree
- β° Writing a TTree to a File
- β° Reading a TTree
- β° Inspecting TTrees
- β° Drawing Data from TTrees
- β° Applying Selection Cuts
- β° Branch Addresses
-
- β° Event-Based Data Analysis
- β° Understanding Event Data
- β° Event Loops
- β° Event Selection
- β° Derived Quantities
- β° Analysis Workflow
-
- β° Working with Real Experimental Data
- β° Importing Text Data
- β° Converting Data to ROOT
- β° Data Cleaning
- β° Data Calibration
- β° Signal and Background
-
- β° Random Numbers and Simulations
- β° Random Number Generation
- β° Common Distributions
- β° Simple Monte Carlo Simulation
- β° Detector Resolution Simulation
- β° Efficiency Simulation
-
- β° Statistical Analysis with ROOT
- β° Basic Statistics
- β° Probability Distributions
- β° Statistical Uncertainties
- β° Chi-Square Tests
- β° Confidence Intervals
-
- β° Modern ROOT with RDataFrame
- β° Introduction to RDataFrame
- β° Loading Data
- β° Filtering Data
- β° Defining New Columns
- β° Creating Histograms
- β° Statistical Operations
- β° Saving Results
- β° Multithreading
-
- β° ROOT and Python
- β° Introduction to PyROOT
- β° ROOT Objects in Python
- β° Reading ROOT Files with Python
- β° PyROOT and NumPy
- β° PyROOT and Matplotlib
- β° Choosing Between C++ and Python
-
- β° Advanced TTree Techniques
- β° Trees with Multiple Branches
- β° Storing std::vector Objects
- β° TChain
- β° Friends
- β° Efficient TTree Analysis
-
- β° ROOT for Particle and Nuclear Physics
- β° Four-Vectors
- β° Particle Kinematics
- β° Invariant Mass
- β° Angular Distributions
- β° Detector Spectra
-
- β° Debugging and Common ROOT Problems
- β° ROOT Object Ownership
- β° Null Pointers
- β° Segmentation Faults
- β° Missing Histograms
- β° ROOT File Problems
- β° TTree Branch Problems
- β° Histogram Range Problems
- β° Fit Failures
- β° Debugging ROOT Macros
-
- β° Writing Better ROOT Analysis Code
- β° Separating Analysis and Plotting
- β° Using Functions
- β° Using Header Files
- β° Naming Conventions
- β° Avoiding Hard-Coded Values
- β° Configuration Parameters
- β° Reproducible Analysis
- β° Version Control with Git
-
- β° Final Project
- β° Project Overview
- β° Analyze a complete scientific dataset using ROOT.
- β° Import the Data
- β° Explore the Dataset
- β° Apply Data Selection
- β° Create Histograms
- β° Fit the Data
- β° Calculate Physical Quantities
- β° Estimate Statistical Uncertainties
- β° Create Publication-Quality Figures
- β° Save the Analysis Results
- β° Write a Short Analysis Report
-
- β° Appendices
- β° A. ROOT Command Cheat Sheet
- β° B. ROOT Histogram Classes
- β° C. ROOT Graph Classes
- β° D. Common TTree Commands
- β° E. Common Drawing Options
- β° F. Common Fit Functions
- β° G. ROOT C++ Cheat Sheet
- β° H. PyROOT Cheat Sheet
- β° I. Common ROOT Errors and Solutions
- β° J. Recommended ROOT Analysis Workflow
-
KAHIBARO