Track reverse mapping into WI/depth tables in 'cwells'. Update
allocation sizes accordingly.
This commit is contained in:
parent
d96229619e
commit
790d6f4b8b
9
well.c
9
well.c
@ -27,8 +27,8 @@ allocate_cell_wells(int nc, well_t *W, int **cwpos, int **cwells)
|
||||
|
||||
totwconn = W->well_connpos[W->number_of_wells];
|
||||
|
||||
*cwpos = calloc(nc + 1 , sizeof **cwpos );
|
||||
*cwells = malloc(totwconn * sizeof **cwells);
|
||||
*cwpos = calloc(nc + 1 , sizeof **cwpos );
|
||||
*cwells = malloc(2 * totwconn * sizeof **cwells);
|
||||
|
||||
if ((*cwpos == NULL) || (*cwells == NULL)) {
|
||||
deallocate_cell_wells(*cwpos, *cwells);
|
||||
@ -69,7 +69,10 @@ derive_cell_wells(int nc, well_t *W, int *cwpos, int *cwells)
|
||||
c = W->well_cells;
|
||||
for (w = 0; w < W->number_of_wells; w++) {
|
||||
for (; c != W->well_cells + connpos[w + 1]; c++) {
|
||||
cwells[ cwpos[*c + 1] ++ ] = w;
|
||||
cwells[ 2*cwpos[*c + 1] + 0 ] = w;
|
||||
cwells[ 2*cwpos[*c + 1] + 1 ] = c - W->well_cells;
|
||||
|
||||
cwpos[*c + 1] += 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user