Commit 51f68fc9 authored by Riccardo La Placa's avatar Riccardo La Placa
Browse files

Carried out other optimizations, fastest we've ever been

Test on J1023 passed with flying colours
We're now memory-limited
parent 8153b08b
Loading
Loading
Loading
Loading
+33 −22
Original line number Diff line number Diff line
@@ -2,7 +2,8 @@ clear;
close all;

% Define variables, M is segm. number
pathfi = '/data/Sorgenti/3FGLJ1544.6-1125/';
% pathfi = '/data/Sorgenti/3FGLJ1544.6-1125/';
pathfi = '/data/Sorgenti/J1023/';
reset(gpuDevice(2));
gpuDevice(2);

@@ -12,17 +13,16 @@ disp(daterella); clear daterella

tic

finame = 'SiFAP2_20220429_3FGLJ1544_N1_Bary.fits';
% finame = 'J1023_B_2017_Bary.fits';
% finame = 'SiFAP2_20220429_3FGLJ1544_N1_Bary.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 = t_raw{1};

% MJDREF 1544
MJDREF=59698.943055555602768;
% t_raw=t_raw./86400+50814;
% MJDREF=fix(t_raw(1));
% t_raw=(t_raw-MJDREF).*86400;
% t_raw=t_raw(t_raw>=t_raw(1) & t_raw<(t_raw(1)+ 6*256 + 1));


% info = fitsinfo(finame).BinaryTable.Keywords;
% for i = 1:length(info)
@@ -54,15 +54,14 @@ toc
% a_gr = zeros(5,1);
% tasc_gr = zeros(5,1);

Tseg=490; %segments' length in seconds

%f_gr=f_tru+(-2:2).';
f_gr = (768:1/Tseg:780).';
%f_gr=(772:1/Tseg:774).';
% porb_gr = (18000:10:21600).';
porb_gr=(20868.72).';
a_gr = (0.01:8.0e-4:0.26).';
tasc_gr = ((MJDREF - (59698.7231:8e-4:59698.9232)).*86400).';
% Parameters for 1544
% Tseg=490; %segment length in seconds
% f_gr = (100:1/Tseg:800).';
% %f_gr=(772:1/Tseg:774).';
% % porb_gr = (18000:10:21600).';
% porb_gr=(20868.72).';
% a_gr = (0.01:8.0e-4:0.26).';
% tasc_gr = ((MJDREF - (59698.7231:8e-4:59698.9232)).*86400).';
% for j = 1:5
%     %f_gr(j) = f_tru*((j^2)/9);
%     porb_gr(j) = porb_tru*((j^2)/9);
@@ -70,6 +69,13 @@ tasc_gr = ((MJDREF - (59698.7231:8e-4:59698.9232)).*86400).';
%     tasc_gr(j) = tasc_tru*((j^2)/9);
% end

Tseg=256; %segment length in seconds
f_gr = (500:1/Tseg:600).';
porb_gr=(17000:5:17200).';
a_gr = (0.3:8.0e-4:0.4).';
MJDREF = 58107.1236342593;
tasc_gr = (MJDREF - ((58106.9994:8e-4:58107.1095)).*86400).';

f_min = min(f_gr);
f_max = max(f_gr);
porb_min = min(porb_gr);
@@ -307,14 +313,19 @@ for m=1:M
        
        % Careful! ni_0 still needs to be defined (it's the spin freq. 
        % currently being considered)
        for n = 1:length(f_gr)

            Yenne=Y1(f_ind(n)); 
            Lambda(i,n) = 2*(abs(Yenne)^2)/sumx; %CREDO (oppure prendono la potenza massima?)
            
        end
        Yenne(:)=Y1(f_ind(:)); 
        Lambda(i,:) = 2.*(abs(Yenne(:)).^2)./sumx;
        % 
        % for n = 1:length(f_gr)
        % 
        %     Yennecp=Y1(f_ind(n)); 
        %     Lambdacp(i,n) = 2*(abs(Yennecp)^2)/sumx; %CREDO (oppure prendono la potenza massima?)
        % 
        % end
        % disp('1ni')
    end
    % disp(max(Lambdacp(:,:)-Lambda(:,:)))
    % disp(min(Lambdacp(:,:)-Lambda(:,:)))
    toc
    disp(length(f_gr)*i);
    disp(m);