Frequency resolution when computing PSD

Hi Brainstorm team,

I am calculating the PSD on portions of signals having different lengths and I am using the pwelch method. I am setting window length at 10s and my signals can last from 0.5s to 2s. Since the resolution is R = Fs/N (N is the length of the signal observation), I am having different frequency resolutions according to the length of the signal, but I need the same resolution across all the signals! How is Brainstorm computing the PSD through the pwelch method? Is there a way to implement a zero-padding on the time domain so that for shorter signals I don't have lower frequency resolutions?

Thanks!
Assia

I am setting window length at 10s and my signals can last from 0.5s to 2s.

This is a lot of zero-padding... I'm not sure we would recommend doing this.
Do you have references to share, that recommend using a 10s window for computing the FFT of a 2s-long signal?
And why would you need such a high frequency resolution anyway?

I am having different frequency resolutions according to the length of the signal, but I need the same resolution across all the signals

Do you mean, with the Brainstorm function or with a zero-padded FFT computed manually with Matlab?
If your signals are zero-padded, it should not changed anything.
If you use the Brainstorm function: if you want to get the same resolution, you'll need to use an evaluation window shorter than the shortest file.

How is Brainstorm computing the PSD through the pwelch method

Is there a way to implement a zero-padding on the time domain so that for shorter signals I don't have lower frequency resolutions?

The Brainstorm PSD process doesn't allow any zero-padding.
You can do this outside of Brainstorm.
https://neuroimage.usc.edu/brainstorm/Tutorials/Scripting