function analyze_this(info, dirs)

% read output
vars    = { ...
    'H' 'zs' 'zb' 'hh' 'u' 'v' ...
    'H_mean' 'zs_mean' 'zb_mean' 'hh_mean' 'u_mean' 'v_mean' ...
    'point001' 'point003' 'point005'                                };

xbo1    = xs_peel(xb_read_output(pwd,                          'vars', vars));
xbo2    = xs_peel(xb_read_output(fullfile(pwd, 'xboutput.nc'), 'vars', vars));

% analyze output
diff    = struct();
for i = 1:length(vars)
    if isfield(xbo1, vars{i}) && isfield(xbo2, vars{i})
        d1  = xbo1.(vars{i});
        d2  = xbo2.(vars{i});
        if ndims(d1) == ndims(d2) && all(size(d1) == size(d2))
            switch ndims(d1)
                case {1 2}
                    diff.(vars{i}) = 1*squeeze(d1~=d2);
                case 3
                    diff.(vars{i}) = 1*squeeze(any(d1~=d2,2));
                case 4
                    diff.(vars{i}) = 1*squeeze(any(any(d1~=d2,4),2));
                case 5
                    diff.(vars{i}) = 1*squeeze(any(any(any(d1~=d2,5),4),2));
            end
        else
            diff.(vars{i}) = ones([100 100]);
        end
    else
        diff.(vars{i}) = ones([100 100]);
    end
end

% plot output
fh      = figure('Position', [10 10 560 840]);

sx      = 3;
sy      = ceil(length(vars)/3);

for i = 1:length(vars)

    subplot(sy,sx,i);
    colormap([0 1 0; 1 0 0]);

    if ~any(any(diff.(vars{i})))
        t = 'OK';
    else
        t = 'FAIL';
    end

    pcolor(diff.(vars{i})); shading flat;

    ylabel('time [s]');
    title(vars{i}, 'Interpreter', 'none');

    caxis([0 1]);

    if regexpi(vars{i}, 'point\d+')
        xlabel('variables [-]');
    else
        xlabel('x [m]');
    end

    text(mean(get(gca,'XLim')), mean(get(gca,'YLim')), t, 'FontSize', 15, ...
        'HorizontalAlignment', 'center', 'VerticalAlignment', 'middle');
end

xb_write_plot(fh, dirs.output, 'fig1');