aboutsummaryrefslogtreecommitdiff
path: root/src/gensvm_optimize.c
diff options
context:
space:
mode:
authorGertjan van den Burg <gertjanvandenburg@gmail.com>2017-02-17 19:17:17 -0500
committerGertjan van den Burg <gertjanvandenburg@gmail.com>2017-02-17 19:17:17 -0500
commite8baad9ae430a838c34fa8173b36f92c9baa862d (patch)
tree646574b2d6ee594b600c74d1e93ae2c0fbe898b2 /src/gensvm_optimize.c
parentBump version (diff)
downloadgensvm-e8baad9ae430a838c34fa8173b36f92c9baa862d.tar.gz
gensvm-e8baad9ae430a838c34fa8173b36f92c9baa862d.zip
allow max_iter to be set in the model
Diffstat (limited to 'src/gensvm_optimize.c')
-rw-r--r--src/gensvm_optimize.c11
1 files changed, 2 insertions, 9 deletions
diff --git a/src/gensvm_optimize.c b/src/gensvm_optimize.c
index 95f9df2..fff6768 100644
--- a/src/gensvm_optimize.c
+++ b/src/gensvm_optimize.c
@@ -31,13 +31,6 @@
#include "gensvm_optimize.h"
/**
- * Maximum number of iterations of the algorithm.
- */
-#ifndef GENSVM_MAX_ITER
- #define GENSVM_MAX_ITER 1000000000
-#endif
-
-/**
* Iteration frequency with which to print to stdout
*/
#ifndef GENSVM_PRINT_ITER
@@ -94,7 +87,7 @@ void gensvm_optimize(struct GenModel *model, struct GenData *data)
Lbar = L + 2.0*model->epsilon*L;
// run main loop
- while ((it < GENSVM_MAX_ITER) && (Lbar - L)/L > model->epsilon)
+ while ((it < model->max_iter) && (Lbar - L)/L > model->epsilon)
{
// ensures V contains newest V and Vbar contains V from
// previous
@@ -115,7 +108,7 @@ void gensvm_optimize(struct GenModel *model, struct GenData *data)
if (L > Lbar)
err("[GenSVM Warning]: Negative step occurred in "
"majorization.\n");
- if (it >= GENSVM_MAX_ITER)
+ if (it >= model->max_iter)
err("[GenSVM Warning]: maximum number of iterations "
"reached.\n");