Skip to content

School project for implementing the Fast Multipole Multiplication (FMM) algorithm, done in pairs.

Notifications You must be signed in to change notification settings

Silzinc/FMM-Project

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

89 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Numerical physics class project

Many body simulation (FMM method)


Project organisation

  • src: production source code.
  • test: tests and data analysis.
  • cpp: C++ implementation of the FMM algorithm.

Installation (python part)

With uv

uv is recommended to have the right python version installed, as it manages both python versions and packages.

uv sync

Then you can activate the virtual environment created in .venv to use python, or prefix all your python commands with uv run :

uv run some_script.py
uv run pytest test/test_fmm.py -s

Using uv

Handle python packages

  • Install a library: uv add <library>
  • Remove a library: uv remove <library>
  • Install libraries from pyproject.toml: uv sync

Run tests

After running uv sync, you can run the tests in the test directory with the following command:

uv run pytest test/*.py -s

About

School project for implementing the Fast Multipole Multiplication (FMM) algorithm, done in pairs.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •