00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00028 #ifndef _SPARSITY_H_
00029 #define _SPARSITY_H_
00030
00031 #include <model.h>
00032
00033 namespace coco {
00034
00037
00054 typedef enum {
00055 full_indexing=0,
00056 row_wise_indexing=1,
00057 column_wise_indexing=2
00058 } sp_indexing;
00059
00061
00085 void sparsity(const model& DAG, std::vector<unsigned int>& H_ridx,
00086 std::vector<unsigned int>& H_cidx,
00087 std::vector<unsigned int>& J_funidx,
00088 std::vector<unsigned int>& J_varidx,
00089 bool J_with_obj, bool J_obj_is_first, bool org_only,
00090 bool H_upper_only, sp_indexing indexing, bool fun_one_based,
00091 bool var_one_based);
00092
00094
00108 void sparsity(const model& DAG, std::vector<unsigned int>& H_ridx,
00109 std::vector<unsigned int>& H_cidx, bool org_only,
00110 bool H_upper_only, sp_indexing indexing, bool var_one_based);
00111
00113
00133 void sparsity(const model& DAG, std::vector<unsigned int>& J_funidx,
00134 std::vector<unsigned int>& J_varidx, bool J_with_obj,
00135 bool J_obj_is_first, bool org_only, sp_indexing indexing,
00136 bool fun_one_based, bool var_one_based);
00137
00139
00140
00168 void sparsity(const model& DAG, unsigned int &nnz_H, unsigned int*& H_ridx,
00169 unsigned int*& H_cidx, unsigned int &nnz_J,
00170 unsigned int*& J_funidx, unsigned int*& J_varidx, bool J_with_obj,
00171 bool J_obj_is_first, bool org_only, bool H_upper_only,
00172 sp_indexing indexing, bool fun_one_based, bool var_one_based);
00173 void sparsity(const model& DAG, int& nnz_H, int*& H_ridx, int*& H_cidx,
00174 int &nnz_J, int*& J_funidx, int*& J_varidx, bool J_with_obj,
00175 bool J_obj_is_first, bool org_only, bool H_upper_only,
00176 sp_indexing indexing, bool fun_one_based, bool var_one_based);
00178
00180
00181
00198 void sparsity(const model& DAG, unsigned int &nnz_H,
00199 unsigned int *&H_ridx, unsigned int *&H_cidx,
00200 bool org_only, bool H_upper_only, sp_indexing indexing,
00201 bool var_one_based);
00202 void sparsity(const model& DAG, int &nnz_H, int *&H_ridx, int *&H_cidx,
00203 bool org_only, bool H_upper_only, sp_indexing indexing,
00204 bool var_one_based);
00206
00208
00209
00230 void sparsity(const model& DAG, unsigned int& nnz_J,
00231 unsigned int *&J_funidx, unsigned int *&J_varidx,
00232 bool J_with_obj, bool J_obj_is_first, bool org_only,
00233 sp_indexing indexing, bool fun_one_based, bool var_one_based);
00234 void sparsity(const model& DAG, int &nnz_J, int *&J_funidx, int *&J_varidx,
00235 bool J_with_obj, bool J_obj_is_first, bool org_only,
00236 sp_indexing indexing, bool fun_one_based, bool var_one_based);
00238
00239 }
00240
00241 #endif