Commit 6050dab8 authored by Simon Spannagel's avatar Simon Spannagel
Browse files

READMEs: change level of section headers for manual

parent ecdcdc9d
## ATLASpixEventLoader
# ATLASpixEventLoader
**Maintainer**: Simon Spannagel (<simon.spannagel@cern.ch>)
**Status**: Outdated
#### Description
### Description
This module reads in data for the ATLASpix device from an input file.
The module opens and reads one data file in the specified input directory with the ending `.dat`. For each hit it, stores the detectorID, row, column, and ToT.
Outdated as data format and decoding for this device has since changed.
#### Parameters
### Parameters
* `inputDirectory`: Path to the directory containing the `.dat` file. This path should lead to the directory above the ALTASpix directory, as this string is added to the input directory in the module.
* `DUT`: Name of the DUT plane.
#### Plots produced
### Plots produced
* 2D Hit map
* 1D Pixel ToT histogram
* 1D Pixels per frame histogram
#### Usage
### Usage
```toml
[ATLASpixEventLoader]
DUT = "W0005_H03"
......
## Alignment
# Alignment
**Maintainer**: Daniel Hynds (<daniel.hynds@cern.ch>), Simon Spannagel (<simon.spannagel@cern.ch>)
**Status**: Functional
#### Description
### Description
This module performs translational and rotational telescope plane alignment. The alignment is performed with respect to the reference plane set in the configuration file.
This module uses the tracks produced by the `BasicTracking` module to align the telescope planes. If fewer than half of the tracks have associated clusters, a warning is produced on terminal.
There are two methods available for alignment:
##### 1) Minimising the track chi^2
#### 1) Minimising the track chi^2
For each telescope detector except the reference plane, this method moves the detector, refits all of the tracks, and minimises the chi^2 of these new tracks. The parameters `detectorToAlign` and `DUT` are not used in this method as it automatically iterates through all telescope planes except the DUT.
##### 2) Minimising the track (unbiased) residuals
#### 2) Minimising the track (unbiased) residuals
For the detector specified by the `detectorToAlign` parameter, this method moves the detector, refits all the tracks, and minimises the unbiased residuals calculated from the track intercepts with the plane.
#### Parameters
### Parameters
* `number_of_tracks`: Number of tracks used in the alignment method chosen. Default value is `20000`.
* `iterations`: Number of times the chosen alignment method is to be iterated. Default value is `3`.
* `alignmentMethod`: Determines the alignment method used. To use the track chi^2 minimisation `alignmentMethod = 0`; to use the track residual minimisation `alignmentMethod = 1`.
......@@ -28,7 +28,7 @@ For the detector specified by the `detectorToAlign` parameter, this method moves
* `max_associated_clusters`: Maximum number of associated clusters per track allowed when `prune_tracks=True` for the track to be used in the alignment. Default value is `1`.
* `max_track_chi2ndof`: Maximum track chi^2 value allowed when `prune_tracks=True` for the track to be used in the alignment. Default value is `10.0`.
#### Plots produced
### Plots produced
For each detector the following plots are produced when using `alignmentMethod = 0`:
* Translational shift along X-axis vs. iteration number
* Translational shift along Y-axis vs. iteration number
......@@ -46,7 +46,7 @@ For the `detectorToAlign` the following plots are produced when using `alignment
* Profile plot of residual in Y vs. Y position
#### Usage
### Usage
```toml
[Alignment]
alignmentMethod = 0
......
## BasicTracking
# BasicTracking
**Maintainer**: Simon Spannagel (<simon.spannagel@cern.ch>)
**Status**: Functional
#### Description
### Description
This module performs a basic tracking method.
Clusters from the first plane in Z (named the seed plane) are related to clusters close in time on the other detector planes using straight line tracks. The DUT plane can be excluded from the track finding and DUT clusters potentially associated with the track stored.
#### Parameters
### Parameters
* `timingCut`: Maximum time difference allowed between clusters for association. Default value is `200ns`.
* `spatialCut`: Maximum spatial distance in the XY plane allowed between clusters for association for the telescope planes. Default value is `0.2mm`.
* `spatialCutDUT`: Maximum spatial distance in the XY plane allowed between clusters for association for the DUT. Default value is `0.2mm`.
......@@ -16,7 +16,7 @@ Clusters from the first plane in Z (named the seed plane) are related to cluster
* `excludeDUT`: Boolean to chose if the DUT plane is included in the track finding. In either case, the DUT clusters possibly associated with the track are saved. Default value is `true`.
* `DUT`: Name of the DUT plane.
#### Plots produced
### Plots produced
* Track chi^2 histogram
* Track chi^2 /degrees of freedom histogram
* Clusters per track histogram
......@@ -34,7 +34,7 @@ For each detector the following plots are produced:
* Residual in X for clusters with a width in X of 3
* Residual in Y for clusters with a width in X of 3
#### Usage
### Usage
```toml
[BasicTracking]
minHitsOnTrack = 4
......
## CLICpix2Analysis
# CLICpix2Analysis
**Maintainer**: Simon Spannagel (<simon.spannagel@cern.ch>)
**Status**: Work in progress
#### Description
### Description
Analysis module for CLICpix2 prototypes. This module is still work in progress, changes to functionality and behaviour are to be expected.
#### Parameters
### Parameters
* `timeCutFrameEdge`: Parameter to discard telescope tracks at the frame edges (start and end of the current CLICpix2 frame). Defaults to `20ns`.
* `spatialCut`: Spatial cut for associating a track with a DUT cluster, defaults to `50um`.
* `chi2ndofCut`: Acceptance criterion for telescope tracks, defaults to a value of `3`.
#### Plots produced
### Plots produced
* 2D Map of associated cluster positions
* 2D Map of cluster sizes for associated clusters
* 2D Map of cluster ToT values from associated clusters
......@@ -28,7 +28,7 @@ Analysis module for CLICpix2 prototypes. This module is still work in progress,
* 2D Map of track positions associated to a cluster
* 2D Map of track positions not associated to a cluster
#### Usage
### Usage
```toml
[CLICpix2Analysis]
timeCutFrameEdge = 50ns
......
## CLICpixEventLoader
# CLICpixEventLoader
**Maintainer**: Daniel Hynds (<daniel.hynds@cern.ch>)
**Status**: Functional
#### Description
### Description
This module reads in data for a CLICpix device from an input file.
The module opens and reads one data file in the specified input directory with the ending `.dat`. For each hit it stores the detectorID, row, column, and ToT. The shutter rise and fall time information are used to set the current time and event length.
#### Parameters
### Parameters
* `inputDirectory`: Path to the directory containing the `.dat` file. This path should lead to the directory above the CLICpix directory, as this string is added onto the input directory in the module.
* `DUT`: Name of the DUT plane.
#### Plots produced
### Plots produced
* 2D Hit map
* 1D Pixel ToT histogram
* 1D Pixels per frame histogram
* 1D Shutter length histogram
#### Usage
### Usage
```toml
[CLICpixEventLoader]
DUT = "W0005_H03"
......
## CLICpix2Correlator
# CLICpix2Correlator
**Maintainer**: Daniel Hynds (<daniel.hynds@cern.ch>)
**Status**: Functional
#### Description
### Description
This module makes plots of the correlations in X and Y for angles between 0 and 2pi in steps of 0.6 radians.
#### Parameters
### Parameters
* `DUT`: Name of the DUT plane.
#### Plots produced
* For each angle between 0 and 2pi in steps of 0.6 radians the following plots are produced:
* Correlation (track difference) in X
* Correlation (track difference) in Y
### Plots produced
For each angle between 0 and 2pi in steps of 0.6 radians the following plots are produced:
* Correlation (track difference) in X
* Correlation (track difference) in Y
#### Usage
### Usage
```toml
[CLICpix2Correlator]
DUT = "W0005_H03"
......
## CLICpix2EventLoader
# CLICpix2EventLoader
**Maintainer**: Daniel Hynds (<daniel.hynds@cern.ch>), Simon Spannagel (<simon.spannagel@cern.ch>), Morag Williams (<morag.williams@cern.ch>)
**Status**: Functional
#### Description
### Description
This module reads in data for a CLICpix2 device from an input file. It defines the reconstruction time structure as being the CLICpix2 frame by setting the `currentTime` to the begin of the frame and the `eventLength` to the length of the readout frame. These times are stored on the persistent clipboard storage and can be picked up by other modules to allow synchronization.
The module opens and reads one data file in the specified input directory.
The input directory is searched for a data file with the file extension `.raw` and a pixel matrix configuration file required for decoding with the file extension `.cfg` and a name starting with `matrix`.
The data is decoded using the CLICpix2 data decoder shipped with the Peary DAQ framework. For each pixel hit, the detectorID, the pixel's column and row address as well as ToT and ToA values are stored, depending on their availability from data. The shutter rise and fall time information are used to set the current time and event length as described above.
#### Dependencies
### Dependencies
This module requires an installation of [Peary](https://gitlab.cern.ch/Caribou/peary) with its CLICPix2 component built. This is used for on-the-fly decoding of raw data.
#### Parameters
### Parameters
* `inputDirectory`: Path to the directory containing the `.csv` file. This path should lead to the directory above the CLICpix directory, as this string is added onto the input directory in the module.
* `DUT`: Name of the DUT plane.
#### Plots produced
### Plots produced
* 2D Hit map
* 2D maps of masked pixels, encoded with online masked (value 1) and offline masked (value 2)
* 1D Pixel ToT histogram (if value is available)
......@@ -26,7 +26,7 @@ This module requires an installation of [Peary](https://gitlab.cern.ch/Caribou/p
* 2D map of profiles for ToT values
* 1D Pixels per frame histogram
#### Usage
### Usage
```toml
[CLICpix2EventLoader]
DUT = "W0005_H03"
......
## CLICpixAnalysis
# CLICpixAnalysis
**Maintainer**: Daniel Hynds (<daniel.hynds@cern.ch>)
**Status**: Functional
#### Description
### Description
This module associates CLICpix2 DUT clusters to tracks using a spatial cut (device type not checked). A significant number of analysis plots are produced.
#### Parameters
### Parameters
* `associationCut`: Maximum distance between a track and cluster for them to be associated. Units of mm. Default value is `0.05` (50um).
* `proximityCut`: Maximum distance apart two tracks are for them to be 'close' to each other. If at the CLICpix plane there are two tracks close to each other, the DUT cluster is not associated with either track. Units of mm. Default value is `0.0005` (0.5um).
* `timepix3Telescope`: Boolean to set whether the Timepix3 telescope is being used. Default value is `false`.
* `DUT`: Name of the DUT plane.
#### Plots produced
### Plots produced
For the DUT the following plots are produced:
* 2D hitmap
* Column hits histogram
......@@ -98,7 +98,7 @@ For the DUT the following plots are produced:
* 2D Associated cluster size map
#### Usage
### Usage
```toml
[CLICpixAnalysis]
associationCut = 0.005
......
## DUTAnalysis
# DUTAnalysis
**Maintainer**: Simon Spannagel (<simon.spannagel@cern.ch>) ; Daniel Hynds (<daniel.hynds@cern.ch>)
**Status**: Functional
#### Description
### Description
This module associates DUT clusters to telescope tracks.
Using the appropriate parameter settings in the configuration file, plots using power pulsing and/or Monte-Carlo truth information can be produced.
#### Parameters
### Parameters
* `DUT`: Name of the DUT plane.
* `useMCtruth`: Boolean to set if Monte-Carlo truth information is available and should be used. Default value is `false`.
* `digitalPowerPulsing`: Boolean to set if power pulsing was used and that this information should be used. Default value is `false`.
......@@ -15,7 +15,7 @@ Using the appropriate parameter settings in the configuration file, plots using
* `spatialCut`: maximum distance between cluster and track for the cluster to be taken into account. Default value is `200um`.
* `chi2ndofCut`: maximum chi^2 ndof value allowed for tracks to be used; tracks with values above this will be excluded. Default value is `3.0`.
#### Plots produced
### Plots produced
* Tracks vs time
* Associated tracks vs time
* Residual in X
......@@ -34,7 +34,7 @@ Using the appropriate parameter settings in the configuration file, plots using
* Tracks vs time since power on, only produced in `digitalPowerPulsing = true`
* Associated tracks vs time since power on, only produced in `digitalPowerPulsing = true`
#### Usage
### Usage
```toml
[DUTAnalysis]
digitalPowerPusling = false
......
## DataDump
# DataDump
**Maintainer**: Daniel Hynds (<daniel.hynds@cern.ch>)
**Status**: Functional
#### Description
### Description
This module reads in raw data files with extension `-1.dat`, and outputs the pixel data in hexidecimal in an output file called `outputHexDump.dat`.
#### Parameters
### Parameters
* `DeviceToDumpData`: The name of the device data is to be read from.
* `inputDirectory`: Path to the directory above the data directory named `DeviceToDumpData`.
#### Plots produced
### Plots produced
No plots are produced.
#### Usage
### Usage
```toml
[DataDump]
DeviceToDumpData = "W0005_H03"
......
## DataOutput
# DataOutput
**Maintainer**: Morag Williams (<morag.williams@cern.ch>)
**Status**: Functional
#### Description
### Description
This module writes out data from a Timepix3 DUT for timing analysis. The outputted ROOT TTree contains data in branches. This is intended for analysis of the timing capabilities of Timepix3 devices of different thicknesses.
For each track associated DUT `cluster` object the following information is written out:
......@@ -20,15 +20,15 @@ For each `pixel` object in an associated `cluster` the follwing information is w
For each `track` with associated DUT `clusters` the following information is written out:
* Intercept with the DUT (3D position vector)
#### Parameters
### Parameters
* `DUT`: Name of the DUT plane.
* `fileName`: Name of the outputted ROOT file. Default value is `outputTuples`.
* `treeName`: Name of the tree inside the outputted ROOT file. Default value is `tree`.
#### Plots produced
### Plots produced
No plots are produced.
#### Usage
### Usage
```toml
[DataOutput]
DUT = "W0005_H03"
......
## EUDAQEventLoader
# EUDAQEventLoader
**Maintainer**: Simon Spannagel (<simon.spannagel@cern.ch>)
**Status**: Functional
#### Description
### Description
This module allows data recorded by EUDAQ and stored in the EUDAQ-native raw format to be read into Corryvreckan. The EUDAQ decoder plugins are used to transform the data into the `StandardPlane` event type before storing the individual `Pixel` objects on the Corryvreckan clipboard.
The detector IDs are taken from the plane name and IDs, two possible naming options for Corryvreckan are available: When setting `long_detector_id = true`, the name of the sensor plane and the ID are used in the form `<name>_<ID>`, while only the ID is used otherwise as `plane<ID>`. Only detectors known to Corryvreckan are decoded and stored, data from other detectors are ignored.
#### Requirements
### Requirements
This module requires an installation of [EUDAQ 1.x](https://github.com/eudaq/eudaq). The installation path should be set as environment variable via
```bash
export EUDAQPATH=/path/to/eudaq
```
for CMake to find the library link against and headers to include.
#### Parameters
### Parameters
* `file_name`: File name of the EUDAQ raw data file. This parameter is mandatory.
* `long_detector_id`: Boolean switch to configure using the long or short detector ID in Corryvreckan, defaults to `true`.
#### Plots produced
No plots are produced.
#### Usage
### Usage
```toml
[EUDAQEventLoader]
file_name = "rawdata/eudaq/run020808.raw"
......
## EtaCalculation
# EtaCalculation
**Maintainer**: Daniel Hynds (<daniel.hynds@cern.ch>), Simon Spannagel (<simon.spannagel@cern.ch>)
**Status**: Under development
#### Description
### Description
This module calculates the $`\eta`$-distributions for two-pixel clusters of any detector in analysis by comparing the in-pixel track position and the calculated cluster centre position. Histograms for all available detectors are filled for both X and Y coordinate.
At the end of the run, fits to the recorded profiles are performed using the provided formulas. A printout of the resulting fit parameters is provided in the format read by the EtaCorrection module for convenience.
In order to measure the correct $`\eta`$-distribution, no additional $`\eta`$-correction should be applied during this calculation, i.e. by using the EtaCorrection module.
#### Parameters
### Parameters
* `chi2ndofCut`: Track quality cut on its Chi2 over numbers of degrees of freedom. Default value is `100`.
* `EtaFormulaX` / `EtaFormulaY`: Formula to for to the recorded $`\eta`$-distributions, defaults to a polynomial of fifth order, i.e. `[0] + [1]*x + [2]*x^2 + [3]*x^3 + [4]*x^4 + [5]*x^5`.
#### Plots produced
### Plots produced
For each detector the following plots are produced:
* 2D histogram of the calculated $`\eta`$-distribution, for X and Y respectively
* Profile plot of the calculated $`\eta`$-distribution, for X and Y respectively
#### Usage
### Usage
```toml
[EtaCalculation]
chi2ndofCut = 100
......
## EtaCorrection
# EtaCorrection
**Maintainer**: Daniel Hynds (<daniel.hynds@cern.ch>), Simon Spannagel (<simon.spannagel@cern.ch>)
**Status**: Under development
#### Description
### Description
This module applies previously determined $`\eta`$-corrections to cluster positions of any detector. Corrections can be applied to any cluster read from the clipboard. The correction function as well as the parameters for each of the detectors can be given separately for X and Y via the configuration file.
This module does not calculate the $`\eta`$ distribution.
#### Parameters
### Parameters
* `EtaFormulaX` / `EtaFormulaY`: The formula for the $`\eta`$ correction to be applied for the X an Y coordinate, respectively. It defaults to a polynomial of fifth ordern, i.e. `[0] + [1]*x + [2]*x^2 + [3]*x^3 + [4]*x^4 + [5]*x^5`.
* `EtaConstantsX_<detector>` / `EtaConstantsY_<detector>`: Vector of correction factors, representing the parameters of the above correction function, in X and Y coordinates, respectively. Defaults to an empty vector, i.e. by default no correction is applied. The `<detector>` part of the variable has to be replaced with the respective unique name of the detector given in the setup file.
#### Plots produced
### Plots produced
Currently, no plots are produced. The result of the $`\eta`$-correction is best observed in residual distributions of the respective detector.
#### Usage
### Usage
```toml
[EtaCorrection]
EtaFormulaX = [0] + [1]*x + [2]*x^2 + [3]*x^3 + [4]*x^4 + [5]*x^5
......
## FileReader
# FileReader
**Maintainer**: Simon Spannagel (<simon.spannagel@cern.ch>)
**Status**: Functional
#### Description
### Description
This module reads in an input file containing trees with data previously written out by the `FileWriter`. The read in objects are stored on the clipboard. It reads in `pixel`, `cluster`, `track`, and/or `MCparticle` objects.
#### Parameters
### Parameters
* `onlyDUT`: Boolean to decide if data is read in from only the DUT. Default value is `false`.
* `readPixels`: Boolean to choose if pixel objects are to be read in. Default value is `true`.
* `readClusters`: Boolean to choose if cluster objects are to be read in. Default value is `false`.
......@@ -15,10 +15,7 @@ This module reads in an input file containing trees with data previously written
* `timeWindow`: Data with time lower than this value will be read in. Default value is `1s`.
* `DUT`: Name of the DUT plane.
#### Plots produced
No plots are produced.
#### Usage
### Usage
```toml
[FileReader]
onlyDUT = true
......
## FileWriter
# FileWriter
**Maintainer**: Simon Spannagel (<simon.spannagel@cern.ch>)
**Status**: Functional
#### Description
### Description
This module writes an output file and fills it with trees containing the requested data objects. `Pixel`, `cluster`, and/or `track` objects can be written into the trees.
#### Parameters
### Parameters
* `DUT`: Name of the DUT plane.
* `onlyDUT`: Boolean to decide if only the DUT data is to be written into the outputfile, or if all planes are to be. Default value is `true`.
* `writePixels`: Boolean to choose if pixel objects are to be written out. Default value is `true`.
......@@ -13,10 +13,7 @@ This module writes an output file and fills it with trees containing the request
* `writeTracks`: Boolean to choose if track objects are to be written out. Default value is `true`.
* `fileName`: Name of the output file. Default value is `outputTuples.root`.
#### Plots produced
No plots are produced.
#### Usage
### Usage
```toml
[FileWriter]
DUT = "W000_H03"
......
## GenericAlgorithm
# GenericAlgorithm
**Maintainer**: Daniel Hynds (<daniel.hynds@cern.ch>)
**Status**: Functional
#### Description
### Description
This module takes data from a Timepix3 device from the clipboard and plots the pixel hit positions. This is to be a template to easy create other modules for Corryvreckan.
#### Parameters
### Parameters
No parameters are used from the configuration file.
#### Plots produced
### Plots produced
* Histogram of event numbers
For each detector the following plots are produced:
* 2D histogram of pixel hit positions
#### Usage
### Usage
```toml
[GenericAlgorithm]
......
## ImproveReferenceTimestamp
# ImproveReferenceTimestamp
**Maintainer**: Florian Pitters (<florian.pitters@cern.ch>)
**Status**: Work in progress
#### Description
### Description
Replaces the existing reference timestamp (earliest hit on reference plane) by either the trigger timestamp (method 0) or the average track timestamp (method 1). For method 0 to work, a trigger timestamp has to be saved as SPIDR signal during data taking.
#### Parameters
### Parameters
* `improvementMethod`: Determines which method to use. Trigger timestamp is 0, average track timestamp is 1. Default value is `1`.
* `signalSource`: Determines which detector plane carries the trigger signals. Only relevant for method 0. Default value is `"W0013_G02"`.
* `triggerLatency`: Adds a latency to the trigger timestamp and shifts time histogrammes back to zero. Default value is `0`.
#### Plots produced
No plots are produced.
#### Usage
### Usage
```toml
[ImproveReferenceTimestamp]
improvementMethod = 0
......
## MaskCreator
# MaskCreator
**Maintainer**: Simon Spannagel (<simon.spannagel@cern.ch>)
**Status**: Work in progress
#### Description
### Description
This module reads in `pixel` objects for each device from the clipboard, and masks pixels considered noisy.
Currently, two methods are available. The `localdensity` noise estimation method is taken from the [Proteus framework](https://gitlab.cern.ch/unige-fei4tel/proteus) developed by Université de Genève.
......@@ -11,7 +11,7 @@ The second method, `frequency`, is a simple cut on a global pixel firing frequen
The module writes new mask file with all masked pixels for each device. Already existing masks are maintained. No masks are applied as this is done by other modules directly when reading input data.
#### Parameters
### Parameters
* `method`: Select the method to evaluate noisy pixels. Can be either `localdensity` or `frequency`, where the latter is chosen by default.
* `frequency_cut`: Frequency threshold to declare a pixel as noisy, defaults to 50. This means, if a pixel exhibits 50 times more hits than the average pixel on the sensor, it is considered noisy and is masked. Only used in `frequency` mode.
* `binsOccupancy`: Number of bins for occupancy distribution histograms, defaults to 128.
......@@ -19,11 +19,11 @@ The module writes new mask file with all masked pixels for each device. Already
* `sigma_above_avg_max`: Cut for noisy pixels, sigma above average, defaults to `5`. Only used in `localdensity` mode.
* `rate_max`: Maximum rate, defaults to `1`. Only used in `localdensity` mode.
#### Plots produced
### Plots produced
For each detector the following plots are produced:
* Map of masked pixels
#### Usage
### Usage
```toml
[MaskCreator]
frequency_cut = 10
......
## Millepede
# Millepede
**Maintainer**: Simon Spannagel (<simon.spannagel@cern.ch>)
**Status**: Work in progress
#### Description
### Description
This implementation of the Millepede module has been taken from the [Kepler framework](https://gitlab.cern.ch/lhcb/Kepler) used for test beam data analysis within the LHCb collaboration. It has been written by Christoph Hombach and has seen contributions from Tim Evans and Heinrich Schindler. This version is only slightly adapted to the Corryvreckan framework.
The Millepede algorthm allows a simultaneous fit of both the tracks and the alignment constants.
The modules stops if the convergence, i.e. the absolute sum of all corrections over the total number of parameters, is smaller than the configured value.
#### Parameters
### Parameters
* `number_of_tracks`: Number of tracks used in the alignment method chosen. Default value is `20000`.
* `iterations`: Number of times the chosen alignment method is to be iterated. Default value is `3`.
* `dofs`: Degrees of freedom to be aligned. This parameter should be given as vector of six boolean values for the parameters "Translation X", "Translation Y", "Translation Z", "Rotation X", "Rotation Y" and "Rotation Z". The default setting is an alignment of all parameters except for "Translation Z", i.e. `dofs = true, true, false, true, true, true`.
......@@ -19,10 +19,7 @@ The modules stops if the convergence, i.e. the absolute sum of all corrections o
* `sigmas`: Uncertainties for each of the alignment parameters. Defaults to `0.05, 0.05, 0.5, 0.005, 0.005, 0.005`.
* `convergence`: Convergence value at which the module stops iterating. Default value is `10e-5`.
#### Plots produced
No plots are produced.
#### Usage
### Usage
```toml
[Millepede]
iterations = 10
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment