Coder Social home page Coder Social logo

murillo-group / sarkas Goto Github PK

View Code? Open in Web Editor NEW
13.0 6.0 11.0 109.03 MB

Sarkas Python MD suite for Dense Plasmas Physics

Home Page: https://murillo-group.github.io/sarkas/

License: MIT License

Python 100.00%
molecular-dynamics molecular-dynamics-simulation numba numpy plasma-physics pppm python particle-particle-particle-mesh strongly-coupled-plasmas

sarkas's Introduction

Sarkas

A Pure Python Molecular Dynamics package for Non-Ideal Plasmas

Sarkas aims at lowering the entry barrier for computational plasma physics by providing a comprehensive MD suite complete with pre- and post-processing tools commonly found in plasma physics.

Sarkas is entirely written in Python without calls to C/Fortran hence avoiding a two-language problem. It relies on the most common Python scientific packages, e.g. NumPy, Numba, SciPy, and Pandas, which provide a solid foundation built, optimized, and well documented by one of the largest community of developers. Furthermore, Sarkas is developed using an object-oriented approach allowing users to add new features in a straight-forward way.

Sarkas targets a broad user base: from experimentalists to computational physicists, from students approaching plasma physics for the first time to seasoned researchers. Therefore Sarkas’ design revolves around two primary requirements: ease-of-use and extensibility.

Documentation

https://murillo-group.github.io/sarkas/

Installation

Sarkas can be installed by running the command

pip install sarkas

in a terminal or command prompt window.

sarkas's People

Contributors

davidrimel avatar lucianogsilvestri avatar lukestanek avatar murillogroupmsu avatar namurphy avatar pwessels-uhh avatar silvestristefano avatar yongjun0 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

sarkas's Issues

Integrator Repr

The integrator.repr() throws a Fatal Python error: Cannot recover from stack overflow.
I don't understand why

Extra file in docs/examples/YOCP

The folder docs/examples/YOCP contains the extra file Quickstart.ipynb, which is a duplicate of docs/documentation/Tutorial_NB/Quickstart.ipynb.
This causes a WARNING of missing from any toctree when building.

Fix progress bar for single species diffusion.

When computing the diffusion of a single species in a mixture (H-He BIM), the progress bar only displays the progress for computing the vacf of a single particle. Instead, it should display the time of completion for N_part*t_vacf where N_part is the number of particles and t_vacf is the time to compute a single particle VACF.
.

Website: tqdm

The website needs to be updated to include tqdm as a requirement.

Broken links in jupyter notebooks

In the following Jupyter notebooks there are broken links to the api pages:

  • Interdiffiusion BIM
  • Magnetized Plasma
  • YOCP Viscosity

this is due to the fact of the recent implementation of autosummary.

EGS Potential

The parameter nu in the EGS potential is not calculated correctly.

sim.setup() error

Hello all,

I am student using your program Sarkas with the goal of obtaining plasma viscosities. After downloading Sarkas, I used the "Quickstart" guide to make sure everything was running smoothly. I downloaded and opened the provided notebook, and changed the "input_file_name" variable to "/home/admin17/anaconda3/envs/sarkas/Testing/yukawa_mks_p3m.yaml" (the location of the input file on my computer). Everything else remained unchanged. After running the second cell, I recieved the following error:

"AttributeError: 'NoneType' object has no attribute 'lower'"

I have also attatched a PDF of my notebook for more details on the error.
Quickstart_error.pdf

Has anybody encountered this bug before and know how to solve it? Any help would be appreciated.

Thank you,
Drake Ghaderi

PPPM Not working

While testing PPPM examples on Windows machine, I encurred in this error

TypingError: Failed in nopython mode pipeline (step: nopython frontend)
Invalid use of BoundFunction(array.reshape for array(int32, 1d, C)) with parameters (Tuple(Literal[int](1), int32))

During: resolving callee type: BoundFunction(array.reshape for array(int32, 1d, C))
During: typing of call at c:\users\elplu\documents\github\sarkas\sarkas\potentials\force_pm.py (76)


File "..\github\sarkas\sarkas\potentials\force_pm.py", line 76:
def force_optimized_green_function(box_lengths, mesh_sizes, aliases, p, constants):
    <source elided>

    nx_v = np.arange(mesh_sizes[0]).reshape((1, mesh_sizes[0]))

Numba version is 0.51.2

Electric Fields

Thank you for producing this excellent software! I have read most of the documentation and run about half of the example cases. A calculation I would like to do is to generate a histogram of a time sequence of electric field values at a fixed point in space of a proton/electron plasma. I have looked, and I don't think the electric field (or the force) is one of the "observable" quantities. Can you recommend the best way to go to pull this information out the code/simulations? I'm guessing I could postprocess the checkpoint dumps if they contain the particle positions, but I imagine that this might not be very fast. Thanks!

Lennard Jones example files

I tried to run the LJ example files but I get a segmentation fault on the first time step of Equilibration.
Yukawa examples work though.

Plot style

command plt.style.use('MSUStyle') gives error. Can't find MSUStyle.

Pip install not working.

Removed Sarkas from my machine completely in an attempt to fresh install. Ran into the following error:

