diff --git a/glmsingle/ols/glm_estimatemodel.py b/glmsingle/ols/glm_estimatemodel.py index 8d34483..e596e35 100644 --- a/glmsingle/ols/glm_estimatemodel.py +++ b/glmsingle/ols/glm_estimatemodel.py @@ -460,7 +460,7 @@ def glm_estimatemodel(design, data, stimdur, tr, hrfmodel, hrfknobs, opt['maxpolydeg'] = [ np.arange( alt_round( - ((data[r].shape[-1]*tr)/60)/2) + 1 + ((data[r].shape[-1]*tr)/60)/2) ) for r in range(numruns)] if 'seed' not in opt: diff --git a/glmsingle/ols/make_poly_matrix.py b/glmsingle/ols/make_poly_matrix.py index eb7fe61..0923ab6 100644 --- a/glmsingle/ols/make_poly_matrix.py +++ b/glmsingle/ols/make_poly_matrix.py @@ -22,12 +22,17 @@ def make_polynomial_matrix(n, degrees): Args: n (int): number of points - degrees (array): vector of polynomial degrees + degrees (array or int): vector of polynomial degrees or single degree Returns: - polynomials: array of n x len(degrees) + polynomials: array of n x len(degrees) if degrees is array, or n x (degree+1) if degrees is int """ time_points = np.linspace(-1, 1, n)[np.newaxis].T + + # Convert single integer to array of degrees from 0 to degrees + if isinstance(degrees, (int, np.integer)): + degrees = np.arange(degrees + 1) + polynomials = np.zeros((n, len(degrees))) # Loop over degrees diff --git a/matlab/GLMestimatesingletrial.m b/matlab/GLMestimatesingletrial.m index eafcbf0..bd90727 100644 --- a/matlab/GLMestimatesingletrial.m +++ b/matlab/GLMestimatesingletrial.m @@ -904,6 +904,7 @@ % short-circuit all of the work HRFindex = ones(nx,ny,nz); % easy peasy + HRFindexrun = ones(nx,ny,nz,nh); % easy peasy else