{"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/lagrangebench-a-lagrangian-fluid-mechanics-1","title":"LagrangeBench: A Lagrangian Fluid Mechanics Benchmarking Suite","arxiv_id":"2309.16342","date":"2023-09-28","proceeding":"NeurIPS 2023 11","authors":["Artur P. Toshev","Gianluca Galletti","Fabian Fritz","Stefan Adami","Nikolaus A. Adams"],"abstract":"Machine learning has been successfully applied to grid-based PDE modeling in various scientific applications. However, learned PDE solvers based on Lagrangian particle discretizations, which are the preferred approach to problems with free surfaces or complex physics, remain largely unexplored. We present LagrangeBench, the first benchmarking suite for Lagrangian particle problems, focusing on temporal coarse-graining. In particular, our contribution is: (a) seven new fluid mechanics datasets (four in 2D and three in 3D) generated with the Smoothed Particle Hydrodynamics (SPH) method including the Taylor-Green vortex, lid-driven cavity, reverse Poiseuille flow, and dam break, each of which includes different physics like solid wall interactions or free surface, (b) efficient JAX-based API with various recent training strategies and three neighbor search routines, and (c) JAX implementation of established Graph Neural Networks (GNNs) like GNS and SEGNN with baseline results. Finally, to measure the performance of learned surrogates we go beyond established position errors and introduce physical metrics like kinetic energy MSE and Sinkhorn distance for the particle distribution. Our codebase is available at https://github.com/tumaer/lagrangebench .","url_abs":"https://arxiv.org/abs/2309.16342v2","url_pdf":"https://arxiv.org/pdf/2309.16342v2.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":"lagrangebench-a-lagrangian-fluid-mechanics-1","repo_url":"https://github.com/tumaer/lagrangebench","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"jax","reach":{"status":"ok","spdx":"MIT"}},{"paper_slug":"lagrangebench-a-lagrangian-fluid-mechanics-1","repo_url":"https://github.com/tumaer/jax-sph","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"jax","reach":null}],"tasks":[{"task_slug":"benchmarking","task_name":"Benchmarking"}],"methods":[{"method_slug":"gns","method_name":"GNS"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":"https://syntology.ai/paper/2309.16342","atlas_url":"https://app.syntology.ai/?focus=2309.16342","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2309.16342"}},"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":"deterministic:regex_extraction","url":"https://github.com/deepmind/deepmind-research","reach":null},{"provenance":"deterministic:regex_extraction","url":"https://github.com/vgsatorras/egnn","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"deterministic:regex_extraction","url":"https://github.com/tumaer/lagrangebench","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"deterministic:regex_extraction","url":"https://github.com/arturtoshev/pbc_neighbors_benchmark","reach":{"status":"ok"}},{"provenance":"deterministic:regex_extraction","url":"https://github.com/wu375/simple-physics-simulator-pytorch-geometry","reach":{"status":"ok"}},{"provenance":"deterministic:regex_extraction","url":"https://github.com/RobDHess/Steerable-E3-GNN","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"deterministic:regex_extraction","url":"https://github.com/atomistic-machine-learning/schnetpack","reach":{"status":"ok","spdx":"NOASSERTION"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/tumaer/jax-sph","reach":null}],"summary":{"ran":17,"ran_fixture":3,"ran_draft_wrong":3,"unverified":4},"by_repo_kind":{"listed":{"samples":2,"ran":2,"repositories":1},"found_in_text":{"samples":25,"ran":21,"repositories":3}},"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":3,"samples":[{"code_sha256_prefix":"e259537bde4ee2f8","entry":"adj_bce","repo":"vgsatorras/egnn","repo_kind":"found_in_text","path":"losess.py","file_url":"https://github.com/vgsatorras/egnn/blob/HEAD/losess.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"e259537bde4ee2f8"}},{"code_sha256_prefix":"8e6e07db9def5d01","entry":"build_mlp","repo":"wu375/simple-physics-simulator-pytorch-geometry","repo_kind":"found_in_text","path":"train_or_infer.py","file_url":"https://github.com/wu375/simple-physics-simulator-pytorch-geometry/blob/HEAD/train_or_infer.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"8e6e07db9def5d01"}},{"code_sha256_prefix":"1f2836f635c3c24b","entry":"filter_nodes","repo":"vgsatorras/egnn","repo_kind":"found_in_text","path":"utils.py","file_url":"https://github.com/vgsatorras/egnn/blob/HEAD/utils.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"1f2836f635c3c24b"}},{"code_sha256_prefix":"935a9b7017cf90ff","entry":"get_cormorant_features","repo":"RobDHess/Steerable-E3-GNN","repo_kind":"found_in_text","path":"qm9/dataset.py","file_url":"https://github.com/RobDHess/Steerable-E3-GNN/blob/HEAD/qm9/dataset.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"935a9b7017cf90ff"}},{"code_sha256_prefix":"c2f9c401f5379aac","entry":"get_edges","repo":"vgsatorras/egnn","repo_kind":"found_in_text","path":"models/egnn_clean/egnn_clean.py","file_url":"https://github.com/vgsatorras/egnn/blob/HEAD/models/egnn_clean/egnn_clean.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"c2f9c401f5379aac"}},{"code_sha256_prefix":"c227c9446cea3325","entry":"get_random_walk_noise_for_position_sequence","repo":"wu375/simple-physics-simulator-pytorch-geometry","repo_kind":"found_in_text","path":"train_or_infer.py","file_url":"https://github.com/wu375/simple-physics-simulator-pytorch-geometry/blob/HEAD/train_or_infer.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"c227c9446cea3325"}},{"code_sha256_prefix":"a1ea415560adc94a","entry":"get_velocity_attr","repo":"vgsatorras/egnn","repo_kind":"found_in_text","path":"main_nbody.py","file_url":"https://github.com/vgsatorras/egnn/blob/HEAD/main_nbody.py","link_basis":"plan_row","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":"invariant","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"a1ea415560adc94a"}},{"code_sha256_prefix":"db8fecb91e9bf92b","entry":"graph2networkx","repo":"vgsatorras/egnn","repo_kind":"found_in_text","path":"graph.py","file_url":"https://github.com/vgsatorras/egnn/blob/HEAD/graph.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"db8fecb91e9bf92b"}},{"code_sha256_prefix":"a8149b815c51038e","entry":"load_model","repo":"RobDHess/Steerable-E3-GNN","repo_kind":"found_in_text","path":"utils.py","file_url":"https://github.com/RobDHess/Steerable-E3-GNN/blob/HEAD/utils.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"a8149b815c51038e"}},{"code_sha256_prefix":"f9e43abe93b5283e","entry":"make_dataloader","repo":"RobDHess/Steerable-E3-GNN","repo_kind":"found_in_text","path":"utils.py","file_url":"https://github.com/RobDHess/Steerable-E3-GNN/blob/HEAD/utils.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"f9e43abe93b5283e"}},{"code_sha256_prefix":"cce3235cb632dda2","entry":"max_n_nodes","repo":"vgsatorras/egnn","repo_kind":"found_in_text","path":"ae_datasets/d_creator.py","file_url":"https://github.com/vgsatorras/egnn/blob/HEAD/ae_datasets/d_creator.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"cce3235cb632dda2"}},{"code_sha256_prefix":"4b396ba7acc5f88e","entry":"networkx2graph","repo":"vgsatorras/egnn","repo_kind":"found_in_text","path":"graph.py","file_url":"https://github.com/vgsatorras/egnn/blob/HEAD/graph.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"4b396ba7acc5f88e"}},{"code_sha256_prefix":"61447f3db462665b","entry":"normalize_res","repo":"vgsatorras/egnn","repo_kind":"found_in_text","path":"utils.py","file_url":"https://github.com/vgsatorras/egnn/blob/HEAD/utils.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"61447f3db462665b"}},{"code_sha256_prefix":"8e6bbd30a7336168","entry":"normalizer","repo":"vgsatorras/egnn","repo_kind":"found_in_text","path":"models/ae.py","file_url":"https://github.com/vgsatorras/egnn/blob/HEAD/models/ae.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"8e6bbd30a7336168"}},{"code_sha256_prefix":"b2b87cb713d14139","entry":"rho_evol_fn","repo":"tumaer/jax-sph","repo_kind":"listed","path":"jax_sph/solver.py","file_url":"https://github.com/tumaer/jax-sph/blob/HEAD/jax_sph/solver.py","link_basis":"first_harvest_node","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":"invariant","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"b2b87cb713d14139"}},{"code_sha256_prefix":"3f463624d5a53697","entry":"rho_evol_fn_delta_wrapper","repo":"tumaer/jax-sph","repo_kind":"listed","path":"jax_sph/solver.py","file_url":"https://github.com/tumaer/jax-sph/blob/HEAD/jax_sph/solver.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"3f463624d5a53697"}},{"code_sha256_prefix":"f638b3f28da71d6d","entry":"run_epoch","repo":"RobDHess/Steerable-E3-GNN","repo_kind":"found_in_text","path":"nbody/train_nbody.py","file_url":"https://github.com/RobDHess/Steerable-E3-GNN/blob/HEAD/nbody/train_nbody.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"f638b3f28da71d6d"}},{"code_sha256_prefix":"c5d5c0ef14ebb520","entry":"sparse2dense","repo":"vgsatorras/egnn","repo_kind":"found_in_text","path":"graph.py","file_url":"https://github.com/vgsatorras/egnn/blob/HEAD/graph.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"c5d5c0ef14ebb520"}},{"code_sha256_prefix":"33ca4bbea222551b","entry":"time_diff","repo":"wu375/simple-physics-simulator-pytorch-geometry","repo_kind":"found_in_text","path":"train_or_infer.py","file_url":"https://github.com/wu375/simple-physics-simulator-pytorch-geometry/blob/HEAD/train_or_infer.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"33ca4bbea222551b"}},{"code_sha256_prefix":"bc66f19be57720e7","entry":"unsorted_segment_mean","repo":"vgsatorras/egnn","repo_kind":"found_in_text","path":"models/egnn_clean/egnn_clean.py","file_url":"https://github.com/vgsatorras/egnn/blob/HEAD/models/egnn_clean/egnn_clean.py","link_basis":"harvester_set","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":"invariant","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"bc66f19be57720e7"}},{"code_sha256_prefix":"5fb62a78eb65d3d7","entry":"unsorted_segment_sum","repo":"vgsatorras/egnn","repo_kind":"found_in_text","path":"models/egnn_clean/egnn_clean.py","file_url":"https://github.com/vgsatorras/egnn/blob/HEAD/models/egnn_clean/egnn_clean.py","link_basis":"harvester_set","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":"invariant","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"5fb62a78eb65d3d7"}},{"code_sha256_prefix":"dfdf6dc1a0720e57","entry":"unsorted_segment_sum","repo":"vgsatorras/egnn","repo_kind":"found_in_text","path":"models/gcl.py","file_url":"https://github.com/vgsatorras/egnn/blob/HEAD/models/gcl.py","link_basis":"harvester_set","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"dfdf6dc1a0720e57"}},{"code_sha256_prefix":"917b57193d100781","entry":"vae_loss","repo":"vgsatorras/egnn","repo_kind":"found_in_text","path":"losess.py","file_url":"https://github.com/vgsatorras/egnn/blob/HEAD/losess.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"917b57193d100781"}},{"code_sha256_prefix":"8d6ee0bdca895865","entry":"BalancedIrreps","repo":"RobDHess/Steerable-E3-GNN","repo_kind":"found_in_text","path":"models/balanced_irreps.py","file_url":"https://github.com/RobDHess/Steerable-E3-GNN/blob/HEAD/models/balanced_irreps.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"8d6ee0bdca895865"}},{"code_sha256_prefix":"a5a087121ff0f1fa","entry":"WeightBalancedIrreps","repo":"RobDHess/Steerable-E3-GNN","repo_kind":"found_in_text","path":"models/balanced_irreps.py","file_url":"https://github.com/RobDHess/Steerable-E3-GNN/blob/HEAD/models/balanced_irreps.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"a5a087121ff0f1fa"}},{"code_sha256_prefix":"117ba303e865d2e8","entry":"plot_coords","repo":"vgsatorras/egnn","repo_kind":"found_in_text","path":"utils.py","file_url":"https://github.com/vgsatorras/egnn/blob/HEAD/utils.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"117ba303e865d2e8"}},{"code_sha256_prefix":"c18c2f1f9a27b909","entry":"run_epoch","repo":"RobDHess/Steerable-E3-GNN","repo_kind":"found_in_text","path":"nbody/train_gravity.py","file_url":"https://github.com/RobDHess/Steerable-E3-GNN/blob/HEAD/nbody/train_gravity.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"c18c2f1f9a27b909"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}