MATLAB Answers

Remove command select file and want replace with automatic select

6 views (last 30 days)
This original coding...then i want replace uigetfile to automatic select.. all my file in this directory C:\Users\muhaimin\Desktop\MultipathMapping3SGU\study..
how to do it? what command ya...
% Import multipath data
if nargin==0
[filen,path]=uigetfile('*.mp1;*.mp2',...
'Pick your TEQC report file');
else
[path,filen,ext]=fileparts(files);
path=[path '\'];
fs=filesep;
if ~isempty(path), path=[path fs]; end
filen={[filen ext]};
end
file=char(filen)
N = checkfile([path file]);
n=0;i=5;
A = scanfile([path file]);
[t_samp mjl SAT sats n] = readfile(N,n,i,A,filen,file);
sat=SAT(1:n+1,:);
T_SAMP=str2num(t_samp(max(find(t_samp==' ')):end));
MJL_START=str2num(mjl(max(find(mjl==' ')):end));
MJL(1)=MJL_START;
for i=2:length(sat);
MJL(i)=MJL_START+i*T_SAMP/60/60/24;
end
JD=mjl2jd(MJL);
[type,maxy,miny]=get_filetype(file);
satval=sat; % multipath time series
%%%%%Import azimuth and elevation data %%%%%%%%%%%%%%%%%%%%%%
out=teqcplot([(file(1:end-4)),'.azi']);az=out.azi;az_all=az;
out=teqcplot([(file(1:end-4)),'.ele']);el=out.ele;el_all=el;
%Extract data for satellites visible in the time window
vsats = 0;
[tspan num_sats]=size(satval);
for i=1:num_sats,
if (sum(isnan(satval(T1:T2,i)))/length(satval(T1:T2,i)))~=1,
vsats=vsats+1;
PRN(vsats)=i; % visible satellites
MULT(:,vsats)=satval(T1:T2,i); % time window
THETA(:,vsats)=az_all(T1:T2,i).*(pi/180); % time window
RHO(:,vsats)=abs(el_all(T1:T2,i)-90)/90; % time window
end
end
%Extract data for all satellites visible
vsats_all = 0;
for i=1:num_sats,
if (sum(isnan(satval(:,i)))/length(satval(:,i)))~=1,
vsats_all=vsats_all+1;
allPRN(vsats_all)=i;
allMULT(:,vsats_all)=satval(:,i);
for t=1:length(allMULT(:,vsats_all))
JDn(t,vsats_all)=JD(t);
if isnan(allMULT(t,vsats_all)),
JDn(t,vsats_all)=NaN;
end
end
end
end
% Compute FFT spectra
if ~frqlim,
frqlim=(1/T_SAMP)*0.5;
end
for i=1:32,
Sout=fsa(satval(t1:t2,i),T_SAMP);
freq(:,i)=Sout.f;
Amp(:,i)=Sout.amp;
end
%Apply bandpass filter to extract high-frequency multipath in the band of
%interest
for i=1:vsats, %loop over all satellites
MULT(:,i)=replace(MULT(:,i),NaN,0);
HFMULT(:,i)=bandpass(MULT(:,i),cutff1,cutff2,length(MULT(:,i)),1);
MULT(:,i)=replace(MULT(:,i),0,NaN);
HFMULT(:,i)=replace(HFMULT(:,i),0,NaN);
end
% PLOTS
% (1) display FFT spectra for all visible satellites,
%identify FFT peak(s) of interest
% figure; %%raw time series ++++++++++++
% map=colormap(flipud(jet));
% miv=1;mav=32;
% %for j=1:vsats,
% for j=vsats_all:-1:1,
% for i=1:32,
% if i==allPRN(j),
% in=round((i-1)*(length(map)-1)/(mav-miv));
% %--- Catch the out-of-range numbers
% if in==0;in=1;end
% if in > length(map);in=length(map);end
% plot(JDn(:,j),allMULT(:,j)+allPRN(j),'color',map(in,:));hold on;
% end
% end
% end
% set(gca,'ylim',[0 33])
% set(gca,'ytick',[1:1:32])
% set(gca,'yticklabel',['S01';'S02';'S03';'S04';'S05';'S06';...
% 'S07';'S08';'S09';'S10';'S11';'S12';...
% 'S13';'S14';'S15';'S16';'S17';'S18';...
% 'S19';'S20';'S21';'S22';'S23';'S24';...
% 'S25';'S26';'S27';'S28';'S29';'S30';...
% 'S31';'S32']);
% set(gca,'fontsize',7);
% set(gca,'xticklabel',[JD]);
% set(gca,'xlim',[JD(1) JD(end)])
% datetick('x','HH:MM:SS','keeplimits','keepticks')
% xlabel([datestr(JD(1)) ' |-------- T Samp: ' num2str(T_SAMP) ' s --------| ' datestr(JD(end))])
% ylabel('SVs')
% T=title(['TEQC Report file: ' strrep(file,'_','-')]);set(T,'fontsize',8)
%
% figure;
% h=axes('position',[0.11, 0.75, 0.85, 0.18]);
% map=colormap(flipud(jet));%colormap;
% miv=1;mav=32;
% for i=1:32,
% in=round((i-1)*(length(map)-1)/(mav-miv));
% %--- Catch the out-of-range numbers
% if in==0;in=1;end
% if in > length(map);in=length(map);end
% plot(freq(:,i),Amp(:,i),'color',map(in,:));hold on;
% end
% %axis([0 frqlim 0 max(max(Amp))*1.25]);
% % Re-format the colorbar
% set(gca,'fontsize',7);
% cb=colorbar('vertical');
% %POS=get(cb,'position');
% %set(cb,'position',[POS(1) POS(2) 0.03 POS(4)]);
% set(cb,'fontsize',8);
% set(get(cb,'xlabel'),'string','SVs');
% set(cb,'box','on')
% set(cb,'ylim',[1 length(map)]);
% yal=linspace(1,length(map),4);
% set(cb,'ytick',yal);
% % Create the yticklabels
% ytl=linspace(miv,mav,4);
% s=char(4,4);
% for i=1:4
% if min(abs(ytl)) >= 0.001
% B=sprintf('%2.0f',ytl(i));
% else
% B=sprintf('%2.0E',ytl(i));
% end
% s(i,1:length(B))=B;
% end
% set(cb,'yticklabel',s);
% grid on
% xlabel('Freq. (Hz)');
% ylabel('Amplitude [m]');
% T=title(['TEQC Report file: ' strrep(file,'_','-')]);set(T,'fontsize',8)
% h=axes('position',[0.11, 0.11, 0.85, 0.55]);
% %pcolor(freq',1:32,Amp');shading flat;cbar('v',[0 max(max(Amp))*1.25],'[m]');
%
% [fn fu]=size(freq);
% max_Amp1=max(max(Amp));max_Amp2=0;
% for i=1:32,
% freq(:,i)=replace(freq(:,i),NaN,0);
% Amp(:,i)=replace(Amp(:,i),NaN,0);
% if max(Amp(:,i)) >= max_Amp1,
% f1=find(Amp(:,i)==max(Amp(:,i)));Frq1=freq(f1,i);max_sv1=i; max_Amp1=max(Amp(:,i));
% end
% for j=1:fn,
% if(freq(j,i)>=cutff1 && freq(j,i)<=cutff2),
% if(Amp(j,i)>=max_Amp2),max_Amp2=Amp(j,i);Frq2=freq(j,i);max_sv2=i;end;
% end
% end
% end
% %h=text(Frq1-0.005,max_sv1+.85,'o'); font(h,33); hold on;
% %h=text(Frq2-0.003,max_sv2+.85,'o'); font(h,33);
% set(gca,'ylim',[1 33])
% set(gca,'ytick',[1.5:1:32.5])
% set(gca,'yticklabel',['S01';'S02';'S03';'S04';'S05';'S06';...
% 'S07';'S08';'S09';'S10';'S11';'S12';...
% 'S13';'S14';'S15';'S16';'S17';'S18';...
% 'S19';'S20';'S21';'S22';'S23';'S24';...
% 'S25';'S26';'S27';'S28';'S29';'S30';...
% 'S31';'S32']);
% set(gca,'fontsize',7);
% axis([0 frqlim 1 33]);
% xlabel([datestr(JD(t1)) ' |-------- Freq. (Hz) --------| ' datestr(JD(t2))])
% ylabel('SVS');
% grid on
%%%%%(2) display unfiltered and filtered multipath %%%%%%%%%%%%%%%%%%%%%%
figure;
polarview(THETA,RHO,MULT,PRN);
xlabel([datestr(JD(T1)) ' |-------- Unfiltered --------| ' datestr(JD(T2))])
T=title(['TEQC Report file: ' strrep(file,'_','-')]);set(T,'fontsize',8)
figure;
polarview(THETA,RHO,HFMULT,PRN);
xlabel([datestr(JD(T1)) ' |-------- Filtered --------| ' datestr(JD(T2))])
T=title(['TEQC Report file: ' strrep(file,'_','-')]);set(T,'fontsize',8)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% END OF PLOTS
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% FUNCTION: MJL DAYS TO JULIAN DAYS +++++++++++++++++++++++++++++++
function [out]=mjl2jd(in)
out=in+678941.999999741;
% FUNCTION: GET FILETYPE INFO +++++++++++++++++++++++++++++++++++++
function [out,maxy,miny]=get_filetype(teqfile);
[path,name,ext,ver]=fileparts(teqfile);
switch ext
case '.sn1'
out='Signal to noise ratio S/N L1';
maxy=10;
miny=0;
case '.sn2'
out='Signal to noise ratio S/N L2';
maxy=10;
miny=0;
case '.mp1'
out='Multipath L1';
maxy=1;
miny=-1;
case '.mp2'
out='Multipath L2';
maxy=1;
miny=-1;
case '.iod'
out='Derivative of ionospheric delay observable (m/s)';
maxy=1;
miny=-1;
case '.ion'
maxy=2;
miny=-2;
out='Ionospheric delay observable (m)';
case '.ele'
maxy=90;
miny=0;
out='Satellite elevation data';
case '.azi'
maxy=180;
miny=-180;
out='Satellite azimuthal data';
otherwise
disp('Somethings wrong..!')
end
% FUNCTION: PLACE A MODIFIED COLORBAR ++++++++++++++++++++++++++++++
function CB=cbar(loc,range,label);
% .............................................................
% CB = cbar(loc,range,label)
% places a colorbar at:
% loc = 'v' in vertical or 'h' in horizontal
% position in current figure scaled between:
% range = [min max] with a:
% label = 'string'.
%
% fontsize is reduced to 10 and width of bar is half default.
%
% Example: [X,Y,Z]=peaks(25);
% range=[min(min(Z)) max(max(Z))];
% pcolor(X,Y,Z);
% cbar('v',range,'Elevation (m)')
% .............................................................
caxis([range(1) range(2)]);
switch loc
case 'v'
CB=colorbar('vertical');
set(CB,'ylim',[range(1) range(2)]);
%POS=get(CB,'position');
%set(CB,'position',[POS(1) POS(2) 0.03 POS(4)]);
set(CB,'fontsize',8);
set(get(CB,'xlabel'),'string',label);
set(CB,'box','on')
case 'h'
CB=colorbar('horizontal');
set(CB,'xlim',[range(1) range(2)]);
%POS=get(CB,'position');
%set(CB,'position',[POS(1) POS(2) POS(3) 0.03]);
set(CB,'fontsize',8);
set(get(CB,'xlabel'),'string',label)
end
% FUNCTION: SECONDS TO HOURS, MINUTES and SECONDS ++++++++++++++++
function timestr=secs2hms(SECS)
HOURS=SECS/60/60;
hours=floor(HOURS);
MINUTES=(HOURS-hours)*60;
minutes=floor(MINUTES);
seconds=(MINUTES-minutes)*60;
HH=num2str(hours);
MM=num2str(minutes);
SS=num2str(seconds);
if seconds<10;
SS=['0' num2str(SS)];
else
SS=num2str(SS);
end
if minutes<10;
MM=['0' num2str(MM)];
else
MM=num2str(MM);
end
timestr=[HH ':' MM ':' SS];
% EOF +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

  0 Comments

Sign in to comment.

Accepted Answer

Chandra Kurniawan
Chandra Kurniawan on 27 Nov 2011
Just replace
if nargin==0
[filen,path]=uigetfile('*.sn1;*.sn2;*.mp1;*.mp2',...
'Pick your TEQC report file');
else
[path,filen,ext]=fileparts(files);
path=[path '\'];
fs=filesep;
if ~isempty(path), path=[path fs]; end
filen={[filen ext]};
end
file=char(filen);
with
path = 'C:\Users\muhaimin\Desktop\MultipathMapping3SGU\study\';
file = 'Ball1830.mp1';
filen = 'Ball1830.mp1';
And your program will run automatically

  0 Comments

Sign in to comment.

More Answers (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by