Software ======== .. contents:: INSIGNEO-developed software --------------------------- *More software than is listed below has been developed by INSIGNEO researchers; this will added in due course*. openBF ^^^^^^ openBF_ is an open-source **1D blood flow solver** based on the MUSCL finite-volume numerical scheme, written in Julia_ and released under the `Apache 2.0`_ free software license. pFIRE ^^^^^ pFIRE is a parallel application and library for the elastic registration of large images by the method of Barber and Hose (`DOI:10.1080/03091900412331289889 `__; `DOI:10.1016/j.media.2007.06.011 `__). It is implemented in C++ using the `PETSc `__ scientific toolkit to provide parallelised mathematical routines. * `User and developer documentation `__ * `Source code `__ * `Report issues `__ Example of using pFIRE on the University of Sheffield's :ref:`ShARC ` HPC system: First, create a pFIRE config file containing e.g.: :: fixed = /path/to/Scan1_crop.image moved = /path/to/Scan2_crop.image nodespacing = 20 lambda = auto save_intermediate_frames = true Let's assume this file is saved as ``/path/to/pfire.conf``. Next, create a Grid Engine batch job submission script that runs pFIRE using this config file: :: #!/bin/bash #$ -pe mpi 40 #$ -l h_vmem=50G #$ -l h_rt=12:00:00 #$ -N my_pfire_job #$ -M some.user@sheffield.ac.uk #$ -m bea #$ -j y export SPACK_ROOT="/usr/local/community/rse/spack" export PATH="${SPACK_ROOT}:${PATH}" source $SPACK_ROOT/share/spack/setup-env.sh spack load --dependencies pfire@devel+double mpirun -np $NSLOTS pfire /path/to/pfire.conf echo -e "\n### HOST INFO ###\n" cat $PE_HOSTFILE Let's assume this file is saved as ``myjob.qsub``. This script: * Requests 40 CPU cores that don't all need to be on the same node * Requests 50GB of RAM per core * Requests 12 hours of runtime * Makes a particular build of pFIRE (``pfire@devel+double``) available for use using the `Spack `__ package manager. * Runs pFIRE on those 40 CPU cores (using MPI) using ``/path/to/pfire.conf`` * Prints out information on the distribution of those CPU cores between cluster nodes before exiting Finally, submit a job using this submission script by running: :: qsub myjob.qsub NB above we told Spack to load ``pfire`` version ``devel`` with ``double``-precision floating point support. To see all builds of pFIRE available on ShARC please run the following from a ShARC worker node: :: source /usr/local/community/rse/spack/share/spack/setup-env.sh spack find -v pfire See the `Spack documentation `__ for information on how to identify and distinguish builds of a given software package by: * version * build options * other factors that are less important in this particular case (e.g. compiler, compiler versions, dependencies, dependency versions) Builder2MO ^^^^^^^^^^ Builder Mark II - OrganĀ (`Builder2MO`_) is a **pre-processor for musculo-skeletal subject-specific models**. This freeware allow you to import imaging, gait analysis, EMG, segmentation, and finite element data, and fuse them toward the creation of organ scale subject-specific models of bones, joints, muscles, ligaments, and cartilages. INSIGNEO-developed web services ------------------------------- CT2S web service ^^^^^^^^^^^^^^^^ The `CT2S`_ (**Computed Tomography to Strength**) web service provides an estimate of the strength of human bone, using non-invasive medical imaging. A user uploads a computed tomography (CT) scan of the anatomy, and receives back a set of values that characterise the strength of the bone under a series of common loading conditions. This service was developed as part of the `MultiSim`_ project. .. _Apache 2.0: http://www.apache.org/licenses/LICENSE-2.0 .. _Builder2MO: https://www.builderm2o.org .. _CT2S: https://ct2s.insigneo.org .. _Julia: https://julialang.org/downloads/ .. _MultiSim: http://multisim-insigneo.org/ .. _openBF: https://insigneo.github.io/openBF/Docs/index.html .. _XCT2FE: xct2fe.insigneo.org Using commercial software ------------------------- Abaqus ^^^^^^ The University has a number of licenses for `Abaqus`_ but INSIGNEO have purchased 20 additional licenses, the use of which restricted to a specific group of users. These additional licenses are available from the same license server as the University-purchased licenses. If you would like to be added to the list of users who can use the additional licenses then please contact the :ref:`INSIGNEO tech team `. Amira ^^^^^ Amira_ provides for 3D/4D visualisation, processing and analysis functionality. In particular, the software is helpful for image segmentation and registration. INSIGNEO has one floating license for Amira. In addition, the Integrative Musculoskeletal Biomechanics (IMSB) group has purchased and maintains another floating license. Please contact Dr Enrico Dall'Ara (`e.dallara@sheffield.ac.uk `__) if you would like to discuss getting access to these licenses. Solidworks ^^^^^^^^^^ Please contact the :ref:`INSIGNEO tech team ` if you want to install/use the `SolidWorks`_ computer-aided design (CAD) software. Stata ^^^^^ Stata_ is an integrated data science software package which provides tools for data manipulation, visualization, statistics, and reproducible reporting. INSIGNEO currently has two floating network licenses available for Stata/IC. To discuss access to these licenses please contact Martin Brook (`m.l.brook@sheffield.ac.uk `__) in the first instance. COMSOL ^^^^^^ `COMSOL Multiphysics`_ is a cross-platform finite element analysis, solver and multiphysics simulation software. One network license for COMSOL Multiphysics is available to INSIGNEO members, and an additional license is available for members of the POLARIS_ group. To discuss access to these licenses please contact Martin Brook (`m.l.brook@sheffield.ac.uk `__) in the first instance. .. _Abaqus: https://www.3ds.com/products-services/simulia/products/abaqus/ .. _Amira: https://www.fei.com/software/amira-for-life-sciences/ .. _SolidWorks: https://www.solidworks.com/ .. _COMSOL Multiphysics: https://uk.comsol.com/comsol-multiphysics .. _POLARIS: https://www.sheffield.ac.uk/polaris/home .. _Stata: https://www.stata.com