{"about":{"site":"https://codewithpapers.app","non_affiliation":"Code with Papers and Syntology are not affiliated with, endorsed by, or sponsored by Papers with Code, Meta, or the pwc-archive mirror.","licence":"CC BY-SA 4.0","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","attribution":"https://codewithpapers.app/attribution","modified":"archive material modified by Syntology; see the attribution page"},"url":"/paper/forward-modeling-of-large-scale-structure-an","title":"Forward Modeling of Large-Scale Structure: An open-source approach with Halotools","arxiv_id":"1606.04106","date":"2016-06-13","proceeding":null,"authors":["Andrew Hearin","Duncan Campbell","Erik Tollerud","Peter Behroozi","Benedikt Diemer","Nathan J. Goldbaum","Elise Jennings","Alexie Leauthaud","Yao-Yuan Mao","Surhud More","John Parejko","Manodeep Sinha","Brigitta Sipocz","Andrew Zentner"],"abstract":"We present the first stable release of Halotools (v0.2), a community-driven Python package designed to build and test models of the galaxy-halo connection. Halotools provides a modular platform for creating mock universes of galaxies starting from a catalog of dark matter halos obtained from a cosmological simulation. The package supports many of the common forms used to describe galaxy-halo models: the halo occupation distribution (HOD), the conditional luminosity function (CLF), abundance matching, and alternatives to these models that include effects such as environmental quenching or variable galaxy assembly bias. Satellite galaxies can be modeled to live in subhalos, or to follow custom number density profiles within their halos, including spatial and/or velocity bias with respect to the dark matter profile. The package has an optimized toolkit to make mock observations on a synthetic galaxy population, including galaxy clustering, galaxy-galaxy lensing, galaxy group identification, RSD multipoles, void statistics, pairwise velocities and others, allowing direct comparison to observations. Halotools is object-oriented, enabling complex models to be built from a set of simple, interchangeable components, including those of your own creation. Halotools has an automated testing suite and is exhaustively documented on http://halotools.readthedocs.io, which includes quickstart guides, source code notes and a large collection of tutorials. The documentation is effectively an online textbook on how to build and study empirical models of galaxy formation with Python.","url_abs":"http://arxiv.org/abs/1606.04106v2","url_pdf":"http://arxiv.org/pdf/1606.04106v2.pdf","source":{"archive":"pwc-archive (Hugging Face), CC BY-SA 4.0","snapshot":"2025-07-28","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","row_kind":"links_only","authors_date_abstract":"arXiv metadata, CC0 1.0 (https://info.arxiv.org/help/license), from the Kaggle arXiv metadata snapshot of 2026-09-12"},"code_links":[{"paper_slug":"forward-modeling-of-large-scale-structure-an","repo_url":"https://github.com/astropy/halotools","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"none","reach":{"status":"ok","spdx":"BSD-3-Clause"}},{"paper_slug":"forward-modeling-of-large-scale-structure-an","repo_url":"https://github.com/mclaughlin6464/halotools_old","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"none","reach":{"status":"ok"}}],"tasks":[],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":"https://syntology.ai/paper/1606.04106","atlas_url":"https://app.syntology.ai/?focus=1606.04106","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"1606.04106"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-25T09:33:49+00:00","read_at_is":"when the build read Syntology's graph, not when any sample ran","claim":"Per-sample execution status on synthesized fixtures; not a correctness claim about the paper. Samples come from repositories linked to the paper, official or community; repo_kind says which.","repos":[{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/astropy/halotools","reach":{"status":"ok","spdx":"BSD-3-Clause"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/mclaughlin6464/halotools_old","reach":{"status":"ok"}}],"summary":{"unverified":6},"by_repo_kind":{"official":{"samples":6,"ran":0,"repositories":1}},"repo_kind_vocabulary":{"official":"The archive marks this repository official for the paper","named_in_paper":"The archive records that the paper mentions this repository; it is not marked official","listed":"In the archive's code links for this paper, not marked official and not recorded as mentioned in the paper","found_in_text":"Syntology found this repository in the paper's own text; whether it is the authors' implementation is not asserted","community":"Not in the archive's code links for this paper; a community repository Syntology harvested"},"n_pointer_only_for_licence":0,"samples":[{"code_sha256_prefix":"16cf8ad2b8e43b5c","entry":"conditional_abunmatch","repo":"astropy/halotools","repo_kind":"official","path":"halotools/empirical_models/abunmatch/bin_free_cam.py","file_url":"https://github.com/astropy/halotools/blob/HEAD/halotools/empirical_models/abunmatch/bin_free_cam.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"BSD-3-Clause","inline_ok":true,"mcp_get_code":{"code_sha256":"16cf8ad2b8e43b5c"}},{"code_sha256_prefix":"5e9bac2ec5c7a1f0","entry":"enforce_periodicity_of_box","repo":"astropy/halotools","repo_kind":"official","path":"halotools/empirical_models/model_helpers.py","file_url":"https://github.com/astropy/halotools/blob/HEAD/halotools/empirical_models/model_helpers.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"BSD-3-Clause","inline_ok":true,"mcp_get_code":{"code_sha256":"5e9bac2ec5c7a1f0"}},{"code_sha256_prefix":"6d2f662c5d3ee4c7","entry":"get_halo_boundary_key","repo":"astropy/halotools","repo_kind":"official","path":"halotools/empirical_models/model_defaults.py","file_url":"https://github.com/astropy/halotools/blob/HEAD/halotools/empirical_models/model_defaults.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"BSD-3-Clause","inline_ok":true,"mcp_get_code":{"code_sha256":"6d2f662c5d3ee4c7"}},{"code_sha256_prefix":"dab760c88533fc61","entry":"get_halo_mass_key","repo":"astropy/halotools","repo_kind":"official","path":"halotools/empirical_models/model_defaults.py","file_url":"https://github.com/astropy/halotools/blob/HEAD/halotools/empirical_models/model_defaults.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"BSD-3-Clause","inline_ok":true,"mcp_get_code":{"code_sha256":"dab760c88533fc61"}},{"code_sha256_prefix":"45430468de5917f0","entry":"polynomial_from_table","repo":"astropy/halotools","repo_kind":"official","path":"halotools/empirical_models/model_helpers.py","file_url":"https://github.com/astropy/halotools/blob/HEAD/halotools/empirical_models/model_helpers.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"BSD-3-Clause","inline_ok":true,"mcp_get_code":{"code_sha256":"45430468de5917f0"}},{"code_sha256_prefix":"a8def5cecc745346","entry":"solve_for_polynomial_coefficients","repo":"astropy/halotools","repo_kind":"official","path":"halotools/empirical_models/model_helpers.py","file_url":"https://github.com/astropy/halotools/blob/HEAD/halotools/empirical_models/model_helpers.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"BSD-3-Clause","inline_ok":true,"mcp_get_code":{"code_sha256":"a8def5cecc745346"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}