{"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/deepxde-a-deep-learning-library-for-solving","title":"DeepXDE: A deep learning library for solving differential equations","arxiv_id":"1907.04502","date":"2019-07-10","proceeding":null,"authors":["Lu Lu","Xuhui Meng","Zhiping Mao","George E. Karniadakis"],"abstract":"Deep learning has achieved remarkable success in diverse applications; however, its use in solving partial differential equations (PDEs) has emerged only recently. Here, we present an overview of physics-informed neural networks (PINNs), which embed a PDE into the loss of the neural network using automatic differentiation. The PINN algorithm is simple, and it can be applied to different types of PDEs, including integro-differential equations, fractional PDEs, and stochastic PDEs. Moreover, from the implementation point of view, PINNs solve inverse problems as easily as forward problems. We propose a new residual-based adaptive refinement (RAR) method to improve the training efficiency of PINNs. For pedagogical reasons, we compare the PINN algorithm to a standard finite element method. We also present a Python library for PINNs, DeepXDE, which is designed to serve both as an education tool to be used in the classroom as well as a research tool for solving problems in computational science and engineering. Specifically, DeepXDE can solve forward problems given initial and boundary conditions, as well as inverse problems given some extra measurements. DeepXDE supports complex-geometry domains based on the technique of constructive solid geometry, and enables the user code to be compact, resembling closely the mathematical formulation. We introduce the usage of DeepXDE and its customizability, and we also demonstrate the capability of PINNs and the user-friendliness of DeepXDE for five different examples. More broadly, DeepXDE contributes to the more rapid development of the emerging Scientific Machine Learning field.","url_abs":"https://arxiv.org/abs/1907.04502v2","url_pdf":"https://arxiv.org/pdf/1907.04502v2.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":"deepxde-a-deep-learning-library-for-solving","repo_url":"https://github.com/lululxvi/deepxde","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"tf","reach":{"status":"ok","spdx":"LGPL-2.1"}},{"paper_slug":"deepxde-a-deep-learning-library-for-solving","repo_url":"https://github.com/PhysicsTeacher13/Deepxde","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"tf","reach":{"status":"ok","spdx":"Apache-2.0"}},{"paper_slug":"deepxde-a-deep-learning-library-for-solving","repo_url":"https://github.com/cianmscannell/pinns","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"tf","reach":null},{"paper_slug":"deepxde-a-deep-learning-library-for-solving","repo_url":"https://github.com/cor3bit/pde-solvers","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"tf","reach":{"status":"ok","spdx":"GPL-3.0"}},{"paper_slug":"deepxde-a-deep-learning-library-for-solving","repo_url":"https://github.com/jacobwang925/path-integral-pinn","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}},{"paper_slug":"deepxde-a-deep-learning-library-for-solving","repo_url":"https://github.com/pratikkakkar/deep-diff","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"tf","reach":null},{"paper_slug":"deepxde-a-deep-learning-library-for-solving","repo_url":"https://github.com/yiwang89/lululxvi-deepxde","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"tf","reach":{"status":"ok","spdx":"Apache-2.0"}}],"tasks":[{"task_slug":"deep-learning","task_name":"Deep Learning"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=1907.04502","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"1907.04502"}},"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/yiwang89/lululxvi-deepxde","reach":{"status":"ok","spdx":"Apache-2.0"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/PhysicsTeacher13/Deepxde","reach":{"status":"ok","spdx":"Apache-2.0"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/jacobwang925/path-integral-pinn","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/cor3bit/pde-solvers","reach":{"status":"ok","spdx":"GPL-3.0"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/pratikkakkar/deep-diff","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/cianmscannell/pinns","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/lululxvi/deepxde","reach":{"status":"ok","spdx":"LGPL-2.1"}}],"summary":{"ran_violates":1,"unverified":13},"by_repo_kind":{"listed":{"samples":13,"ran":0,"repositories":2}},"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":1,"samples":[{"code_sha256_prefix":"3d3bd15404080e16","entry":"lorenz","repo":null,"repo_kind":null,"path":null,"file_url":null,"link_basis":"identical_code_first_harvested_elsewhere","language":"python","status":"ran_violates","verification_level":1,"contract_check":"VIOLATES","metamorphic_tier":"well_formed","behaviour_fingerprint":true,"licence":null,"inline_ok":false,"mcp_get_code":{"code_sha256":"3d3bd15404080e16"}},{"code_sha256_prefix":"88820f35c43353d2","entry":"accuracy","repo":"PhysicsTeacher13/Deepxde","repo_kind":"listed","path":"deepxde/metrics.py","file_url":"https://github.com/PhysicsTeacher13/Deepxde/blob/HEAD/deepxde/metrics.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":"88820f35c43353d2"}},{"code_sha256_prefix":"2c419a89a220d342","entry":"cross_entropy","repo":"PhysicsTeacher13/Deepxde","repo_kind":"listed","path":"deepxde/math_ops.py","file_url":"https://github.com/PhysicsTeacher13/Deepxde/blob/HEAD/deepxde/math_ops.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":"2c419a89a220d342"}},{"code_sha256_prefix":"1da5d1a073cf6188","entry":"istensor","repo":"PhysicsTeacher13/Deepxde","repo_kind":"listed","path":"deepxde/array_ops.py","file_url":"https://github.com/PhysicsTeacher13/Deepxde/blob/HEAD/deepxde/array_ops.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":"1da5d1a073cf6188"}},{"code_sha256_prefix":"62ec6e60132a5d4c","entry":"istensorlist","repo":"PhysicsTeacher13/Deepxde","repo_kind":"listed","path":"deepxde/array_ops.py","file_url":"https://github.com/PhysicsTeacher13/Deepxde/blob/HEAD/deepxde/array_ops.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":"62ec6e60132a5d4c"}},{"code_sha256_prefix":"32c851eacf652fb9","entry":"l2_relative_error","repo":"PhysicsTeacher13/Deepxde","repo_kind":"listed","path":"deepxde/metrics.py","file_url":"https://github.com/PhysicsTeacher13/Deepxde/blob/HEAD/deepxde/metrics.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":"32c851eacf652fb9"}},{"code_sha256_prefix":"ba75ef2ea10ace5c","entry":"list_to_str","repo":"PhysicsTeacher13/Deepxde","repo_kind":"listed","path":"deepxde/display.py","file_url":"https://github.com/PhysicsTeacher13/Deepxde/blob/HEAD/deepxde/display.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":"ba75ef2ea10ace5c"}},{"code_sha256_prefix":"b6b3f1e69c63519d","entry":"mean_absolute_percentage_error","repo":"PhysicsTeacher13/Deepxde","repo_kind":"listed","path":"deepxde/losses.py","file_url":"https://github.com/PhysicsTeacher13/Deepxde/blob/HEAD/deepxde/losses.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":"b6b3f1e69c63519d"}},{"code_sha256_prefix":"7685754d1df284cc","entry":"mean_absolute_percentage_error","repo":"yiwang89/lululxvi-deepxde","repo_kind":"listed","path":"deepxde/metrics.py","file_url":"https://github.com/yiwang89/lululxvi-deepxde/blob/HEAD/deepxde/metrics.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":"7685754d1df284cc"}},{"code_sha256_prefix":"7aef1f09fa638129","entry":"mean_squared_error","repo":"PhysicsTeacher13/Deepxde","repo_kind":"listed","path":"deepxde/losses.py","file_url":"https://github.com/PhysicsTeacher13/Deepxde/blob/HEAD/deepxde/losses.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":"7aef1f09fa638129"}},{"code_sha256_prefix":"ad6ca018121d1980","entry":"shape","repo":"PhysicsTeacher13/Deepxde","repo_kind":"listed","path":"deepxde/array_ops.py","file_url":"https://github.com/PhysicsTeacher13/Deepxde/blob/HEAD/deepxde/array_ops.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":"ad6ca018121d1980"}},{"code_sha256_prefix":"6f58b8df8556a3aa","entry":"softmax","repo":"PhysicsTeacher13/Deepxde","repo_kind":"listed","path":"deepxde/math_ops.py","file_url":"https://github.com/PhysicsTeacher13/Deepxde/blob/HEAD/deepxde/math_ops.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":"6f58b8df8556a3aa"}},{"code_sha256_prefix":"d93e816132fd2cc1","entry":"softmax_cross_entropy","repo":"PhysicsTeacher13/Deepxde","repo_kind":"listed","path":"deepxde/losses.py","file_url":"https://github.com/PhysicsTeacher13/Deepxde/blob/HEAD/deepxde/losses.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":"d93e816132fd2cc1"}},{"code_sha256_prefix":"87eec89fd7f6f6cb","entry":"uniformly_continuous_delta","repo":"PhysicsTeacher13/Deepxde","repo_kind":"listed","path":"deepxde/math_ops.py","file_url":"https://github.com/PhysicsTeacher13/Deepxde/blob/HEAD/deepxde/math_ops.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":"87eec89fd7f6f6cb"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}