本文整理汇总了C++中SparseMatrix::any_element_is_negative方法的典型用法代码示例。如果您正苦于以下问题:C++ SparseMatrix::any_element_is_negative方法的具体用法?C++ SparseMatrix::any_element_is_negative怎么用?C++ SparseMatrix::any_element_is_negative使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类SparseMatrix
的用法示例。
在下文中一共展示了SparseMatrix::any_element_is_negative方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: run
void run() {
// Do some validation of the arguments
if (graph.rows() != graph.cols()) {
throw std::invalid_argument("Matrix must be square");
}
if (graph.any_element_is_inf_or_nan()) {
throw std::invalid_argument("Matrix includes Inf or NaN values");
}
if (graph.any_element_is_negative()) {
throw std::invalid_argument("Matrix includes negative values");
}
if (!is_symmetric(graph)) {
throw std::invalid_argument("Matrix must be symmetric");
}
if (!clustering.empty() && (int)clustering.size() != graph.rows()) {
throw std::invalid_argument("Initial value must have same size as the matrix");
}
// initialize Clustering object
params.lossfun = lossfun.get();
srand(seed);
Clustering clus(graph,params);
if (!clustering.empty()) {
clus.set_clustering(clustering);
}
// perform clustering
if (optimize) {
clus.optimize();
}
// outputs
clustering = clus.get_clustering();
loss = clus.get_loss();
num_clusters = clus.num_clusters();
}