function []=MITprof_stats_misfit(dirData,listData,listVar,year0,year1,vecLevel,varargin); %[]=MITprof_stats_misfit(dirData,listData,listVar,year0,year1,vecLevel); %object: maps and displays estim-obs at various levels %input: dirData is the data directory name % listData is the data file list (e.g. {'argo_in*'} or {'argo_in*','argo_at*'} ) % listVar is the variable list varCur (e.g. {'T'} or {'T','S'} ) % year0,year1 is the first,last year pair % vecLevel is the vector of depth levels % vecCaxis (optional) is the matrix of colorbar range %output: (none -- figures only) % %for example: % dirData='./'; % listData={'argo_in*'}; listVar={'T','S'}; % MITprof_stats_misfit(dirData,listData,listVar,2004,2008,[10 25 45],[[3 3 1];[0.5 0.5 0.2]]); %load paths and grid: %-------------------- gcmfaces_path; global mygrid; mygrid=[]; grid_load([gcmfaces_dir '/sample_input/GRIDv4/'],5,'compact'); gcmfaces_bindata;%initialize delaunay triangulation %time limits: date0=datenum(year0,1,1); date1=datenum(year1,12,31); %number of levels: nk=length(vecLevel); %caxis limits: if nargin>6; vecCaxis=varargin{1}; else; vecCaxis=[]; end; figureL; orient tall; for vv=1:length(listVar); varCur=listVar{vv}; %get the cost square root: [MITprof]=MITprof_stats_load(dirData,listData,varCur,1); %mask out values that are not in year range: ii=find(MITprof.prof_datedate1); MITprof.prof(ii,:)=NaN; %misfit maps: for kkk=1:length(vecLevel); kk=vecLevel(kkk); lon=MITprof.prof_lon; lat=MITprof.prof_lat; obs=MITprof.prof(:,kk); ii=find(~isnan(obs)); lon=lon(ii); lat=lat(ii); obs=obs(ii); misfit_map=gcmfaces_bindata(lon,lat,obs); if isempty(vecCaxis); cc=3*sqrt(nanmean(misfit_map.^2)); else; cc=vecCaxis(vv,kkk); end; subplot(nk,length(listVar),vv+(kkk-1)*length(listVar)); m_map_gcmfaces(misfit_map,-1,[-1 1]*cc); title(sprintf('%s misfits at %dm (%d to %d)',varCur,MITprof.prof_depth(kk),year0,year1)); end; end;