function pp_coefs = paramsParamsCoefs(a_db, p_t3ds, p_coefs)
% paramsParamsCoefs - Calculates a corrcoefs_db for each param from correlations of variant params and invariant param coefs and collects them in a cell array.
%
% Usage:
% pp_coefs = paramsParamsCoefs(a_db, p_t3ds, p_coefs)
%
% Description:
% Skips the 'ItemIndex' test.
%
% Parameters:
% a_db: A tests_db object.
% p_t3ds: Cell array of invariant parameter databases.
% p_coefs: Cell array of tests coefficients for each parameter.
%
% Returns:
% pp_coefs: A cell array of corrcoefs_dbs for each param
% combination in a_db.
%
% See also: params_tests_profile
%
% $Id$
%
% Author: Cengiz Gunay <cgunay@emory.edu>, 2004/10/17
% Copyright (c) 2007 Cengiz Gunay <cengique@users.sf.net>.
% This work is licensed under the Academic Free License ("AFL")
% v. 3.0. To view a copy of this license, please look at the COPYING
% file distributed with this software or visit
% http://opensource.org/licenses/afl-3.0.php.
num_params = a_db.num_params;
num_tests = dbsize(a_db, 2) - num_params - 1; % Except the file indices
pp_coefs = cell([num_params, num_params]);
for param_num=1:num_params
a_t3d = p_t3ds(param_num);
a_coef_db = p_coefs{param_num}
% Remove the Index columns from this
all_test_cols = [];
all_test_cols(1:dbsize(a_coef_db, 2)) = true(1);
all_test_cols(tests2cols(a_coef_db, {'PageIndex'})) = false(1,1)
joint_db = joinPages(onlyRowsTests(a_t3d, ':', 'RowIndex'), ...
onlyRowsTests(a_coef_db, all_test_cols, ':'));
% Remove the Index columns from this
all_test_cols = [];
all_test_cols(1:dbsize(joint_db, 2)) = true(1);
all_test_cols(tests2cols(joint_db, {'RowIndex'})) = false(1,1);
j2_db = joinRows(onlyRowsTests(a_db, ':', 1:num_params), ...
onlyRowsTests(joint_db, ':', all_test_cols));
for cparam_num=1:num_params
all_test_cols = [];
all_test_cols((num_params + 1):dbsize(j2_db, 2)) = true(1);
pp_coefs{param_num, cparam_num} = ...
corrCoefs(j2_db, param_num, find(all_test_cols), struct('skipCoefs', 0));
end
end