| Version | Release Note/Bug Report | Comments |
| 0903 | Must be run with "Reduce Surface Remants = no" otherwise code bombs with segmentation violation | Bug not present in jun03 version. Bug may be Linux version dependent - we have been unable to reproduce the bug under RedHat 9.0 using data that causes problems under SUSE |
| 0304 | Improvement of pore/throat network algorithms. | The 3dma_rock_03_primer document is compatible with the 0903 release. Use the 3dma_rock_04_primer document for the 0304 release. |
| 0903/0304 | Segmentation Violation in case1.5krig near the end of the computation (after kriging loop finishes) | Line 413 of src/seg_krig/driver.C must be changed from char *vtype; to char vtype[256]; and the 3dma executable recompiled. |
| 0903/0304 | Segmentation Violation on SUN/Solaris using the g++ compilers:
% g++ -v
or
% g++ -v in case4.10 during the loop that iteratively trims the medial axis branches. |
Segmentation violation occurs during a recursive subroutine that searches for
the terminating entry of a linked list. This linked list expands with the size
of the data set and can hold > 100k linked structure entries. All indications
point to a bug in implementation of the recursive subroutine handling capability
of the Solaris implementation of the g++ compiler (probably in the stack
management since the recursive subroutine's argument, a pointer indicating
memory location of the next linked list entry, suddenly "goes garbage", tens of
thousands of recursive calls down the stack).
Fix: Replace the following subroutine in 3dma_rock/src/ma_cp/masets.c (approximately line 1324)
void rec_free_MA_set(MA_set *mas)
{
extern void rec_free_MA_set(MA_set *);
extern void free_MA_set(MA_set *);
if( mas == NULL ) return;
rec_free_MA_set(mas->next);
free_MA_set(mas);
}
with the non-recursive version
void rec_free_MA_set(MA_set *root)
{
extern void free_MA_set(MA_set *);
MA_set *mas, *n_mas;
n_mas = root;
while( n_mas != NULL )
{
mas = n_mas; n_mas = mas->next;
free_MA_set(mas);
}
}
and recompile the 3dma executable.
|
| 0805 | Code functionality upgrades: aggressive pore throat finding improved pore-network reconstruction pore fluid visualization lattive-Boltzman-based throat and pore-body permeability computation |
|
| 1205 | C++ code upgrade for compatibility with the compiler gcc version 3.4.4 20050721 (Red Hat 3.4.4-2) |
Detailed running instructions remain same as for the 0805 version |
| 0106 | C code upgrade for compatibility with the compiler gcc version 4.0.0 (SuSe 10) |
Detailed running instructions remain same as for the 0805 version |
| 0506 | Correction in src/raster/rasio.c to support Cygwin output of SUN rasterfile output |
Detailed running instructions remain same as for the 0805 version |
| versions 0506 through 0709 | stack "smashing" error correction | Line 70 of src/tortuosity/dijk_main.c. Change
char ..., ftype[30], ....;to char ..., ftype[256], ....;and recompile. |