[WIP] Breaking Change - Use Update
Folder name is changed, rework the html templates Change the organisation.
This commit is contained in:
		@@ -3,9 +3,9 @@
 | 
			
		||||
 | 
			
		||||
%% NOTE
 | 
			
		||||
% With this file you can load the raw mat files
 | 
			
		||||
 
 | 
			
		||||
 | 
			
		||||
%% Description: measure on id31 microstation in exp hutch
 | 
			
		||||
 
 | 
			
		||||
 | 
			
		||||
% FS: =256Hz
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@@ -57,8 +57,8 @@
 | 
			
		||||
%%
 | 
			
		||||
microstation=['Marble     '; 'TY         ';'Tilt       '; 'Hexapod    '];
 | 
			
		||||
 | 
			
		||||
% 
 | 
			
		||||
%% PARAMETERS 
 | 
			
		||||
%
 | 
			
		||||
%% PARAMETERS
 | 
			
		||||
 | 
			
		||||
beamline='ID31 Nanostation - Hammer testing';
 | 
			
		||||
% --------------------------------
 | 
			
		||||
@@ -68,7 +68,7 @@ ch_max=16;
 | 
			
		||||
 | 
			
		||||
%mult=1e6/276*173;  % --> m/s to micron/s and sensitivity correction for L4-C
 | 
			
		||||
 | 
			
		||||
nyqhp=2.56; % nyquist 
 | 
			
		||||
nyqhp=2.56; % nyquist
 | 
			
		||||
f_cut=0.5; % cut frequency for high pass filter
 | 
			
		||||
t_win=4; % window length in sec
 | 
			
		||||
t_ovlp=0; % overlap window in sec
 | 
			
		||||
@@ -93,93 +93,93 @@ shock_ch=9;
 | 
			
		||||
%% main loop --------
 | 
			
		||||
% ------------------
 | 
			
		||||
