Skip to content

Commit

Permalink
convert examples to use new CMath/SGVector/SGMatrix split
Browse files Browse the repository at this point in the history
  • Loading branch information
Soeren Sonnenburg committed Jun 9, 2012
1 parent bac8cc0 commit 062b1f4
Show file tree
Hide file tree
Showing 28 changed files with 131 additions and 130 deletions.
Expand Up @@ -31,19 +31,19 @@ class CTestClassInt : public CSGObject

m_vector_length=3;
m_vector=SG_MALLOC(int32_t, m_vector_length);
CMath::fill_vector(m_vector, m_vector_length, 10);
SGVector<int32_t>::fill_vector(m_vector, m_vector_length, 10);
m_parameters->add_vector(&m_vector, &m_vector_length, "vector",
"Test vector");

m_matrix_rows=2;
m_matrix_cols=3;
m_matrix=SG_MALLOC(int32_t, m_matrix_rows*m_matrix_cols);
CMath::range_fill_vector(m_matrix, m_matrix_rows*m_matrix_cols);
SGVector<int32_t>::range_fill_vector(m_matrix, m_matrix_rows*m_matrix_cols);
m_parameters->add_matrix(&m_matrix, &m_matrix_rows, &m_matrix_cols,
"matrix", "Test matrix");

SGMatrix<int32_t> features=SGMatrix<int32_t>(2, 3);
CMath::range_fill_vector(features.matrix,
SGVector<int32_t>::range_fill_vector(features.matrix,
features.num_rows*features.num_cols, 3);
m_features=new CDenseFeatures<int32_t>(features);
SG_REF(m_features);
Expand Down Expand Up @@ -85,7 +85,7 @@ class CTestClassFloat : public CSGObject
m_parameters->add(&m_matrix, "matrix", "Test matrix");

SGMatrix<float64_t> features=SGMatrix<float64_t>(2, 3);
CMath::range_fill_vector(features.matrix,
SGVector<float64_t>::range_fill_vector(features.matrix,
features.num_rows*features.num_cols, 3.0);
m_features=new CDenseFeatures<float64_t>(features);
SG_REF(m_features);
Expand Down Expand Up @@ -191,14 +191,14 @@ void test_load_file_parameter()
else if (!strcmp(current->m_name, "vector"))
{
int32_t* value_vector=*((int32_t**)current->m_parameter);
CMath::display_vector(value_vector, int_instance->m_vector_length);
SGVector<int32_t>::display_vector(value_vector, int_instance->m_vector_length);
for (index_t i=0; i<int_instance->m_vector_length; ++i)
ASSERT(value_vector[i]=int_instance->m_vector[i]);
}
else if (!strcmp(current->m_name, "matrix"))
{
int32_t* value_matrix=*((int32_t**)current->m_parameter);
CMath::display_matrix(value_matrix, int_instance->m_matrix_rows,
SGMatrix<int32_t>::display_matrix(value_matrix, int_instance->m_matrix_rows,
int_instance->m_matrix_cols);
for (index_t i=0; i<int_instance->m_matrix_rows*int_instance->m_matrix_cols;
++i)
Expand All @@ -216,7 +216,7 @@ void test_load_file_parameter()
SGMatrix<int32_t> feature_matrix_original=
int_instance->m_features->get_feature_matrix();

CMath::display_matrix(feature_matrix_loaded.matrix,
SGMatrix<int32_t>::display_matrix(feature_matrix_loaded.matrix,
feature_matrix_loaded.num_rows,
feature_matrix_loaded.num_cols,
"features");
Expand Down
14 changes: 7 additions & 7 deletions examples/undocumented/libshogun/base_load_file_parameters.cpp
Expand Up @@ -31,19 +31,19 @@ class CTestClassInt : public CSGObject

m_vector_length=3;
m_vector=SG_MALLOC(int32_t, m_vector_length);
CMath::fill_vector(m_vector, m_vector_length, 10);
SGVector<int32_t>::fill_vector(m_vector, m_vector_length, 10);
m_parameters->add_vector(&m_vector, &m_vector_length, "vector",
"Test vector");

m_matrix_rows=2;
m_matrix_cols=3;
m_matrix=SG_MALLOC(int32_t, m_matrix_rows*m_matrix_cols);
CMath::range_fill_vector(m_matrix, m_matrix_rows*m_matrix_cols);
SGVector<int32_t>::range_fill_vector(m_matrix, m_matrix_rows*m_matrix_cols);
m_parameters->add_matrix(&m_matrix, &m_matrix_rows, &m_matrix_cols,
"matrix", "Test matrix");

SGMatrix<int32_t> features=SGMatrix<int32_t>(2, 3);
CMath::range_fill_vector(features.matrix,
SGVector<int32_t>::range_fill_vector(features.matrix,
features.num_rows*features.num_cols, 3);
m_features=new CDenseFeatures<int32_t>(features);
SG_REF(m_features);
Expand Down Expand Up @@ -85,7 +85,7 @@ class CTestClassFloat : public CSGObject
m_parameters->add(&m_matrix, "matrix", "Test matrix");

SGMatrix<float64_t> features=SGMatrix<float64_t>(2, 3);
CMath::range_fill_vector(features.matrix,
SGVector<float64_t>::range_fill_vector(features.matrix,
features.num_rows*features.num_cols, 3.0);
m_features=new CDenseFeatures<float64_t>(features);
SG_REF(m_features);
Expand Down Expand Up @@ -219,14 +219,14 @@ void test_load_file_parameters()
/* same for the vector */
current=file_loaded_vector->get_element(0);
int32_t* value_vector=*((int32_t**)current->m_parameter);
CMath::display_vector(value_vector, int_instance->m_vector_length);
SGVector<int32_t>::display_vector(value_vector, int_instance->m_vector_length);
for (index_t i=0; i<int_instance->m_vector_length; ++i)
ASSERT(value_vector[i]=int_instance->m_vector[i]);

/* and for the matrix */
current=file_loaded_matrix->get_element(0);
int32_t* value_matrix=*((int32_t**)current->m_parameter);
CMath::display_matrix(value_matrix, int_instance->m_matrix_rows,
SGMatrix<int32_t>::display_matrix(value_matrix, int_instance->m_matrix_rows,
int_instance->m_matrix_cols);
for (index_t i=0; i<int_instance->m_matrix_rows*int_instance->m_matrix_cols;
++i)
Expand All @@ -243,7 +243,7 @@ void test_load_file_parameters()
SGMatrix<int32_t> feature_matrix_original=
int_instance->m_features->get_feature_matrix();

CMath::display_matrix(feature_matrix_loaded.matrix,
SGMatrix<int32_t>::display_matrix(feature_matrix_loaded.matrix,
feature_matrix_loaded.num_rows,
feature_matrix_loaded.num_cols,
"features");
Expand Down
20 changes: 10 additions & 10 deletions examples/undocumented/libshogun/base_map_parameters.cpp
Expand Up @@ -31,19 +31,19 @@ class CTestClassInt : public CSGObject

m_vector_length=3;
m_vector=SG_MALLOC(int32_t, m_vector_length);
CMath::fill_vector(m_vector, m_vector_length, 10);
SGVector<int32_t>::fill_vector(m_vector, m_vector_length, 10);
m_parameters->add_vector(&m_vector, &m_vector_length, "vector",
"Test vector");

m_matrix_rows=2;
m_matrix_cols=3;
m_matrix=SG_MALLOC(int32_t, m_matrix_rows*m_matrix_cols);
CMath::range_fill_vector(m_matrix, m_matrix_rows*m_matrix_cols);
SGVector<int32_t>::range_fill_vector(m_matrix, m_matrix_rows*m_matrix_cols);
m_parameters->add_matrix(&m_matrix, &m_matrix_rows, &m_matrix_cols,
"matrix", "Test matrix");

SGMatrix<int32_t> features=SGMatrix<int32_t>(2, 3);
CMath::range_fill_vector(features.matrix,
SGVector<int32_t>::range_fill_vector(features.matrix,
features.num_rows*features.num_cols, 3);
m_features=new CDenseFeatures<int32_t>(10);
m_features->set_feature_matrix(features);
Expand Down Expand Up @@ -87,7 +87,7 @@ class CTestClassFloat : public CSGObject
m_parameters->add(&m_matrix, "matrix", "Test matrix");

SGMatrix<int32_t> features=SGMatrix<int32_t>(2, 3);
CMath::range_fill_vector(features.matrix,
SGVector<int32_t>::range_fill_vector(features.matrix,
features.num_rows*features.num_cols, 3);
m_features=new CDenseFeatures<int32_t>(features);
SG_REF(m_features);
Expand Down Expand Up @@ -325,9 +325,9 @@ void test_load_file_parameter()
SG_SPRINT("number of cols: %d==%d\n", int_matrix.num_cols,
float_matrix.num_cols);
ASSERT(int_matrix.num_cols==float_matrix.num_cols);
CMath::display_matrix(float_matrix.matrix, float_matrix.num_rows,
SGMatrix<int32_t>::display_matrix(float_matrix.matrix, float_matrix.num_rows,
float_matrix.num_cols, "mapped");
CMath::display_matrix(int_matrix.matrix, int_matrix.num_rows,
SGMatrix<int32_t>::display_matrix(int_matrix.matrix, int_matrix.num_rows,
int_matrix.num_cols, "original");
for (index_t i=0; i<int_matrix.num_rows*int_matrix.num_cols; ++i)
ASSERT(int_matrix.matrix[i]==float_matrix.matrix[i]);
Expand All @@ -341,9 +341,9 @@ void test_load_file_parameter()
SG_SPRINT("number of rows: %d==%d\n", *current->m_datatype.m_length_y,
int_instance->m_matrix_rows);
ASSERT(*current->m_datatype.m_length_y==int_instance->m_matrix_rows);
CMath::display_matrix(matrix.matrix, matrix.num_rows, matrix.num_cols,
SGMatrix<float64_t>::display_matrix(matrix.matrix, matrix.num_rows, matrix.num_cols,
"mapped");
CMath::display_matrix(int_instance->m_matrix, int_instance->m_matrix_rows,
SGMatrix<int32_t>::display_matrix(int_instance->m_matrix, int_instance->m_matrix_rows,
int_instance->m_matrix_cols, "original");
for (index_t i=0; i<int_instance->m_matrix_rows*int_instance->m_matrix_cols;
++i)
Expand All @@ -368,8 +368,8 @@ void test_load_file_parameter()
SG_SPRINT("length: %d==%d\n", *current->m_datatype.m_length_y,
int_instance->m_vector_length);
ASSERT(*current->m_datatype.m_length_y==int_instance->m_vector_length);
CMath::display_vector(vector.vector, vector.vlen, "mapped");
CMath::display_vector(int_instance->m_vector, int_instance->m_vector_length,
SGVector<float64_t>::display_vector(vector.vector, vector.vlen, "mapped");
SGVector<int32_t>::display_vector(int_instance->m_vector, int_instance->m_vector_length,
"original");
for (index_t i=0; i<int_instance->m_vector_length; ++i)
ASSERT(vector.vector[i]==int_instance->m_vector[i]);
Expand Down
24 changes: 12 additions & 12 deletions examples/undocumented/libshogun/base_migration_type_conversion.cpp
Expand Up @@ -31,19 +31,19 @@ class CTestClassInt : public CSGObject

m_vector_length=3;
m_vector=SG_MALLOC(int32_t, m_vector_length);
CMath::fill_vector(m_vector, m_vector_length, 10);
SGVector<int32_t>::fill_vector(m_vector, m_vector_length, 10);
m_parameters->add_vector(&m_vector, &m_vector_length, "vector",
"Test vector");

m_matrix_rows=2;
m_matrix_cols=3;
m_matrix=SG_MALLOC(int32_t, m_matrix_rows*m_matrix_cols);
CMath::range_fill_vector(m_matrix, m_matrix_rows*m_matrix_cols);
SGVector<int32_t>::range_fill_vector(m_matrix, m_matrix_rows*m_matrix_cols);
m_parameters->add_matrix(&m_matrix, &m_matrix_rows, &m_matrix_cols,
"matrix", "Test matrix");

SGMatrix<int32_t> features=SGMatrix<int32_t>(2, 3);
CMath::range_fill_vector(features.matrix,
SGVector<int32_t>::range_fill_vector(features.matrix,
features.num_rows*features.num_cols, 3);
m_features=new CDenseFeatures<int32_t>(10);
m_features->set_feature_matrix(features);
Expand Down Expand Up @@ -80,18 +80,18 @@ class CTestClassFloat : public CSGObject
{
m_number=3.2;
m_vector=SGVector<float64_t>(10);
CMath::fill_vector(m_vector.vector, m_vector.vlen, 0.0);
SGVector<float64_t>::fill_vector(m_vector.vector, m_vector.vlen, 0.0);

m_matrix=SGMatrix<float64_t>(3, 3);
CMath::range_fill_vector(m_matrix.matrix,
SGVector<float64_t>::range_fill_vector(m_matrix.matrix,
m_matrix.num_rows*m_matrix.num_cols, 0.0);

m_parameters->add(&m_number, "number", "Test number");
m_parameters->add(&m_vector, "vector", "Test vector");
m_parameters->add(&m_matrix, "matrix", "Test matrix");

SGMatrix<int32_t> features=SGMatrix<int32_t>(2, 3);
CMath::range_fill_vector(features.matrix,
SGVector<int32_t>::range_fill_vector(features.matrix,
features.num_rows*features.num_cols, 0);
m_features=new CDenseFeatures<int32_t>(features);
SG_REF(m_features);
Expand Down Expand Up @@ -269,9 +269,9 @@ void check_equalness(CTestClassInt* int_instance,
SG_SPRINT("\tlength: %d==%d\n", int_instance->m_vector_length,
float_instance->m_vector.vlen);
ASSERT(int_instance->m_vector_length==float_instance->m_vector.vlen);
CMath::display_vector(int_instance->m_vector, int_instance->m_vector_length,
SGVector<int32_t>::display_vector(int_instance->m_vector, int_instance->m_vector_length,
"oiginal", "\t");
CMath::display_vector(float_instance->m_vector.vector,
SGVector<float64_t>::display_vector(float_instance->m_vector.vector,
float_instance->m_vector.vlen, "migrated", "\t");
for (index_t i=0; i<int_instance->m_vector_length; ++i)
ASSERT(int_instance->m_vector[i]==float_instance->m_vector.vector[i]);
Expand All @@ -284,9 +284,9 @@ void check_equalness(CTestClassInt* int_instance,
SG_SPRINT("\tcols: %d==%d\n", int_instance->m_matrix_cols,
float_instance->m_matrix.num_cols);
ASSERT(int_instance->m_matrix_cols==float_instance->m_matrix.num_cols);
CMath::display_matrix(int_instance->m_matrix, int_instance->m_matrix_rows,
SGMatrix<int32_t>::display_matrix(int_instance->m_matrix, int_instance->m_matrix_rows,
int_instance->m_matrix_cols, "original", "\t");
CMath::display_matrix(float_instance->m_matrix.matrix,
SGMatrix<float64_t>::display_matrix(float_instance->m_matrix.matrix,
float_instance->m_matrix.num_rows,
float_instance->m_matrix.num_cols, "migrated", "\t");
for (index_t i=0; i<int_instance->m_matrix_rows*int_instance->m_matrix_cols;
Expand All @@ -309,9 +309,9 @@ void check_equalness(CTestClassInt* int_instance,
SG_SPRINT("\t\tcols: %d==%d\n", original_matrix.num_cols,
migrated_matrix.num_cols);
ASSERT(original_matrix.num_cols==migrated_matrix.num_cols);
CMath::display_matrix(original_matrix.matrix, original_matrix.num_rows,
SGMatrix<int32_t>::display_matrix(original_matrix.matrix, original_matrix.num_rows,
original_matrix.num_cols, "original", "\t\t");
CMath::display_matrix(migrated_matrix.matrix, migrated_matrix.num_rows,
SGMatrix<int32_t>::display_matrix(migrated_matrix.matrix, migrated_matrix.num_rows,
migrated_matrix.num_cols, "migrated", "\t\t");
for (index_t i=0; i<int_instance->m_matrix_rows*int_instance->m_matrix_cols;
++i)
Expand Down
4 changes: 2 additions & 2 deletions examples/undocumented/libshogun/classifier_libsvm.cpp
Expand Up @@ -49,8 +49,8 @@ void gen_rand_data()
feat.matrix[i*DIMS+j]=CMath::random(0.0,1.0)-DIST;
}
}
CMath::display_vector(lab,NUM);
CMath::display_matrix(feat.matrix,DIMS, NUM);
SGVector<float64_t>::display_vector(lab,NUM);
SGMatrix<float64_t>::display_matrix(feat.matrix,DIMS, NUM);
}

int main()
Expand Down
Expand Up @@ -20,7 +20,7 @@ int main(int argc, char** argv)

// create some data
SGMatrix<float64_t> matrix(num_feat, num_vec);
CMath::range_fill_vector(matrix.matrix, num_feat*num_vec);
SGVector<float64_t>::range_fill_vector(matrix.matrix, num_feat*num_vec);

// create vectors
// shogun will now own the matrix created
Expand All @@ -41,7 +41,7 @@ int main(int argc, char** argv)

// classify on training examples
CMulticlassLabels* output=CMulticlassLabels::obtain_from_generic(svm->apply());
CMath::display_vector(output->get_labels().vector, output->get_num_labels(),
SGVector<float64_t>::display_vector(output->get_labels().vector, output->get_num_labels(),
"batch output");

/* assert that batch apply and apply(index_t) give same result */
Expand Down
Expand Up @@ -92,7 +92,7 @@ int main(int argc, char** argv)
CMulticlassLabels* output = CMulticlassLabels::obtain_from_generic(mc_svm->apply());

SGVector< int32_t > out_labels = output->get_int_labels();
CMath::display_vector(out_labels.vector, out_labels.vlen);
SGVector<int32_t>::display_vector(out_labels.vector, out_labels.vlen);

// Free resources
SG_UNREF(mc_svm);
Expand Down
8 changes: 4 additions & 4 deletions examples/undocumented/libshogun/clustering_kmeans.cpp
Expand Up @@ -42,9 +42,9 @@ int main(int argc, char **argv)

/* build random cluster centers */
SGMatrix<float64_t> cluster_centers(dim_features, num_clusters);
CMath::random_vector(cluster_centers.matrix, dim_features*num_clusters,
SGVector<float64_t>::random_vector(cluster_centers.matrix, dim_features*num_clusters,
-10.0, 10.0);
CMath::display_matrix(cluster_centers.matrix, cluster_centers.num_rows,
SGMatrix<float64_t>::display_matrix(cluster_centers.matrix, cluster_centers.num_rows,
cluster_centers.num_cols, "cluster centers");

/* create data around clusters */
Expand Down Expand Up @@ -92,10 +92,10 @@ int main(int argc, char **argv)

SGMatrix<float64_t> centers_matrix=centers->get_feature_matrix();

CMath::display_matrix(centers_matrix.matrix, centers_matrix.num_rows,
SGMatrix<float64_t>::display_matrix(centers_matrix.matrix, centers_matrix.num_rows,
centers_matrix.num_cols, "learned centers");

CMath::display_matrix(cluster_centers.matrix, cluster_centers.num_rows,
SGMatrix<float64_t>::display_matrix(cluster_centers.matrix, cluster_centers.num_rows,
cluster_centers.num_cols, "real centers");

/* clean up */
Expand Down
Expand Up @@ -33,12 +33,12 @@ void test_cross_validation()
/* data means -1, 1 in all components, std deviation of 3 */
SGVector<float64_t> mean_1(num_features);
SGVector<float64_t> mean_2(num_features);
CMath::fill_vector(mean_1.vector, mean_1.vlen, -1.0);
CMath::fill_vector(mean_2.vector, mean_2.vlen, 1.0);
SGVector<float64_t>::fill_vector(mean_1.vector, mean_1.vlen, -1.0);
SGVector<float64_t>::fill_vector(mean_2.vector, mean_2.vlen, 1.0);
float64_t sigma=3;

CMath::display_vector(mean_1.vector, mean_1.vlen, "mean 1");
CMath::display_vector(mean_2.vector, mean_2.vlen, "mean 2");
SGVector<float64_t>::display_vector(mean_1.vector, mean_1.vlen, "mean 1");
SGVector<float64_t>::display_vector(mean_2.vector, mean_2.vlen, "mean 2");

/* fill data matrix around mean */
SGMatrix<float64_t> train_dat(num_features, num_vectors);
Expand Down
Expand Up @@ -34,8 +34,8 @@ void test_cross_validation()
/* data means -1, 1 in all components, std deviation of sigma */
SGVector<float64_t> mean_1(num_features);
SGVector<float64_t> mean_2(num_features);
CMath::fill_vector(mean_1.vector, mean_1.vlen, -1.0);
CMath::fill_vector(mean_2.vector, mean_2.vlen, 1.0);
SGVector<float64_t>::fill_vector(mean_1.vector, mean_1.vlen, -1.0);
SGVector<float64_t>::fill_vector(mean_2.vector, mean_2.vlen, 1.0);
float64_t sigma=1.5;

/* fill data matrix around mean */
Expand Down
Expand Up @@ -35,7 +35,7 @@ void test_cross_validation()

/* fill data matrix and labels */
SGMatrix<float64_t> train_dat(num_features, num_vectors);
CMath::range_fill_vector(train_dat.matrix, num_vectors);
SGVector<float64_t>::range_fill_vector(train_dat.matrix, num_vectors);
for (index_t i=0; i<num_vectors; ++i)
{
/* labels are linear plus noise */
Expand Down

0 comments on commit 062b1f4

Please sign in to comment.