FSClassifier V. 2.0.0 This is a stable release of the developed TMVA-based BDT classifier. To run the classifier, use the following syntax: python FSClassifier.py FSConfig.ini Here, FSConfig.ini is the config file which indicates the parameters that will be used for the classification. Parameters of the configuration file are the following: Section "MAIN": "OUTPUT_FOLDER" - the path to the directory where the classifier's output will be stored. "SIGNAL_FILE_PATH" - path to the signal file. "BACKGROUND_FILE_PATH" - path to the background file. "GENERATE_OBSERVABLES" - boolean flag for the automatic generation of the kinematic observables. "DO_SEPARATION" - boolean flag for the creation of the list of observables separation metrics "DO_SELECTION" - boolean flag for the selecting the observables that pass the separation metric criterion "DO_CORRELATION" - boolean flag for the selecting the observables that pass the correlation criterion Section "CONSTRUCTION": "FS_LIST" - names of output particles (jet# or boson#) "JET_NUM" - number of jets "BOSON_NUM" - number of bosons "OUT_FILE_NAME_BASE" - base name pattern of the output files Section "SEPARATION": "INPUT_DICT_NAME" - name of the input file with the kinematic variables "USE_MULTIPROC" - boolean flag for the multiprocessing calculations "OUT_FILE_NAME_BASE" - base name pattern of the separation-only output files "IN_METRIC_LIST_NAME" - lasst name of the output files with metric information "METRIC" - kolmogorov or chi2 "METRIC_MIN" - lower limit for the statistical test Section "CORRELATION": "INPUT_DICT_NAME" - name of the input file with the kinematic variables "CORRELATION_MAX" - upper limit for the correlation test "METRIC" - kolmogorov or chi2 "OUT_FILE_NAME_BASE" - base name pattern of the correlation-only output files Signal and background input files must contain four TTrees - vPx, vPy, vPz and vE. Each of these branches must have few values per event, corresponds to the few final state jets. TTrees with the chosen observables will be reprocessed from the base input TTrees. After the reprocessing, four branches from initial files will be transformed into new branches, correspond to chosen observables. Script FSClassifier.py is the main function of this classifier. Script TreeCreator.py perform the TTrees reprocessing. Script ObsDictExample.py contains the example of the kinematic observables that are using during the classification. Script ObsConstruct.py perform the construction of the kinematic observables base on the provided event topology. Script Operators.py defines the operators which will be used for the automatic observables generation. Script CorrelationFilter.py perform the filtering based on the observables correlation. Script SeparationFilter.py perform the filtering based on the observables metric. Script HistTools.py contains additional tools for histogram plotting. Script PlotObservables.py create the observables plots. Please note the python module "mulsiprocess" is required to use multiprocessing calculations.