diff --git a/doc/PsPM_Developers_Guide.lyx b/doc/PsPM_Developers_Guide.lyx index e3cf8ac00..33cece524 100644 --- a/doc/PsPM_Developers_Guide.lyx +++ b/doc/PsPM_Developers_Guide.lyx @@ -102,7 +102,7 @@ Developer's Guide \begin_layout Standard \align center -Version 6.1.0 +Version 6.1.1 \end_layout \begin_layout Standard diff --git a/doc/PsPM_Developers_Guide.pdf b/doc/PsPM_Developers_Guide.pdf index e09ae5e80..ca1ea6de1 100644 Binary files a/doc/PsPM_Developers_Guide.pdf and b/doc/PsPM_Developers_Guide.pdf differ diff --git a/doc/PsPM_Manual.lyx b/doc/PsPM_Manual.lyx index 54a03405a..25525db2c 100644 --- a/doc/PsPM_Manual.lyx +++ b/doc/PsPM_Manual.lyx @@ -104,7 +104,7 @@ PsPM: Psychophysiological Modelling \begin_layout Standard \align center -Version 6.1.0 +Version 6.1.1 \end_layout \begin_layout Standard @@ -21183,6 +21183,352 @@ options fields. \end_layout +\begin_layout Subsection* +Version 6.1.1 +\end_layout + +\begin_layout Subsubsection* +New features +\end_layout + +\begin_layout Itemize + +\family typewriter +pspm_bf_psrf_2_fc +\end_layout + +\begin_deeper +\begin_layout Itemize + +\family typewriter +pspm_bf_psrf_2_fc +\family default + now allows to set the time delay between CS and US. +\end_layout + +\begin_layout Itemize +Previously, +\family typewriter +pspm_bf_psrf_2_fc +\family default + used to set a basis function for the CS and for the US response with a + time delay of 3.5 s as standard. +\end_layout + +\end_deeper +\begin_layout Itemize + +\family typewriter +pspm_dcm +\end_layout + +\begin_deeper +\begin_layout Itemize +Missing data epochs from file and data can be combined. +\end_layout + +\end_deeper +\begin_layout Itemize + +\family typewriter +pspm_glm +\end_layout + +\begin_deeper +\begin_layout Itemize + +\family typewriter +pspm_glm +\family default + now allows a two-element vector and construct the dictionary accordingly. +\end_layout + +\begin_layout Itemize +Previously +\family typewriter +pspm_glm +\family default + only allows scalar values in model.window. +\end_layout + +\end_deeper +\begin_layout Subsubsection* +New functions +\end_layout + +\begin_layout Itemize + +\family typewriter +pspm_check_model +\end_layout + +\begin_deeper +\begin_layout Itemize + +\family typewriter +pspm_check_model +\family default + checks the fiels of models. +\end_layout + +\end_deeper +\begin_layout Itemize + +\family typewriter +pspm_combine_markerchannels +\end_layout + +\begin_deeper +\begin_layout Itemize + +\family typewriter +pspm_combine_markerchannels +\family default + allows users to use the GLM option "markervalues" to create onsets definition + from channels distributed across multiple channels. +\end_layout + +\end_deeper +\begin_layout Itemize + +\family typewriter +pspm_tam +\end_layout + +\begin_deeper +\begin_layout Itemize + +\family typewriter +TAM +\family default + stands for Trial Average Model. + +\family typewriter +pspm_tam +\family default + allows to fit models on trial-averaged data. + +\end_layout + +\end_deeper +\begin_layout Subsubsection* +Adjustments +\end_layout + +\begin_layout Itemize + +\family typewriter +pspm_pupil_pp +\end_layout + +\begin_deeper +\begin_layout Itemize +Now +\family typewriter +pspm_pupil_pp +\family default + creates channels of type +\family typewriter +pupil +\family default + rather than +\family typewriter +pupil_pp +\family default +. +\end_layout + +\end_deeper +\begin_layout Itemize + +\family typewriter +pspm_split_sessions +\end_layout + +\begin_deeper +\begin_layout Itemize + +\family typewriter +pspm_split_sessions +\family default + no longer drops markers at beginning or end of file. + +\end_layout + +\end_deeper +\begin_layout Subsubsection* +Bug fixes +\end_layout + +\begin_layout Itemize + +\family typewriter +pspm_con +\end_layout + +\begin_deeper +\begin_layout Itemize +A bug caused by the new varargout logic of +\family typewriter +pspm_load1 +\family default + has been fixed. +\end_layout + +\end_deeper +\begin_layout Itemize + +\family typewriter +pspm_dcm +\end_layout + +\begin_deeper +\begin_layout Itemize +A bug that leads dropping sub-threshold missing data periods has been fixed. +\end_layout + +\end_deeper +\begin_layout Itemize + +\family typewriter +pspm_get_spike +\end_layout + +\begin_deeper +\begin_layout Itemize +A minor bug caused by a non-existing variable has been fxied. +\end_layout + +\end_deeper +\begin_layout Itemize + +\family typewriter +pspm_scr_pp +\end_layout + +\begin_deeper +\begin_layout Itemize +A bug that could change the original file if it saves epochs to +\family typewriter +missing_epoch.mat +\family default + has been fixed. + +\end_layout + +\end_deeper +\begin_layout Subsubsection* +Improvements +\end_layout + +\begin_layout Itemize + +\family typewriter +pspm_extract_segments +\end_layout + +\begin_deeper +\begin_layout Itemize +Now +\family typewriter +pspm_extract_segments +\family default + process the data after excluding the missing data information that is provided + in the model structure. +\end_layout + +\end_deeper +\begin_layout Itemize + +\family typewriter +pspm_dcm +\end_layout + +\begin_deeper +\begin_layout Itemize +Processed data are now initialised as data matrix with +\family typewriter +NaN +\family default + before inserting data of variable size. +\end_layout + +\end_deeper +\begin_layout Itemize + +\family typewriter +pspm_glm +\end_layout + +\begin_deeper +\begin_layout Itemize +A warning has been added if any duration in onset definition is above +\family typewriter +0 +\family default + and modality is not +\family typewriter +sps +\family default +. +\end_layout + +\end_deeper +\begin_layout Itemize + +\family typewriter +pspm_overwrite +\end_layout + +\begin_deeper +\begin_layout Itemize +The logic of overwriting files in PsPM has been updated. +\end_layout + +\begin_layout Itemize +Specifically, the overwriting operation is applicable only if there has + been a file with the proposed name of the outputfile. +\end_layout + +\begin_layout Itemize +A warning will be provided if the user chooses not to overwrite the file, + since the output of PsPM will not be saved. + +\end_layout + +\end_deeper +\begin_layout Itemize + +\family typewriter +pspm_split_sessions +\end_layout + +\begin_deeper +\begin_layout Itemize +A misleading warning provided by +\family typewriter +pspm_split_sessions +\family default + when it processes a missing epoch file has been fixed. +\end_layout + +\begin_layout Itemize +The help text of +\family typewriter +split_sessions +\family default + in the GUI has been updated. +\end_layout + +\end_deeper +\begin_layout Subsubsection* +UI improvements +\end_layout + +\begin_layout Itemize +PsPM's UI in Linux environment has been improved. +\end_layout + \begin_layout Part Acknowledgements \end_layout diff --git a/doc/PsPM_Manual.pdf b/doc/PsPM_Manual.pdf index 40d77b908..da67c0343 100644 Binary files a/doc/PsPM_Manual.pdf and b/doc/PsPM_Manual.pdf differ diff --git a/doc/PsPM_References.lyx b/doc/PsPM_References.lyx index b7459cb31..5dd71c840 100644 --- a/doc/PsPM_References.lyx +++ b/doc/PsPM_References.lyx @@ -98,7 +98,7 @@ PsPM: Option References \begin_layout Standard \align center -Version 6.1.0 +Version 6.1.1 \end_layout \begin_layout Standard diff --git a/doc/PsPM_References.pdf b/doc/PsPM_References.pdf index b16d059b5..8cfd7b6c7 100644 Binary files a/doc/PsPM_References.pdf and b/doc/PsPM_References.pdf differ diff --git a/doc/PsPM_release_checklist.md b/doc/PsPM_release_checklist.md index ec5c02537..0a862b511 100644 --- a/doc/PsPM_release_checklist.md +++ b/doc/PsPM_release_checklist.md @@ -4,7 +4,7 @@ This file contains the steps required for finalising a PsPM release. Many items - [ ] Update version number & date in - [ ] `pspm_msg` - [ ] `pspm_quit` - - [ ] `pspm_ui` + - [ ] `pspm_ui` - [ ] `pspm.fig`: Load `pspm.fig` into MATLAB using `openfig`, update `fig.Children(9).String` and save back to `pspm.fig` - [ ] Manual and Developers Guide: front pages - [ ] Make sure both manuals are updated diff --git a/doc/release_notes.pdf b/doc/release_notes.pdf index b5a494852..02a3cf6a2 100644 Binary files a/doc/release_notes.pdf and b/doc/release_notes.pdf differ diff --git a/doc/release_notes.tex b/doc/release_notes.tex index 3e6c3d542..925644f0e 100644 --- a/doc/release_notes.tex +++ b/doc/release_notes.tex @@ -68,7 +68,7 @@ framexleftmargin=1pt, frame=l} \renewcommand{\lstlistingname}{Listing} -\title{PsPM Release Notes\\ ~\\ Version 6.1.0} +\title{PsPM Release Notes\\ ~\\ Version 6.1.1} \begin{document} \maketitle @@ -1096,6 +1096,123 @@ \subsection*{Reference document} \item New document \textit{PsPM Reference} for checking the default values and restrictions of \texttt{options} fields. \end{itemize} +\section{PsPM Version 6.1.1} + +\subsection*{New features} +\begin{itemize} +\item \texttt{pspm\_bf\_psrf\_2\_fc} +\begin{itemize} +\item \texttt{pspm\_bf\_psrf\_2\_fc} now allows to set the time delay between +CS and US. +\item Previously, \texttt{pspm\_bf\_psrf\_2\_fc} used to set a basis function +for the CS and for the US response with a time delay of 3.5 s as standard. +\end{itemize} +\item \texttt{pspm\_dcm} +\begin{itemize} +\item Missing data epochs from file and data can be combined. +\end{itemize} +\item \texttt{pspm\_glm} +\begin{itemize} +\item \texttt{pspm\_glm} now allows a two-element vector and construct the +dictionary accordingly. +\item Previously \texttt{pspm\_glm} only allows scalar values in model.window. +\end{itemize} +\end{itemize} + +\subsection*{New functions} +\begin{itemize} +\item \texttt{pspm\_check\_model} +\begin{itemize} +\item \texttt{pspm\_check\_model} checks the fiels of models. +\end{itemize} +\item \texttt{pspm\_combine\_markerchannels} +\begin{itemize} +\item \texttt{pspm\_combine\_markerchannels} allows users to use the GLM +option \textquotedbl markervalues\textquotedbl{} to create onsets +definition from channels distributed across multiple channels. +\end{itemize} +\item \texttt{pspm\_tam} +\begin{itemize} +\item \texttt{TAM} stands for Trial Average Model. \texttt{pspm\_tam} allows +to fit models on trial-averaged data. +\end{itemize} +\end{itemize} + +\subsection*{Adjustments} +\begin{itemize} +\item \texttt{pspm\_pupil\_pp} +\begin{itemize} +\item Now \texttt{pspm\_pupil\_pp} creates channels of type \texttt{pupil} +rather than \texttt{pupil\_pp}. +\end{itemize} +\item \texttt{pspm\_split\_sessions} +\begin{itemize} +\item \texttt{pspm\_split\_sessions} no longer drops markers at beginning +or end of file. +\end{itemize} +\end{itemize} + +\subsection*{Bug fixes} +\begin{itemize} +\item \texttt{pspm\_con} +\begin{itemize} +\item A bug caused by the new varargout logic of \texttt{pspm\_load1} has +been fixed. +\end{itemize} +\item \texttt{pspm\_dcm} +\begin{itemize} +\item A bug that leads dropping sub-threshold missing data periods has been +fixed. +\end{itemize} +\item \texttt{pspm\_get\_spike} +\begin{itemize} +\item A minor bug caused by a non-existing variable has been fxied. +\end{itemize} +\item \texttt{pspm\_scr\_pp} +\begin{itemize} +\item A bug that could change the original file if it saves epochs to \texttt{missing\_epoch.mat} +has been fixed. +\end{itemize} +\end{itemize} + +\subsection*{Improvements} +\begin{itemize} +\item \texttt{pspm\_extract\_segments} +\begin{itemize} +\item Now \texttt{pspm\_extract\_segments} process the data after excluding +the missing data information that is provided in the model structure. +\end{itemize} +\item \texttt{pspm\_dcm} +\begin{itemize} +\item Processed data are now initialised as data matrix with \texttt{NaN} +before inserting data of variable size. +\end{itemize} +\item \texttt{pspm\_glm} +\begin{itemize} +\item A warning has been added if any duration in onset definition is above +\texttt{0} and modality is not \texttt{sps}. +\end{itemize} +\item \texttt{pspm\_overwrite} +\begin{itemize} +\item The logic of overwriting files in PsPM has been updated. +\item Specifically, the overwriting operation is applicable only if there +has been a file with the proposed name of the outputfile. +\item A warning will be provided if the user chooses not to overwrite the +file, since the output of PsPM will not be saved. +\end{itemize} +\item \texttt{pspm\_split\_sessions} +\begin{itemize} +\item A misleading warning provided by \texttt{pspm\_split\_sessions} when +it processes a missing epoch file has been fixed. +\item The help text of \texttt{split\_sessions} in the GUI has been updated. +\end{itemize} +\end{itemize} + +\subsection*{UI improvements} +\begin{itemize} +\item PsPM's UI in Linux environment has been improved. +\end{itemize} + \bibliographystyle{pnas2009} \bibliography{PsPM} diff --git a/src/pspm_msg.txt b/src/pspm_msg.txt index 7f9a77cba..fc11a2024 100644 --- a/src/pspm_msg.txt +++ b/src/pspm_msg.txt @@ -1,10 +1,10 @@ $___________________________________________________________________________ Welcome to PsPM -- PsychoPhysiological Modelling (incorporating SCRalyze) -Version 6.1.0 (22.08.2023) +Version 6.1.1 (17.01.2024) $ ------------------------------------------ -(c) 2008-2023 +(c) 2008-2024 Dominik R Bach * Wellcome Centre for Human Neuroimaging University College London @@ -14,17 +14,17 @@ d.bach@ucl.ac.uk bachlab.github.io/PsPM ------------------------------------------ $ -This program is free software: you can redistribute it and/or modify it -under the terms of the GNU General Public License as published by the Free -Software Foundation, either version 3 of the License, or (at your option) +This program is free software: you can redistribute it and/or modify it +under the terms of the GNU General Public License as published by the Free +Software Foundation, either version 3 of the License, or (at your option) any later version. $ -This program is distributed in the hope that it will be useful, but WITHOUT -ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for -more details. +This program is distributed in the hope that it will be useful, but WITHOUT +ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or +FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for +more details. $ -You should have received a copy of the GNU General Public License along +You should have received a copy of the GNU General Public License along with this program. If not, see . ___________________________________________________________________________ -$ \ No newline at end of file +$ diff --git a/src/pspm_quit.m b/src/pspm_quit.m index 3686e601d..dc80be16f 100644 --- a/src/pspm_quit.m +++ b/src/pspm_quit.m @@ -24,6 +24,6 @@ disp(' '); disp('Thanks for using PsPM.'); disp(repelem('-',20)); -disp('PsPM 6.1.0 (c) 2008-2023 Dominik R. Bach'); +disp('PsPM 6.1.1 (c) 2008-2024 Dominik R. Bach'); disp('Uni Bonn, DE | UCL, UK | UZH, CH'); return diff --git a/src/pspm_ui.m b/src/pspm_ui.m index 72873e87d..d62f01a12 100644 --- a/src/pspm_ui.m +++ b/src/pspm_ui.m @@ -87,7 +87,7 @@ handles.tag_attribution.FontSize = FSAttr; %handles.tag_attribution.Visible = 'off'; handles.tag_attribution.HorizontalAlignment = 'center'; - attribution_disp_text = sprintf(['Version 6.1.0, Build 22-08-2023 with MATLAB 2023a, ',... + attribution_disp_text = sprintf(['Version 6.1.1, Build 17-01-2024 with MATLAB 2023a, ',... 'The PsPM Team, University College London']); handles.tag_attribution.String = attribution_disp_text; handles.tag_PsPM.FontName = FNRoman; diff --git a/src/pspm_ui_app.m b/src/pspm_ui_app.m index 175f81baf..9f7547960 100644 --- a/src/pspm_ui_app.m +++ b/src/pspm_ui_app.m @@ -37,9 +37,9 @@ %% Window specific settings switch app.layout.Name case 'pspm' - attribution_disp_text = ['Build 22-08-2023 with MATLAB 2023a, ',... + attribution_disp_text = ['Build 17-01-2024 with MATLAB 2023a, ',... 'The PsPM Team, University College London']; - app.attribution.Text{1,1} = 'Version 6.1.0'; + app.attribution.Text{1,1} = 'Version 6.1.1'; app.attribution.Text{2,1} = attribution_disp_text; end return