From 341b76df24e69c4a4ccbcb37fd317ef7425d0d2c Mon Sep 17 00:00:00 2001 From: Jacques Grelet <jacques.grelet@ird.fr> Date: Thu, 14 Jan 2016 15:03:39 +0000 Subject: [PATCH] move code to function updateTsgStructWithSmoothVars --- tsg_util/preferencesForm.m | 17 ++------- tsg_util/tsg_preferences.m | 19 ++-------- tsg_util/updateTsgStructWithSmoothVars.m | 48 ++++++++++++++++++++++++ tsgqc.m | 4 +- 4 files changed, 58 insertions(+), 30 deletions(-) create mode 100644 tsg_util/updateTsgStructWithSmoothVars.m diff --git a/tsg_util/preferencesForm.m b/tsg_util/preferencesForm.m index fd01d1c..7ee13b4 100644 --- a/tsg_util/preferencesForm.m +++ b/tsg_util/preferencesForm.m @@ -796,24 +796,15 @@ uiwait(hPreferencesFig); tsg.preference.ssps_stdmax = ... get(prefs.PREFERENCES_SSPS_STDMAX, 'string'); - % Smoothing of tsg time series over interval in minutes - % ------------------------------------------------------- - hour = floor(str2double(tsg.preference.dt_smooth)/60); - min = mod(str2double(tsg.preference.dt_smooth), 60); - smooth = datenum(0, 0, 0, hour, min , 0); - tsg.cst.TSG_DT_SMOOTH = smooth; - - tsg.SSPS_STDMAX = str2double(tsg.preference.ssps_stdmax); - - hour = floor(str2double(tsg.preference.ws_timediff)/60); - min = mod(str2double(tsg.preference.ws_timediff), 60); - timediff = datenum(0, 0, 0, hour, min , 0); - tsg.cst.TSG_WS_TIMEDIFF = timediff; % Save tsg structure % ------------------ setappdata(hTsgGUI, 'tsg_data', tsg); + % update structure tsg with derived value + % --------------------------------------- + updateTsgStructWithSmoothVars(hTsgGUI) + % fill tsg calibration variables % ------------------------------ updateTsgStructWithCalCoeff(hTsgGUI); diff --git a/tsg_util/tsg_preferences.m b/tsg_util/tsg_preferences.m index 0d5ea1e..deb8e72 100644 --- a/tsg_util/tsg_preferences.m +++ b/tsg_util/tsg_preferences.m @@ -103,25 +103,14 @@ tsg = getappdata( hTsgGUI, 'tsg_data'); % ----------------------------------- tsg.preference = preference; -% Initialize some values for smoothing -% ------------------------------------------------------- -hour = floor(str2double(tsg.preference.dt_smooth)/60); -min = mod(str2double(tsg.preference.dt_smooth), 60); -smooth = datenum(0, 0, 0, hour, min , 0); -tsg.cst.TSG_DT_SMOOTH = smooth; -tsg.SSPS_STDMAX = str2double(tsg.preference.ssps_stdmax); - -hour = floor(str2double(tsg.preference.ws_timediff)/60); -min = mod(str2double(tsg.preference.ws_timediff), 60); -timediff = datenum(0, 0, 0, hour, min , 0); -tsg.cst.TSG_WS_TIMEDIFF = timediff; -% tsg.cst -% tsg.SSPS_STDMAX - % Save structure tsg % ------------------ setappdata( hTsgGUI, 'tsg_data', tsg); +% update structure tsg with derived value +% --------------------------------------- +updateTsgStructWithSmoothVars(hTsgGUI) + % display waitbar % --------------- waitbar( 1/2, wb, 'loading structure tsg' ); diff --git a/tsg_util/updateTsgStructWithSmoothVars.m b/tsg_util/updateTsgStructWithSmoothVars.m new file mode 100644 index 0000000..3e64830 --- /dev/null +++ b/tsg_util/updateTsgStructWithSmoothVars.m @@ -0,0 +1,48 @@ +function updateTsgStructWithSmoothVars(hMainFig) +% +% This function is called after change option/parameter from preferenceForm +% or tsg_preference +% +% Input +% ----- +% hMainFig ............ Handle to the main user interface +% +% $Id$ + + +% Get the data from the application GUI +% ------------------------------------- +tsg = getappdata( hMainFig, 'tsg_data'); + +% use in tsg-average by tsg.cst.TSG_DT_SMOOTH +% convert this value minute with datenum +% --------------------------------------------- +hour = floor(str2double(tsg.preference.dt_smooth)/60); +min = mod(str2double(tsg.preference.dt_smooth), 60); +smooth = datenum(0, 0, 0, hour, min , 0); +tsg.cst.TSG_DT_SMOOTH = smooth; + +% Salinity, in 1 hour interval, should not depart the average for more +% than SAL_STD_MAX standard deviation +% ------------------------------------- +tsg.SSPS_STDMAX = str2double(tsg.preference.ssps_stdmax); + +% Maximum time difference between tsg data and water sample used to +% compute the difference +% convert this value minute with datenum +% ------------------------------------ +hour = floor(str2double(tsg.preference.ws_timediff)/60); +min = mod(str2double(tsg.preference.ws_timediff), 60); +timediff = datenum(0, 0, 0, hour, min , 0); +tsg.cst.TSG_WS_TIMEDIFF = timediff; + +% uncomment for debug +% ------------------- +tsg.cst +tsg.SSPS_STDMAX + +% Save tsg structure +% ------------------ +setappdata( hMainFig, 'tsg_data', tsg); + +end diff --git a/tsgqc.m b/tsgqc.m index 1d6cafb..a8c2b6d 100644 --- a/tsgqc.m +++ b/tsgqc.m @@ -39,8 +39,8 @@ global GOSUD_FORMAT_VERSION % 0.90x -> 1.0RCx % ------------------------------------------------------------------- VERSION = 1.440; % -> 1.44 -CHAR_VERSION = '1.44'; -DATE_VERSION = '13 jan 2016'; +CHAR_VERSION = '1.440'; +DATE_VERSION = 'jan 14 2016'; % netcdf file version, see DATA FORMAT TSG document: % CORTSG_format_gosud.doc -- GitLab