A Particle-in-Cell framework with dynamic behavior modification through callbacks
Project description
Introduction
Visit the documentation for installation and usage instructions.
Core Classes
classDiagram
Patches --> Patch : contains
Patch --> ParticlesBase : contains
Patch --> Fields : contains
Patch --> PML : contains
Patch <|-- Patch2D~Patch~
Patch <|-- Patch3D~Patch~
RadiationBase --> Patches : contains
PairProductionBase --> Patches : contains
CurrentDeposition --> Patches : contains
PusherBase --> Patches : contains
FieldInterpolation --> Patches : contains
MaxwellSolver --> Patches : contains
MPIManager --> Patches : contains
Pydantic.BaseModel <|-- Species
Species <|-- XXX~Species~
Species <|-- Electron~Species~
Species --> ParticlesBase : creates
class Patch {
index: int
*_neighbor_index: int
}
class Patches {
sync_particles()
sync_guard_fields()
sync_currents()
}
class ParticlesBase {
x,y,z ...: NDArray[float]
is_dead: NDArray[bool]
}
class Fields {
ex, ey, ...: NDArray[float]
}
class Species {
name, q, m, ...
density: Callable
}
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
Development Status
λPIC is currently in active development. The API may change without notice.
License
This project is licensed under the GPL-3.0 License.
Acknowledgments
This work was supported by the National Natural Science Foundation of China (NSFC) under Grant No. 12304384.
This project was inspired by and adapted elements from the EPOCH and the Smilei projects.
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
File details
Details for the file lambdapic-0.7.1.tar.gz.
File metadata
- Download URL: lambdapic-0.7.1.tar.gz
- Upload date:
- Size: 3.4 MB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5e0073aa3ab065d84a11b3f2d5d93d7e580d150cd2ba5ea9a52244c635ef1af1
|
|
| MD5 |
00dff381fc4d5dd3100fb1ed08b2d6e0
|
|
| BLAKE2b-256 |
5709a9d4bfe02a7bc23ae72b5936c70e31939bd596d5fdb596e11e1530d0a933
|
Provenance
The following attestation bundles were made for lambdapic-0.7.1.tar.gz:
Publisher:
python-publish.yml on xsgeng/lambdapic
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
lambdapic-0.7.1.tar.gz -
Subject digest:
5e0073aa3ab065d84a11b3f2d5d93d7e580d150cd2ba5ea9a52244c635ef1af1 - Sigstore transparency entry: 409234581
- Sigstore integration time:
-
Permalink:
xsgeng/lambdapic@dd02d1d8880dd6f417a2791bd0b8c307deb0d7aa -
Branch / Tag:
refs/tags/v0.7.1 - Owner: https://github.com/xsgeng
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
python-publish.yml@dd02d1d8880dd6f417a2791bd0b8c307deb0d7aa -
Trigger Event:
release
-
Statement type: