aboutsummaryrefslogtreecommitdiff
path: root/src/gensvm_copy.c
diff options
context:
space:
mode:
authorGertjan van den Burg <gertjanvandenburg@gmail.com>2017-02-17 19:02:52 -0500
committerGertjan van den Burg <gertjanvandenburg@gmail.com>2017-02-17 19:02:52 -0500
commit3a30e992cf022f4ec3c76506c070e59d093951d4 (patch)
treefe14713d50876c1d37f1acec40b9a77875d2bba3 /src/gensvm_copy.c
parentminor code clarification (diff)
downloadgensvm-3a30e992cf022f4ec3c76506c070e59d093951d4.tar.gz
gensvm-3a30e992cf022f4ec3c76506c070e59d093951d4.zip
Remove kernelparam array in favour of explicit kernel parameters
This simplifies a lot of the code and will make it easier to link to other languages.
Diffstat (limited to 'src/gensvm_copy.c')
-rw-r--r--src/gensvm_copy.c25
1 files changed, 3 insertions, 22 deletions
diff --git a/src/gensvm_copy.c b/src/gensvm_copy.c
index 43a1107..28642c7 100644
--- a/src/gensvm_copy.c
+++ b/src/gensvm_copy.c
@@ -45,26 +45,7 @@ void gensvm_copy_model(struct GenModel *from, struct GenModel *to)
to->lambda = from->lambda;
to->kerneltype = from->kerneltype;
- switch (to->kerneltype) {
- case K_LINEAR:
- break;
- case K_POLY:
- if (to->kernelparam) free(to->kernelparam);
- to->kernelparam = Malloc(double, 3);
- to->kernelparam[0] = from->kernelparam[0];
- to->kernelparam[1] = from->kernelparam[1];
- to->kernelparam[2] = from->kernelparam[2];
- break;
- case K_RBF:
- if (to->kernelparam) free(to->kernelparam);
- to->kernelparam = Malloc(double, 1);
- to->kernelparam[0] = from->kernelparam[0];
- break;
- case K_SIGMOID:
- if (to->kernelparam) free(to->kernelparam);
- to->kernelparam = Malloc(double, 2);
- to->kernelparam[0] = from->kernelparam[0];
- to->kernelparam[1] = from->kernelparam[1];
- break;
- }
+ to->gamma = from->gamma;
+ to->coef = from->coef;
+ to->degree = from->degree;
}