Relativistic Difference Scheme Particle-in-Cell code (REDPIC)
Project description
Relativistic Difference Scheme Particles-In-Cell (REDPIC)
This PIC code has been developed since 2022 as an alternative to ASTRA, WARP, XTRACK and other codes.
For particle dynamics simulation using finite difference scheme relativistic.
Table of content
Getting Started
Local build and launch
To build our application and create a Docker image, it will be enough to run the following command:
docker build -t redpic .
To launch the application, use the command:
docker run -it redpic
Documentation
The documentation contains all the Latex files needed to generate documentation.
The main source files are located in the manual
.
main.tex is the source file that Latex compiler will use to generate the paper. However, in order to keep the code cleaner, the main sections of the paper are all located in the sections. In this way you will experience less merging issues when two or more people are working on the same doc.
Just edit the text in the relative Latex file (e.g., introduction, methodology, etc.) and you should be ready to go. No need to change any other file.
Adding a new section
Just copy a section file (e.g., introduction.tex) paste it in the same directory. Rename the pasted file (e.g. first_chapter.tex) and add this file to main.tex.
Additional Resources
Alternatively you can find great resources on the Overleaf Tutorial website or on Latex wikibooks.
CUDA installation
For CUDA implementation we use Numba library. For more information about CUDA installation see Numba CUDA installation guide.
Prerequisites
Latex
Latex IDE and compiler installed locally on your machine. We recommend using a PyCharm plugin called TeXiFy IDEA as IDE and miktex as Latex compiler
Alternatively you can push your code to Overleaf using git and only use Overleaf. We would discourage you from doing this! Overleaf should only be used for the review.
Useful Resources
IDE
You may want to take advantage of the power of IDEs. For Python We would recommend using PyCharm.
Alternatives are:
Git
You should install git on your computer. And have GitHub account.
Authors
- Vyacheslav Fedorov - Initial work
- Danila Nikiforov - Initial work
License
This project is licensed under the MIT License - see the LICENSE file for details
Contributing
Dependencies
Use make deps
command to install library, its production and development dependencies.
Formatting
Use make format
to autoformat code with black tool.
Linter
Use make lint
to run only linters for current python version
Test
Use make test
to run test for current python version
Maintaining
If pull request consists of several meaningful commits, that should be preserved, then use "Rebase and merge" option. Otherwise use "Squash and merge".
New release (changelog, tag and pypi upload) will be automatically created on each push to master via Github Actions workflow.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file redpic-0.11.8.tar.gz
.
File metadata
- Download URL: redpic-0.11.8.tar.gz
- Upload date:
- Size: 16.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/5.1.0 CPython/3.12.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9978316dd691ab235693b1cc6c249a1125c0f740c4352e4d4aa8fe10f31eae2d |
|
MD5 | 5548c31c2aa1e585aa2a4b00e49b0ee7 |
|
BLAKE2b-256 | 31a29f7e21a61373a75fc9a5f39ac63f1017c9e7e79b5bbe6a00656ea0ea6dec |
File details
Details for the file redpic-0.11.8-py3-none-any.whl
.
File metadata
- Download URL: redpic-0.11.8-py3-none-any.whl
- Upload date:
- Size: 18.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/5.1.0 CPython/3.12.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | c1c8d2cac2729444ed5014f261c680eb635ef54c6e4255bea161d2c445e10be4 |
|
MD5 | 73561e05adac66b795dd452bc8449b22 |
|
BLAKE2b-256 | 752fe59747dc3af940ae38fe01d8dcf92367d1ca3a0fd3dc67ac3563cd2817bd |