Current and Past Projects

Dune Scientific Internal Projects

Moleculix

January 1995 to Present

Moleculix is a software package for real time modification and visualization of three dimensional molecular structure data. Moleculix can be used to estimate molecular structures by parameter minimization (fitting) of simulated NMR data with experimental data.

Moleculix has its own webpage: www.moleculix.com

RoadRunner Plugins

University of Washington, Seattle

2011 to 2012

A minimalistic plugin framework was designed and implemented in C/C++, together with numerous plugins. The plugin framework add very little overhead for a client to create new plugins.

Plugin loading and unloading is carried out by a Plugin Manager object. Each plugin expose one execute() method, that executes the core of the plugin, in a thread if desired.

Data is exchanged between the caller and the plugin by the use of sophisticated properties that can be of any type, i.e. doubles, vectors, strings arrays etc.

The plugin framework also have C and Python wrapped front ends, allowing plugins to be called from Python and virtually any other host language.

To this date the following plugins has been implemented:

Name Description Docs
AddNoise Add Gaussian noise to Tellurium Data Current Docs
TestModel Plugin providing a SBML test model, as well as test data Current Docs
ChiSquare Plugin that calculates the ChiSquare for two Tellurium data sets. Current Docs
Levenberg-Marquardt Parameter minimization using a Levenberg-Marquardt algorithm Current Docs
Nelder-Mead Parameter minimization using a Nelder-Mead algorithm Current Docs
Monte Carlo BootStrap Estimation of parameter confidence intervalls using a Monte Carlo bootstrap algorithm Current Docs
Auto2000 Continuation and bifurcations using the AUTO2000 library Current Docs

See https://sys-bio.github.io/roadrunner/docs-build/rrplugins/introduction.html for more information.

libRoadRunner

University of Washington, Seattle

2011 to 2012

RoadRunner is a high performance and portable simulation engine for systems and synthetic biology, developed at the Department of BioEngineering at the University of Washington, Seattle.
The original code base was designed by Frank Bergmann & Herbert Sauro and implemented in C# by Frank Bergmann.

libRoadRunner is a translated version (C# -> C++). The translation effort was executed by Totte Karlsson, Dune Scientific, LLC.

The project involved setup of code repositories using both SVN and Git, transforming and implementing the projects build process to use CMake, on Windows, Linux and Mac OSX, and included the build process for several ThirdParty libraries as well.
In addition, a comprehensive thinly layered C-API was was designed and implemented allowing the simulator to be called from virtually any host language.

A comprehensive, automated testing rig, using UnitTest++ was also integrated to the development process and more than 1100 tests were implemented. The testing framework plays a crucial role in securing stability and integrity of the codebase as new additions were/are made.

Measuring and visualization of radio frequency shifts

OneResonance, LLC (San Diego, CA)

November June 2010 to July 2010

DuneScientific designed and implemented software for a military prototype using SpinCore RF hardware.

Bench Top NMR Prototype system

T2BioSystems (Cambridge, Massachusetts)

November 2008 to September 2010

Responsible for software production and design in a high-tech startup company, T2BioSystems, Boston. Responsibilities involved the design and implementation of Magnetic Resonance (MR) spectrometer software, from low level hardware drivers to end user graphical user interfaces (GUI’s). All software used C++ as the main language. Software design and implementation took advantage of established software design concepts/patterns such as client/server models using IPC (Inter Process Communication) protocols over TCP/IP sockets. Signal processing software involved the implementation of FFT’s, single- and bi-exponential fitting routines etc. using third party libraries.

Data File Conversion

Quasar Federal Systems (San Diego, California)

March 2008 to June 2008

Developed of software to extract and format data from a ultra high speed (GHz) multi channel (6) data acquisition system. The files that this software was operating on was on the order of 250GB each. Several complex algorithms had to be developed, designed and implemented in order to ‘align’ acquired data from the six independent and asynchronous data channels. A thin front end (GUI) was produced (Visual Studio) to interface with the number crunching backend.

Positional Tracking System

Quasar Federal Systems (San Diego, California)

January 2010 to April 2010

Designed and implemented software for real-time positional tracking. This project was using C# and a commercial GIS front-end: ArcGIS Explorer. Live positional data was streamed into the standalone application, using a TCP socket mechanism. Each positional object was visualized directly on the real-time mapping system. Each positional objects history could be visualized as well, giving an objects historical path. The objects relation to the actual sensor, could be visualized as well, by overlaying on the maps, a poynting vector relating the two.
Any numbers of positional objects could be visualized simultaneously, in real time.