forked from cultpenguin/mGstat
-
Notifications
You must be signed in to change notification settings - Fork 0
/
etype.m
38 lines (33 loc) · 751 Bytes
/
etype.m
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
% etype: return etype mean, std, and mode from a set of 2 realizations.
%
% [E,Evar,Emode]=etype(D)
function [E,Evar,Emode]=etype(D)
[ny,nx,nsim]=size(D);
E=zeros(ny,nx);
for i=1:nsim
E=E+D(:,:,i);
end
E=E./nsim;
if nargout>1,
Evar=zeros(ny,nx);
for iy=1:ny
for ix=1:nx
Evar(iy,ix)=var(squeeze(D(iy,ix,:)));
end
end
end
if nargout>2,
Emode=zeros(ny,nx);
for iy=1:ny
for ix=1:nx
d=(squeeze((D(iy,ix,:))));
unique_d=unique(d);
if length(unique_d)==1
unique_d=[unique_d-1 unique_d];
end
[h,hx]=hist(d,unique_d);
ih=find(h==max(h));ih=ih(1);
Emode(iy,ix)=hx(ih);
end
end
end