All Projects → tianhongg → WAND-PIC

tianhongg / WAND-PIC

Licence: MIT license
WAND-PIC

Programming Languages

C++
36643 projects - #6 most used programming language
Makefile
30231 projects

Projects that are alternatives of or similar to WAND-PIC

Ocaramba
C# Framework to automate tests using Selenium WebDriver
Stars: ✭ 234 (+1070%)
Mutual labels:  parallel
Fluid Simulation
Self advection, external force and pressure solve to a velocity field represented by a MaC grid.
Stars: ✭ 107 (+435%)
Mutual labels:  particle-in-cell
snmpman
Easy massive SNMP-agent simulation with the use of simple YAML files
Stars: ✭ 28 (+40%)
Mutual labels:  parallel
Rls
Reinforcement Learning Algorithms Based on TensorFlow 2.x
Stars: ✭ 239 (+1095%)
Mutual labels:  parallel
Marathon
Cross-platform test runner written for Android and iOS projects
Stars: ✭ 250 (+1150%)
Mutual labels:  parallel
IPpy
🚀 Ping IP addresses and domains in parallel to find the accessible and inaccessible ones.
Stars: ✭ 54 (+170%)
Mutual labels:  parallel
Transducers.jl
Efficient transducers for Julia
Stars: ✭ 226 (+1030%)
Mutual labels:  parallel
Java-AgentSpeak
LightJason - AgentSpeak(L++) for Java
Stars: ✭ 21 (+5%)
Mutual labels:  parallel
Ray
An open source framework that provides a simple, universal API for building distributed applications. Ray is packaged with RLlib, a scalable reinforcement learning library, and Tune, a scalable hyperparameter tuning library.
Stars: ✭ 18,547 (+92635%)
Mutual labels:  parallel
MatlabProgressBar
This MATLAB class provides a smart progress bar like tqdm in the command window and is optimized for progress information in simple iterations or large frameworks with full support of parallel parfor loops provided by the MATLAB Parallel Computing Toolbox.
Stars: ✭ 44 (+120%)
Mutual labels:  parallel
Qawolf
🐺 Create browser tests 10x faster
Stars: ✭ 2,912 (+14460%)
Mutual labels:  parallel
Hss
An interactive parallel ssh client featuring autocomplete and asynchronous execution.
Stars: ✭ 248 (+1140%)
Mutual labels:  parallel
vpic
Vector Particle-In-Cell (VPIC) Project
Stars: ✭ 124 (+520%)
Mutual labels:  particle-in-cell
Js
turbo.js - perform massive parallel computations in your browser with GPGPU.
Stars: ✭ 2,591 (+12855%)
Mutual labels:  parallel
hp2p
Heavy Peer To Peer: a MPI based benchmark for network diagnostic
Stars: ✭ 17 (-15%)
Mutual labels:  parallel
Deepgraph
Analyze Data with Pandas-based Networks. Documentation:
Stars: ✭ 232 (+1060%)
Mutual labels:  parallel
piclas
PICLas is a parallel, three-dimensional PIC-DSMC solver developed cooperatively by the Institute of Space Systems, Institute of Aerodynamics and Gas Dynamics at the University of Stuttgart and the spin-off boltzplatz. PICLas is a flexible particle-based plasma simulation suite.
Stars: ✭ 34 (+70%)
Mutual labels:  particle-in-cell
await
28Kb, small memory footprint, single binary that run list of commands in parallel and waits for their termination
Stars: ✭ 73 (+265%)
Mutual labels:  parallel
parallel-event-emitter
Parallel event emitter built on futures-rs
Stars: ✭ 29 (+45%)
Mutual labels:  parallel
ips2ra
In-place Parallel Super Scalar Radix Sort (IPS²Ra)
Stars: ✭ 22 (+10%)
Mutual labels:  parallel

WAND-PIC

logo

(This is the alpha release of WAND-PIC, some parts are not completely developed and still under testing. Please report an issue if you see errors, and any resulting instability. Thanks!)

Wakefield AcceleratioN and Direct-laser acceleration -- Particle in Cell Simulation.

WAND-PIC is a 3D parallel quasi-static particle-in-cell simulation code. Developed by Tianhong Wang in 2019, at Dr. Gennady Shvets' Group, Cornell University.

You are welcome to clone or download this repository. 😄 Please also send an email to the author Tianhong Wang([email protected]). We'd like to keep track of user numbers and affiliations. plot

