Ever wondered whether fast direct solvers are compatible with Quadrature by Expansion, a method for the evaluation of singular layer potentials? Wonder no more 🙂 In https://arxiv.org/abs/2504.13809, we offer an algorithmic recipe, analysis, an end-to-end error model, and some weighting tricks, the latter two applicable beyond QBX, along with numerical experiments. #layerpot #fastalg #fastalgorithm #numpde #numerics #scicomp #paper 🎓 📖
A Fast Direct Solver for Boundary Integral Equations Using Quadrature By Expansion

We construct and analyze a hierarchical direct solver for linear systems arising from the discretization of boundary integral equations using the Quadrature by Expansion (QBX) method. Our scheme builds on the existing theory of Hierarchical Semi-Separable (HSS) matrix operators that contain low-rank off-diagonal submatrices. We use proxy-based approximations of the far-field interactions and the Interpolative Decomposition (ID) to construct compressed HSS operators that are used as fast direct solvers for the original system. We describe a number of modifications to the standard HSS framework that enable compatibility with the QBX family of discretization methods. We establish an error model for the direct solver that is based on a multipole expansion of the QBX-mediated proxy interactions and standard estimates for the ID. Based on these theoretical results, we develop an automatic approach for setting scheme parameters based on user-provided error tolerances. The resulting solver seamlessly generalizes across two- and tree-dimensional problems and achieves state-of-the-art asymptotic scaling. We conclude with numerical experiments that support the theoretical expectations for the error and computational cost of the direct solver.

arXiv.org
Published in JOSS: 'jax-smfsb: A Python library for stochastic systems biology modelling and inference' https://doi.org/10.21105/joss.07491 #python #JAX #scicomp #sciml #sysbio #bayesian
jax-smfsb: A Python library for stochastic systems biology modelling and inference

Wilkinson, D. J., (2025). jax-smfsb: A Python library for stochastic systems biology modelling and inference. Journal of Open Source Software, 10(106), 7491, https://doi.org/10.21105/joss.07491

Journal of Open Source Software
I'm releasing lecture slides and related demos (Jupyter notebooks) for my classes in open-source form on Github:
https://andreask.cs.illinois.edu/lecture-slides-and-demos-released-as-open-source/ 🗨️ 🎓 📖 🧑‍🏫 #teaching #scicomp #opensource #lecturenotes
Lecture Slides and Demos Released as Open Source

I like to do math, small prototypes and other experimenting with Python in Jupyter notebooks. NumPy, SciPy, SymPy and Matplotlib have been very handy.

But recently Python was too slow for what I was doing and I had trouble juggling Numpy arrays like I often have (it is required for speed). I know some #Rust so I decided to give #evcxr a go because it has a Jupyter kernel. And omg, I wasn't disappointed! It was mindbogglingly fast compared to what I'm used to and it also made the hard part of my code way easier to get right.

However, I only needed math functions provided by std this time. Now I'm trying to figure out if there are science Rust libs that are convenient enough to replace most Python in my notebooks. I know it's a fragmented space, but maybe one could already gather a comprehensive collection of crates manually.

Any recommendations?

#RustLang #SciPy #NumPy #SymPy #SciComp #Math

How busy is the #HPC cluster? Maybe the real question is "how long do I have to wait?". Our new blog post goes into some of these questions we get asked sometimes, and the high-level picture probably applies other places too.
https://aaltoscicomp.github.io/blog/2024/how-busy-is-the-cluster/
#SciComp #HPC #ComputationalScience #Slurm
How busy is the cluster? A discussion

We occasionally get some questions: how busy is the cluster? How long do I have to wait? Is there some dashboard that can tell me? The answer is, unfortunately, not so easy. Our cluster uses dynami...

Aalto SciComp Blog

Interested in how we do our online teaching: production values, streaming, everyone can attend, videos and materials available immediately? The @coderefinery Train the Trainer workshop will go over it all, 4 Tuesdays starting tomorrow EU mornings. Online, you can drop by for the days that interest you.

https://fosstodon.org/@coderefinery/112913487426684269
#OnlineTeaching #HPC #SciComp #RSEng #CodeRefinery

CodeRefinery (@[email protected])

Free online #TraintheTrainer workshop starting next week!  Join us for 4 half-day sessions: 1️⃣ Aug 13: CodeRefinery lesson materials 2️⃣ Aug 20: Tools & techniques 3️⃣ Aug 27: Teaching strategies & tips 4️⃣ Sep 3: Streaming   > Info & registration: https://coderefinery.github.io/train-the-trainer/

Fosstodon
We are live! Currently the Intro to #SciComp that talks about resources needed for computing. Check out this behind the scenes view...

#SciComp / #HPC Kickstart day 1 is for a broad audience. (livestream starting today at 12:00, times in EEST):

- 11:50: icebreakers
- 12:00 intro
- 12:10: From data storage to your science
- 12:25: Computational reproducibility and open science
- 13:00: Interview, "Humans of SciComp"
- 13:25: What can you do with a cluster?
- 14:00: Connecting to a cluster
- 15:00: How to ask for help with (super)computers
- 15:25: VS Code on HPC

https://twitch.tv/coderefinery
https://scicomp.aalto.fi/training/scip/kickstart-2024/

CodeRefinery - Twitch

CodeRefinery offers training opportunities to researchers from Nordic research groups and projects to learn basic-to-advanced research computing skills and become confident in using state-of-the-art tools and practices from modern collaborative software engineering.

Twitch

Our #SciComp / #HPC kickstart course starts tomorrow at 12:00 EEST / 11:00 CEST. It is livestream, so anyone can watch with no questions asked. Register for the Q&A document, even if you aren't at #AaltoUniversity (and we teach so that it's useful to others too).

Day 1: basic background and examples. Day 2-3: Using a cluster.

https://scicomp.aalto.fi/training/scip/kickstart-2024/
#ScientificComputing #teaching

June 2024 / Intro to Scientific Computing / HPC Summer Kickstart

Kickstart is a three × half day course for researchers to get started with high-performance computing (HPC) clusters. The first day serves as a guide to skills you need in your career: a map to the...

Aalto Scientific Computing

Our "#HPC Summer Kickstart" course is 4-6 June 2024 (EU afternoons). Everyone is invited: it's #livestream so yes, *you* can attend.
- Day 1: general #SciComp concepts and practices
- Day 2-3: Running stuff on a cluster (Slurm, batch jobs, interactive, parallel, etc).

It's a first course that everyone should be able to follow. You can re-advertise to your colleagues and be their local guide to your own cluster.

https://scicomp.aalto.fi/training/scip/kickstart-2024/
#RSEng #OpenScience #ReproducibleResearch

June 2024 / Intro to Scientific Computing / HPC Summer Kickstart

Kickstart is a three × half day course for researchers to get started with high-performance computing (HPC) clusters. The first day serves as a guide to skills you need in your career: a map to the...

Aalto Scientific Computing