%BAOPLT010_loop_func
% Plot data from BAO data loggers
% Systems turned back on April 2007
% Not calibrated old sensors
% 10m
%ID,YR,YearDay,hhmm,T,RH,WS,WSvec,DIR,Dsig,VDC,P,Precip,Corrected Dir
%10,2007,099,1413,7.35,87.654,.305,.305,292.84,2.03,13.981,826.61,0,111.234
% DEW2/13/2014 changed path so it will run on my desktop PC


function [retval] = BAOPLTSFC_loop_func( by, bm, bd, ey, em, ed )

pltflg = 1; %flag to plot the data: 1=yes, 0=no
pngflg = 1; %flag to make a png of the plot: 1=yes, 0=no

if ispc
    inpath = 'z:\Tower\Processed\daily\';
    outpath  = 'z:\Tower\Processed_Images\daily\';
else
    inpath = '/archive/Tower/Processed/daily/';
    outpath  = '/archive/Tower/Processed_Images/daily/';
end

%cd(inpath);

if( nargin == 0 )
    bys = input('Input year to process (2007) ','s');
    bms = input('Input the month to process (1-12) ','s');
    bds = input('Input the beginning day to process (1-31) ','s');
    eys = input('Input year to process (2007) ','s');
    ems = input('Input the month to process (1-12) ','s');
    eds = input('Input end day to process (1-31) ','s');
    by = str2double( bys );
    bm = str2double( bms );
    bd = str2double( bds );
    ey = str2double( eys );
    em = str2double( ems );
    ed = str2double( eds );
end

bdn = datenum([by bm bd 0 0 0]);
edn = datenum([ey em ed 0 0 0]);
%dd = clock;

lm = edn - bdn + 1;
totprecip = zeros(lm,2);

ii = 0;
for i = bdn:edn
    dv=datevec(i);
    yday = md2yd( dv(1), dv(2), dv(3) );
    namesfc = sprintf('%sBAO_SFC_%4d%03d.dat', inpath, dv(1), yday );
    fprintf(1,'*** Processing SFC daily ***\n');
    
    fidsfc = fopen( namesfc );
    if( fidsfc > 0 )
        fclose( fidsfc );
    else
        fprintf(1,'No  10m: %s\n',namesfc);
        continue;
    end
    
    datasfc = load(namesfc);    %load 1 day of PSD mean logger data
    
    hhmm = datasfc(:,4);
    hh = fix(hhmm/100);
    mm = hhmm - (hh*100);
    datasfc(:,3)=datasfc(:,3)+(((mm/60.)+hh)/24)+datenum(datasfc(:,2)-1,12,31); %decimal year day
    clear hhmm hh mm
    
    %Total precip Before 2007 year-day 270 precip in mm after inches
    tp = cumsum(datasfc(:,6));
    if yday < 270 && dv(1) < 2008
        totpmm = tp;
    else
        totpmm = tp*25.4;
    end
    tpmm = totpmm(length(totpmm));
    tpin = tpmm / 25.4;
    stp = size(tpmm);
    ttpmm = tpmm(stp(1,1));
    %save total daily precip in an array
    ii = ii + 1;
    totprecip(ii,1) = datasfc(1,3);
    totprecip(ii,2) = ttpmm;
    
    if pltflg
        figure3 = figure('Position',[100 50 650 650]);
        subplot(2,1,1),plot(datasfc(:,3),datasfc(:,5))
        xlim([datasfc(1,3),datasfc(1,3)+1])
        ylim([800 880])
        stitle=sprintf('BAO %4d-%02d-%02d Surface', dv(1),dv(2),dv(3));
        title(stitle)
        ylabel('Pressure (mb)')
        xlabel('Hour (UTC)')
        datetick('x','HH','keeplimits');
        grid on
        subplot(2,1,2),plot(datasfc(:,3),totpmm,'r.')
        xlim([datasfc(1,3),datasfc(1,3)+1])
        ylim([0 max(tpmm)+1.0])
        xlabel('Hour (UTC)')
        datetick('x','HH','keeplimits');
        ylabel('Precip (mm)')
        ctp = sprintf('Total precipitation %.2f mm (%.2f in)',tpmm,tpin);
        title(ctp)
        grid on
        annotation(figure3,'textbox',[0.007154 0.01077 0.4498 0.02462],...
            'String',{'NOAA/ESRL/PSD/Weather & Climate Physics'},...
            'FontSize',8,'FitBoxToText','off','LineStyle','none');
        if pngflg
            print_buffer = sprintf('%sBAO_SFC_%4d%03d_PP.png',...
                outpath, dv(1), yday );
            set(gcf,'PaperPositionMode','auto');
            print('-dpng', print_buffer);
        end
    end  % if doing plots
    
    clear datasfc yday
    close all
    
end % loop through all files

clear all

retval = 0;

