Back to main topic

General concepts and structure of the project

IDAP project was created to enable global fitting of multiple disparate types of data pertaining to the same experimental system. The idea is that different types of experimental measurements performed on the same sample illuminate various complementary aspects of molecular mechanisms and properties of the system. For simple systems, these different measurements (say, spectroscopic, calorimetric, biochemical, etc.) might be analyzed independently and have their outputs integrated into a complete model of the system or a process under study. However, when the molecular mechanisms become complex (multi-state, etc.) independent evaluation of measurements becomes difficult because there become too many parameters to fit to the same amount of data. The typical solution is to vary sample conditions for measurements and thus acquire enough data to support fitting. Yet, every specific technique is focusing only on some selected aspects of the model while being less sensitive to other (maybe not less important!) features. The radical solution to this puzzle is to simultaneously fit multiple datasets of different types with corresponding mathematical models in such a way that every particular molecular parameter that enters equations for different types of measurements is optimized globally, simultaneously with respect to all relevant datasets.

We need to note that term "global" is used in numerical methods in two meanings. The first meaning pertains to finding a "global minimum" of the target function, which is contrasted to "local" minima with higher values of the target function. This meaning is unrelated to data types and mathematical models, but rather describes the "landscape" of the target function (usually evaluated as a sum of squares of deviation of the model from the experimental data). This meaning is encountered in IDAP when talking about specific data fitting algorithms of MATLAB.

The "global fitting" term used in IDAP to specifically descibe integrative analysis where one model is fit to all available data irrespective of their origin.

The IDAP is, strictly speaking, not a program. It is more of data analysis platform, where a user may program very complex data analysis protocols utilizing Dataset class and its subclasses to handle all imaginable types of data, and using TotalFit class and objects to direct global data fitting and analysis. IDAP enables formulating specific workflows that may be developed to a point of being "push button" data analysis routines. They may be compiled and distributed as binaries, not requiring MATLAB license any more. However, the main power of IDAP is in its support for a very high-level data-analysis programming (which eventually yields those "push-button" workflows). In this sense IDAP is a macro programming language based on MATLAB object-oriented M-code. It is fully extensible and open for modifications and improvements by a user.