Features

  • 2D partitioning of the transverse domain.
  • Adaptive longitudinal mesh refinement according to the speed of plasma trajectories.
  • Advanced quasi-static equations, there is no need of "predictor-corrector" scheme.
  • In-house parallel Multigrid Solver. One for all equations.
  • Sub-cycling of macro beam particles, captures sophisticated wave-particle resonant interaction.
  • Parallel output and reload.

Structure

logo

Prerequisites

  • A MPI Library
impi or mpich
  • A Parallel NetCDF Library
pnetcdf
  • A Good Weather. 🌞

  • A Working Computer 💻 and Electricity.

Compiling

A simple & working Makefile is included Makefile. The 'make' should work on most machines, and your are welcome to write your own one.

Tested Environment

WAND-PIC has been tested on four different server/supercomputers, from few cores to over 4000 cores, including:

  • TACC STAMPEDE2: SKX Nodes [Intel Xeon Platinum 8160 ("Skylake")]
intel/18.0.2; impi/18.0.2; pnetcdf/1.11.0
  • TACC STAMPEDE2: KNL Nodes [Intel Xeon Phi 7250 ("Knights Landing")]
intel/18.0.2; impi/18.0.2; pnetcdf/1.11.0
  • TACC LONESTAR5: Nodes [Intel Xeon E5-2690 v3 ("Haswell")]
intel/18.0.2; cray_mpich/7.7.3; pnetcdf/1.8.0
  • Small Server: Nodes [Intel Xeon(R) E7-4830 v4]
intel/18.0.2; impi/18.0.2; pnetcdf/1.11.0

(** when running with pnetcdf older than 1.10.0??, parallel output may not work properly. This happens on Lonestar5 occasionally for unknown reasons.)

Benchmarking

logo

Running

Example: running on a server with 36 cores

mpiexec -n 36 ./WAND

Simulation Example

Intense Laser Pulse Propagates in the Tenuous Plasma logo

Long Electron Beam Propagates in the Tenuous Plasma (Hosing Instability) logo

Developing

I started to work on this project in early 2019 and I am currently the only author of this project🙀. Due to the lack of workforce and limited energy & time, I may improve and update the code slowly in the future🐌🐌🐌🐌. Hidden bugs are waiting to be found, and many functions/modules need to be added. This version of WAND-PIC is the first version I finished recently (around July-2019) and it’s already been used in several research. During the development of WAND-PIC, I am trying to keep as less dependency as possible and the pnetcdf is the only lib I use. Some part of the code are still under developing, for example, the Multigrid class, it needs further testing and improving. Suggestions and feedback are welcome.

Task Lists

  • Periodic Boundary Condition (finished, need test and upload)..
  • A Reduced, Simplified Radiation Module (Classical)..
  • Pipeline in Longitudinal Direction and Load Balance..
  • More and Better MG Solver Smoother..
  • High-order Pondermotive Potential..
  • OpenMP..

Author

License

This project is licensed under the MIT License - see the LICENSE.md file for details.

Acknowledgments

  • The author of WAND-PIC would like to thank all members in Dr. Gennady Shvets' Plasma Group at Cornell University.
  • Thank Dr. Vladimir N. Khudik for his help in deriving related equations.
  • Thank Dr. Roopendra Singh Rajawat for inventing the name "WAND-PIC".

Reference

About some of the algorithms

About DLA_1; DLA_2

About our group

||----------------------------------------------------------------------------------||
||----------------------------------------------------------------------------------||
||                                                                                  ||
||               __        ___    _   _ ____        ____ ___ ____                   ||
||               \ \      / / \  | \ | |  _ \      |  _ \_ _/ ___|                  ||
||                \ \ /\ / / _ \ |  \| | | | |_____| |_) | | |                      ||
||                 \ V  V / ___ \| |\  | |_| |_____|  __/| | |___                   ||
||                  \_/\_/_/   \_\_| \_|____/      |_|  |___\____|                  ||
||                                                                                  ||
||----------------------------------------------------------------------------------||
||--  (W)akefield (A)cceleration a(n)d (D)LA - (P)article (i)n (C)ell Simulation  --||
||----------------------------------------------------------------------------------||
||---Author-----------           : Tianhong Wang                --------------------||
||---Starting---------           : Jan-11-2019                  --------------------||
||---Email------------           : [email protected]            --------------------||
||---Group------------           : Dr. Gennady Shvets' Group    --------------------||
||---Copyright--------           : (C) 2019 by Tianhong Wang    --------------------||
||----------------------------------------------------------------------------------||
||----------------------------------------------------------------------------------||
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].