Welcome to this month's issue of Scientific Computing in Rust Monthly.
Scientific Computing in Rust Monthly can be viewed online at scientificcomputing.rs/monthly, you can sign up to receive an email copy at mailinglist.scientificcomputing.rs, or you can subscribe using the RSS feed at scientificcomputing.rs/monthly/rss.xml.
Items can be added to the next issue of the newsletter by opening a pull request to the Scientific Computing in Rust Monthly repository on GitHub. You can find more information about adding items here.
zarrs is a Rust library for interfacind with the Zarr data storage format. This storage format is often used in the climate modelling and weather forecasting community. To find out more about the kind of libraries that use zarrs, we recommend reading this blog post about icechunk.
The integraal
crate features a main structure that acts as the entrypoint for your integral computations. You can
specify the domain and the function of the integral, as well as the approximation rule using methods of the structure.
It follows a builder-like pattern.
Domains and functions are described using struct enums for the sake of flexibility. The repository contains usage examples for both analytical expression and sampled values integration. Multiple numerical integration methods are implemented, each having different requirements and dependencies. All of this is detailed in the documentation.
In the future, the computation kernel may support different execution backends. This would align with the initial motivation behind this crate, that is being an experiment over flexible API designs for HPC.
There are a large number of upcoming PhD opportunities at University College London (UCL) and Imperial College London as part of the Collaborative Computational Modelling at the Interface (CCMI) Centre for Doctoral Training (CDT). A list of available projects being offered as part of the CDT can be found at ccmi-cdt.org/phd_projects/phd_project_list.html. In particular, the project "Fast Multipole Methods on modern architectures" offered by Timo Betcke will build upon existing Rust codes, although there may be opportunities to use Rust in a number of other projects.