Hello, I developed a new package to analyze Einstein Toolkit simulations, kuibit [0,1]. kuibit is a Python3.6+ code that I built from scratch following the same design (and in various instances, implementation details too) of Wolfgang Kastaun's PostCactus.
kuibit provides high-level data types to easily work with grid functions, time and frequency series, gravitational waves, and so on. It also has readers to effortlessly access simulation data with full support for HDF5 and ASCII output (1D, 2D, 3D grid data, scalar data, reductions, horizon data, ...). You can find a reasonably comprehensive list of features in the documentation [2] or a high-level summary in the frontpage of the docs [3]. One of the main reasons I wrote this code is for other people to use it. Our group (University of Arizona) is a young one and we don't have any sophisticated toolchain to analyze simulation data. Without suitable tools, post-processing simulations can be a daunting task for those that are new to the Einstein Toolkit. Given that I want other people to use kuibit, I made the effort to make the code user and developer-friendly. For users, there is documentation [4] with examples and small tutorials. Also, the package is on PyPI so it can be easily installed and updated. For developers, the entire codebase has unit tests and continuous integration [5], there are extensive comments, and the style of the code is rather verbose to help developers understand what is going on. The continuous integration also lints the code, performs static analysis, and generates the documentation, reducing the maintenance costs. kuibit takes care of all the low-level details need to deal with simulation data, so it greatly lowers the entry barrier in using the Einstein Toolkit. I believe that this, along with the care I put in making the code accessible to other developers, makes kuibit a good candidate for inclusion in the Einstein Toolkit. The main problem with kuibit is that it is a new code: regardless of all the tests I wrote, there will be bugs, unergonomic interfaces, and performance issues. kuibit needs to be tested with several real-world projects and cross-checked with other codes. I am happy to give a short introduction to kuibit during a weekly call if there's interest. In the meantime, the code is available here: https://github.com/Sbozzolo/kuibit Best regards, Gabriele Bozzola [0] https://github.com/Sbozzolo/kuibit [1] https://github.com/Sbozzolo/kuibit#what-is-a-kuibit [2] https://sbozzolo.github.io/kuibit/features.html [3] https://sbozzolo.github.io/kuibit/#summary-of-features [4] https://sbozzolo.github.io/kuibit/ [5] https://github.com/Sbozzolo/kuibit/actions
_______________________________________________ Users mailing list [email protected] http://lists.einsteintoolkit.org/mailman/listinfo/users
