Directories in this packageΒΆ
When you git clone https://github.com/flatironinstitute/finufft, or unpack
a tar ball, you will get the following. (Please see installation instructions)
Main library source:
makefile: the single GNU makefile (there are no makefiles in subdirectories)make-platforms/: OS/platform specific setting files to use as yourmake.incCMakeLists.txt: top-level CMake filecmake/: CMake specific helper filessrc/: main library C++ CPU sourcessrc/cuda/: main library CUDA GPU sourcesinclude/: public library API header filesinclude/{cu}finufft: private header fileslib/: dynamic (.so) library will be built here by GNU makelib-static/: static (.a) library will be built here by GNU make
Examples, tutorials, and docs:
examples/: simple example codes for calling the library from C++ and Ctutorial/: application demo codes (various languages), supportingdocs/tutorial/docs/: source files for documentation (.rstfiles are human-readable, kinda)README.md: github-facing (and human text-only reader) welcome messageLICENSE: how you may use this softwareCHANGELOG: list of changes, release notesdevel/: scratch space for development, ideas docs, code snippets
Testing:
test/: main validation tests (C++/bash), including:test/basicpassfail{f}simple smoke test with exit codetest/check_finufft.shis the main pass-fail validation bash scripttest/results/: some rather old output text filestest/cuda/: GPU tests
perftest/: main performance and developer tests (C++/bash), including:perftest/spreadtestnd.sh, etc : Please seeperftest/READMEperftest/cuda/: GPU performance tests
.github/workflows/andJenkinsfile: for continuous integration (CI)
Language interfaces and packaging:
fortran/: wrappers and example drivers for Fortran (seefortran/README)matlab/: MATLAB/octave wrappers (CPU), tests, and examplespython/: python wrappers (CPU and GPU), examples, and teststools/: tools for building python wheels, docker