{"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/topological-descriptors-for-coral-reef","title":"Zigzag persistence for coral reef resilience using a stochastic spatial model","arxiv_id":"2209.08974","date":"2022-09-19","proceeding":null,"authors":["Robert A. McDonald","Rosanna Neuhausler","Martin Robinson","Laurel G. Larsen","Heather A. Harrington","Maria Bruna"],"abstract":"A complex interplay between species governs the evolution of spatial patterns in ecology. An open problem in the biological sciences is characterising spatio-temporal data and understanding how changes at the local scale affect global dynamics/behaviour. Here, we extend a well-studied temporal mathematical model of coral reef dynamics to include stochastic and spatial interactions and generate data to study different ecological scenarios. We present descriptors to characterise patterns in heterogeneous spatio-temporal data surpassing spatially averaged measures. We apply these descriptors to simulated coral data and demonstrate the utility of two topological data analysis techniques--persistent homology and zigzag persistence--for characterising mechanisms of reef resilience. We show that the introduction of local competition between species leads to the appearance of coral clusters in the reef. We use our analyses to distinguish temporal dynamics stemming from different initial configurations of coral, showing that the neighbourhood composition of coral sites determines their long-term survival. Using zigzag persistence, we determine which spatial configurations protect coral from extinction in different environments. Finally, we apply this toolkit of multi-scale methods to empirical coral reef data, which distinguish spatio-temporal reef dynamics in different locations, and demonstrate the applicability to a range of datasets.","url_abs":"https://arxiv.org/abs/2209.08974v2","url_pdf":"https://arxiv.org/pdf/2209.08974v2.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":"abstracts"},"code_links":[{"paper_slug":"topological-descriptors-for-coral-reef","repo_url":"https://github.com/rmcdomaths/zigzagcoralmodel","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"none","reach":null}],"tasks":[{"task_slug":"topological-data-analysis","task_name":"Topological Data Analysis"}],"methods":[{"method_slug":"coral","method_name":"CORAL"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2209.08974","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2209.08974"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-24T18:15:14+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/rmcdomaths/zigzagcoralmodel","reach":null}],"summary":{"ran_fixture":1,"ran_draft_wrong":1},"by_repo_kind":{"official":{"samples":2,"ran":2,"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":2,"samples":[{"code_sha256_prefix":"97d06b1acf503013","entry":"coral_to_bool","repo":"rmcdomaths/zigzagcoralmodel","repo_kind":"official","path":"TDAtools.py","file_url":"https://github.com/rmcdomaths/zigzagcoralmodel/blob/HEAD/TDAtools.py","link_basis":"first_harvest_node","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":"deterministic","behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"97d06b1acf503013"}},{"code_sha256_prefix":"21175a6d72b87f6a","entry":"find_all_neighbors","repo":"rmcdomaths/zigzagcoralmodel","repo_kind":"official","path":"TDAtools.py","file_url":"https://github.com/rmcdomaths/zigzagcoralmodel/blob/HEAD/TDAtools.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":"well_formed","behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"21175a6d72b87f6a"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}