-
Notifications
You must be signed in to change notification settings - Fork 39
Description
Hello,
I'm trying to generate a mesh using jigsaw with a geometric model that has roughly 16k edges and hitting problems with memory consumption and runtime when enabling mesh_top1.
The test repo here:
https://github.com/cwsmith/jigsaw_gis/tree/519e7e1437fbabbbe3037cee4212721f079bddb4
contains gis.py that loads the geometric model (.msh) and size field (hfun) and runs jigsaw in a few seconds to generate a mesh of 358k triangles that doesn't exactly 'recover' the geometric model edges/vertices in the resulting mesh as mesh_top1 is disabled.
When I add opts.mesh_top1 = True to gis.py jigsaw runs out of memory on a gnu/linux machine with 64GB of RAM after about 10mins. The log from the failed run is pasted below.
I'm a novice jigsaw user and am concerned I have a problematic combination of settings and mesh size field that is causing the large memory usage and long runtime. Do you see anything obviously wrong? Any suggestions are appreciated.
Thank you.
verbose output from failed run
Call libJIGSAW: gis
#------------------------------------------------------------
#
# ,o, ,o, /
# ` ` e88~88e d88~\ /~~~8e Y88b e /
# 888 888 88 88 C888 88b Y88b d8b /
# 888 888 "8b_d8" Y88b e88~-888 Y888/Y88b/
# 888 888 / 888D C88 888 Y8/ Y8/
# 88P 888 Cb \_88P "8b_-888 Y Y
# \_8" Y8""8D
#
#------------------------------------------------------------
# JIGSAW: an unstructured mesh generation library.
#------------------------------------------------------------
JIGSAW VERSION 1.0.0
Reading CFG. data...
CFG. data summary...
GEOM-FILE =
MESH-FILE =
HFUN-FILE =
INIT-FILE =
TRIA-FILE =
BNDS-FILE =
NUMTHREAD = 20
GEOM-SEED = 8
GEOM-PHI1 = 6.00e+01
GEOM-PHI2 = 6.00e+01
GEOM-ETA1 = 5.00e+00
GEOM-ETA2 = 5.00e+00
GEOM-FEAT = TRUE
INIT-NEAR = 1.00e-08
HFUN-SCAL = ABSOLUTE
HFUN-HMAX = inf
HFUN-HMIN = 0.00e+00
BNDS-KERN = BND-TRIA
MESH-KERN = DELFRONT
MESH-TOP1 = TRUE
MESH-TOP2 = FALSE
MESH-ITER = MAXINT
MESH-DIMS = 2
MESH-SIZ1 = 1.33e+00
MESH-SIZ2 = 1.31e+00
MESH-SIZ2 = 1.30e+00
MESH-EPS1 = 3.33e-01
MESH-EPS2 = 3.33e-01
MESH-RAD2 = 1.05e+00
MESH-RAD3 = 2.05e+00
MESH-OFF2 = 9.00e-01
MESH-OFF3 = 1.10e+00
MESH-SNK2 = 2.00e-01
MESH-SNK3 = 3.33e-01
MESH-VOL3 = 0.00e+00
OPTM-KERN = ODT+DQDX
OPTM-ITER = 16
OPTM-COST = AREA-LEN
OPTM-BETA = 4.95e-01
OPTM-ZETA = 8.25e-01
OPTM-QTOL = 1.00e-04
OPTM-QLIM = 9.38e-01
OPTM-ZIP_ = TRUE
OPTM-DIV_ = TRUE
OPTM-TRIA = TRUE
OPTM-DUAL = FALSE
Done. (6.90e-05sec)
#------------------------------------------------------------
Reading GEOM data...
Done. (1.36e-03sec)
#------------------------------------------------------------
Forming GEOM data...
GEOM data summary...
EUCLIDEAN-MESH
|NDIMS.| = 2
|COORD.| = 16675
|EDGE-2| = 16674
|SEEDS.| = 0
|BOUND.| = 0 (0)
Done. (3.66e-03sec)
#------------------------------------------------------------
Reading HFUN data...
Done. (1.54e-03sec)
#------------------------------------------------------------
Forming HFUN data...
HFUN data summary...
EUCLIDEAN-GRID
|NDIMS.| = 2
.MIN(H). = 3.00e+03
.MAX(H). = 3.00e+04
|MASKED| = 0
|XGRID.| = 832
|YGRID.| = 1408
Done. (1.15e-03sec)
#------------------------------------------------------------
Generate rDT MESH...
#------------------------------------------------------------
# |ITER.| |DEL-1| |DEL-2|
#------------------------------------------------------------
10000 16485 28345
25000 16485 58345
50000 16485 108345
75000 16485 158345
100000 16807 207745
250000 25094 472549
500000 25236 930619
750000 25321 1389276
1000000 25496 1847653
2500000 25957 4583110
5000000 26593 9142783
7500000 27115 13692413
10000000 27355 18256201
25000000 28722 45592494
50000000 30873 91114451
75000000 32284 136651641
100000000 33472 182152897
250000000 38587 455269920
Terminated