-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathLUCY_datasummary_v2.m
107 lines (98 loc) · 3.18 KB
/
LUCY_datasummary_v2.m
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
function [use_opt]=LUCY_datasummary_v2(startdate,use_opt,WD,datafolder,pop,latmax,latmin,lonmin,lonmax)
YYYY=datevec(startdate);
YYYY=YYYY(1);
userdata=getuserdir;
tempdir=[userdata filesep 'LUCY' filesep];
% Temperature
if use_opt==1
% tempmonth=0;
DOY=startdate-(datenum(YYYY,1,1)-1);
if exist([WD filesep datafolder filesep 'temperature' filesep 'Dailytemp_',...
num2str(YYYY),'_',num2str(DOY),'.mat'],'file')>0
tempday=1;
tempmonth=0;
else
tempday=0;
use_opt=0;
if exist([WD filesep datafolder filesep 'temperature' filesep 'air_temp.',num2str(YYYY)],'file')>0
tempmonth=1;
else
tempmonth=0;
end
end
else
tempday=0;
if exist([WD filesep datafolder filesep 'temperature' filesep 'air_temp.',num2str(YYYY)],'file')>0
tempmonth=1;
else
tempmonth=0;
end
end
% Population density
if pop==1
for i=1900:2099
popi(i)=exist([WD filesep datafolder filesep 'population' filesep 'population_' ,num2str(i)],'dir');
end
else
for i=1900:2099
popi(i)=exist([WD filesep 'Data\DataGPW' filesep 'population\popcell_',num2str(i),'.mat'],'file');
end
end
avail=find(popi>0);
clos=abs(avail-YYYY);
tmp=min(clos);
pos=clos==tmp;
if sum(pos)>1
postmp=find(pos==1,1);
pos(:,:)=0;
pos(postmp)=1;
end
YYYYclose=avail(pos);
% Identifying countries within model domain
load([WD,filesep,'Data',filesep,'countriesforgui.mat']);
S=floor(abs(latmin-85)/0.1667);
N=floor(abs(latmax-85)/0.1667);
W=floor((180+lonmin)/0.1667);
E=floor((180+lonmax)/0.1667);
countries=countries(N:S,W:E);
b=unique(countries);c=isnan(b);
b=b(c==0);
% Energy
energytable=importdata([WD filesep datafolder filesep 'energy.txt']);
energytable=energytable.data;
datatable1=energytable(2:232,:);
energyyeartab=findclosestyear(datatable1,YYYY);
% energytab=energytable(2:232,YYYY-1900+1);
% Traffic
carstable=importdata([WD filesep datafolder filesep 'Cars.txt']);
carstable=carstable.data;
datatable2=carstable(2:232,:);
carsyeartab=findclosestyear(datatable2,YYYY);
freightstable=importdata([WD filesep datafolder filesep 'Freights.txt']);
freightstable=freightstable.data;
datatable3=freightstable(2:232,:);
freightsyeartab=findclosestyear(datatable3,YYYY);
mbikestable=importdata([WD filesep datafolder filesep 'Motorbikes.txt']);
mbikestable=mbikestable.data;
datatable4=mbikestable(2:232,:);
mbikesyeartab=findclosestyear(datatable4,YYYY);
% Total population
poptable=importdata([WD filesep datafolder filesep 'PopulationByCountry.txt']);
poptable=poptable.data;
datatable1=poptable(2:232,:);
popyeartab=findclosestyear(datatable1,YYYYclose);
tabdata=[energyyeartab carsyeartab freightsyeartab mbikesyeartab popyeartab];
tabdataid=tabdata(b,:);
mbikestable=importdata([WD,'\Data\','Motorbikes.txt']);
mbikestable.rowheaders=mbikestable.rowheaders(2:232);
save([tempdir 'countryid'],'b')
save([tempdir 'tempday'],'tempday')
save([tempdir 'tempmonth'],'tempmonth')
save([tempdir 'YYYY'],'YYYY')
save([tempdir 'YYYYclose'],'YYYYclose')
save([tempdir 'mbikestable'],'mbikestable')
save([tempdir 'tabdata'],'tabdata')
save([tempdir 'tabdataid'],'tabdataid')
save([tempdir 'pop'],'pop')
h=DataSummary();
uiwait(h)