function rms=plotspectrumRMS2(freq,spe,clr,evaluate); % plot cumulative RMS for a spectrum % returns RMS Nfreq=length(freq); cumulativeRMS=[]; cumulativeRMSsquared=zeros(1,Nfreq); for k=(Nfreq-1):-1:1 if isnan(spe(k)) | isnan(spe(k+1)) continue; end cumulativeRMSsquared(k)=cumulativeRMSsquared(k+1)+(spe(k+1)^2+spe(k)^2)*(freq(k+1)-freq(k))/2; end cumulativeRMS=[cumulativeRMS;sqrt(cumulativeRMSsquared)]; rms=cumulativeRMS(:,1); [M,I]=min(abs(freq-evaluate)); rms_evaluate=cumulativeRMS(:,I); loglog(freq,cumulativeRMS,':','Color',clr,'LineWidth',2); text(freq(1),rms*10,['RMS = ',num2str(rms,'%.3f')],'Color',clr); text(freq(I)*10,rms_evaluate,['RMS @',num2str(evaluate,'%.2f'),'Hz = ',num2str(rms_evaluate,'%.3f')],'Color',clr); loglog([freq(1),freq(I)*10],[rms_evaluate,rms_evaluate],'-','Color','k');