文件交换

图像缩略图

DNorm2

版本1.1.0.0(10.4 KB)由 一月
快速C-墨西哥 - 沿着阵列的指定暗淡欧几里得范数

4个下载

更新2010 10月15日

查看许可证

在双阵列的N.th尺寸快速欧几里德规范

Y = DNorm2(X,N)
INPUT:
X:真正的双阵列。
N:维度进行操作。
OUTPUT:
Y:超过N.th尺寸欧几里得范数:Y = SQRT(总和(X * X,N))。
的Y N.th尺寸的长度为1。
NaN的考虑。

Matlab的内置功能NORM是快的载体,但矩阵的矩阵范说。为载体的其他有效的方法(!):
Y = SQRT(总和(X * X)。);
Y = SQRT(X * X');%行向量,比DNorm2更快!
而詹姆斯Tursa的MTIMESX是非常快的载体还,可以在阵列还的1维操作:
X =兰特(100,100);X =重塑(X,100,1,100);
Y = SQRT(mtimesx(X, 'T',X));
但是对于数组DNorm2是快了,我没有看到一个办法适用MTIMESX拖尾的尺寸,而无需耗时换位。

汇编:
这个功能在使用前必须编译:
MEX -O DNorm2.c
见DNorm2.c了解详细说明。

测试:运行uTest_DNorm2测试的有效性和速度。

注:参见DNorm2.c为根据X的尺寸策略来优化处理速度
不幸的是这个功能是不是多线程。Assistence包括OMP会很欢迎。

测试:Matlab的6.5,7.7,7.8,WinXP中,32位
编译:LCC2.4 / 3.8,BCC5.5,OWC1.8,MSVC2008
假设的兼容性:较高的Matlab的版本,苹果机,Linux 64位

引用作为

扬(2020)。DNorm2(//www.tianjin-qmedu.com/matlabcentral/fileexchange/29035-dnorm2),MATLAB中央文件交换。检索

评论和评分(2

门迪BAREL

大!

一月

第一版本不在64台机器拒绝DNorm2(X,0)。请等待“DNorm2_16Oct2010.zip”可以在这里找到。

更新

1.1.0.0

修正:错误校验在64个系统失败DNorm2(X,0)。感谢布鲁诺!

MATLAB版本兼容性
创建了R2009a
与任何版本兼容
平台兼容性
视窗 苹果系统 Linux的