Active projects


CodeRefinery

We teach all the essential tools which are usually skipped in academic education so everyone can make full use of software, computing, and data with focus on reusability, reproducibility, and openness. We don't just give courses, but we are a training network that you can join to share the effort and bring better courses to your community.

Nordic research software engineers

Co-building the community of Nordic research software engineers, and networking with fantastic people.

Sonar

Tool to profile usage of HPC resources by regularly probing processes.

numgrid

Numgrid is a library that produces numerical integration grid for molecules based on atom coordinates, atom types, and basis set information. This library provides Rust and Python bindings.

Polygons

Fast points-in-polygon test and distances to polygons.

Tromsø paragliding

Info about Tromso paragliding weather/areas for new/visiting pilots.

History-window

Show command history "picture-in-picture" when teaching command line.

TMS location

Code to visualize and locate points for trans-cranial magnetic stimulation (TMS).

Cicero

Serving presentation slides written in Markdown. You can host your talk on GitHub or GitLab. Cicero will render it using remark of reveal.js on the fly. You can style your slides to your heart's content using CSS. No more "Can you please email me the slides after the workshop?". Talks become lightweight, reusable, versionable, branchable, and forkable. Code is on GitHub. Documentation is on Read the Docs.

Flanders

Fast 2D nearest neighbor search with an angle.

Coastal express

Compute nearest neighbor distances along the coast with a view angle.

THREAT DEFUSER

THREAT-DEFUSER explores the role of "soft" information strategies propagated through mass and social media that constitute hybrid warfare. We investigate Norwegian perceptions of Russia, as well as Russian perceptions of Norway, in the context of Norwegian national security.

SMARTool

The Strategic Mastery of Russian Tool.

runtest

Numerically tolerant end-to-end test library for scientific codes. The aim of this library is to make the testing and maintenance of tests easy. The library allows to extract portions of the program output(s) which are automatically compared to reference outputs with a relative or absolute numerical tolerance to compensate for numerical noise due to machine precision.

Gitink

ASCII to SVG Git log graph visualizer. Useful for teaching Git.

Past or on standby


Research Software Hour

Research Software Hour is an online stream/show about scientific computing and research software. It is designed to provide the skills typically picked up via informal networks: each episode is some combination of exploring new tools, analyzing and improving someone’s research code, and discussion.

My role: Co-creator

DIRAC

Program for Atomic and Molecular Direct Iterative Relativistic All-electron Calculations.

My role: Co-author, CMake infrastructure, migration to Git and GitLab, code maintenance and plumbing, exchange-correlation integrator, visualization module, higher order response properties.

CMake Cookbook

Learn CMake through a series of task-based recipes that provide you with practical, simple, and ready-to-use CMake solutions for your code. The sources for the CMake Cookbook recipes are on GitHub.

My role: Co-author

Dalton and LSDalton

Together, the two programs provide an extensive functionality for the calculations of molecular properties at the HF, DFT, MCSCF, and CC levels of theory.

My role: CMake infrastructure, website, open-sourcing, migration to GitLab, OpenRSP integration, magnetically-induced currents at the MCSCF level.

OpenRSP

Program for the open-ended calculation of response properties. It connects to response equation solution routines, routines for differentiated one-electron and two-electron integral contributions, and routines for exchange/correlation contributions to enable the calculation of response properties to arbitrary order.

My role: CMake infrastructure, website, open-sourcing, exchange-correlation contributions.

SYMBIOSES

The objective of the SYMBIOSES project is to create an ecosystem based impact assessment and management tool providing fact-based, quantitative analyses of the potential consequences of petroleum developments and other activities in spatially managed ecosystems, mainly focusing on the Lofoten-Vesterålen area.

My role: Code maintenance, code optimization, computations, web app. I was part of this project for two years.

XCint

XCint integrates the exchange-correlation (XC) energy ExcExc and the elements of the XC potential matrix VxcVxc, as well as their derivatives with respect to electric field and/or geometric perturbations. The integration is performed on a standard numerical grid. Code is on GitHub. Documentation is on Read the Docs.

XCFun

XCFun is a library of exchange-correlation (XC) functionals to be used in density-functional theory (DFT) codes. XCFun follows a unique implementation strategy which enables the computation of derivatives of the XC functional kernel up to arbitrary order. It does so by relying on forward-mode automatic differentiation. Code is on GitHub. Documentation is on Read the Docs.

My role: Code maintenance, testing.

xcauto

This library computes arbitrary-order exchange-correlation function(al) derivatives using JAX. The emphasis of this project is on ease of use and ease of adding functionals in Python. The focus is not (yet) on performance. Our hope is that this project can make it easier to test new implementations of functional derivatives but maybe also used directly to provide functional derivatives in a density functional theory program.

My role: Co-author, initial implementation.

GIMIC

The GIMIC program calculates magnetically induced currents in molecules. You need to provide this program with a density matrix in atomic-orbital (AO) basis and three (effective) magnetically perturbed AO density matrices in the proper format. Code is on GitHub. Documentation is on Read the Docs.

My role: Code maintenance, CMake infrastructure, testing, code optimization.

parselglossy

Generic input parsing library, speaking in tongues. Code is on GitHub. Documentation is on Read the Docs.

My role: Co-author

Go game

Go game for the browser, implemented using Vue.js.