{"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/physics-informed-neural-operator-for-learning-1","title":"Physics-Informed Neural Operator for Learning Partial Differential Equations","arxiv_id":"2111.03794","date":"2021-11-06","proceeding":null,"authors":["Zongyi Li","Hongkai Zheng","Nikola Kovachki","David Jin","Haoxuan Chen","Burigede Liu","Kamyar Azizzadenesheli","Anima Anandkumar"],"abstract":"In this paper, we propose physics-informed neural operators (PINO) that combine training data and physics constraints to learn the solution operator of a given family of parametric Partial Differential Equations (PDE). PINO is the first hybrid approach incorporating data and PDE constraints at different resolutions to learn the operator. Specifically, in PINO, we combine coarse-resolution training data with PDE constraints imposed at a higher resolution. The resulting PINO model can accurately approximate the ground-truth solution operator for many popular PDE families and shows no degradation in accuracy even under zero-shot super-resolution, i.e., being able to predict beyond the resolution of training data. PINO uses the Fourier neural operator (FNO) framework that is guaranteed to be a universal approximator for any continuous operator and discretization-convergent in the limit of mesh refinement. By adding PDE constraints to FNO at a higher resolution, we obtain a high-fidelity reconstruction of the ground-truth operator. Moreover, PINO succeeds in settings where no training data is available and only PDE constraints are imposed, while previous approaches, such as the Physics-Informed Neural Network (PINN), fail due to optimization challenges, e.g., in multi-scale dynamic systems such as Kolmogorov flows.","url_abs":"https://arxiv.org/abs/2111.03794v4","url_pdf":"https://arxiv.org/pdf/2111.03794v4.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":"physics-informed-neural-operator-for-learning-1","repo_url":"https://github.com/devzhk/PINO","is_official":1,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"Apache-2.0"}},{"paper_slug":"physics-informed-neural-operator-for-learning-1","repo_url":"https://github.com/Hedawl/PINO-MBD","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok"}},{"paper_slug":"physics-informed-neural-operator-for-learning-1","repo_url":"https://github.com/neural-operator/pino","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"Apache-2.0"}},{"paper_slug":"physics-informed-neural-operator-for-learning-1","repo_url":"https://github.com/neuraloperator/physics_informed","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null},{"paper_slug":"physics-informed-neural-operator-for-learning-1","repo_url":"https://github.com/shawnrosofsky/pino_applications","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null},{"paper_slug":"physics-informed-neural-operator-for-learning-1","repo_url":"https://github.com/wenhaoding/pino-cde","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok"}}],"tasks":[{"task_slug":"operator-learning","task_name":"Operator learning"},{"task_slug":"super-resolution","task_name":"Super-Resolution"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2111.03794","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2111.03794"}},"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/neural-operator/pino","reach":{"status":"ok","spdx":"Apache-2.0"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/wenhaoding/pino-cde","reach":{"status":"ok"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/Hedawl/PINO-MBD","reach":{"status":"ok"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/devzhk/PINO","reach":{"status":"ok","spdx":"Apache-2.0"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/shawnrosofsky/pino_applications","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/neuraloperator/physics_informed","reach":null}],"summary":{"ran_honours":1,"unverified":7},"by_repo_kind":{"official":{"samples":7,"ran":0,"repositories":1},"listed":{"samples":1,"ran":1,"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":"220988efb04c0b6a","entry":"eval_ns","repo":"neuraloperator/physics_informed","repo_kind":"listed","path":"train_pino.py","file_url":"https://github.com/neuraloperator/physics_informed/blob/HEAD/train_pino.py","link_basis":"first_harvest_node","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"well_formed","behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"220988efb04c0b6a"}},{"code_sha256_prefix":"646821e8393a4311","entry":"PINO_loss_FDM_f","repo":"devzhk/PINO","repo_kind":"official","path":"cavity_flow.py","file_url":"https://github.com/devzhk/PINO/blob/HEAD/cavity_flow.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"646821e8393a4311"}},{"code_sha256_prefix":"78b788529a3c7ec2","entry":"PINO_loss_Fourier_f","repo":"devzhk/PINO","repo_kind":"official","path":"cavity_flow.py","file_url":"https://github.com/devzhk/PINO/blob/HEAD/cavity_flow.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"78b788529a3c7ec2"}},{"code_sha256_prefix":"6e0c434347a30723","entry":"create_conv","repo":"devzhk/PINO","repo_kind":"official","path":"baselines/unet3d.py","file_url":"https://github.com/devzhk/PINO/blob/HEAD/baselines/unet3d.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"6e0c434347a30723"}},{"code_sha256_prefix":"e411aec906b15dad","entry":"create_decoders","repo":"devzhk/PINO","repo_kind":"official","path":"baselines/unet3d.py","file_url":"https://github.com/devzhk/PINO/blob/HEAD/baselines/unet3d.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"e411aec906b15dad"}},{"code_sha256_prefix":"e90ddfe61d684774","entry":"create_encoders","repo":"devzhk/PINO","repo_kind":"official","path":"baselines/unet3d.py","file_url":"https://github.com/devzhk/PINO/blob/HEAD/baselines/unet3d.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"e90ddfe61d684774"}},{"code_sha256_prefix":"c46d50ea51b0ef6c","entry":"eval_ns","repo":"devzhk/PINO","repo_kind":"official","path":"train_unet.py","file_url":"https://github.com/devzhk/PINO/blob/HEAD/train_unet.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"c46d50ea51b0ef6c"}},{"code_sha256_prefix":"80dab4ba29efb4dd","entry":"resf_NS","repo":"devzhk/PINO","repo_kind":"official","path":"baselines/loss.py","file_url":"https://github.com/devzhk/PINO/blob/HEAD/baselines/loss.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"80dab4ba29efb4dd"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}