Git Product home page Git Product logo

toypush's Introduction

toypush

Simple PIC particle push program. Initialises a group of 32 768 particles per MPI rank and pushes them for 1000 steps using a gyrokinetic EOM [Chang et al. PoP 16 056108 2009]. Magnetic field values are evaluated from an analytic function and electric field values are linearly interpolated from three grid points using barycentric coordinates.

Build Instructions

cd src

make

The Makefile detects the fortran mpi compiler on NERSC platforms Edison, Cori and Carl. On other platforms it tries to use mpifort by default. To use another compiler, edit the Makefile on line 11. Parallelisation by MPI is enabled by default. To use OpenMP, add -DOPENMP to DFLAGS. NOTE: scaling is poor with OpenMP, probably due to false sharing of grid data.

Run Instructions

Run the executable toypush anywhere. No input files are needed. Run parameters are hard-coded in params.F90.

examples: Cori KNL:

srun -n 64 -c 4 --cpu_bind=cores ./toypush

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.