{"record_type":"pith_number_record","schema_url":"https://pith.science/schemas/pith-number/v1.json","pith_number":"pith:2021:JTBPQ565ZGD6UMEKNMBEVNWNNV","short_pith_number":"pith:JTBPQ565","schema_version":"1.0","canonical_sha256":"4cc2f877ddc987ea308a6b024ab6cd6d6c72b383684a420172e099923293b77a","source":{"kind":"arxiv","id":"2103.09389","version":2},"attestation_state":"computed","paper":{"title":"PythonFOAM: In-situ data analyses with OpenFOAM and Python","license":"http://arxiv.org/licenses/nonexclusive-distrib/1.0/","headline":"","cross_cats":["cs.DC","physics.flu-dyn"],"primary_cat":"physics.comp-ph","authors_text":"Bethany Lusch, Dimitrios Fytanidis, Romit Maulik, Saumil Patel, Venkatram Vishwanath","submitted_at":"2021-03-17T01:34:41Z","abstract_excerpt":"We outline the development of a general-purpose Python-based data analysis tool for OpenFOAM. Our implementation relies on the construction of OpenFOAM applications that have bindings to data analysis libraries in Python. Double precision data in OpenFOAM is cast to a NumPy array using the NumPy C-API and Python modules may then be used for arbitrary data analysis and manipulation on flow-field information. We highlight how the proposed wrapper may be used for an in-situ online singular value decomposition (SVD) implemented in Python and accessed from the OpenFOAM solver PimpleFOAM. Here, `in-"},"verification_status":{"content_addressed":true,"pith_receipt":true,"author_attested":false,"weak_author_claims":0,"strong_author_claims":0,"externally_anchored":false,"storage_verified":false,"citation_signatures":0,"replication_records":0,"graph_snapshot":true,"references_resolved":false,"formal_links_present":false},"canonical_record":{"source":{"id":"2103.09389","kind":"arxiv","version":2},"metadata":{"license":"http://arxiv.org/licenses/nonexclusive-distrib/1.0/","primary_cat":"physics.comp-ph","submitted_at":"2021-03-17T01:34:41Z","cross_cats_sorted":["cs.DC","physics.flu-dyn"],"title_canon_sha256":"6dd20e5ad3b18a12d3b982d9a087a5635b4f8f536c35e695bea19204d733c720","abstract_canon_sha256":"5ab25906ab223a0494a2853b2f6d5eb62ee9ba603b39743d4fda2811b4cff5a3"},"schema_version":"1.0"},"receipt":{"kind":"pith_receipt","key_id":"pith-v1-2026-05","algorithm":"ed25519","signed_at":"2026-07-05T03:05:22.963628Z","signature_b64":"i3nzYynOw5yAaw5QpEsq16mgGtR5iSSqNsDud/arTEREYkXUW/+vjspWMGWNgQ2aSm/m9jO8fgk2TCrlL5GiBQ==","signed_message":"canonical_sha256_bytes","builder_version":"pith-number-builder-2026-05-17-v1","receipt_version":"0.3","canonical_sha256":"4cc2f877ddc987ea308a6b024ab6cd6d6c72b383684a420172e099923293b77a","last_reissued_at":"2026-07-05T03:05:22.963174Z","signature_status":"signed_v1","first_computed_at":"2026-07-05T03:05:22.963174Z","public_key_fingerprint":"8d4b5ee74e4693bcd1df2446408b0d54"},"graph_snapshot":{"paper":{"title":"PythonFOAM: In-situ data analyses with OpenFOAM and Python","license":"http://arxiv.org/licenses/nonexclusive-distrib/1.0/","headline":"","cross_cats":["cs.DC","physics.flu-dyn"],"primary_cat":"physics.comp-ph","authors_text":"Bethany Lusch, Dimitrios Fytanidis, Romit Maulik, Saumil Patel, Venkatram Vishwanath","submitted_at":"2021-03-17T01:34:41Z","abstract_excerpt":"We outline the development of a general-purpose Python-based data analysis tool for OpenFOAM. Our implementation relies on the construction of OpenFOAM applications that have bindings to data analysis libraries in Python. Double precision data in OpenFOAM is cast to a NumPy array using the NumPy C-API and Python modules may then be used for arbitrary data analysis and manipulation on flow-field information. We highlight how the proposed wrapper may be used for an in-situ online singular value decomposition (SVD) implemented in Python and accessed from the OpenFOAM solver PimpleFOAM. Here, `in-"},"claims":{"count":0,"items":[],"snapshot_sha256":"258153158e38e3291e3d48162225fcdb2d5a3ed65a07baac614ab91432fd4f57"},"source":{"id":"2103.09389","kind":"arxiv","version":2},"verdict":{"id":null,"model_set":{},"created_at":null,"strongest_claim":"","one_line_summary":"","pipeline_version":null,"weakest_assumption":"","pith_extraction_headline":""},"integrity":{"clean":true,"summary":{"advisory":0,"critical":0,"by_detector":{},"informational":0},"endpoint":"/pith/2103.09389/integrity.json","findings":[],"available":true,"detectors_run":[],"snapshot_sha256":"c28c3603d3b5d939e8dc4c7e95fa8dfce3d595e45f758748cecf8e644a296938"},"references":{"count":0,"sample":[],"resolved_work":0,"snapshot_sha256":"258153158e38e3291e3d48162225fcdb2d5a3ed65a07baac614ab91432fd4f57","internal_anchors":0},"formal_canon":{"evidence_count":0,"snapshot_sha256":"258153158e38e3291e3d48162225fcdb2d5a3ed65a07baac614ab91432fd4f57"},"author_claims":{"count":0,"strong_count":0,"snapshot_sha256":"258153158e38e3291e3d48162225fcdb2d5a3ed65a07baac614ab91432fd4f57"},"builder_version":"pith-number-builder-2026-05-17-v1"},"aliases":[{"alias_kind":"arxiv","alias_value":"2103.09389","created_at":"2026-07-05T03:05:22.963230+00:00"},{"alias_kind":"arxiv_version","alias_value":"2103.09389v2","created_at":"2026-07-05T03:05:22.963230+00:00"},{"alias_kind":"doi","alias_value":"10.48550/arxiv.2103.09389","created_at":"2026-07-05T03:05:22.963230+00:00"},{"alias_kind":"pith_short_12","alias_value":"JTBPQ565ZGD6","created_at":"2026-07-05T03:05:22.963230+00:00"},{"alias_kind":"pith_short_16","alias_value":"JTBPQ565ZGD6UMEK","created_at":"2026-07-05T03:05:22.963230+00:00"},{"alias_kind":"pith_short_8","alias_value":"JTBPQ565","created_at":"2026-07-05T03:05:22.963230+00:00"}],"events":[],"event_summary":{},"paper_claims":[],"inbound_citations":{"count":1,"internal_anchor_count":0,"sample":[{"citing_arxiv_id":"2605.06607","citing_title":"AI CFD Scientist: Toward Open-Ended Computational Fluid Dynamics Discovery with Physics-Aware AI Agents","ref_index":22,"is_internal_anchor":false}]},"formal_canon":{"evidence_count":0,"sample":[],"anchors":[]},"links":{"html":"https://pith.science/pith/JTBPQ565ZGD6UMEKNMBEVNWNNV","json":"https://pith.science/pith/JTBPQ565ZGD6UMEKNMBEVNWNNV.json","graph_json":"https://pith.science/api/pith-number/JTBPQ565ZGD6UMEKNMBEVNWNNV/graph.json","events_json":"https://pith.science/api/pith-number/JTBPQ565ZGD6UMEKNMBEVNWNNV/events.json","paper":"https://pith.science/paper/JTBPQ565"},"agent_actions":{"view_html":"https://pith.science/pith/JTBPQ565ZGD6UMEKNMBEVNWNNV","download_json":"https://pith.science/pith/JTBPQ565ZGD6UMEKNMBEVNWNNV.json","view_paper":"https://pith.science/paper/JTBPQ565","resolve_alias":"https://pith.science/api/pith-number/resolve?arxiv=2103.09389&json=true","fetch_graph":"https://pith.science/api/pith-number/JTBPQ565ZGD6UMEKNMBEVNWNNV/graph.json","fetch_events":"https://pith.science/api/pith-number/JTBPQ565ZGD6UMEKNMBEVNWNNV/events.json","actions":{"anchor_timestamp":"https://pith.science/pith/JTBPQ565ZGD6UMEKNMBEVNWNNV/action/timestamp_anchor","attest_storage":"https://pith.science/pith/JTBPQ565ZGD6UMEKNMBEVNWNNV/action/storage_attestation","attest_author":"https://pith.science/pith/JTBPQ565ZGD6UMEKNMBEVNWNNV/action/author_attestation","sign_citation":"https://pith.science/pith/JTBPQ565ZGD6UMEKNMBEVNWNNV/action/citation_signature","submit_replication":"https://pith.science/pith/JTBPQ565ZGD6UMEKNMBEVNWNNV/action/replication_record"}},"created_at":"2026-07-05T03:05:22.963230+00:00","updated_at":"2026-07-05T03:05:22.963230+00:00"}