Example #1
0
static void elsInit(void)
{
    size_t i;
    for (i = 0; i < vecs2_len; ++i){
        els[i].val = borVec2X(&vecs2[i]) * 1000000;
        borListInit(&els[i].htable);
        els[i].hash = hash(&els[i].htable, NULL);
    }

    els_len = vecs2_len;
}
Example #2
0
bor_fibo_t *borFiboNew(bor_fibo_lt lt, void *data)
{
    bor_fibo_t *fibo;

    fibo = BOR_ALLOC(bor_fibo_t);

    bzero(fibo, sizeof(bor_fibo_t));
    borListInit(&fibo->root);

    fibo->max_degree = 0;

    fibo->lt = lt;
    fibo->data = data;

    return fibo;
}
Example #3
0
File: gug.c Project: danfis/boruvka
static void el6New(el6_t *ns, size_t len, bor_list_t *head)
{
    size_t i, j;

    borListInit(head);

    for (i = 0; i < len; i++){
        for (j = 0; j < 6; j++){
            borVecSet(ns[i].v, j, borRand(&r, -10., 10.));
        }

        borGUGElInit(&ns[i].c, ns[i].v);

        borListAppend(head, &ns[i].list);
    }
}
Example #4
0
File: gug.c Project: danfis/boruvka
static void elNew(el_t *ns, size_t len, bor_list_t *head)
{
    size_t i;
    bor_real_t x, y;

    borListInit(head);

    for (i = 0; i < len; i++){
        x = borRand(&r, -10., 10.);
        y = borRand(&r, -10., 10.);

        borVec2Set(&ns[i].v, x, y);
        borGUGElInit(&ns[i].c, (const bor_vec_t *)&ns[i].v);

        borListAppend(head, &ns[i].list);
    }
}
Example #5
0
static void _nnAddRm(uint8_t type, bor_nn_params_t *params)
{
    bor_rand_mt_t *rand;
    bor_nn_t *nn;
    static bor_list_t els_list;
    static int els_len = ADD_ELS_LEN;
    static el_t els[ADD_ELS_LEN];
    int i, j;

    rand = borRandMTNewAuto();

    params->type = type;
    nn = borNNNew(params);

    borListInit(&els_list);
    for (i = 0; i < els_len; i++){
        borVec2Set(&els[i].w, borRandMT(rand, -3, 3), borRandMT(rand, -3, 3));
        borNNElInit(nn, &els[i].el, (const bor_vec_t *)&els[i].w);
        borListAppend(&els_list, &els[i].list);
    }

    for (i = 0; i < ADD_ELS_LEN; i++){
        //fprintf(stdout, "%02d:\n", i);
        borNNAdd(nn, &els[i].el);
        //borNNDump(vp, stdout);
    }

    for (i = 0; i < ADD_ELS_LEN; i += 3){
        borNNRemove(nn, &els[i].el);
        borListDel(&els[i].list);
    }

    for (i = 0; i < ADD_NUM_TESTS; i++){
        for (j = 1; j <= ADD_NUM_NNS; j++){
            test2(rand, nn, &els_list, j);
        }
    }

    borNNDel(nn);
    borRandMTDel(rand);
}