Changeset 232 in ETALON for SPESO


Ignore:
Timestamp:
Apr 15, 2015, 4:38:18 PM (9 years ago)
Author:
delerue
Message:

Analysis updated - accepts beam info data

Location:
SPESO/ana2015
Files:
2 added
4 edited

Legend:

Unmodified
Added
Removed
  • SPESO/ana2015/gen_ana_speso_fun.m

    r222 r232  
    88define_dirs_analysis;
    99
     10set(0,'DefaultAxesFontSize',12)
    1011
    1112fnamebase=[ basedir dateStr '_scope/scope_' dateStr '_' timeStr '_' ];
     
    2223    rerun=0;
    2324else
     25    rerun=1;
     26end
     27
     28if (~exist('dateAnalysed'))
     29    warning('dateAnalysed missing')
     30    rerun=1;
     31    dateAnalysed=0;
     32end
     33
     34if (~exist('dateCode'))
     35    load('dateCode.mat')
     36end
     37
     38if (dateCode>(dateAnalysed-0.5))
     39    warning('File was analysed with old code')
    2440    rerun=1;
    2541end
     
    112128            fprintf(fid, [ '<IMG SRC="' imgName '" WIDTH=' num2str(imageSizes) '><BR/>\n' ]);
    113129           
     130            channelValues.on=1;
    114131           
    115132        else % channel is off
    116             channelValues=[];
     133            channelValues.on=0;
     134            channelValues.means=[0 0 0];
     135            channelValues.rms=[0 0 0];
     136            channelValues.sv=0;
     137            channelValues.peak=0;
    117138        end % channel is off
    118139       
     
    128149       
    129150    end % for all channels
     151    eventData.timing=datenum([ dateStr timeStr],'YYYYmmDDHHMMSS');   
    130152   
    131153    fprintf(fid,'</TR>');
     
    142164    fclose(fid);
    143165   
    144     mamboDataIncluded=0;
    145     save(fnameMat,'eventData','dateAnalysed','mamboDataIncluded');
     166    save(fnameMat,'eventData','dateAnalysed');
    146167   
    147168   
  • SPESO/ana2015/parameters_from_time_fun.m

    r222 r232  
    1515        myParameters.ch3=myParameters.ch2;
    1616        myParameters.ch4=myParameters.ch2;
    17 elseif (dateNum>=20150319)
    18   %No SPM
    19         myParameters.sigOffsetLPM=45;
    20         myParameters.sigDurationLPM=55;
    21         myParameters.riseTimeLPM=20;
    22         myParameters.sigOffsetSPM=50;
    23         myParameters.sigDurationSPM=5;
    24         myParameters.riseTimeSPM=10;
    25 elseif (dateNum>=20150301)
    26         myParameters.sigOffsetLPM=45;
    27         myParameters.sigDurationLPM=55;
    28         myParameters.riseTimeLPM=20;
    29         myParameters.sigOffsetSPM=50;
    30         myParameters.sigDurationSPM=5;
    31         myParameters.riseTimeSPM=10;
    32 elseif (dateNum>=20150222)
    33         myParameters.sigOffsetLPM=550;
    34         myParameters.sigDurationLPM=400;
    35         myParameters.riseTimeLPM=600;
    36         myParameters.sigOffsetSPM=530;
    37         myParameters.sigDurationSPM=60;
    38         myParameters.riseTimeSPM=300;
     17 elseif (dateNum>=20150319)
     18        myParameters.ch1.on=0;
     19        myParameters.ch1.sigOffset=0;
     20        myParameters.ch1.sigDuration=0;
     21        myParameters.ch1.riseTime=0;
     22
     23        myParameters.ch3=myParameters.ch1;
     24        myParameters.ch4=myParameters.ch1;
     25
     26        myParameters.ch2.on=1;
     27        myParameters.ch2.sigOffset=2e-7;
     28        myParameters.ch2.sigDuration=2e-7;
     29        myParameters.ch2.riseTime=2e-7;
     30       
     31
     32     
     33     % elseif (dateNum>=20150319)
     34%   %No SPM
     35%         myParameters.sigOffsetLPM=45;
     36%         myParameters.sigDurationLPM=55;
     37%         myParameters.riseTimeLPM=20;
     38%         myParameters.sigOffsetSPM=50;
     39%         myParameters.sigDurationSPM=5;
     40%         myParameters.riseTimeSPM=10;
     41% elseif (dateNum>=20150301)
     42%         myParameters.sigOffsetLPM=45;
     43%         myParameters.sigDurationLPM=55;
     44%         myParameters.riseTimeLPM=20;
     45%         myParameters.sigOffsetSPM=50;
     46%         myParameters.sigDurationSPM=5;
     47%         myParameters.riseTimeSPM=10;
     48% elseif (dateNum>=20150222)
     49%         myParameters.sigOffsetLPM=550;
     50%         myParameters.sigDurationLPM=400;
     51%         myParameters.riseTimeLPM=600;
     52%         myParameters.sigOffsetSPM=530;
     53%         myParameters.sigDurationSPM=60;
     54%         myParameters.riseTimeSPM=300;
    3955else
    40         myParameters.sigOffsetLPM=500;
    41         myParameters.sigDurationLPM=400;
    42         myParameters.riseTimeLPM=400;
    43         myParameters.sigOffsetSPM=500;
    44         myParameters.sigDurationSPM=400;
    45         myParameters.riseTimeSPM=400; 
     56    warning('No parameters defined for that date using defaults');
     57        myParameters.ch2.on=1;
     58        myParameters.ch2.sigOffset=-1.2e-5;
     59        myParameters.ch2.sigDuration=1e-5;
     60        myParameters.ch2.riseTime=5e-6;
     61       
     62        myParameters.ch1=myParameters.ch2;
     63        myParameters.ch3=myParameters.ch2;
     64        myParameters.ch4=myParameters.ch2;
    4665end %if
    4766end
  • SPESO/ana2015/read_date_fun.m

    r224 r232  
    3434plots_dir=[ plots_basedir dateStr '/'  ];
    3535
     36mergedInfoFile=[ basedir '/'  dateStr '/' 'merged_info_'  dateStr '.mat'];
     37
     38
     39set(0,'DefaultAxesFontSize',14)
     40
    3641dayEvents=[];
    37 
     42dateAnalysedStr=datestr(now);
    3843
    3944txtHTMLlist='';
     
    4752iAllData=1;
    4853
    49  hourStrArray = [ ];
     54hourStrArray = [ ];
    5055for iloop=0:23
    5156    hourStr = num2str(iloop,'%02d');
     
    129134        xlabel('time [hh]');
    130135        ylabel('voltage[V]');
    131         print(figure(ich*10+6), '-dpng', [ plots_dir dateStr '_all_peaks_over_day_ch' num2str(ich) '.png' ]);       
     136        print(figure(ich*10+6), '-dpng', [ plots_dir dateStr '_all_peaks_over_day_ch' num2str(ich) '.png' ]);
    132137       
    133138    end %for
     
    136141end %loop over whole day
    137142
    138 
     143dateAnalysed=9.9999e9,
     144eventsTiming=[];
     145eventsChannelsOn=[];
     146eventsSignalValue=[];
     147eventsPeakValue=[];
     148eventsRMSValue=[];
     149beamInfoDataTimed=[];
     150
     151%%% Merges the beam info data
     152for iloop=0:23
     153    hourStr = num2str(iloop,'%02d');
     154    mergedInfoFileHourly=[ basedir '/'  dateStr '/' 'merged_info_'  dateStr '_' hourStr '.mat'];
     155    mifh=load(mergedInfoFileHourly);
     156    if (mifh.dateAnalysed<dateAnalysed)
     157        dateAnalysed=mifh.dateAnalysed
     158    end
     159    eventsTiming=[ eventsTiming mifh.eventsTiming ];
     160    eventsChannelsOn=[ eventsChannelsOn mifh.eventsChannelsOn ];
     161    eventsSignalValue=[ eventsSignalValue mifh.eventsSignalValue ];
     162    eventsPeakValue=[ eventsPeakValue mifh.eventsPeakValue ];
     163    eventsRMSValue=[ eventsRMSValue mifh.eventsRMSValue ];
     164    beamInfoDataTimed=[ beamInfoDataTimed mifh.beamInfoDataTimed ];
     165   
     166end
     167save(mergedInfoFile,'dateAnalysed','eventsTiming','eventsChannelsOn','eventsSignalValue','eventsPeakValue','eventsRMSValue','beamInfoDataTimed');
    139168
    140169fhtml=[ plots_dir 'info_daily_' dateStr  '.html' ];
     
    149178fprintf(fidhtml,['<BR/>\n<A HREF="../info_all_days.html"> Infos for all days </A><BR/>\n']);
    150179
    151 dateAnalysedStr=datestr(now);
    152180fprintf(fidhtml,['<BR/>\nData analysed on ' dateAnalysedStr  '<BR/>\n']);
    153181
     
    155183
    156184for ich=1:4
    157 fprintf(fidhtml, [ '<TR>\n ' ]);
    158 
    159 fprintf(fidhtml, [ '<TD><IMG SRC="' [ dateStr '_mean_data_over_hours_ch' num2str(ich) '.png' ] '" width=400> </TD>\n' ]);
    160 fprintf(fidhtml, [ '<TD><IMG SRC="' [ dateStr '_mean_peak_over_hours_ch' num2str(ich) '.png' ] '" width=400> </TD>\n' ]);
    161 fprintf(fidhtml, [ '<TD><IMG SRC="' [ dateStr '_all_data_over_day_ch' num2str(ich) '.png' ] '" width=400> </TD>\n' ]);
    162 fprintf(fidhtml, [ '<TD><IMG SRC="' [ dateStr '_all_peaks_over_day_ch' num2str(ich) '.png' ] '" width=400> </TD>\n' ]);
    163 fprintf(fidhtml, [ '</TR> \n' ]);
     185    fprintf(fidhtml, [ '<TR>\n ' ]);
     186   
     187    fprintf(fidhtml, [ '<TD><IMG SRC="' [ dateStr '_mean_data_over_hours_ch' num2str(ich) '.png' ] '" width=400> </TD>\n' ]);
     188    fprintf(fidhtml, [ '<TD><IMG SRC="' [ dateStr '_mean_peak_over_hours_ch' num2str(ich) '.png' ] '" width=400> </TD>\n' ]);
     189    fprintf(fidhtml, [ '<TD><IMG SRC="' [ dateStr '_all_data_over_day_ch' num2str(ich) '.png' ] '" width=400> </TD>\n' ]);
     190    fprintf(fidhtml, [ '<TD><IMG SRC="' [ dateStr '_all_peaks_over_day_ch' num2str(ich) '.png' ] '" width=400> </TD>\n' ]);
     191    fprintf(fidhtml, [ '</TR> \n' ]);
    164192end %for ich
    165193fprintf(fidhtml, '</TABLE>\n');
  • SPESO/ana2015/read_date_hour_fun.m

    r222 r232  
    1818
    1919fnameMat=[ basedir '/'  dateStr '_scope/'  dateStr '_' hourStr '.mat'];
     20beamInfoFile=[ basedir '/'  dateStr '/' 'beam_info_'  dateStr '_' hourStr '.mat'];
     21mergedInfoFile=[ basedir '/'  dateStr '/' 'merged_info_'  dateStr '_' hourStr '.mat'];
    2022
    2123[status,attribs]=fileattrib(fnameMat);
     
    3638end
    3739
     40if (~exist('dateCode','var'))
     41    load('dateCode.mat')
     42end
     43
     44if (dateCode>(dateAnalysed-0.5))
     45    warning('File was analysed with old code')
     46    rerun=1;
     47end
     48
     49
    3850
    3951if (rerun==1)
     
    4153    dateAnalysed=now;
    4254   
     55    if (~exist('beamInfoFile','file'))
     56        beamInfoData=load(beamInfoFile);
     57        beamInfoFileLoaded=1;
     58    else
     59        beamInfoFileLoaded=0;
     60    end
     61   
     62   
    4363    hourList=[];
    44    
    4564    try
    4665        if (lsColorOption==1)
     
    7695        ievent=1;
    7796        eventsTiming=[];
     97        eventsChannelsOn=[];
    7898        eventsSignalValue=[];
    7999        eventsPeakValue=[];
     100        beamInfoIndex=[];
     101        timingDifferences=[];
     102        mergedData=[];
    80103        hourEvents=[];
    81104        while (ipos>0)
     
    89112            [thisEvent]=gen_ana_speso_fun(dateStr,timeStr);
    90113            hourEvents(ievent).event=thisEvent;
    91             eventsTiming(ievent)=datenum([ dateStr timeStr],'YYYYmmDDHHMMSS');
     114            eventsTiming(ievent)=thisEvent.timing;
     115            eventsChannelsOn(ievent,1:4)=[ thisEvent.ch1.on  thisEvent.ch2.on  thisEvent.ch3.on  thisEvent.ch4.on ];
    92116            eventsSignalValue(ievent,1:4)=[ thisEvent.ch1.sv  thisEvent.ch2.sv  thisEvent.ch3.sv  thisEvent.ch4.sv ];
    93117            eventsPeakValue(ievent,1:4)=[ thisEvent.ch1.peak  thisEvent.ch2.peak  thisEvent.ch3.peak  thisEvent.ch4.peak ];
    94118            eventsRMSValue(ievent,1:4)=[ thisEvent.ch1.rms(2)  thisEvent.ch2.rms(2)  thisEvent.ch3.rms(2)  thisEvent.ch4.rms(2) ];
     119           
     120            if (beamInfoFileLoaded==1)
     121                [sortedVals,idxes]=sort(abs(beamInfoData.beamInfo(:,1)-thisEvent.timing));
     122                beamInfoIndex(ievent)=idxes(1);
     123                timingDifferences(ievent,1:5)=(beamInfoData.beamInfo(idxes(1:5),1)-thisEvent.timing);
     124            end % beamInfoLoaded
    95125           
    96126            signalStrVals= ' ';
     
    107137                end
    108138               
    109                 if (length(valsCh)>0)
     139                if (~isempty(valsCh))
    110140                    signalStrVals = [ signalStrVals ' / ' num2str(valsCh.sv) ];
    111141                   
     
    197227                    print(figure(ich*100+1), '-dpng', [ plots_dir imagePeaks ]);
    198228                end %for each channel
     229               
     230               
     231                if (beamInfoFileLoaded==1)
     232                    figure(900)
     233                    clf
     234                    plot(timingDifferences,'o')
     235                end % beamInfoLoaded
     236               
    199237            end %not empty
    200238            %    end   %for
     
    249287   
    250288    if isempty(hourList)
    251         fprintf(fidhtml, 'No files at this date and hour.\n')
     289        fprintf(fidhtml, 'No files at this date and hour.\n');
    252290    else
    253291       
    254         fprintf(fidhtml, '<TABLE>\n')
    255         fprintf(fidhtml, '<TR>\n')
     292        fprintf(fidhtml, '<TABLE>\n');
     293        fprintf(fidhtml, '<TR>\n');
    256294        for ich=1:4
    257295            imageMeans = [ dateStr '-' hourStr '_signals_ch' num2str(ich) '_means.png' ];
    258             fprintf(fidhtml, [ '<TD><IMG SRC="' imageMeans '" width=400> </TD>' ])
     296            fprintf(fidhtml, [ '<TD><IMG SRC="' imageMeans '" width=400> </TD>' ]);
    259297        end %for
    260         fprintf(fidhtml, '</TR>\n')
    261         fprintf(fidhtml, '<TR>\n')
     298        fprintf(fidhtml, '</TR>\n');
     299        fprintf(fidhtml, '<TR>\n');
    262300        for ich=1:4
    263301            imagePeaks = [ dateStr '-' hourStr '_signals_ch' num2str(ich) '_peak.png' ];
    264             fprintf(fidhtml, [ '<TD><IMG SRC="' imagePeaks '" width=400> </TD>' ])
     302            fprintf(fidhtml, [ '<TD><IMG SRC="' imagePeaks '" width=400> </TD>' ]);
    265303        end %for
    266         fprintf(fidhtml, '</TR>\n')
    267         fprintf(fidhtml, '</TABLE>\n')
    268        
    269         fprintf(fidhtml, '<TABLE>\n')
    270         fprintf(fidhtml, txtHTMLlist)
    271         fprintf(fidhtml, '</TABLE>\n')
    272        
    273         fprintf(fidhtml, '<TABLE>\n')
    274         fprintf(fidhtml, txtHTMLimg)
    275         fprintf(fidhtml, '</TABLE>\n')
     304        fprintf(fidhtml, '</TR>\n');
     305        fprintf(fidhtml, '</TABLE>\n');
     306       
     307        fprintf(fidhtml, '<TABLE>\n');
     308        fprintf(fidhtml, txtHTMLlist);
     309        fprintf(fidhtml, '</TABLE>\n');
     310       
     311        fprintf(fidhtml, '<TABLE>\n');
     312        fprintf(fidhtml, txtHTMLimg);
     313        fprintf(fidhtml, '</TABLE>\n');
    276314    end
    277315    fprintf(fidhtml,['<BR/>\n<A HREF="../info_daily_' dateStr '.html"> Infos for ' dateStr  '</A><BR/>\n']);
    278316    fprintf(fidhtml,['<BR/>\n<A HREF="../../info_all_days.html"> Infos for all days </A><BR/>\n']);
    279317   
    280    
    281     footer_fun(fidhtml)
     318    footer_fun(fidhtml);
    282319   
    283320    if (~isempty(eventsTiming))
    284321        save(fnameMat,'hourEvents','meanDataOverHour','meanPeakOverHour','dateAnalysed');
     322        if (beamInfoFileLoaded==1)
     323            beamInfoDataTimed=beamInfoData.beamInfo(beamInfoIndex,:);
     324            save(mergedInfoFile,'dateAnalysed','eventsTiming','eventsChannelsOn','eventsSignalValue','eventsPeakValue','eventsRMSValue','beamInfoDataTimed');
     325        end %if
    285326    end % length > 0
    286327   
Note: See TracChangeset for help on using the changeset viewer.