c-哪位知道下面这个函数的功能啊!谢谢

问题描述

哪位知道下面这个函数的功能啊!谢谢
int HOUS(double c[][MMax] double d[] double x[] double eps double &rd int m int n)
{
/*
c: c[1..n][1..m]
d: d[1..n]
m: the number of unknown
n: the number of equations
rd: ||d+cx||
*/
double lk ckk beta sm;
double qk[MMax] ad[MMax];
int ijk;

for(k=1; k<=m; k++){

for(sm=0 i=k; i<=n; i++)  sm+=c[i][k]*c[i][k];       //ak^2=sigma(cik*cik) for i=k to nif(sm < eps)  return -1;                //error occursckk=c[k][k];lk=ckk<0? sqrt(sm) : -sqrt(sm);     //lk = -sign(ckk)*sqrt(sm)                                    //L={0 ... lk 0 ... 0}                                    //S={0... ckk ck+1k ... cnk}ad[k]=lk;                //sigma=||S-L||^2=(ckk-lk)^2 + S*S - ckk^2                            // =S*S + (2ckk-lk)(-lk)                            // =lk^2 - 2ckk*lk +lk^2                            // =2lk^2-2ckk*lk                            // =2sm-2ckk*lkbeta=1/(sm-ckk*lk);        //2 / sigma =1/(sm-ckk*lk)c[k][k]=ckk-lk;            //U=S-Lif(k<m)  for(j=k+1; j<=m; j++){    for(sm=0 i=k; i<=n; i++)      sm+=c[i][k]*c[i][j];  //U*cj    qk[j]=beta*sm;          //Qkj=2U*cj/sigma    for(i=k; i<=n; i++)      c[i][j]-=c[i][k]*qk[j];  }for(sm=0 i=k; i<=n; i++)  sm+=c[i][k]*d[i];sm*=beta;for(i=k; i<=n; i++)  d[i]-=c[i][k]*sm;

}// tri-anglized

for(i=m; i>=1; i--){
d[i]/=ad[i];
x[i]=d[i];
if(i>1)
for(j=1; j<i; j++)
d[j]-=c[j][i]*d[i];
}

for(rd=0 i=m+1; i<=n; i++)
rd+=d[i]*d[i]; // remained error
return 0;
}

时间: 2024-11-01 13:22:15

c-哪位知道下面这个函数的功能啊!谢谢的相关文章

一个18位身份证校验计算函数

函数|函数 因需要对15位旧身份证号码进行升位和校验.查询处理,又没有搜索到现成的函数,于是自己写了一个简单的过程,希望能够帮得上需要的朋友.本函数的功能单一,只能校验第18位号码是否正确或者取得第18位号码,其他功能留给大家自己扩展吧! <%' Version: 1.0.1' Author: sfply(sfply@163.com)' Last Modified: 2004/7/17 12:03' Src是身份证号码,可以是15位也可以是18位,15位时只能返回验证码方式使用' iChk参数取

c#-请帮忙解释下下列函数的作用。谢谢

问题描述 请帮忙解释下下列函数的作用.谢谢 输入的参数是鼠标的X,Y坐标,请问转换后是什么? private static int MAKEPARAM(int l, int h) { return ((l & 0xffff) | (h << 0x10)); } 解决方案 其实这代码就是把l的最低16位和h的最高16位放在一起. 解决方案二: private static int MAKEPARAM(int l, int h) { return h * 65536 + l % 65536

9个必须知道的实用PHP函数和功能

即使使用 PHP 多年,也会偶然发现一些未曾了解的函数和功能.其中有些是非常有用的,但没有得到充分利用.并不是所有人都会从头到尾一页一页地阅读手册和函数参考! 1.任意参数数目的函数 你可能已经知道,PHP 允许定义可选参数的函数.但也有完全允许任意数目的函数参数的方法.以下是可选参数的例子: 以下为引用的内容: // function with 2 optional arguments function foo($arg1 = '', $arg2 = '') {  echo "arg1: $a

sts怎么设置对象点后自动显示所有函数的功能

问题描述 sts怎么设置对象点后自动显示所有函数的功能 sts怎么设置对象点后自动显示所有函数的功能................................... 解决方案 什么意思?没动楼主你的意思

请问哪位有安霸A6 的Datasheet?谢谢!

问题描述 请问哪位有安霸A6 的Datasheet?谢谢! 公司需要做一款IPC的产品,现在想了解一下安霸A6 的产品spec,不知道谁方便提供一下,非常感谢

递归-我想问一下这个我要怎么才能在主函数中实现调用 谢谢

问题描述 我想问一下这个我要怎么才能在主函数中实现调用 谢谢 #include <stdio.h>//循环赛问题 n=2^k 个运动员要进行循环赛 (1)每个选手必须与其他n-1名选手各比赛一次 //(2)每个选手一天只能赛一次 (3)循环赛一共进行n-1天 //利用分治法解决这个问题 用递归的方法用一分为二的策略对选手进行分割 知道剩下2个选手时 只需让这两个选手比赛就可以了 #include <stdlib.h> #define N 8 int a[N][N]; void Ta

pgadmin3开启函数调试功能报错

问题描述 pgadmin3开启函数调试功能报错 OS: win10 pro 64bit DB: postgresql 9.4.7 设置debug插件路径后,重启服务就报错了,postgresql.conf恢复后服务可启动,明显是插件设置导致的启动失败,但是在同事机器上按上面的操作就能成功,实在想不出是哪里不一样.

|M| 我在CSDN里面下载了一个DundasWebChart.dll图表控件 但没有示例 哪一位知道哪里有给个URL地址 谢谢

问题描述 我在CSDN里面下载了一个DundasWebChart.dll图表控件但没有示例哪一位知道哪里有给个URL地址谢谢 解决方案 解决方案二:只能帮你顶了.解决方案三:CSDN上的我没用过,不过我们公司提供的是个安装包,安装之后在开始菜单里有个快捷方式组,里面有一系列示例,不过是英文的,你找找看有没有解决方案四:up

oracle问题,哪位大神帮忙解答一下喽,谢谢!

问题描述 oracle问题,哪位大神帮忙解答一下喽,谢谢! 1.创建一个开户的过程(20分)要求:accouontno账号随机生成的16位数字accountname调用存储过程接受的参数:户主姓名password调用存储过程接受的参数:密码(密码长度必须为6位的数字):密码也有默认值(123123)balance 调用过程接受的参数:账号余额(余额必须大于0) 解决方案 就是一个insert语句呗