├── .gitignore ├── .idea ├── .gitignore ├── inspectionProfiles │ └── profiles_settings.xml ├── misc.xml ├── modules.xml ├── p2d_solver.iml └── vcs.xml ├── README.md ├── decoupled ├── __init__.py ├── init.py ├── p2d_main_fast_fn.py ├── p2d_newton_fast.py └── res_fn_fast.py ├── examples ├── __init__.py ├── main_decoupled.py ├── main_naive.py ├── main_reorder.py ├── reorder_profile.txt └── reorder_test.py ├── model ├── CurrentCollectorEquation.py ├── ElectrodeEquation.py ├── SeparatorEquation.py ├── __init__.py ├── batterySection.py ├── coeffs.py ├── p2d_param.py └── settings.py ├── naive ├── __init__.py ├── init.py ├── p2d_main_fn.py ├── p2d_newton.py └── residual.py ├── performance ├── __init__.py ├── decouled_reordered_comparison.py ├── decoupled_reordered_eval.pdf ├── decoupled_reordered_linsolve.pdf ├── decoupled_reordered_tot.pdf ├── figs │ ├── decoupled_reordered_eval.pdf │ ├── decoupled_reordered_linsolve.pdf │ ├── decoupled_reordered_tot.pdf │ ├── full_eval.pdf │ ├── full_linsolve.pdf │ ├── full_linsolve_5to30.pdf │ ├── full_tot.pdf │ └── full_total_5to30.pdf ├── full_linsolve2.pdf ├── full_simulation_comparison.py ├── full_simulation_plots.py ├── full_simulation_plots2.py ├── full_tot2.pdf └── reordered_performance.py ├── reordered ├── Jband.png ├── __init__.py ├── banded_matrix.png ├── p2d_main_reorder.py ├── p2d_newton_reorder.py ├── p2d_reorder_fn.py ├── p2d_reorder_newton.py └── reorder_matrix.png ├── tests ├── __init__.py └── test_methods.py └── utils ├── __init__.py ├── banded_matrix.py ├── build_der.py ├── derivatives.py ├── plot_vec.py ├── precompute_c.py ├── reorder.py └── unpack.py /.gitignore: -------------------------------------------------------------------------------- 1 | __pycache__/ 2 | *.py[cod] 3 | *$py.class 4 | /tmp 5 | .DS_Store 6 | /performance/data -------------------------------------------------------------------------------- /.idea/.gitignore: -------------------------------------------------------------------------------- 1 | # Default ignored files 2 | /shelf/ 3 | /workspace.xml 4 | -------------------------------------------------------------------------------- /.idea/inspectionProfiles/profiles_settings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanrach/p2d_fast_solver/HEAD/.idea/inspectionProfiles/profiles_settings.xml -------------------------------------------------------------------------------- /.idea/misc.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanrach/p2d_fast_solver/HEAD/.idea/misc.xml -------------------------------------------------------------------------------- /.idea/modules.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanrach/p2d_fast_solver/HEAD/.idea/modules.xml -------------------------------------------------------------------------------- /.idea/p2d_solver.iml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanrach/p2d_fast_solver/HEAD/.idea/p2d_solver.iml -------------------------------------------------------------------------------- /.idea/vcs.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanrach/p2d_fast_solver/HEAD/.idea/vcs.xml -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanrach/p2d_fast_solver/HEAD/README.md -------------------------------------------------------------------------------- /decoupled/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /decoupled/init.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanrach/p2d_fast_solver/HEAD/decoupled/init.py -------------------------------------------------------------------------------- /decoupled/p2d_main_fast_fn.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanrach/p2d_fast_solver/HEAD/decoupled/p2d_main_fast_fn.py -------------------------------------------------------------------------------- /decoupled/p2d_newton_fast.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanrach/p2d_fast_solver/HEAD/decoupled/p2d_newton_fast.py -------------------------------------------------------------------------------- /decoupled/res_fn_fast.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanrach/p2d_fast_solver/HEAD/decoupled/res_fn_fast.py -------------------------------------------------------------------------------- /examples/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanrach/p2d_fast_solver/HEAD/examples/__init__.py -------------------------------------------------------------------------------- /examples/main_decoupled.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanrach/p2d_fast_solver/HEAD/examples/main_decoupled.py -------------------------------------------------------------------------------- /examples/main_naive.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanrach/p2d_fast_solver/HEAD/examples/main_naive.py -------------------------------------------------------------------------------- /examples/main_reorder.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanrach/p2d_fast_solver/HEAD/examples/main_reorder.py -------------------------------------------------------------------------------- /examples/reorder_profile.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanrach/p2d_fast_solver/HEAD/examples/reorder_profile.txt -------------------------------------------------------------------------------- /examples/reorder_test.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanrach/p2d_fast_solver/HEAD/examples/reorder_test.py -------------------------------------------------------------------------------- /model/CurrentCollectorEquation.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanrach/p2d_fast_solver/HEAD/model/CurrentCollectorEquation.py -------------------------------------------------------------------------------- /model/ElectrodeEquation.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanrach/p2d_fast_solver/HEAD/model/ElectrodeEquation.py -------------------------------------------------------------------------------- /model/SeparatorEquation.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanrach/p2d_fast_solver/HEAD/model/SeparatorEquation.py -------------------------------------------------------------------------------- /model/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /model/batterySection.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanrach/p2d_fast_solver/HEAD/model/batterySection.py -------------------------------------------------------------------------------- /model/coeffs.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanrach/p2d_fast_solver/HEAD/model/coeffs.py -------------------------------------------------------------------------------- /model/p2d_param.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanrach/p2d_fast_solver/HEAD/model/p2d_param.py -------------------------------------------------------------------------------- /model/settings.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanrach/p2d_fast_solver/HEAD/model/settings.py -------------------------------------------------------------------------------- /naive/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /naive/init.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanrach/p2d_fast_solver/HEAD/naive/init.py -------------------------------------------------------------------------------- /naive/p2d_main_fn.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanrach/p2d_fast_solver/HEAD/naive/p2d_main_fn.py -------------------------------------------------------------------------------- /naive/p2d_newton.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanrach/p2d_fast_solver/HEAD/naive/p2d_newton.py -------------------------------------------------------------------------------- /naive/residual.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanrach/p2d_fast_solver/HEAD/naive/residual.py -------------------------------------------------------------------------------- /performance/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanrach/p2d_fast_solver/HEAD/performance/__init__.py -------------------------------------------------------------------------------- /performance/decouled_reordered_comparison.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanrach/p2d_fast_solver/HEAD/performance/decouled_reordered_comparison.py -------------------------------------------------------------------------------- /performance/decoupled_reordered_eval.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanrach/p2d_fast_solver/HEAD/performance/decoupled_reordered_eval.pdf -------------------------------------------------------------------------------- /performance/decoupled_reordered_linsolve.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanrach/p2d_fast_solver/HEAD/performance/decoupled_reordered_linsolve.pdf -------------------------------------------------------------------------------- /performance/decoupled_reordered_tot.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanrach/p2d_fast_solver/HEAD/performance/decoupled_reordered_tot.pdf -------------------------------------------------------------------------------- /performance/figs/decoupled_reordered_eval.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanrach/p2d_fast_solver/HEAD/performance/figs/decoupled_reordered_eval.pdf -------------------------------------------------------------------------------- /performance/figs/decoupled_reordered_linsolve.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanrach/p2d_fast_solver/HEAD/performance/figs/decoupled_reordered_linsolve.pdf -------------------------------------------------------------------------------- /performance/figs/decoupled_reordered_tot.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanrach/p2d_fast_solver/HEAD/performance/figs/decoupled_reordered_tot.pdf -------------------------------------------------------------------------------- /performance/figs/full_eval.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanrach/p2d_fast_solver/HEAD/performance/figs/full_eval.pdf -------------------------------------------------------------------------------- /performance/figs/full_linsolve.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanrach/p2d_fast_solver/HEAD/performance/figs/full_linsolve.pdf -------------------------------------------------------------------------------- /performance/figs/full_linsolve_5to30.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanrach/p2d_fast_solver/HEAD/performance/figs/full_linsolve_5to30.pdf -------------------------------------------------------------------------------- /performance/figs/full_tot.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanrach/p2d_fast_solver/HEAD/performance/figs/full_tot.pdf -------------------------------------------------------------------------------- /performance/figs/full_total_5to30.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanrach/p2d_fast_solver/HEAD/performance/figs/full_total_5to30.pdf -------------------------------------------------------------------------------- /performance/full_linsolve2.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanrach/p2d_fast_solver/HEAD/performance/full_linsolve2.pdf -------------------------------------------------------------------------------- /performance/full_simulation_comparison.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanrach/p2d_fast_solver/HEAD/performance/full_simulation_comparison.py -------------------------------------------------------------------------------- /performance/full_simulation_plots.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanrach/p2d_fast_solver/HEAD/performance/full_simulation_plots.py -------------------------------------------------------------------------------- /performance/full_simulation_plots2.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanrach/p2d_fast_solver/HEAD/performance/full_simulation_plots2.py -------------------------------------------------------------------------------- /performance/full_tot2.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanrach/p2d_fast_solver/HEAD/performance/full_tot2.pdf -------------------------------------------------------------------------------- /performance/reordered_performance.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanrach/p2d_fast_solver/HEAD/performance/reordered_performance.py -------------------------------------------------------------------------------- /reordered/Jband.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanrach/p2d_fast_solver/HEAD/reordered/Jband.png -------------------------------------------------------------------------------- /reordered/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /reordered/banded_matrix.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanrach/p2d_fast_solver/HEAD/reordered/banded_matrix.png -------------------------------------------------------------------------------- /reordered/p2d_main_reorder.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanrach/p2d_fast_solver/HEAD/reordered/p2d_main_reorder.py -------------------------------------------------------------------------------- /reordered/p2d_newton_reorder.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanrach/p2d_fast_solver/HEAD/reordered/p2d_newton_reorder.py -------------------------------------------------------------------------------- /reordered/p2d_reorder_fn.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanrach/p2d_fast_solver/HEAD/reordered/p2d_reorder_fn.py -------------------------------------------------------------------------------- /reordered/p2d_reorder_newton.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanrach/p2d_fast_solver/HEAD/reordered/p2d_reorder_newton.py -------------------------------------------------------------------------------- /reordered/reorder_matrix.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanrach/p2d_fast_solver/HEAD/reordered/reorder_matrix.png -------------------------------------------------------------------------------- /tests/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanrach/p2d_fast_solver/HEAD/tests/__init__.py -------------------------------------------------------------------------------- /tests/test_methods.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanrach/p2d_fast_solver/HEAD/tests/test_methods.py -------------------------------------------------------------------------------- /utils/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /utils/banded_matrix.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanrach/p2d_fast_solver/HEAD/utils/banded_matrix.py -------------------------------------------------------------------------------- /utils/build_der.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanrach/p2d_fast_solver/HEAD/utils/build_der.py -------------------------------------------------------------------------------- /utils/derivatives.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanrach/p2d_fast_solver/HEAD/utils/derivatives.py -------------------------------------------------------------------------------- /utils/plot_vec.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanrach/p2d_fast_solver/HEAD/utils/plot_vec.py -------------------------------------------------------------------------------- /utils/precompute_c.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanrach/p2d_fast_solver/HEAD/utils/precompute_c.py -------------------------------------------------------------------------------- /utils/reorder.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanrach/p2d_fast_solver/HEAD/utils/reorder.py -------------------------------------------------------------------------------- /utils/unpack.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hanrach/p2d_fast_solver/HEAD/utils/unpack.py --------------------------------------------------------------------------------