Contents
1. Introduction to jHepWork
1.1 Introduction
1.2 Main differences with other data-analysis tools
1.2.1 Main differences with JAS
1.2.2 Main differences with the ROOT package
1.2.3 How fast it is?
1.3 Installation
1.4 The jHepWork IDE
1.4.1 Running an Jython script
1.4.2 Running a BeanShell script
1.4.3 jHepWork Code Assist
1.5 Quick start
1.5.1 jHPlot examples
1.6 Plotting ROOT or AIDA data using jHepWork IDE
1.6.1 Jython scripting with jHepWork
1.7 Jython and Bean shell consoles
1.8 Working with command-line scripts
1.9 Data structures supported by jHepWork
1.10 Math Operations
2. Working with a jHepWork project
2.1 Pure Jython project
2.2 Pure Java project
2.3 Mixing Jython with Java
3. Getting started with jHepWork Java classes
3.1 HPlot class. The main canvas
3.2 Working with the HPlot canvas
3.2.1 Saving plots in XML files
3.2.2 Cleaning canvas from graphics
3.2.3 Axes
3.3 SHPlot class. HPlot canvas as a singleton
3.4 Plotting functions in 1D
3.4.1 How to use JAIDA library
3.4.2 Plotting 1D functions on the same plot
3.4.3 Plotting 1D functions in different plot regions
3.4.4 Saving a plot in an external file
3.4.5 View an image. IView class.
3.4.6 Analyze or edit an image. IEditor class.
3.5 Histograms in 1D. H1D class
3.5.1 H1D operations
3.5.2 Main H1D methods
3.5.3 Reading ROOT histograms
3.6 Profile histograms
3.7 Histogram input/output
3.8 Root and Aida file browser
3.9 P0D class
3.9.1 P0D input and output
3.9.2 P0D operations
3.10 PND class
3.11 P1D class
3.11.1 I/O for P1D
3.11.2 P1D methods for plotting
3.11.3 Reading and writing P1D files
3.11.4 Options to display P1D errors
3.11.5 Contour plots for P1D data holder
3.11.6 P1D defined by an external file
3.11.7 P1D defined by a H1D histogram
3.11.8 Output from P1D
3.11.9 P1D operations
3.11.10 Evaluation of systematical uncertainties
3.12 How to access JAIDA factories
3.13 Symbols
3.14 Text labels
3.14.1 Interactive text labels. HLabel class
3.14.2 Simple text labels using JAVA 2D
3.15 Interactive text labels with keys. HKey class
3.16 Geometrical primitives
3.17 SPlot class. A simple canvas
3.18 Plotting data in 3D. HPlot3D class
3.18.1 Plotting data points in 3D. P2D class
3.18.2 Methods of the HPlot3D
3.18.3 SHPlot3D class
3.18.4 Plotting extended objects in 3D. P3D class
3.18.5 Plotting 2D functions in interactive 3D frame
3.18.6 Plotting 2D histograms in 3D
3.19 Histogram in 3D
3.20 Plotting data and drawing Feynman diagrams
3.21 JaPlot class
3.21.1 Drawing Feynman diagrams
3.21.2 SJaPlot class
3.22 3D Geometry package. HView3D class.
3.23 Writing histograms to XML files. HBook class.
3.24 Reading histograms from external programs
3.25 Input and Output.
3.26 Data output to tables and spreadsheets
3.26.1 HTable class
3.26.2 Spreadsheet. The SPsheet class
3.27 HGraph class. Show interconnected objects
3.28 HChart class. Making various charts
3.29 Extracting data points from a figure
3.30 Data clustering
3.31 Fitting data. The HFit and HFitter classes
3.31.1 Preparing a fit
3.31.2 Fitting data using FreeHEP libraries
3.31.3 HFit class
3.32 Linear regression.
3.32.1 Linear regression
3.33 Neural Networks
3.33.1 Joone-based neural net
3.33.2 Bayesian networks
3.34 Cellular automata
3.35 External jar libraries and Jython macros
3.36 How to write jHepWork programs
4. Jython scripting with jHepWork
4.1 Jython operations with data holders
5. License and third-party packages
5.1 jHepWork License
5.2 Contributions and third-party packages
Bibliography
Index