| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2413 人关注过本帖
标题:哪儿能够下载到复数矩阵奇异值分解的源代码文件?
只看楼主 加入收藏
timwan
Rank: 1
等 级:新手上路
帖 子:21
专家分:0
注 册:2008-9-16
结帖率:0
收藏
已结贴  问题点数:20 回复次数:3 
哪儿能够下载到复数矩阵奇异值分解的源代码文件?
请问哪儿能够下载到复数矩阵奇异值分解的源代码文件?还有QR分解的。
找到一些,但是都是实数矩阵的。
搜索更多相关主题的帖子: 源代码 复数 矩阵 分解 文件 
2009-07-16 20:48
wxjeacen
Rank: 7Rank: 7Rank: 7
等 级:禁止访问
帖 子:1291
专家分:628
注 册:2009-3-22
收藏
得分:20 
回复 楼主 timwan
那些不是用matlab来的简单的?

生命不熄,战斗不止.
2009-07-16 23:12
timwan
Rank: 1
等 级:新手上路
帖 子:21
专家分:0
注 册:2008-9-16
收藏
得分:0 
以下是引用wxjeacen在2009-7-16 23:12的发言:

那些不是用matlab来的简单的?

因为这个只是其中一个子程序,所以想用C的。
2009-07-17 14:59
whoswho
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2010-12-21
收藏
得分:0 
http://www.
方程组
AX = b
如果A市方阵,当det(A)接近于0的时候,A的条件数很大,高斯消去法的一系列方法求解结果误差很大,甚至面目全非,这个时候使用矩阵平衡也几乎不起作用,只好用奇异值分解的方法
以下是从Numerical Recipes in C复制的代码,也许有人用的着
#define NR_END 1
#define FREE_ARG char*
void nrerror ( char error_text[] )
/* Numerical Recipes standard error handler */
{
    fprintf ( stderr, "Numerical Recipes run-time error...\n" );
    fprintf ( stderr, "%s\n", error_text );
    fprintf ( stderr, "...now exiting to system...\n" );
    exit ( 1 );
}
long double *fvector ( long nl, long nh )
/* allocate a long double vector with subscript range v[nl..nh] */
{
    long double *v;
    v = ( long double * ) malloc ( ( size_t ) ( ( nh - nl + 1 + NR_END ) * sizeof ( long double ) ) );
    if ( !v ) nrerror ( "allocation failure in vector()" );
    return v -nl + NR_END;
}
void free_fvector ( long double *v, long nl, long nh )
/* free a long double vector allocated with vector() */
{
    free ( ( FREE_ARG ) ( v + nl - NR_END ) );
}

#define SIGN(a,b) ((b) >= 0.0 ? fabs(a) : -fabs(a))
#define FMAX(a,b) ((a)>(b)? (a) : (b))
#define SQR(x) ((x)*(x))
#define IMIN(a,b) ((a) < (b) ?(a) : (b))
//---------------------------------------------------------------------------
void svdcmp ( long double **a, int m, int n, long double w[], long double **v )

{
    long double pythag ( long double a, long double b );
    int flag, i, its, j, jj, k, l, nm;
    long double anorm, c, f, g, h, s, scale, x, y, z, *rv1;
    rv1 = fvector ( 1, n );

.............................
2011-04-07 23:01
快速回复:哪儿能够下载到复数矩阵奇异值分解的源代码文件?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.015015 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved