clear all

BPFO1=4521 ;%Hz
BPFI1=5479 ;%Hz
BSF1=1873 ;%Hz
FTF1=181 ;%Hz

BPFO2=1929 ;%Hz
BPFI2=2471 ;%Hz
BSF2=1600 ;%Hz
FTF2=175 ;%Hz

fordat2mat

global ns dt fs 
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

  dlgtitle = 'Vybrat pozadovane signaly';  
  prompt = {'Index signalu pro lozisko 1:',
  'Index signalu pro lozisko 2:'};
  dims = [1 5];
  definput = {'0','0'};
  answer = inputdlg(prompt,dlgtitle,dims,definput);

 index_loz(1:8)=[str2double(answer(1))];
 index_loz(9:16)=[str2double(answer(2))];

 close all
#############################
for k=1:8:length(index_loz)
  cas=(xval{index_loz(k),1})';
  amp=(yval{index_loz(k),1})';

  
%%graf
  figure('Name','Lozisko','Position', [5 180 600 400])
  plot(cas,amp)
##############################
  dlgtitle = 'Nastaveni pro vypocet';  
  prompt = {'Pocatecni cas vyhodnocovani dat (s):',
  'Konecny cas vyhodnocovani dat (s):'};
  dims = [1 10];
  definput = {cas(1),cas(end)};
  answer = inputdlg(prompt,dlgtitle,dims,definput);
 
 tmin{k,1}=str2double(answer(1));
 tmax{k,1}=str2double(answer(2));  
  
  close all
 end
 
 tmin(1:8)=tmin(1);
 tmin(9:16)=tmin(9);
 
 tmax(1:8)=tmax(1);
 tmax(9:16)=tmax(9);
 
 fminimum={BPFO1-5,BPFI1-5,BSF1-5,FTF1-5,BPFO2-5,BPFI2-5,BSF2-5,FTF2-5,BPFO1-5,BPFI1-5,BSF1-5,FTF1-5,BPFO2-5,BPFI2-5,BSF2-5,FTF2-5}';
 fmaximum={BPFO1+5,BPFI1+5,BSF1+5,FTF1+5,BPFO2+5,BPFI2+5,BSF2+5,FTF2+5,BPFO1+5,BPFI1+5,BSF1+5,FTF1+5,BPFO2+5,BPFI2+5,BSF2+5,FTF2+5}';


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

wtb=waitbar(0,'Pocitam...');
for k=1:1:length(index_loz)


 matice=[xval{index_loz(k),1}',yval{index_loz(k),1}'];
 cas=matice(matice(:,1)>=tmin{k,1} & matice(:,1)<tmax{k,1},1);
 amp=matice(matice(:,1)>=tmin{k,1} & matice(:,1)<tmax{k,1},2);

  ns=length(cas);
  dt=(cas(end)-cas(1))/(ns-1); 
  fs=1/dt;
 
fmin=fminimum{k,1};
fmax=fmaximum{k,1};

[freqf,ampf]=furiertrans(cas,amp);  %% fft, vystup finalni spektrum
[ampfrange]=specrange(freqf,ampf,fmin,fmax); %% oriznuti spektra na pozadovanou hodnotu

%% PREVOD ZE ZRYCHLENI NA RYCHLOST - LAPLACE a/s=a/(2*pi*f)=v
ampf(2:end)=ampf(2:end)./(2*pi*freqf(2:end));
ampfrange(2:end)=ampfrange(2:end)./(2*pi*freqf(2:end));  %% od 2 hodnoty, protoze 1. je DC složka



% fprintf('Mohutnost vibraci:\n');
% fprintf('%d-%ds pro frekvence %d az %dHz\n',cas(1),cas(end)+dt,fmin,fmax);
%mohutnost_vyrezu_ze_signalu=sqrt(sum(amprf.^2)/ns); %zrychleni vyrez frekvenci:
mohutnost_vyrezu_ze_spektra=sqrt((sqrt(sum(ampfrange(2:end).^2))/sqrt(2))^2+(ampfrange(1)/2)^2)*1000; %% rychlost z vyrezu frekvenci

% fprintf('%d-%ds pro cele namerene frekvencni spektrum:\n',cas(1),cas(end)+dt);
%mohutnost_ze_signalu=sqrt(sum(amp.^2)/ns); %% zrychleni ze signalu
%mohutnost_ze_spektra=sqrt((sqrt(sum(ampf(2:end).^2))/sqrt(2))^2+(ampf(1)/2)^2)*1000; %% rychlost ze signalu


index(k,1)=k;
%RMS{1,1}(k,1)=mohutnost_vyrezu_ze_signalu;
RMS{1,2}(k,1)=mohutnost_vyrezu_ze_spektra;
%RMS{1,3}(k,1)=mohutnost_ze_signalu;
%RMS{1,4}(k,1)=mohutnost_ze_spektra;

waitbar(k/length(yval),wtb)




clear mohutnost_vyrezu_ze_signalu mohutnost_vyrezu_ze_spektra mohutnost_ze_signalu mohutnost_ze_spektra;
end
ukladani_loziskova
close (wtb)
msgbox('Hotovo');




