Experimental code.

git-svn-id: file:///home/svnrepos/software/liblbfgs/trunk@35 ecf4c44f-38d1-4fa4-9757-a0b4dd0349fc
This commit is contained in:
naoaki 2009-02-16 07:17:15 +00:00
parent 711675ae91
commit d9711f5b34

View File

@ -250,7 +250,7 @@ static void owlqn_project(
lbfgsfloatval_t* d,
const lbfgsfloatval_t* sign,
const int start,
const int n
const int end
);
@ -605,9 +605,9 @@ int lbfgs(
if (param.orthantwise_c != 0.) {
vecdot(&gnorm, d, pg, n);
if (gnorm > 0) {
if (gnorm >= 0) {
vecncpy(gp, pg, n);
owlqn_project(d, gp, 0, n);
owlqn_project(d, gp, param.orthantwise_start, param.orthantwise_end);
}
}
@ -1594,12 +1594,12 @@ static void owlqn_project(
lbfgsfloatval_t* d,
const lbfgsfloatval_t* sign,
const int start,
const int n
const int end
)
{
int i;
for (i = start;i < n;++i) {
for (i = start;i < end;++i) {
if (d[i] * sign[i] < 0) {
d[i] = 0;
}