Open source development for FluidEarth (https://fluidearth.net/default.aspx) which supports the OpenMI Standard (http://openmi.sourceforge.net) Here are OpenMI Association approved applications.
Stress intensity factor (SIF) calculation from crack tip displacements
The code implements Muskhelishvili's complex function approach to calculate 2D stress intensity factors (modes I+II) from crack tip displacement fields. Surface displacements can be used with a plane stress elastic model. The code uses power/Fourier series expansion and a conformal mapping of an ellipse onto a circle.
High Resolution Direct Numerical Simulation (DNS) of Two-Phase Flows
TPLS is a powerful and efficient 3D Direct Numerical Simulation (DNS) flow solver to simulate multiphase flows at unprecedented detail, speed and accuracy. This flow solver has been developed by Lennon Ó Náraigh (Mathematical Sciences, University College Dublin), Prashant Valluri (Engineering, University of Edinburgh), David Scott, Toni Collis and Iain Bethune (EPCC at the University of Edinburgh) and Peter Spelt (Université de Lyon1, Claude Bernard) under the aegis of several HECToR / ARCHER computer time grants and dCSE/eCSE programmes. The TPLS solver is highly parallelisable and can simulate flows at ultra high resolution ( > 30 million grid points). Key features are: 1) Ultra-parallelisable MPI 2) ARCHER (> 2048 Cores) 3) Fortran and PETSc subroutines 4) Parallel I/O using NetCDF 5) 3D Decomposition 6) Gas/Liquid density ratios We also provide a simplified version of the code 'S-TPLS' to help new users understand the code structure and algorithms
Fortran library with the Abaqus user material subroutines UMAT/VUMAT
This library contains several of user material subroutines for implicit quasi-static (UMAT) and explicit dynamic (VUMAT) versions of the Abaqus solver. The project web site: http://abumpack.sf.net. The Abaqus is a proprietary finite element (FE) code ( http://www.3ds.com/products-services/simulia/products/abaqus/). Users can write subroutines for use with the Abaqus. Linear elastic, isotropic hardening plasticity, Gurson-Tvergaard-Needleman (GTN), Rousselier constitutive models are provided. Quote this code as: A. Shterenlikht, N. A. Alexander, Levenberg-Marquardt vs Powell's dogleg method for Gurson-Tvergaard-Needleman plasticity model, Computer Methods in Applied Mechanics and Engineering 237-240:1-9 (2012). DOI: http://dx.doi.org/10.1016/j.cma.2012.04.018
error function and related functions in pure standard Fortran 2008
Fortran 2008 added 3 new intrinsic functions: erf, erfc, erfc_scaled. However, they take only real arguments. This package provides a BSD licensed Fortran 2008 module with erf(z), where z is a complex argument. The calculation is based on calculating w(z), the Faddeyeva (plasma dispersion) function. Two algorithms are implemented: TOMS 680 and 916, http://www.netlib.org/toms/. The simple test program calculates values in the Abramowitz, Stegun.
FE simulation based automatic global optimisation in modern Fortran
A collection of Fortran 2003, 90 and 77 routines, modules and programs for automatic simulation based global constrained optimisation. The initial application is for FE simulation of elasto-plastic buckling of steel rods aimed at tuning the hardening model. Unix shell scripts are used extensively. High concurrency is achieved with parallel multi-start global search and with parallel MPI FE. Powell's BOBYQA or LINCOA are used (not included in this package). Automatic mesh generation of 3D cylinders is provided + automatic boundary conditions, all via Fortran and shell scripting.
The Optimized Sparse Kernel Interface (OSKI) Library provides automatically tuned sparse matrix kernels, for use by solver libraries and applications. OSKI is part of the BeBOP project on performance tuning and analysis at U.C. Berkeley. (Go Bears!)
Very fast command line sudoku solver written in Fortran
A free Fortran 2008, 2018 coarrays course with notes and exercises
Coarrays are native Fortran means for SPMD parallel programming. At runtime multiple copies of the executable (called images) are executing asynchronously. The F2008 standard provides coarray syntax, remote calls, coarray data objects, allocatable coarrays, syncronisation, atomics, etc. F2018 adds new functionality, e.g. collectives, teams, events, more atomics. Coarrays are used extensively in CASUP library for HPC (https://cgpack.sourceforge.io). The course is aimed at experienced Fortran users. Working knowledge of Fortran is assumed. The course is designed for a 1 day study with an instructor. Multiple exercises with full solutions are accompanied by notes. This course is taught to the University of Bristol HPC users. Exercises have been verified with Intel and GCC/OpenCoarrays. All course materials are released under BSD license. We welcome contributions, provided you are happy to release your work under BSD license. We welcome comments and problem reports.
Blit contains a group of highly efficient iterative sparse solvers that can handle multiple right-hand-sides (i.e. block solvers). We will implement BLQMR, BLGMRES and other block algorithms in MATLAB, FORTRAN 90, C/C++, CUDA and OpenCL.
BlueM is a software package for river basin management. It allows for the integrated simulation, optimization and analysis of discharge and pollution loads in rural and urban catchments, including processes in the water body, using physically-based h
This project provides a web location for CUG members to share code or links to utilities, scripts, or procedures for managing Cray systems.
1-dimensional Eulerian Vlasov-Maxwell solver, used primarily for studies of kinetic effects in plasma waves and for stimulated Raman scattering.
FLENS (Flexible Library for Efficient Numerical Solutions) is a C++ library for scientific computing. It can be considered as a very convenient and --- at the same time --- extremely efficient interface for BLAS and LAPACK. But it is much more than this
Performance Timing Tools
Ichnaea is a set of tools that aid in collecting and tracking parameters and timings for parallel applications. The Performance Modelling Timing Module, PMTM, is a library that wraps system timing calls to abstract these from code developers and aid portability. It also has functionality to store parameters and print those, along with the timing information to a comma separated variable file. The Performance Modelling Analysis Tool, PMAT, is coming soon. This is able to read in and store the outputs from PMTM and produce some graphs based on user-defined criteria. Documentation found in the Wiki. As of March 2015, main development has been switched to the UK Mini-Application Consortium Github page. Work on PMTM from the unreleased version 2.6.0 can be found here: https://github.com/UK-MAC/PMTM Work on PMAT version 3 will be commencing shortly here: https://github.com/UK-MAC/PMAT Tarballs of releases will continue to be available here.
Data Processing and Analysis for X-ray Spectroscopy and More
Larch is a scientific data processing language that is designed to be easy to use for novices and complete enough for advanced data processing and analysis. Larch provides a wide range of functionality for dealing with arrays of scientific data, and basic tools to make it easy to use and organize complex data. Larch has been primarily developed for dealing with x-ray spectroscopic and scattering data, especially the kind of data collected at modern synchrotrons and x-ray sources. Larch is written in Python and relies heavily on the standard tools for scientific computing with Python (numpy, scipy, matplotlib, and h5py).
Modeling Processes Across Scales (MPAS) is a variable-resolution framework for developing general circulation models and other component models for climate and weather applications.
The project works to illustrate implementations of the portable OpenFPGA GenAPI standard for multiple language environments.
Application Integration for HPC Multiphysics
The OpenMultiphysics project is the home for community-driven development of application integration technologies designed to aid in the design and implementation of multiphysics simulation capabilities. Design and development in this project is driven by the Consortium for Open Multiphysics. Feel free to visit us at our GitHub site as well: https://github.com/IllinoisRocstar/IMPACT
Pydusa is a package for parallel programming using Python. It contains a module for doing MPI programming in Python. We have added parallel solver packages such as Parallel SuperLU for solving sparse linear systems.
Spherical Coordinate Remapping and Interpolation Package (SCRIP) is a package for computing interpolation and regridding weights for fields on the surface of a sphere. It supports conservative and other interpolation algorithms.
Tools for working with spherical harmonics
SHTOOLS is an archive of fortran 95 based software that can be used to perform spherical harmonic transforms and reconstructions, rotations of spherical harmonic coefficients, and multitaper spectral analyses on the sphere.
The STAR-MPI (Self-tuned adaptive routines for MPI collective routines) project is an on-going research and development effort to apply the adaptive software approach to develop efficient MPI collective routines across platforms and applications.
The purpose of SNX is to have a modular series of components that report back to a central repository and 'AI' for pattern recognition and anomoly detection. This is to help with IDS systems, and to move to the next generation of security.