Skip to content

v6.1.0

Compare
Choose a tag to compare
@teddychao teddychao released this 24 Aug 03:18

General

  • Minimum version of MATLAB
  • Entering PsPM
    • Entering PsPM is now hybrid based on the version of MATLAB, namely through AppDesigner or Guide. PsPM will be entered through AppDesigner when supported and through Guide for older versions of MATLAB. To call PsPM, users should still use the command pspm in the Command Window of MATLAB, where the appropriate way of entering PsPM will be recognised automatically.
    • Users can still use their preferred way to enter PsPM. To enter PsPM through AppDesigner, please type pspm_appdesigner. To enter PsPM through Guide, which is the classic entrance, please type pspm_guide.
    • The AppDesigner version of PsPM UI is newly introduced by MATLAB and the encouraged way for launching PsPM, and it has no functionality difference than the Guide version of PsPM UI.
    • Both AppDesigner and Guide are designed and tested for Windows, macOS (either Intel or Apple Silicon) and Linux. Issues of opening PsPM through either of the two UI systems are encouraged to be reported to PsPM developing group at GitHub.
  • Introducing pspm_options
    • A new function pspm_options is introduced to PsPM for controlling the default and acceptable values of the struct options used by most PsPM functions. The default values of the fields in the struct options for various functions can be directly checked by searching in pspm_options.
    • The default values in pspm_options have been checked and tested for PsPM. If preferred values are different from defaults, users can specify them when calling the corresponding PsPM functions, and the corresponding functions and pspm_options will always respect the users' specification with the highest priority. However, the user's specification needs to satisfy the condition set in pspm_options, and invalid values may be reported as errors.
  • UI Improvements
    • The UI for the following features has been improved and tested
      • Launchpad (AppDesigner)
      • Launchpad (Guide)
      • Batch editor
      • Display data
      • Contrast manager
  • Help text
    • The help text has been updated for all PsPM functions. Help text can be checked by right clicking the functions.

Bug Fixes

  • UI
    • A bug that used to make PsPM crash when Pupil size convert and Gaze convert in Data Preprocessing were selected has been fixed.
    • A bug that leads to error when PsPM is started offline has been fixed.
    • A bug that leads to incorrect x labels in pspm_rev_dcm has been fixed.
  • pspm_convert_...
    • A bug that leads PsPM to crash, which is caused by outdated UI calling for pspm_convert_... functions, has been fixed.
  • pspm_get_eyelink
    • A bug that causes issues when importing eye link data that is scanned at both left and right sides has been fixed.
  • pspm_glm
    • A bug that incorrectly identifies the NaNs in the input data has been fixed.
  • pspm_sf
    • A bug that has lead to incorrect input datafile assigning has been fixed.
    • A bug that leads PsPM crash when pspm_sf is analysing data with missing epochs has been fixed.
    • A bug that leads to error when pspm_sf analyses data where time unit is defined as marker has been fixed.
  • pspm_split_sessions
    • pspm_split_sessions now considers marker_chan_num when calling pspm_trim.

New Features and Improvements

  • channel
    • We have generalised the channel related variables throughout PsPM, which are given as
      • chan/channelchannel
      • chans/channelschannels
      • channel_units/channels_units/chan_units/chans_unitschannel_units
      • chan_combinechannel_combine
      • chan_actionchannel_action
      • channels_headerchannel_header
      • chantypechanneltype
  • import_eyelink
    • Improved import_eyelink for adding some support for importing eyelink data converted by higher version of .EDF files.
  • pspm_con2
    • pspm_con2 is now using pspm_overwrite.
  • pspm_dcm and pspm_dcm_inv
    • .flexevents and .fixevents are now fields of model instead of options.
    • pspm_dcm now uses pspm_get_timing to handle missing epochs.
    • Improved missing epoch support
      • The field .missing is now allocated from options to model.
      • .missing_data is used to load missing epoch data that was loaded from dcm, as an optional field.
    • The index is changed so that the first event will not be excluded when at time 0 in session.
  • pspm_extract_segments
    • The first channel is always referred by marker_chan as default.
  • pspm_glm
    • The fallback for options.exclude_missing has been set for pspm_glm, which is not to exclude any missing epochs.
    • A bug that leads to incorrect missing epoch checking has been fixed.
    • Help text was updated.
    • marker_chan_num now refers to the first marker channel as default.
    • pspm_glm now uses pspm_get_timing to handle missing epochs .
  • pspm_interp1
    • pspm_interp1 now considers the data where no valid values are detected and interpolation is not possible, and warnings will be reported in this case.
  • pspm_merge
    • The default value is set to be [1,2], meaning the first channel will be merged as the default option.
  • pspm_prepdata
    • pspm_prepdata now uses interpolation to handle data with NaN.
      • Data that begins and/or ends with NaN will be filled with the first/last non-NaN values in those positions.
  • pspm_sf
    • pspm_sf now supports missing epochs.
      • Now allow input with NaN that indicates missing epochs.
      • Missing epochs can be specified with options.missing or the automatic NaN detection.
      • Missing epochs will be verified with options.missingthresh.
      • When the missing epochs are longer than 2s, the result out will be converted to [].
      • The UI of SF analysis now allows using missing epochs from files or not to define any missing epochs.
    • pspm_sf now uses pspm_get_timing to handle missing epochs.
    • marker_chan_num now refers to the first marker channel as default.
  • pspm_sf_dcm
    • pspm_sf_dcm now uses pspm_interp1 for interpolating data.
  • pspm_text
    • The Matlab file that stores the information of help text pspm_text.mat will be stored inside the source folder of PsPM and will be deleted when PsPM is quit.
  • pspm_trim
    • marker_chan_num now refers to the first marker channel as default.

Minor Adjustments

  • pspm_sf, pspm_glm and pspm_dcm
    • The option marker_chan_num_event is removed.
    • In default, the first marker channel / event channel is always selected and no users' customisation is allowed.
    • The last data channel / wave channel is always selected.

Reference document

  • New document PsPM Reference for checking the default values and restrictions of options fields.