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