Multivariate Curve Resolution designs a group of techniques which intend the recovery of the pure response profiles (spectra, pH profiles, time profiles, elution profiles,….) of the chemical constituents or species of an unresolved mixture when no prior information is available about the nature and composition of these mixtures. MCR was first conceived for process analysis, but nowadays is also applied to non-evolutionary multicomponent systems (e.g spectroscopic images, environmental monitoring data tables or –omics data tables). Likewise, MCR was born and classified as a two-way data analysis method, i.e., a method valid to analyze a single data matrices, but most of the progress and generalized use of MCR relates to the possibility to work with multi-way and multiset data structures, i.e., with several data tables simultaneously.

Two requirements are only needed to apply MCR to a multicomponent system, namely, that a) the experimental data can be structured as a two-way data matrix or a multiset structure and b) that this data set can be explained reasonably well by a bilinear model using a limited number of components. The MCR bilinear model is usually written down as: **D** = **CST, **where **D** is the raw data set, e.g., a spectroscopic data table, and **ST **and **C, **the matrices of the pure spectra and the related concentration profiles for each of the compounds (contributions) in the system. **C** and **ST** are the small matrices of the bilinear model that contain profiles of the pure contributions (species, compounds) of the original data set and may change chemical meaning depending on the nature of the data set.

MCR-ALS is an algorithm that solves the MCR basic bilinear model using a constrained Alternating Least Squares algorithm. The constraints used to improve the interpretability of the profiles in **C** and **ST** may respond to chemical properties of these profiles (e.g., non-negativity, unimodality, closure, …) or have a mathematical origin (e.g., local rank and selective windows, trilinear structure,…). The flexibility in ‘where-and-how’ applying constraints and the capability to treat the most diverse multiset structures are the main assets of this algorithm. The ‘art’ and expertise in using MCR-ALS stems from the proper selection and application of the constraints that are really fulfilled by the data set and from the ability to envision how to design and to deal with the most informative multiset structures.

MCR-ALS is implemented under MATLAB environment. There are two available versions of the algorithm, a command line program and the more popular graphical interface GUI MCR-ALS program, both downloadable in this web page.