Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/yaraslaut/prop
2D FDTD solver of Maxwell's equations
https://github.com/yaraslaut/prop
cpp electromagnetics kokkos maxwell-equations physics simulation
Last synced: 3 months ago
JSON representation
2D FDTD solver of Maxwell's equations
- Host: GitHub
- URL: https://github.com/yaraslaut/prop
- Owner: Yaraslaut
- License: apache-2.0
- Created: 2023-01-05T10:46:55.000Z (about 2 years ago)
- Default Branch: master
- Last Pushed: 2024-04-04T15:44:06.000Z (10 months ago)
- Last Synced: 2024-07-29T19:07:41.309Z (6 months ago)
- Topics: cpp, electromagnetics, kokkos, maxwell-equations, physics, simulation
- Language: C++
- Homepage:
- Size: 1.11 MB
- Stars: 6
- Watchers: 1
- Forks: 0
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
![](logo/logo.png)
# prop
FDTD solver of Maxwell's equations with the use of different backends including GPU.
While computational part is written in c++ you are encouraged to use `python` wrapper to execute calculations and handle
data.# Build
`prop` uses `cmake` for compilation and relies on CPM to fetch external packages.
Example command to build prop with openmp support, to compile with CUDA support, use `prop-cuda-debug` preset.``` sh
cmake --preset prop-openmp-debug
cmake --build build --target pyprop
```
IMPORTANT: please specify `target` when building `prop` otherwise compilation time will be extremely large.
Include target `prop_test` if you want to run unit tests.You can see all available presets via `cmake --list-presets` command.
# Usage and Examples
You can find examples in `examples` folder. `prop` provides cmake target `copy_python_files_in_binary_dir` to run examples without installation of python package system wide.
``` sh
cd build
cmake --build . --target copy_python_files_in_binary_dir
python ./simple.py```