<commit_before>## msp-boxes

This package implements the functions neeeded to order a matrix and identify it's "communities" using a combination of simulated annealing and BIC (Sales-Pardo et al. 2007) in C++.

<NAME>, <NAME>, <NAME>, and <NAME> (2007) "Extracting the hierarchical organization of complex systems."
*PNAS* 104(39): 15224-15229 doi:[10.1073/pnas.0703740104][doi].

## Build instructions
After cloning the repository, you can build the executables by:

        sudo apt-get install autoconf libtool
	autoreconf --install
	./configure
	make

This produces:

* `src/ordering/ordering-kernal` what does this do?
* `src/ordering/ordering-exhaustive` what does this do?
* `src/boxes/main_boxes_greedy_nbox_ic_wdiag_kernel` what does this do?

You can view the output of any of these scripts with the `--help` flag.

[doi]: http://dx.doi.org/10.1073/pnas.0703740104
<commit_msg>updated README with what each executible does<commit_after>## msp-boxes

This package implements the functions needed to order a matrix and identify
it's "communities" using a combination of simulated annealing and BIC
(Sales-Pardo et al. 2007) in C++. As input, it takes a non-negative adjacency
or similarity matrix. Full details of the algorithm are available at:

<NAME>, <NAME>, <NAME>, and <NAME> (2007) "Extracting the hierarchical organization of complex systems."
*PNAS* 104(39): 15224-15229 doi:[10.1073/pnas.0703740104][doi].

## Build instructions
After cloning the repository, you can build the executables by running:

    sudo apt-get install autoconf libtool
    autoreconf --install
    ./configure
    make

This produces:

* `src/ordering/ordering-kernal`.This is the main script you should use. It
  uses simulated annealing to identify the ordering of rows/columns that
  optimizes the BIC of the box model.

* `src/ordering/ordering-exhaustive`. This exhaustively searches the ordering
  of rows/columns that optimizes the BIC of the box model.

* `src/boxes/main_boxes_greedy_nbox_ic_wdiag_kernel`. Starting from an initial
  row ordering, this optimizes the row ordering using a steepest decent
  approach. This is effectively a zero temperature quenching of the simulating
  annealing procedure.

You can view the options of any of these scripts with the `--help` flag.

[doi]: http://dx.doi.org/10.1073/pnas.0703740104

{'fraction_non_alphanumeric': 0.08576329331046312, 'fraction_numerical': 0.04716981132075472, 'mean_word_length': 4.438228438228438, 'pattern_counts': {'":': 0, '<': 11, '<?xml version=': 0, '>': 11, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2906785', 'n_tokens_mistral': 799, 'n_tokens_neox': 680, 'n_words': 283}