(sarkas) Lukes-MBP:~ lukestanek$ pip install sarkas-md ERROR: Could not find a version that satisfies the requirement sarkas-md (from versions: none) ERROR: No matching distribution found for sarkas-md (sarkas) Lukes-MBP:~ lukestanek$ git clone [email protected]:murillo-group/sarkas.git

EGS Potential

Check that the parameter b is calculated correctly in all units systems.

Duplicate warning when building docs

When running make html I get multiple WARNING of duplicate citations see this

/Users/lucianogsilvestri/Documents/GitHub/sarkas/docs/api/sarkas.potentials.rst:5: WARNING: duplicate label submodules, other instance in /Users/lucianogsilvestri/Documents/GitHub/sarkas/docs/api/sarkas.rst
/Users/lucianogsilvestri/Documents/GitHub/sarkas/docs/api/sarkas.potentials.rst:21: WARNING: duplicate label module contents, other instance in /Users/lucianogsilvestri/Documents/GitHub/sarkas/docs/api/sarkas.rst
/Users/lucianogsilvestri/Documents/GitHub/sarkas/docs/api/sarkas.time_evolution.rst:5: WARNING: duplicate label submodules, other instance in /Users/lucianogsilvestri/Documents/GitHub/sarkas/docs/api/sarkas.potentials.rst
/Users/lucianogsilvestri/Documents/GitHub/sarkas/docs/api/sarkas.time_evolution.rst:14: WARNING: duplicate label module contents, other instance in /Users/lucianogsilvestri/Documents/GitHub/sarkas/docs/api/sarkas.potentials.rst
/Users/lucianogsilvestri/Documents/GitHub/sarkas/docs/api/sarkas.tools.rst:5: WARNING: duplicate label submodules, other instance in /Users/lucianogsilvestri/Documents/GitHub/sarkas/docs/api/sarkas.time_evolution.rst
/Users/lucianogsilvestri/Documents/GitHub/sarkas/docs/api/sarkas.tools.rst:14: WARNING: duplicate label module contents, other instance in /Users/lucianogsilvestri/Documents/GitHub/sarkas/docs/api/sarkas.time_evolution.rst
/Users/lucianogsilvestri/Documents/GitHub/sarkas/docs/api/sarkas.utilities.rst:5: WARNING: duplicate label submodules, other instance in /Users/lucianogsilvestri/Documents/GitHub/sarkas/docs/api/sarkas.tools.rst
/Users/lucianogsilvestri/Documents/GitHub/sarkas/docs/api/sarkas.utilities.rst:14: WARNING: duplicate label module contents, other instance in /Users/lucianogsilvestri/Documents/GitHub/sarkas/docs/api/sarkas.tools.rst
/Users/lucianogsilvestri/Documents/GitHub/sarkas/docs/index.rst:8: WARNING: duplicate label sarkas, other instance in /Users/lucianogsilvestri/Documents/GitHub/sarkas/docs/api/modules.rst
/Users/lucianogsilvestri/Documents/GitHub/sarkas/docs/quickstart/Quickstart.ipynb:16: WARNING: duplicate label simulation, other instance in /Users/lucianogsilvestri/Documents/GitHub/sarkas/docs/examples/Magnetized_Plasma.ipynb
/Users/lucianogsilvestri/Documents/GitHub/sarkas/docs/quickstart/Quickstart.ipynb:412: WARNING: duplicate label postprocessing, other instance in /Users/lucianogsilvestri/Documents/GitHub/sarkas/docs/examples/Magnetized_Plasma.ipynb
/Users/lucianogsilvestri/Documents/GitHub/sarkas/docs/theory/integrators.rst:5: WARNING: duplicate label integrators, other instance in /Users/lucianogsilvestri/Documents/GitHub/sarkas/docs/theory/integrators.rst
/Users/lucianogsilvestri/Documents/GitHub/sarkas/docs/theory/potentials.rst:5: WARNING: duplicate label potentials, other instance in /Users/lucianogsilvestri/Documents/GitHub/sarkas/docs/theory/potentials.rst
/Users/lucianogsilvestri/Documents/GitHub/sarkas/docs/theory/thermostats.rst:5: WARNING: duplicate label thermostats, other instance in /Users/lucianogsilvestri/Documents/GitHub/sarkas/docs/theory/thermostats.rst
/Users/lucianogsilvestri/Documents/GitHub/sarkas/docs/tutorial/Pre_Simulation_Testing.ipynb:320: WARNING: duplicate label simulation, other instance in /Users/lucianogsilvestri/Documents/GitHub/sarkas/docs/quickstart/Quickstart.ipynb
/Users/lucianogsilvestri/Documents/GitHub/sarkas/docs/tutorial/Pre_Simulation_Testing.ipynb:577: WARNING: duplicate label force error, other instance in /Users/lucianogsilvestri/Documents/GitHub/sarkas/docs/theory/force_error.rst
/Users/lucianogsilvestri/Documents/GitHub/sarkas/docs/tutorial/input_file.rst:167: WARNING: duplicate label post processing, other instance in /Users/lucianogsilvestri/Documents/GitHub/sarkas/docs/tutorial/Pre_Simulation_Testing.ipynb

Fix it

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.