aboutsummaryrefslogtreecommitdiff
path: root/src/libMSVMMaj.c
diff options
context:
space:
mode:
authorGertjan van den Burg <gertjanvandenburg@gmail.com>2014-07-31 21:36:53 +0200
committerGertjan van den Burg <gertjanvandenburg@gmail.com>2014-07-31 21:36:53 +0200
commita0e00c7b6f77aab92d08772ca1a343d4ee6195b2 (patch)
treec13f16c3beb5164600bfd4378752c753a322ec76 /src/libMSVMMaj.c
parentremove fixed seed leftover from merge (diff)
downloadgensvm-a0e00c7b6f77aab92d08772ca1a343d4ee6195b2.tar.gz
gensvm-a0e00c7b6f77aab92d08772ca1a343d4ee6195b2.zip
unroll some matrix functions for safety with macros
Diffstat (limited to 'src/libMSVMMaj.c')
-rw-r--r--src/libMSVMMaj.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/libMSVMMaj.c b/src/libMSVMMaj.c
index 488b76d..df422c0 100644
--- a/src/libMSVMMaj.c
+++ b/src/libMSVMMaj.c
@@ -265,6 +265,7 @@ void msvmmaj_seed_model_V(struct MajModel *from_model,
void msvmmaj_step_doubling(struct MajModel *model)
{
long i, j;
+ double value;
long m = model->m;
long K = model->K;
@@ -272,8 +273,8 @@ void msvmmaj_step_doubling(struct MajModel *model)
for (i=0; i<m+1; i++) {
for (j=0; j<K-1; j++) {
matrix_mul(model->V, K-1, i, j, 2.0);
- matrix_add(model->V, K-1, i, j,
- -matrix_get(model->Vbar, K-1, i, j));
+ value = - matrix_get(model->Vbar, K-1, i, j);
+ matrix_add(model->V, K-1, i, j, value);
}
}
}