for i=capt
 | 
			
		||||
    
 | 
			
		||||
        
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
    eval(['load Measurement_raw',num2str(i)])
 | 
			
		||||
    freq_max=Track1_TrueBandWidth;
 | 
			
		||||
    dts=1/(freq_max*nyqhp); 
 | 
			
		||||
    
 | 
			
		||||
    dts=1/(freq_max*nyqhp);
 | 
			
		||||
 | 
			
		||||
    freq=linspace(0,freq_max,t_win*freq_max);
 | 
			
		||||
    wo=2*pi*freq;
 | 
			
		||||
    
 | 
			
		||||
 | 
			
		||||
    for k=1:ch_max
 | 
			
		||||
    vname=['Track',num2str(k)];
 | 
			
		||||
    array_exist(k)=ismember(vname,who);
 | 
			
		||||
    end
 | 
			
		||||
    non_zero=find(array_exist);
 | 
			
		||||
    for z=non_zero(1):length(non_zero)
 | 
			
		||||
    track_nb=['Track',num2str(z)]'; 
 | 
			
		||||
    eval(['data(:,z)=Track',num2str(z),';']); 
 | 
			
		||||
    track_nb=['Track',num2str(z)]';
 | 
			
		||||
    eval(['data(:,z)=Track',num2str(z),';']);
 | 
			
		||||
    end
 | 
			
		||||
    c=data*mult;
 | 
			
		||||
    
 | 
			
		||||
 | 
			
		||||
        
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
    %-------------
 | 
			
		||||
    nbch=size(c,2);
 | 
			
		||||
    %-------------
 | 
			
		||||
    r=length(c);
 | 
			
		||||
    if r/2~=fix(r/2)    % loop to test for odd or even nb of samples
 | 
			
		||||
       c=c(1:r-1,:);   % take only even
 | 
			
		||||
    else 
 | 
			
		||||
    else
 | 
			
		||||
    end
 | 
			
		||||
    %------------------------------
 | 
			
		||||
    time=linspace(0,length(c)*dts,length(c)); 
 | 
			
		||||
    
 | 
			
		||||
    time=linspace(0,length(c)*dts,length(c));
 | 
			
		||||
 | 
			
		||||
    for j=nbch %shunt_ch
 | 
			
		||||
        [c(:,j),c_shut]=shut_c(c(:,j),1/dts);   % correct for shunt 
 | 
			
		||||
        [c(:,j),c_shut]=shut_c(c(:,j),1/dts);   % correct for shunt
 | 
			
		||||
    end
 | 
			
		||||
    %c(:,8)=(c(:,5)-c(:,4))/d; % differential Theta Y angle
 | 
			
		||||
    
 | 
			
		||||
     b=find(no_hammer==i); %      if i==1 | i==2 | i==6 
 | 
			
		||||
 | 
			
		||||
     b=find(no_hammer==i); %      if i==1 | i==2 | i==6
 | 
			
		||||
     if b~=0
 | 
			
		||||
         [psd_v,integ_v,psd_d,integ_d]=integrated_psd(c,t_win,t_ovlp,nyqhp,dts);
 | 
			
		||||
         [frz_cut,crsp,pwsp,coherz,nsp]=fqresp(c,shock_ch,t_win,t_ovlp,nyqhp,dts);
 | 
			
		||||
         
 | 
			
		||||
     else 
 | 
			
		||||
         
 | 
			
		||||
 | 
			
		||||
     else
 | 
			
		||||
 | 
			
		||||
        thresh=0.5;  % threshold of max value
 | 
			
		||||
        sep=2.5;  % separation minimum of peaks in sec
 | 
			
		||||
        pre_ev=2; % pre event delay in sec
 | 
			
		||||
        pos_ev=2; % post event delay in sec
 | 
			
		||||
                
 | 
			
		||||
 | 
			
		||||
        [ti,t_impact]=findpeaks(c(:,shock_ch),'minpeakheight',max(c(:,shock_ch))*thresh,'minpeakdistance',ceil(sep/dts));
 | 
			
		||||
        % find times at which there are impacts (threshold of max and separated by sep sec)
 | 
			
		||||
        
 | 
			
		||||
 | 
			
		||||
        psd_v=zeros((pre_ev+pos_ev)/dts/nyqhp,nbch);
 | 
			
		||||
        psd_d=zeros((pre_ev+pos_ev)/dts/nyqhp,nbch);
 | 
			
		||||
        frz_cut=zeros((pre_ev+pos_ev)/dts/nyqhp,nbch);
 | 
			
		||||
       
 | 
			
		||||
 | 
			
		||||
        for k=1:length(t_impact)
 | 
			
		||||
            ibeg=fix(t_impact(k)-(pre_ev/dts));
 | 
			
		||||
            iend=fix(t_impact(k)+(pos_ev/dts));
 | 
			
		||||
            freq_s=linspace(0,freq_max,t_win/2*freq_max);
 | 
			
		||||
            if ibeg>1 && iend<length(c)        % eliminate indexes outside data range  
 | 
			
		||||
            if ibeg>1 && iend<length(c)        % eliminate indexes outside data range
 | 
			
		||||
                [psd,integ_v,psd_int,integ_d]=integrated_psd(c(ibeg:iend,:),t_win,t_ovlp,nyqhp,dts);
 | 
			
		||||
                psd_v=psd+psd_v;
 | 
			
		||||
                psd_d=psd_int+psd_d;
 | 
			
		||||
                [frz,crsp,pwsp,coherz,nsp]=fqresp(c(ibeg:iend,:),shock_ch,t_win,t_ovlp,nyqhp,dts);
 | 
			
		||||
                frz_cut=frz+frz_cut;
 | 
			
		||||
            end
 | 
			
		||||
             
 | 
			
		||||
 | 
			
		||||
        end
 | 
			
		||||
        
 | 
			
		||||
 | 
			
		||||
        psd_v=psd_v/length(t_impact);
 | 
			
		||||
        psd_d=psd_d/length(t_impact);
 | 
			
		||||
        frz_cut=frz_cut/length(t_impact);
 | 
			
		||||
        
 | 
			
		||||
 | 
			
		||||
     end
 | 
			
		||||
    
 | 
			
		||||
   
 | 
			
		||||
     
 | 
			
		||||
        
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
    drms=max(integ_d);  % compute rms level
 | 
			
		||||
    dc=hpfint(c,f_cut,dts);    % filter and integrate in time domain
 | 
			
		||||
    dppc=hpdpp(dc,t_win,t_ovlp,1,dts);  % compute peak to peak level
 | 
			
		||||
    
 | 
			
		||||
    
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
   %% transfer function, cross spectrum, power spectr. and coherence w.r.t. ch1
 | 
			
		||||
      
 | 
			
		||||
 | 
			
		||||
   eval(['c',num2str(i),'=c;'])
 | 
			
		||||
   eval(['dc',num2str(i),'=dc;'])
 | 
			
		||||
   eval(['dppc',num2str(i),'=dppc;'])
 | 
			
		||||
@@ -193,8 +193,8 @@ for i=capt
 | 
			
		||||
%    eval(['frx',num2str(i),'=frx;'])
 | 
			
		||||
   eval(['coherz',num2str(i),'=coherz;'])
 | 
			
		||||
   eval(['time',num2str(i),'=time;'])
 | 
			
		||||
   
 | 
			
		||||
 | 
			
		||||
   clear data c dc psd psd_v psd_d time c_shut % clean up the mess
 | 
			
		||||
   
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
end
 | 
			
		||||
@@ -1,3 +1,3 @@
 | 
			
		||||
contient les mesures des r<>ponses avec marteau d'impact. Les fichiers xxx_raw sont sans traitement dans le domaine temporel (environ 10 impacts par fichier). Les fonctions de transfert avec phase sont dans le m<>me r<>pertoire avec des noms explicites (manquent les coh<6F>rences que je n'ai pas sorties)
 | 
			
		||||
 | 
			
		||||
Ces donn<6E>es ne me semblent pas de super qualit<69> en basse fr<66>quence, avec le Ty libre le mode <20> 5Hz est tr<74>s amorti. 
 | 
			
		||||
Ces donn<6E>es ne me semblent pas de super qualit<69> en basse fr<66>quence, avec le Ty libre le mode <20> 5Hz est tr<74>s amorti.
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user