S. Engblom's free software
    Overview
    
      - License
 
      - Platforms
 
      - Research-related codes:
 
      - Packages for daily use: stenglib
 
    
    License
 You may download all software on this page and
    use, modify and redistribute it in any way you like. A
    redistributor must fully attribute the authorship and make a good
    effort to cite the original location of the software. A researcher
    making critical use of the software in research is
    requested to acknowledge this in publications related to the
    research. A company may use the code in software products provided
    that the original location and the author is clearly
    cited.
    All code provided here comes with absolutely no warranty
    and no support whatsoever is given.
    There are a lot of freeware available on the net. Do not
    download unless you agree to the above license.
    
Find me at
    home...
  ...at
    the Research
    Gate...
    ...at Google
    Scholar...
    ...at ORCID...
    ...at ResearcherID....
    ...at arXiv...
    ...at GitHub.
    Platforms
 Currently, most codes below are used
    essentially daily on platforms with mexext = {mexa64,mexmaci64}
    and Matlab version {9.6}. I have extensive previous experience
    with mexext = {mexmaci,mexglx,mexmac,mexsol,mexs64} and version =
    {7.0, 7.2. 7.5, 7.8, 7.11, 7.13, 7.14, 8.4}. Note: very limited
    support for PC.
    Research-related codes
    
    When coding, I tend to use my own libraries rather extensively
    (see "stenglib" below). I try to register all such dependencies
    but have likely missed a few.
    
- SimInf is an R-package with the ability to simulate
    arbitrary models of epidemics using temporal contact
    data. The package has its own
    page.
    
    
The SimInf manual is available
    via arXiv. The
    modeling and the simulation method is described in P. Bauer,
    S. Engblom, S. Widgren: Fast event-based epidemiological
    simulations on national scales in Int. J. High
    Perf. Comput. Appl.,
    2016: (doi).
    A sample output
    result is
    animated here.
       
- The URDME-package is an efficient implementation of the
    next subvolume method with the ability to sample the
    reaction-diffusion master equation in general unstructured
    geometries. The package has its own
    page.
	
    New! Version 1.4 is now released and can be downloaded
    from www.urdme.org. The manual
    is available
    via arXiv.
    A sample output result is animated here.
    The numerical modeling is described in S. Engblom, L. Ferm,
    A. Hellander, P. Lötstedt: Simulation of Stochastic
    Reaction-Diffusion Processes on Unstructured Meshes, in
    SIAM J. Sci. Comput. 31(3):1774--1797,
    2009: (doi).
    There is also a software paper about URDME: B. Drawert,
    S. Engblom, and A. Hellander: URDME: a modular framework for
    stochastic simulation of reaction-transport processes in complex
    geometries, in BMC Syst. Biol.  6(76):1--17,
    2012: (doi).
    
    

    Old! Version 1.0 is still available. This release is
    designed for use with Matlab 7.0 and above and Comsol Multiphysics
    3.4. A manual in .pdf-format is included. Download the original
    stable version here: urdme.tar.gz.
 
    - FMM3D, New! an adaptive distributed fast
    multipole method in 3D with a Matlab interface. Download here:
    daFMM3D.tar.
    
 
    - FMM2D, an adaptive quite general fast multipole method
    in 2 dimensions with a nice Matlab-interface. Download here:
    FMM2D.tar. A
    relevant paper is S. Engblom: On well-separated sets and fast
    multipole methods, in Appl. Numer. Math.
    61(10):1096--1102,
    2011: (doi).
    There is also a GPU-version available (joint work
    with Anders
    Goude). It both provides support for NVIDIA's CUDA and
    a CPU-only version. It is highly configurable when it comes to
    compilation options and additionally, has support for (CPU
    only) high order panel potentials. Download here:
    FMM2Dgpu_small.tar.
    Previous version, for reproducibility: Download here:
    FMM2Dgpu_small_prev.tar. A
    larger .tar-file containing not only the source-code but also the
    data from our computational experiments is also available:
    FMM2Dgpu.tar
    (this file is large). We describe the GPU-implementation
    and perform various performance experiments in: A. Goude and
    S. Engblom: Adaptive fast multipole methods on the GPU,
    in J. Supercomput., 63(3):897--918,
    2013: (doi).
    The GPU-code has bee ported into a stand-alone C++
    interace by Artur Palha. This library is available via
    Bitbucket: libfmm. 
    An experimental concurrent hybrid CPU/GPU-version using a
    task-based approach on the CPU is also available. Download here:
    FMM2Db.tar. This
    code has extended control of certain algorithmic parameters and
    can therefore be tuned for performance very easily. We describe
    the design of this code and test the feasability for autotuning
    in a paper: M. Holm, S. Engblom, A. Goude, S. Holmgren:
      Dynamic autotuning of adaptive fast multipole methods on hybrid
      multicore CPU & GPU systems, in SIAM J. Sci. Comput.
    36(4):C376--C399
    (2014): (doi).
    

    Old! There is also an older, no longer maintained
    uniform (non-adaptive) version available:
    FMM2Du.tar.
    Acknowledgment: The development of FMM2D and FMM3D has been
    partially supported by UPMARC,
    Uppsala Programming for Multicore Architectures Research Center.
 
- The BISDE-package is a small research code in Matlab and R
for reproducing the computational experiments in the paper Bayesian
inference in Epidemics: linear noise analysis by Samuel Bronstein,
Stefan Engblom, and Robin Marin. Download the paper here: (arXiv) and the BISDE
software here: BISDE.tar.
 
    - The FLOW-package is a research code for accurately
    simulating surfactant laden interface flows. The method employed
    is a spectral Galerkin-Legendre discretization. The distributed
    experiments all use the time-stepper ode1s from Scicomp
    below. Download here:
    FLOW.tar.
    The relevant paper is S. Engblom, M. Do-Quang, G. Amberg, and
    A-K. Tornberg: On diffuse interface modeling and simulation of
    surfactants in two-phase fluid flow,
    in Commun. Comput. Phys. 14(4):879--915,
    2013: (doi).
     
    - The FIBR-package is a research code for simulating
    fibers in Stokes flow. Download the
    FIBR.tar-file
    into a fresh directory (eg. 'mkdir FIBR'), cd into it and untar
    (eg. 'untar' at the Matlab prompt, or 'tar -xf' at the Unix
    prompt). Run 'startup' to put some suitable directories on your
    path, then try the tests 'checkin' and 'spin'. Type 'help
    fibrsetup' and run the example there (it's the simplest
    possible). Then you might want to try the animation found by
    typing 'help advect'.
  A sample output
    result is
    animated here.
     
    
    Packages for daily use  ("stenglib")
    The package stenglib is available
    via GitHub. Please refer
    to stenglib at
    GitHub.
    
    Stefan Engblom
Last modified: Wed Dec  7 09:40:05 CET 2022