simulering = true;

%Måleparametre
f=10;% signalfrekvens
fs=1e3;%Hz, samplingsfrekvens
Tau=10;%s, måleperiode

% Stygge løsninger for differansen på lengden 1 for data og simulering :-(

if ~simulering
    % time, datafreq, SampleRate, Varighet, VBro skal være der etter les_2osc er kjørt
    t = time;
    f = datafreq;
    fs = SampleRate;
    Tau = varighet;
    V = Vbro; % Bruk resultatene fra f.eks. les_osc2012
else
    % Simulert signal slik vi "m?ler" det
    % Skru av driften, mer komplisert å analysere
    t=0:1/fs:Tau;
    A=1E-2;
    dphi = pi/6;
    stoy = 1.0; % stor mengde støy, 100% av amplityden
    drift = 0.;
    V=A*sin(2*pi*t*f+dphi)+stoy*A*randn(length(t),1)'+drift*t;
end

figure(1), plot(t,V)
xlabel('t (s)')
ylabel('V_{bro}(t) (V)')

%%%%%%%% Analyse %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Dette kan gjøres enten på det syntetiske signalet laget over eller p? et
% virkelig signal fra AD-omformeren der man kjenner eksitasjonsfrekvensen
% som når man bruker skriptet les_2osc*.m

%Analyseparametre
numper=20; %Antall perioder vi vil midle over for ? finne DC-komponenten i signalet

%Finn DC-komponenten av signalet og fjern den
windowSize=floor(numper*fs/f);
VDC = mean(V(windowSize:end-windowSize));
VAC=V-VDC;
tAC=t;

%Beregn RMS-verdien (slik et multimeter gj?r det)
VRMS=sqrt(sum(VAC.*VAC)./(tAC(end)-tAC(1))/fs);
A_RMS=sqrt(2)*VRMS; %Amplituden som kan sammenlignes med amplituden A
%Figur som viser hvordan amplitudemålingen går mot en stabil verdi
figure(2), plot(tAC,sqrt(2)*sqrt(cumsum(VAC.*VAC)./(tAC-tAC(1))/fs))
xlabel('t, s')
ylabel('Amplitude')
title('Amplitude m?lt fra tid 0 til t')
if simulering
    text(Tau/2,1.1*A_RMS,['RMS avvik: ',num2str((A_RMS/A-1)*100),'%'])
end

%Beregn amplituden ved å multiplisere med sin() og cos() til riktig
%frekvens. Det er dette en lock-in-forsterker gjør
X=cumsum(VAC.*sin(2*pi*tAC*f))./(tAC-tAC(1))./fs;
Y=cumsum(VAC.*cos(2*pi*tAC*f))./(tAC-tAC(1))./fs;
A_LI=2*sqrt(X.^2+Y.^2);
hold on, plot(tAC',A_LI,'r')
legend('RMS','Lockin')
xlabel('t (s)')
ylabel('Amplitude (V)')
text(Tau/2,1.1*A_LI(end),['Lockin avvik: ',num2str((A_LI(end)/A-1)*100),'%'])

A_RMS
A_LI(end)

