OUR SERVICES

We offer a variety of services, all related to computational science. We perform simulations using general purpose software, or we create the simulation. The simulations could be run in our servers, or we could provide the code for the client to run at their convenience.

We can take an existing code and modify it to perform a specific task, or we could rewrite a piece of code, using state-of-the-art software engineering tools, or translate it to another language.

We develop MCNP simulations (non-criticality) with proper geometry, material, source and tally specification input file to match a given set-up. We use both the MCNP5 and MCNP6 packages.

We develop GEANT4 simulations.

We develop SCINFUL response functions for liquid and solid scintillators, given the constraints of the code. The input neutron spectrum could be generated with MCNP or GEANT.

We develop specific purpose Monte Carlo simulations based on a given model. The programming language of choice is C, C++ or Fortran. Since Monte Carlo simulations are highly parallelizable, we offer parallelization using OpenMP or MPI (C or C++).

We offer parallelization of any given code using OpenMP or MPI. We create simulations using OpenMP Tasks and functional decomposition, and optimize parallel codes to increase speedups when possible.

We deploy Google HPC clusters with Slurm.

We develop numerical solutions to specific computing problems using the GNU Scientific Library (GSL). Typical solutions include creating random number distributions to sample numbers, e.g. a number distributed as a Gaussian, Poison or Boltzmann, solutions to ordinary differential equations, root finding, minimization or least-squares fitting.

We substitute Fortran NAG Library routines with our own implementations. We provide the code or the full library for compilation with any code using NAG routines.

We provide ROOT data analysis template programs or scripts that open data files, create TREE structures, loop over the data set and makes data selection based on 1D, 2D or 3D cuts.

We provide ROOT template scripts to create publication ready 1D, 2D or 3D Histograms, Graphs and MultiGraphs.

We provide GNUPlot template scripts to create publication ready graphs.

Charged-particle spectroscopy often require a precision pulser calibration to extend the energy range above the energies of typical α calibration sources. We provide a program that loads a pulser spectrum, searches for pulser peaks, fits every peak with a Gaussian, and fits the peak means with a polynomial function of choice.

Our algorithm can identify the isotope absolute content of a sample by fitting half-life curves. The input of the algorithm is the spectrum file, for example, a Maestro CHN format file, and energy and efficiency calibration functions, or alternatively, an energy calibration spectrum (Eu-152) with known source specification.

We make neutron detector response simulations with MCNP and SCINFUL to create efficiency functions to correct raw energy spectra created with TOF measurements.

Our algorithm creates a Schmitt calibration based on a 252Cf fission fragment spectrum by iteratively correcting for energy degradation in the source. The algorithm is capable of detecting if there is degradation and attemps to make a correction based on the shape of light and heavy fragment distributions.