From c7afe29d719f5b82d8e826950da629fbc55edde7 Mon Sep 17 00:00:00 2001 From: David Baddeley Date: Mon, 24 Jan 2022 09:05:28 +1300 Subject: [PATCH] some a_func refactoring --- ch_shrinkwrap/conj_grad_utils.c | 86 ++++++++++++++++++++++++++++++++- 1 file changed, 84 insertions(+), 2 deletions(-) diff --git a/ch_shrinkwrap/conj_grad_utils.c b/ch_shrinkwrap/conj_grad_utils.c index f19337a..46fd89f 100644 --- a/ch_shrinkwrap/conj_grad_utils.c +++ b/ch_shrinkwrap/conj_grad_utils.c @@ -49,10 +49,11 @@ static PyObject *c_shrinkwrap_a_func(PyObject *self, PyObject *args) if ((*((int32_t *)PyArray_GETPTR2(v_n, i, 0))) == -1) continue; for (k=0; k 0) { + // *((float *)PyArray_GETPTR2(v_dd, i, k)) = (1.0/dik)*exp(-dik/ss2); + //w = expf(-dd_ik/ss2); // use fexp to avoid casts + //dd_ik = (1.0/dd_ik)*w; + dd_ik = (1.0/sqrtf(dd_ik)); + *((float *)PyArray_GETPTR2(v_dd, i, k)) = dd_ik; + } + + // keep track of sum along n_verts + ds[k] += dd_ik; + } + } + + // normalize + for (i=0; i