function b = read_hdradv ( fn, gb ); % READ_HDRADV - Read ASCII .hdr file, assign readable names % b = read_hdradv( fn, [gb]); % % Input: % fn - path for ASCII .hdr file % gb - optional subset of burst numbers to extract (default is all) % Chris Sherwood, USGS % Last revised Sept 20, 2001 a = load( fn ); [nr,nc]=size(a); fprintf(1,'Found %d columns and %d bursts\n',nc,nr); if(exist('gb')~=1),gb=1:nr';, end fgb = gb(1); lgb=gb(end); nburst = (lgb-fgb)+1; % total number of bursts fprintf(1,'Using %d bursts (bursts %d - %d).\n',nburst,fgb,lgb); b.b_num = a(fgb:lgb,1); % burst number b.jt = julian( a(fgb:lgb,2:7) ); %start time for each burst if(0), % skip these...return julian date only yr = a(fgb:lgb,2); % year ( time is for start of % averaging interal) mo = a(fgb:lgb,3); % month da = a(fgb:lgb,4); % day hr = a(fgb:lgb,5); % hour mn = a(fgb:lgb,6); % minute sc = a(fgb:lgb,7); % second end b.sr = a(fgb:lgb,8); % sampling rate (Hz) b.spb = a(fgb:lgb,9); %samples per burst b.data = a(fgb:lgb,10); % recorder data byte b.c = a(fgb:lgb,11); % sound velocity (m/s) b.probe_ht = a(fgb:lgb,12); %distance from probe tip to boundary (cm) b.sv_ht = a(fgb:lgb,13); %distance from sampling volume to boundary (cm) b.batt=a(fgb:lgb,14); % mean battery voltage (V) b.x_mn = a(fgb:lgb,15); % beam 1/x/east mean velocity (cm/s) b.y_mn = a(fgb:lgb,16); % bean 2/y/north mean velocity (cm/s) b.z_mn = a(fgb:lgb,17); % beam 3/z/up mean velocity (cm/s) b.amp1_mn = a(fgb:lgb,18); %mean signal strength, receiver 1, counts b.amp2_mn = a(fgb:lgb,19); %mean signal strength, receiver 2, counts b.amp3_mn = a(fgb:lgb,20); %mean signal strength, receiver 3, counts b.co1_mn = a(fgb:lgb,21); %mean correlation, receiver 1, per cent b.co2_mn = a(fgb:lgb,22); %mean correlation, receiver 2, per cent b.co3_mn = a(fgb:lgb,23); %mean correlation, receiver 3, per cent b.hdg_mn = a(fgb:lgb,24); % mean heading (degrees magnetic) b.pitch_mn= a(fgb:lgb,25); % rotation about Y axis b.roll_mn = a(fgb:lgb,26); % rotation about X axis b.t_mn = a(fgb:lgb,27); % temperature, deg C b.p_mn = a(fgb:lgb,28); % pressure, dBars b.ext_press_mn = a(fgb:lgb,29); % external pressure (dBars) b.ext_analog1_mn = a(fgb:lgb,30); % external analog channel 1 (counts) b.ext_analog2_mn = a(fgb:lgb,31); % external analog channel 2 (counts) b.x_sd = a(fgb:lgb,32); % beam 1/x/east std. deviation (cm/s) b.y_sd = a(fgb:lgb,33); % beam 2/y/north std. dev. (cm/s) b.z_sd = a(fgb:lgb,34); % beam 3/z/up std. dev. (cm/s) b.amp1_sd = a(fgb:lgb,35); %std dev signal strength, receiver 1, counts b.amp2_sd = a(fgb:lgb,36); %std dev signal strength, receiver 2, counts b.amp3_sd = a(fgb:lgb,37); %std dev signal strength, receiver 3, counts b.co1_sd = a(fgb:lgb,38); %std dev correlation, receiver 1, per cent b.co2_sd = a(fgb:lgb,39); %std dev correlation, receiver 2, per cent b.co3_sd = a(fgb:lgb,40); %std dev correlation, receiver 3, per cent b.hdg_sd = a(fgb:lgb,41); % sd mean heading (degrees magnetic) b.pitch_sd= a(fgb:lgb,42); % sd pitch b.roll_sd = a(fgb:lgb,43); % sd roll b.t_sd = a(fgb:lgb,44); % sd temperature, deg C b.p_sd = a(fgb:lgb,45); % sd pressure, dBars b.ext_press_sd = a(fgb:lgb,46); b.ext_analog1_sd=a(fgb:lgb,47); b.ext_analog2_sd=a(fgb:lgb,48);