├── .github └── workflows │ └── run_tests.yml ├── LICENSE ├── README.md ├── examples ├── 1. Defining your own problem - 1D harmonic oscillator.ipynb ├── 2. Using hard constraints - 1D harmonic oscillator.ipynb ├── 3. Solving inverse problems - 1D harmonic oscillator.ipynb ├── 4. Using subdomain scheduling - (1+1)D Burgers' equation.ipynb └── oscillator.gif ├── fbpinns ├── __init__.py ├── analysis.py ├── constants.py ├── constants_base.py ├── decompositions.py ├── decompositions_base.py ├── domains.py ├── networks.py ├── plot_trainer.py ├── plot_trainer_1D.py ├── plot_trainer_2D.py ├── plot_trainer_3D.py ├── problems.py ├── schedulers.py ├── traditional_solutions │ ├── __init__.py │ ├── analytical │ │ ├── __init__.py │ │ └── burgers_solution.py │ └── seismic_cpml │ │ ├── __init__.py │ │ ├── seismic_CPML_2D_pressure_second_order.py │ │ └── seismic_CPML_helper.py ├── trainers.py ├── trainers_base.py ├── util │ ├── __init__.py │ ├── io.py │ ├── jax_util.py │ ├── logger.py │ ├── multiprocess.py │ ├── other.py │ └── sbatch.py └── windows.py ├── images ├── FBPINN.gif ├── PINN.gif ├── scheduling.gif ├── test-loss.png ├── we-multiscale.gif └── workflow.png ├── pyproject.toml └── tests └── run.py /.github/workflows/run_tests.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/benmoseley/FBPINNs/HEAD/.github/workflows/run_tests.yml -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/benmoseley/FBPINNs/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/benmoseley/FBPINNs/HEAD/README.md -------------------------------------------------------------------------------- /examples/1. Defining your own problem - 1D harmonic oscillator.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/benmoseley/FBPINNs/HEAD/examples/1. Defining your own problem - 1D harmonic oscillator.ipynb -------------------------------------------------------------------------------- /examples/2. Using hard constraints - 1D harmonic oscillator.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/benmoseley/FBPINNs/HEAD/examples/2. Using hard constraints - 1D harmonic oscillator.ipynb -------------------------------------------------------------------------------- /examples/3. Solving inverse problems - 1D harmonic oscillator.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/benmoseley/FBPINNs/HEAD/examples/3. Solving inverse problems - 1D harmonic oscillator.ipynb -------------------------------------------------------------------------------- /examples/4. Using subdomain scheduling - (1+1)D Burgers' equation.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/benmoseley/FBPINNs/HEAD/examples/4. Using subdomain scheduling - (1+1)D Burgers' equation.ipynb -------------------------------------------------------------------------------- /examples/oscillator.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/benmoseley/FBPINNs/HEAD/examples/oscillator.gif -------------------------------------------------------------------------------- /fbpinns/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /fbpinns/analysis.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/benmoseley/FBPINNs/HEAD/fbpinns/analysis.py -------------------------------------------------------------------------------- /fbpinns/constants.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/benmoseley/FBPINNs/HEAD/fbpinns/constants.py -------------------------------------------------------------------------------- /fbpinns/constants_base.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/benmoseley/FBPINNs/HEAD/fbpinns/constants_base.py -------------------------------------------------------------------------------- /fbpinns/decompositions.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/benmoseley/FBPINNs/HEAD/fbpinns/decompositions.py -------------------------------------------------------------------------------- /fbpinns/decompositions_base.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/benmoseley/FBPINNs/HEAD/fbpinns/decompositions_base.py -------------------------------------------------------------------------------- /fbpinns/domains.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/benmoseley/FBPINNs/HEAD/fbpinns/domains.py -------------------------------------------------------------------------------- /fbpinns/networks.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/benmoseley/FBPINNs/HEAD/fbpinns/networks.py -------------------------------------------------------------------------------- /fbpinns/plot_trainer.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/benmoseley/FBPINNs/HEAD/fbpinns/plot_trainer.py -------------------------------------------------------------------------------- /fbpinns/plot_trainer_1D.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/benmoseley/FBPINNs/HEAD/fbpinns/plot_trainer_1D.py -------------------------------------------------------------------------------- /fbpinns/plot_trainer_2D.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/benmoseley/FBPINNs/HEAD/fbpinns/plot_trainer_2D.py -------------------------------------------------------------------------------- /fbpinns/plot_trainer_3D.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/benmoseley/FBPINNs/HEAD/fbpinns/plot_trainer_3D.py -------------------------------------------------------------------------------- /fbpinns/problems.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/benmoseley/FBPINNs/HEAD/fbpinns/problems.py -------------------------------------------------------------------------------- /fbpinns/schedulers.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/benmoseley/FBPINNs/HEAD/fbpinns/schedulers.py -------------------------------------------------------------------------------- /fbpinns/traditional_solutions/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /fbpinns/traditional_solutions/analytical/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /fbpinns/traditional_solutions/analytical/burgers_solution.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/benmoseley/FBPINNs/HEAD/fbpinns/traditional_solutions/analytical/burgers_solution.py -------------------------------------------------------------------------------- /fbpinns/traditional_solutions/seismic_cpml/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /fbpinns/traditional_solutions/seismic_cpml/seismic_CPML_2D_pressure_second_order.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/benmoseley/FBPINNs/HEAD/fbpinns/traditional_solutions/seismic_cpml/seismic_CPML_2D_pressure_second_order.py -------------------------------------------------------------------------------- /fbpinns/traditional_solutions/seismic_cpml/seismic_CPML_helper.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/benmoseley/FBPINNs/HEAD/fbpinns/traditional_solutions/seismic_cpml/seismic_CPML_helper.py -------------------------------------------------------------------------------- /fbpinns/trainers.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/benmoseley/FBPINNs/HEAD/fbpinns/trainers.py -------------------------------------------------------------------------------- /fbpinns/trainers_base.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/benmoseley/FBPINNs/HEAD/fbpinns/trainers_base.py -------------------------------------------------------------------------------- /fbpinns/util/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /fbpinns/util/io.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/benmoseley/FBPINNs/HEAD/fbpinns/util/io.py -------------------------------------------------------------------------------- /fbpinns/util/jax_util.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/benmoseley/FBPINNs/HEAD/fbpinns/util/jax_util.py -------------------------------------------------------------------------------- /fbpinns/util/logger.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/benmoseley/FBPINNs/HEAD/fbpinns/util/logger.py -------------------------------------------------------------------------------- /fbpinns/util/multiprocess.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/benmoseley/FBPINNs/HEAD/fbpinns/util/multiprocess.py -------------------------------------------------------------------------------- /fbpinns/util/other.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/benmoseley/FBPINNs/HEAD/fbpinns/util/other.py -------------------------------------------------------------------------------- /fbpinns/util/sbatch.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/benmoseley/FBPINNs/HEAD/fbpinns/util/sbatch.py -------------------------------------------------------------------------------- /fbpinns/windows.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/benmoseley/FBPINNs/HEAD/fbpinns/windows.py -------------------------------------------------------------------------------- /images/FBPINN.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/benmoseley/FBPINNs/HEAD/images/FBPINN.gif -------------------------------------------------------------------------------- /images/PINN.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/benmoseley/FBPINNs/HEAD/images/PINN.gif -------------------------------------------------------------------------------- /images/scheduling.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/benmoseley/FBPINNs/HEAD/images/scheduling.gif -------------------------------------------------------------------------------- /images/test-loss.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/benmoseley/FBPINNs/HEAD/images/test-loss.png -------------------------------------------------------------------------------- /images/we-multiscale.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/benmoseley/FBPINNs/HEAD/images/we-multiscale.gif -------------------------------------------------------------------------------- /images/workflow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/benmoseley/FBPINNs/HEAD/images/workflow.png -------------------------------------------------------------------------------- /pyproject.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/benmoseley/FBPINNs/HEAD/pyproject.toml -------------------------------------------------------------------------------- /tests/run.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/benmoseley/FBPINNs/HEAD/tests/run.py --------------------------------------------------------------------------------