From fc15456759d42c732bcf9dfa17db543ab8e9dfa5 Mon Sep 17 00:00:00 2001 From: Jacques Grelet <jacques.grelet@ird.fr> Date: Mon, 2 Mar 2009 13:47:39 +0000 Subject: [PATCH] do i test in updateTsgStruct to prevent initializing of calcoeff after reading .ini file change date format in headerForm (YYYYmmdd instead of dd/mm/YYYY) --- tsg_util/headerForm.m | 6 +++--- tsg_util/updateTsgStruct.m | 20 ++++++++++++-------- 2 files changed, 15 insertions(+), 11 deletions(-) diff --git a/tsg_util/headerForm.m b/tsg_util/headerForm.m index 9a63e8c..c46b6ad 100644 --- a/tsg_util/headerForm.m +++ b/tsg_util/headerForm.m @@ -258,7 +258,7 @@ uiwait(hHeaderFig); % ----------------------------------------------------------------------- function editCallback(obj, event) value = get(obj, 'string'); - match = regexp( value, '(\d{2})/(\d{2})/(\d{4})', 'tokens'); + match = regexp( value, '^(\d{4})(\d{2})(\d{2})$', 'match'); if isempty(match) beep; set(obj, 'string', ''); @@ -366,7 +366,7 @@ uiwait(hHeaderFig); tsg.(var)(ii) = NaN; else if strcmpi(key, 'DATE') - tsg.(var)(ii) = single(datenumToJulian(datenum(s, 'dd/mm/yyyy'))); + tsg.(var)(ii) = single(datenumToJulian(datenum(s, 'yyyymmdd'))); else tsg.(var)(ii) = single(str2double(s)); end @@ -617,7 +617,7 @@ uiwait(hHeaderFig); if isnan(tsg.(var)(ii)) value = ''; elseif strcmpi(cle, padding('DATE', tsg.dim.COEF_CONV_SIZE)) - value = datestr(julianToDatenum(tsg.(var)(ii)), 'dd/mm/YYYY'); + value = datestr(julianToDatenum(tsg.(var)(ii)), 'YYYYmmdd'); else value = num2str(tsg.(var)(ii)); end diff --git a/tsg_util/updateTsgStruct.m b/tsg_util/updateTsgStruct.m index a6b9452..320d3d1 100644 --- a/tsg_util/updateTsgStruct.m +++ b/tsg_util/updateTsgStruct.m @@ -100,20 +100,24 @@ var = {'SSJT_CALCOEF', 'CNDC_CALCOEF', 'SSTP_CALCOEF'}; pref = tsg.preference.coeff_type_value; for i = 1:numel(var) - for j = 1:tsg.dim.CALCOEF - tsg.(var{i})(j) = NaN; - tsg.([var{i} '_CONV']) = ... - [tsg.([var{i} '_CONV']); padding(coeff_type{pref,i}{j}, tsg.dim.COEF_CONV_SIZE)]; + if isempty(tsg.(var{i})) + for j = 1:tsg.dim.CALCOEF + tsg.(var{i})(j) = NaN; + tsg.([var{i} '_CONV']) = ... + [tsg.([var{i} '_CONV']); padding(coeff_type{pref,i}{j}, tsg.dim.COEF_CONV_SIZE)]; + end end end var ={'SSJT_LINCOEF', 'CNDC_LINCOEF', 'SSTP_LINCOEF'}; for i = 1:numel(var) - for j = 1:tsg.dim.LINCOEF - tsg.(var{i})(j) = lin_val(j); - tsg.([var{i} '_CONV']) = ... - [tsg.([var{i} '_CONV']); padding(lin_type{j}, tsg.dim.COEF_CONV_SIZE)]; + if isempty(tsg.(var{i})) + for j = 1:tsg.dim.LINCOEF + tsg.(var{i})(j) = lin_val(j); + tsg.([var{i} '_CONV']) = ... + [tsg.([var{i} '_CONV']); padding(lin_type{j}, tsg.dim.COEF_CONV_SIZE)]; + end end end -- GitLab