annotate general/numerical/pdev.m @ 4:e44f49929e56
Adding reorganised general toolbox, now in several subdirectories.
author |
samer |
date |
Sat, 12 Jan 2013 19:21:22 +0000 |
parents |
|
children |
8476b3d9d295 |
rev |
line source |
samer@4
|
1 function N=pdev(p,A,D)
|
samer@4
|
2 % pdev - p-deviation, generalisation of stddev for exponents other than 2
|
samer@4
|
3 %
|
samer@4
|
4 % pdev :: nonneg, [[D1]], I:natural -> [[D2]].
|
samer@4
|
5 % pdev :: nonneg, [[N D]] -> [[ 1 D]].
|
samer@4
|
6 %
|
samer@4
|
7 % where D2 = set(D1,I,1), ie the Ith dimension is
|
samer@4
|
8 % collapsed. I defaults to 1. The p-deviation is defined as
|
samer@4
|
9 % pdev(p,x,i) = mean(abs(x).^p,i).^(1/p)
|
samer@4
|
10 %
|
samer@4
|
11 % See also pnorm.
|
samer@4
|
12
|
samer@4
|
13 if nargin<2, D=1; end;
|
samer@4
|
14
|
samer@4
|
15 % Should these be sum or mean?
|
samer@4
|
16 if p==2
|
samer@4
|
17 N=sqrt(mean(abs(A).^2,D));
|
samer@4
|
18 else
|
samer@4
|
19 N=mean(abs(A).^p,D).^(1/p);
|
samer@4
|
20 end
|
samer@4
|
21
|
samer@4
|
22
|