Batch SpecTcl (5.2 and later)

Ron Fox


Table of Contents
1. Introduction
2. Serial batch SpectTcl
2.1. Incorporating batch SpecTcl in to a Tcl interpreter
2.2. Commands supported by batch SpecTcl
2.3. How Batch SpeTcl analyzes data
2.4. Creating a loadable package for the event analysis pipeline
2.5. A simple analysis script.
3. MPITcl - an enhanced Tcl interpreter
3.1. MPI Concepts
3.2. How MPI Concepts map to MPITcl
3.3. The mpi::mpi command ensemble.
3.4. Running MPITcl (NSCL/FRIB specific)
4. MPISpecTcl - Massively parallel SpecTcl.
4.1. The mpispectcl package
4.2. Parallel models for SpecTcl
4.3. Serial reader parallel worker example.
A. Reference (man) pages
A.1. Batch SpecTcl
analysissink -- Establish a data distributor to the anlaysis pipeline
analyze -- Begin analysis.
filesource -- Establish a data getter from a file.
CDataGetter -- Base class for data getters.
CDataDistributor -- Data Distribution base class.
A.2. MPITcl
mpi::mpi -- Command ensemble for MPI under tcl.
MPITcl binary data. -- Receiving binary data in compiled MPITcl extensions
A.3. MPI SpecTcl
mpisource -- Data Getter from MPI
mpisink -- Send data to MPI getters.
List of Examples
2-1. Incorporating batch SpecTcl: Specifying the TCL Library on the command line:
2-2. Incorporating batch SpecTcl: adding the Tcl library to the auto_path
2-3. Using the filesource command
2-4. Analyzing a run
2-5. Obtaining the batch SpecTcl skeleton
2-6. Including event processor headers
2-7. Registering your event processing pipeline
2-8. Setting the package name and version
2-9. Initialization entry point
2-10. Batch SpecTcl Makefile
2-11. Smaple batch SpecTcl script.
2-12. Reading a file with several spectra:
2-13. Reading several multi segmented runs:
2-14. Ordering run segments by segment number
3-1. Running MPITcl
3-2. Toy MPITcl application
4-1. Package and definition loads
4-2. Setting up sources and distirbutors
4-3. Analyze the file in parallel:
4-4. Getting and saving the results.
4-5. Initiating spectrum data collection and waiting for all the workers to report.
4-6. Receiving data from a worker:
4-7. Exiting parallel SpecTcl
A-1. Terminating an MPITcl application