Department of Food Science
Faculty of Science
University of Copenhagen
Algorithms and source code
IMPORTANT: all downloadable material listed on these pages  appended by specifics mentioned under the individual headers/chapters  is available for public use. Please note that while great care has been taken, the software, code and data are provided "as is" and that Q&T, LIFE, KU does not accept any responsibility or liability.
MATLAB source code from Q&T


NEW  rPLS  Recursive weighted Partial least Squares for variable selection 
NEW  SCREAM  A novel method for multiway regression problems with shifts and shape changes in one mode 
NEW  AutoChrome  Matlab toolbox for automatically finding the right PARAFAC2 model of e.g. GCMS data 
NEW  drEEM  Matlab toolbox supporting visualisation and PARAFAC of excitation emission matrices (EEMs) 
NEW  Chromatric Spatial Variance Toolbox, Matlab toolbox for RGB image analysis 
NEW  POLYS 2.0  An open source software package for building 3D structures of polysaccharides 
NEW  PCA bootstrap  Bootstrap based Confidence Limits in Principal Component Analysis 
NEW  CMTF Toolbox  Coupled Matrix and Tensor Factorization for Matlab 
NEW  NSIMCA  Multiway classification 
FastChrom  Processing of chromatographic data  
Loads2Chrom  identify modelled peaks from GCMS datasets.  
FDOMFLuor  FDOMcorr Toolbox by Kate Murphy. Simplify and automate correction of DOM EEM data  
SMR  Sparse matrix regression for coclustering  
EEMizer  automatically determine the appropriate PARAFAC model for EEM data  
icoshift  An ultra rapid and versatile tool for the alignment of spectral datasets  
DOMFluor  Characterizing dissolved organic matter fluorescence with parallel factor analysis.  
Rotation of PCA models  a freeware function to rotate and counterotate scores or loadings (MATLAB  uses PLS_Toolbox)  
Signflip  a freeware function to correct for sign ambiguity in SVD/PCA (MATLAB)  
iCDF  a freeware function to import netCDF files from GCMS, LCMS etc. software in MATLAB  
CONLOAD for calculating correlation loadings and congruence loadings for twoway and multiway models  
Clustering is a tool for performing interactive two and multiway clustering.  
EEMSCAT is a tool for removing scatter from EEMs and for interpolating values in the removed areas.  
CuBatch is a graphical user interface based on the Matlab environment that can be employed for the analysis and the handling of the most disparate types of data.  
Extended Canonical Variates Analysis  a discrimination method for collinear data by Lars Nørgaard, Rasmus Bro, Frank Westad, Søren Balling Engelsen 

Rayleigh scatter correcting PARAFAC of EEM data from "First order Rayleigh scatter as a separate component in the decomposition of fluorescence landscapes", Rinnan, Booksh, Bro Analytica Chimica Acta, Volume 537, Issues 12, 29 April 2005, Pages 349358 

INDAFAC sparse implementation of Levenberg Marquadt algorithm for PARAFAC in Matlab  
PARALIND (aka restricted PARATUCk2) for modeling multiway data with linear dependencies  
iToolbox (updated, extended version of the iPLS toolset) Set of intervalbased PLS and PCA routines for exploratory investigations. 

DTW and COW Code for signal alignment by Dynamic Time Warping and/or Correlation Optimized Warping for Matlab 

SENSABLE GUI for processing of sensor based data 

Extended Multiplicative Signal Correction (EMSC) for MATLAB 

The Nway Toolbox for MATLAB (matlab 7.3) 

INCA Imports and prepares fluorometric data from the PEFLDM for use in MATLAB, e.g., The Nway Toolbox for MATLAB. 

Lowfield NMR toolbox (Version 3.0 including simplified use by PowerSLICING) Contains algorithms for exponential fitting, phase correction of quadrature data and SLICING 

PARAFAC2 model for MATLAB 5.2 Save the file and type  help parafac2  in MATLAB (Updated Jan 2003). 

Jackknifed PARAFAC Jackknifing of PARAFAC models  Version 2.03  selfcontained (no need for the Nway Toolbox) 

MILES for MATLAB 5/6 Algorithm for fitting maximum likelihood models through least squares algorithms 

GEMANOVA model for MATLAB 5/6 Model for fitting multilinear ANOVA models in MATLAB. 

The Missing Toolbox Simple functions for handling missing values. 

Nonnegativity constrained least squares regression Mfiles for nonnegativity constrained least squares regression. 

PARAFAC for complexvalued problems Useful e.g. for problems in tele communication 

Unimodality (and monotonic) constrained least squares regression Mfiles for unimodality constrained least squares regression. 

Routine for calculating normalized 2D radial pair distributions Calculations used in paper "The mean hydration of carbohydrates as studied by normalized 2D radial pair distributions" in Journal of Molecular Graphics and Modeling 

Multiblock Toolbox Mfiles for various PCA and PLSlike multiblock algorithms in MATLAB 



Source Code from other researchers 

FPDC Probabilistic clustering. Code by Cristina Torora  
Multiway VIP for multiway variable selection. Code by M. Cocchi and coworkers  
iToolbox GUI 1.01 including manual by Dr. Giorgio Luciano, Department of Chemistry, University of Genoa, Italy  
MATLAB Tensor Classes for Fast Algorithm Prototyping by B. Bader & T. Kolda  
The PLSGenetic Algorithm Toolbox (courtesy of Riccardo Leardi  University of Genoa, Italy)  
Image Analysis Toolbox IMAT (courtesy of Sensory Science, Department of Food Science, KVL) Methods for extracting global features in images 

The Standard Dataset Object For Matlab (by Eigenvector)  
MVACDF, a multivariate data format standard  


Old Q&T source code 

Preferably use the Nway Toolbox above. The programs below are old versions  
Threeway Procedures with a threeway data set Tucker, PARAFAC, GRAM, RAFA and misc. 2^{nd} order models with a test data set (old version now covered by the Nway Toolbox) 

Multiway PLS Standalone Mfiles for multilinear partial least squares regression (old version now covered by the Nway Toolbox) 

GUI iPLS (independent of Command Line iPLS) Interval PLS for variable selection with optimization of interval width. 

PARAFAC Models for estimating PARAFAC (old version now covered by the Nway Toolbox) 



Contact rb@life.ku.dk in case of problems and questions to these pages 
Use this link to other sources of MATLAB code 