Commit 22d7e463 authored by Riccardo La Placa's avatar Riccardo La Placa
Browse files

Adattato a ikigai

parent 0c578890
Loading
Loading
Loading
Loading
−1.06 KiB (111 MiB)

File changed.

No diff preview for this file type.

+37 −25
Original line number Diff line number Diff line
@@ -2,15 +2,16 @@ clear;
close all;

% Define variables, M is segm. number
%pathfi = './';
pathfi = '/data/Sorgenti/3FGLJ1544.6-1125/';

%%%%%%%%%%%%%%%%
tic

finame = 'SiFAP2_20220429_3FGLJ1544_N1_Bary_N3_NOTCORRECTED.fits';
% finame = 'J1023_B_2017_Bary.fits';
% finame = 'EPN_0744840201_bary.fits';
% t_raw = fitsread([pathfi,finame],"binarytable");
t_raw = fitsread('C:\Users\Filippo\Desktop\J1544_2022\SiFAP2_20220429_3FGLJ1544_N1_Bary.fits','binarytable');
t_raw = fitsread([pathfi,finame],"binarytable");
%t_raw = fitsread('C:\Users\Filippo\Desktop\J1544_2022\SiFAP2_20220429_3FGLJ1544_N1_Bary.fits','binarytable');
t_raw = t_raw{1};
MJDREF=0.943055555602768;
% t_raw=t_raw./86400+50814;
@@ -48,15 +49,15 @@ toc
% a_gr = zeros(5,1);
% tasc_gr = zeros(5,1);

Tseg=571; %segments' length in seconds
Tseg=490; %segments' length in seconds

%f_gr=f_tru+(-2:2).';
%f_gr=(100:1/Tseg:1000).';
f_gr=(772:1/Tseg:774).';
f_gr = (100:1/Tseg:1000).';
%f_gr=(772:1/Tseg:774).';
% porb_gr = (18000:10:21600).';
porb_gr=20868.72;
a_gr = (0.01:1.5e-3:0.1).';
tasc_gr = (((0.724:1e-3:0.922)-MJDREF).*86400).';
a_gr = (0.01:8.0e-4:0.26).';
tasc_gr = (((0.724:8e-4:0.922)-MJDREF).*86400).';
% for j = 1:5
%     %f_gr(j) = f_tru*((j^2)/9);
%     porb_gr(j) = porb_tru*((j^2)/9);
@@ -271,9 +272,9 @@ tic
%%%[kung,fu,fight] = ndgrid(nis{1},nino{2},nino{3});
tm=gpuArray(tm);
nibank = gpuArray(combinations(nis{:}).Variables);
Lambda = zeros(length(nibank),length(f_gr),M,'gpuArray');
Lambda = zeros(length(nibank),length(f_gr),'gpuArray');
% nibank = combinations(nis{:}).Variables;
% Lambda = zeros(length(nibank),length(f_gr),M);
% Lambda = zeros(length(nibank),length(f_gr));
toc 
%Fourier transform on original time-series --------------------------------
%per mantenere l'informazione di fase, non faccio il valore assoluto al quadrato della fft
@@ -390,7 +391,8 @@ for m=1:M
            %Calcolo della detection statistic
            % Lambda(i,n,m)=sum(abs(Y1).^2)/sum(xtemp(:)); %CREDO (oppure prendono la potenza massima?)
            % [nnfreq,nnind] = min(abs(F1-curpar(1)));
            Lambda(i,n,m) = 2*(abs(max(Y1)).^2)/sum(xtemp(:)); %CREDO (oppure prendono la potenza massima?)
            % Lambda(i,n,m) = 2*(abs(max(Y1)).^2)/sum(xtemp(:)); %CREDO (oppure prendono la potenza massima?)
            Lambda(i,n) = 2*(abs(max(Y1)).^2)/sum(xtemp(:)); %CREDO (oppure prendono la potenza massima?)

            % toc
        end
@@ -398,6 +400,10 @@ for m=1:M
    end
    toc

    lamfiname = sprintf('Lambda_seg_%d.mat', m);
    % save(lamfiname,"Lambda");
    save([pathfi,lamfiname],"Lambda");
    Lambda = zeros(length(nibank),length(f_gr));
    disp(m);

end
@@ -417,11 +423,6 @@ bestpar = zeros(1,5);
toc

totlam = zeros(length(parbank),length(f_gr));
% for i = 1:length(parbank)
%     for n=1:length(f_gr)
%         totlam(i,n) = totlam(i,n)+sum(Lambda(i,n,:));
%     end
% end
tic
for n=1:length(f_gr)
    for i=1:length(parbank)
@@ -437,8 +438,15 @@ for n=1:length(f_gr)
            curni = -curni.*curpar(1).*curpar(3);
            curni(1) = curni(1) + curpar(1);

            lamfiname = sprintf('Lambda_seg_%d.mat', m);
            % load(lamfiname);
            load([pathfi,lamfiname]);

            [Idx,D] = knnsearch(nisearcher,curni);
            totlam(i,n) = totlam(i,n)+Lambda(Idx,n,m);
            totlam(i,n) = totlam(i,n)+Lambda(Idx,n);

            clear Lambda

        end
        % % if (totlam > bestpar(1))
        % %     bestpar = [totlam,f_gr(n),parbank(i,:)];
@@ -449,14 +457,18 @@ toc

% disp(bestpar);
% save('C:\Users\Filippo\Desktop\XMM_Jxxx\risultelli.mat');
save(['C:\Users\Filippo\Desktop\J1544_2022\\risultelli_',num2str(Tseg),'s.mat']);
save([pathfi,'risultelli_',num2str(Tseg),'s.mat']);

for n = 1:length(f_gr)
    hold on
    txt = ['f_{gr} = ',num2str(f_gr(n))];
    plot(totlam(:,n),'DisplayName',txt)
end
legend

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%% Fai il grafico delle totlam a posteriori %%%%%%%%%%%%%%%%

% for n = 1:length(f_gr)
%     hold on
%     txt = ['f_{gr} = ',num2str(f_gr(n))];
%     plot(totlam(:,n),'DisplayName',txt)
% end
% legend

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