From 90e26ab723d8717b3e240bedcc118df7dd5fc637 Mon Sep 17 00:00:00 2001 From: Francesco Carpanese <francesco.carpanese@epfl.ch> Date: Wed, 22 Jun 2016 09:19:07 +0000 Subject: [PATCH] change from cell to matrix rtc data structure git-svn-id: https://spcsvn.epfl.ch/repos/TCV/gdat/trunk@6010 d63d8f72-b253-0410-a779-e742ad2e26cf --- crpptbx/TCV/gdat_tcv.m | 58 +++++++++++++++++++++++++----------------- 1 file changed, 34 insertions(+), 24 deletions(-) diff --git a/crpptbx/TCV/gdat_tcv.m b/crpptbx/TCV/gdat_tcv.m index f0aa2305..c1a5dd7e 100644 --- a/crpptbx/TCV/gdat_tcv.m +++ b/crpptbx/TCV/gdat_tcv.m @@ -1452,22 +1452,30 @@ elseif strcmp(mapping_for_tcv.method,'switchcase') %Get the data from mds and fill the data structure defined by %define_simulink_signals - a=which('init_combined_signals'); - if isempty(a) - addpath /home/carpanes/rtccode/development/tools/io_defs - end + + % If the rtccode/developemnet folder is not in your path + % read from Carpanese's folder ( he might have not + % updated the folder to the last version) + if exist('~/rtccode/development/tools/io_defs') + addpath('~/rtccode/development/tools/io_defs'); + else + addpath('home/carpanes/rtccode/development/tools/io_defs'); + end - sources_avail = {'all','defined','combined'}; - + %Check if varargins match source_avail if ~isfield(gdat_data.gdat_params,'path') - path = '/home/carpanes/rtccode/development/models/R2015a/algorithms/SCD06advancedcontrol1/define_mem_list.m'; + if exist('~/rtccode/development/R2015a/algorithms/define_mem_list.m', 'file') + path = '~/rtccode/development/models/R2015a/algorithms/SCD06advancedcontrol1/define_mem_list.m'; + else + path = '/home/carpanes/rtccode/development/models/R2015a/algorithms/SCD06advancedcontrol1/define_mem_list.m'; + end else - % path = gdat_data.gdat_params.path; - path = gdat_data.gdat_params.path; + path = gdat_data.gdat_params.path; end - + + sources_avail = {'all','defined','combined'}; %Check if varargins match source_avail if ~isfield(gdat_data.gdat_params,'source') || isempty(gdat_data.gdat_params.source) % with no specifications all, defined, combined are taken gdat_data.gdat_params.source = sources_avail; @@ -1537,10 +1545,12 @@ elseif strcmp(mapping_for_tcv.method,'switchcase') end for kk=1:numel(fieldnameslist) %iter over fieldnames - + indices = SDS_DS{ii}{jj}.(fieldnameslist{kk}).ind; - SDS_DS{ii}{jj}.(fieldnameslist{kk}).data = {}; - SDS_DS{ii}{jj}.(fieldnameslist{kk}).t = {}; + SDS_DS{ii}{jj}.(fieldnameslist{kk}).data = []; + SDS_DS{ii}{jj}.(fieldnameslist{kk}).t = []; + + for zz=1:numel(indices) %iter over indices ind = indices(zz); @@ -1554,9 +1564,9 @@ elseif strcmp(mapping_for_tcv.method,'switchcase') tmp = tdi(expression); if isnumeric(tmp.data) - SDS_DS{ii}{jj}.(fieldnameslist{kk}).data{zz} = tmp.data; + SDS_DS{ii}{jj}.(fieldnameslist{kk}).data =[SDS_DS{ii}{jj}.(fieldnameslist{kk}).data; tmp.data']; - SDS_DS{ii}{jj}.(fieldnameslist{kk}).t{zz} = tmp.dim{1}; + SDS_DS{ii}{jj}.(fieldnameslist{kk}).t = [SDS_DS{ii}{jj}.(fieldnameslist{kk}).t; tmp.dim{1}']; else fprintf('Warning node: %d thread: %d signal: %s ind %d not available\n', ii,jj,fieldnameslist{kk}, zz ); end @@ -1606,8 +1616,8 @@ elseif strcmp(mapping_for_tcv.method,'switchcase') for kk=1:numel(fieldnameslist) %iter over fieldnames indices = SDS_AS{ii}{jj}.(fieldnameslist{kk}).ind; - SDS_AS{ii}{jj}.(fieldnameslist{kk}).data = {}; - SDS_AS{ii}{jj}.(fieldnameslist{kk}).t = {}; + SDS_AS{ii}{jj}.(fieldnameslist{kk}).data = []; + SDS_AS{ii}{jj}.(fieldnameslist{kk}).t = []; for zz=1:numel(indices) %iter over indices ind = indices(zz); @@ -1622,9 +1632,9 @@ elseif strcmp(mapping_for_tcv.method,'switchcase') if isnumeric(tmp.data) - SDS_AS{ii}{jj}.(fieldnameslist{kk}).data{zz} = tmp.data; - - SDS_AS{ii}{jj}.(fieldnameslist{kk}).t{zz} = tmp.dim{1}; + SDS_AS{ii}{jj}.(fieldnameslist{kk}).data =[SDS_AS{ii}{jj}.(fieldnameslist{kk}).data; tmp.data']; + + SDS_AS{ii}{jj}.(fieldnameslist{kk}).t = [SDS_AS{ii}{jj}.(fieldnameslist{kk}).t; tmp.dim{1}']; else fprintf('Warning node: %d thread: %d signal: %s ind %d not available\n', ii,jj,fieldnameslist{kk}, zz ); @@ -1678,8 +1688,8 @@ elseif strcmp(mapping_for_tcv.method,'switchcase') for kk=1:numel(fieldnameslist) %iter over fieldnames indices = SDS_CS{ii}{jj}.(fieldnameslist{kk}).ind; - SDS_CS{ii}{jj}.(fieldnameslist{kk}).data = {}; - SDS_CS{ii}{jj}.(fieldnameslist{kk}).t = {}; + SDS_CS{ii}{jj}.(fieldnameslist{kk}).data = []; + SDS_CS{ii}{jj}.(fieldnameslist{kk}).t = []; for zz=1:numel(indices) %iter over indices ind = indices(zz); @@ -1694,9 +1704,9 @@ elseif strcmp(mapping_for_tcv.method,'switchcase') if isnumeric(tmp.data) - SDS_CS{ii}{jj}.(fieldnameslist{kk}).data{zz} = tmp.data; + SDS_CS{ii}{jj}.(fieldnameslist{kk}).data =[SDS_CS{ii}{jj}.(fieldnameslist{kk}).data; tmp.data']; - SDS_CS{ii}{jj}.(fieldnameslist{kk}).t{zz} = tmp.dim{1}; + SDS_CS{ii}{jj}.(fieldnameslist{kk}).t = [SDS_CS{ii}{jj}.(fieldnameslist{kk}).t; tmp.dim{1}']; else fprintf('Warning node: %d thread: %d signal: %s ind %d not available\n', ii,jj,fieldnameslist{kk}, zz ); -- GitLab