editeodoro / Bbarolo

Bbarolo is a 3D fitting tool to derive the kinematics of galaxies from emission-line observations.
http://editeodoro.github.io/Bbarolo/
GNU General Public License v2.0
30 stars 8 forks source link

Memory allocation errors #17

Closed aparnavenkat27 closed 3 years ago

aparnavenkat27 commented 3 years ago

Hey there, I am a master's student and I am using your code to analyse intensity profiles of my sources (ALMA datacubes). I have so far managed to make the code work for 3 of my cubes (spatially the largest sources in my dataset) successfully, however the consequent sources absolutely refuse to run. I run the code in the command line using a parameter file, a sample of the one that does not work is here (it does have spaces everywhere, the formatting here is a bit off):

###############################################################

INPUT AND OUTPUT PARAMETERS

###############################################################

FITSFILE /msn2e2/avenkat/thesis/subimg-CII/SPT2349-CII_C4.fits OUTFOLDER /msn2e2/avenkat/thesis/bbarolo-outputs/C4 THREADS 8 PLOTS true SHOWBAR true VERBOSE true

###############################################################

SEARCH TOOL

###############################################################

SEARCH true FLAGROBUSTSTATS false SEARCHTYPE spatial SNRCUT 0 THRESHOLD 0.00212965 FLAGGROWTH true GROWTHCUT 0 GROWTHTHRESHOLD 0.00085186 MINPIX 1 MINCHANNELS 5 FLAGADJACENT true THRESHSPATIAL 1 THRESHVELOCITY 1 REJECTBEFOREMERGE true TWOSTAGEMERGING true

###############################################################

3D FITTING TOOL

###############################################################

3DFIT true NRADII 6 RADSEP 0.08 XPOS 13 YPOS 13 VSYS -145.1 VROT 490.7 VRAD 0 VDISP 150 INC 65.1 PA 324.2 Z0 0

DELTAINC 3 DELTAPA 3 FREE VROT VDISP FTYPE 1 WFUNC 2 LTYPE 1 CDENS 10 SIDE B MAKEMASK true MASK SEARCH NORM LOCAL TWOSTAGE true POLYN 1 BIWEIGHT 1 FLAGERRORS true STARTRAD 0 LINEAR 0.42466 ADRIFT false PLOTMASK false NOISERMS 0 TOL 0.0001

Once this is done, the program searches the datacube successfully (I get the appropriate results) and later after the fitting, this is what happens:

Starting research for possible sources in the cube... Intermediate list has 30 objects. Merging and Rejecting... Done.
... All done.

Final object count = 1

Done.

Starting research for possible sources in the cube... Searching in progress... Found 93 items. Updating detection map... Done. Intermediate list has 35 objects. Merging and Rejecting... Done.
... All done.

Final object count = 1

Extracting maps... OK. s

======================== Initial parameters ======================== (i) input by the user (d) default (e) estimated by me

Fitting #6(i) rings of width 0.080000(i) arcsec

Xpos (i) =     13.00  pix            Ypos (i) =    13.00  pix    
Vsys (i) =   -145.10  km/s           Vrot (i) =   490.70  km/s   
Inc (i)  =     65.10  deg            PA (i)   =   324.20  deg    
Z0 (i)   =      0.00  arcs           Disp (i) =   200.00  km/s   
Vrad (i) =      0.00  km/s   

================================= 3DFIT =================================

Ring #1 at radius 0.04 arcsec (0.00 Kpc)... Best parameters for ring #1 (fmin = 1.862e-05): Vrot = 166.62 km/s Disp = 287.63 km/s
Vrad(f) = 0.00 km/s Vsys(f) = -145.10 km/s
Inc(f) = 65.10 deg PA(f) = 324.20 deg
Xpos(f) = 13.00 pix Ypos(f) = 13.00 pix
Z0(f) = 0.00 Kpc

Ring #2 at radius 0.12 arcsec (0.00 Kpc)... Best parameters for ring #2 (fmin = 1.456e-05): Vrot = 286.71 km/s Disp = 189.85 km/s
Vrad(f) = 0.00 km/s Vsys(f) = -145.10 km/s
Inc(f) = 65.10 deg PA(f) = 324.20 deg
Xpos(f) = 13.00 pix Ypos(f) = 13.00 pix
Z0(f) = 0.00 Kpc

Ring #3 at radius 0.20 arcsec (0.00 Kpc)... Best parameters for ring #3 (fmin = 2.150e-05): Vrot = 321.77 km/s Disp = 172.24 km/s
Vrad(f) = 0.00 km/s Vsys(f) = -145.10 km/s
Inc(f) = 65.10 deg PA(f) = 324.20 deg
Xpos(f) = 13.00 pix Ypos(f) = 13.00 pix
Z0(f) = 0.00 Kpc

Ring #4 at radius 0.28 arcsec (0.00 Kpc)... Best parameters for ring #4 (fmin = 2.473e-05): Vrot = 346.50 km/s Disp = 205.90 km/s
Vrad(f) = 0.00 km/s Vsys(f) = -145.10 km/s
Inc(f) = 65.10 deg PA(f) = 324.20 deg
Xpos(f) = 13.00 pix Ypos(f) = 13.00 pix
Z0(f) = 0.00 Kpc

Ring #6 at radius 0.44 arcsec (0.00 Kpc)... Best parameters for ring #6 (fmin = 3.009e-05): Vrot = 472.50 km/s Disp = 78.53 km/s
Vrad(f) = 0.00 km/s Vsys(f) = -145.10 km/s
Inc(f) = 65.10 deg PA(f) = 324.20 deg
Xpos(f) = 13.00 pix Ypos(f) = 13.00 pix
Z0(f) = 0.00 Kpc

Ring #5 at radius 0.36 arcsec (0.00 Kpc)... Best parameters for ring #5 (fmin = 2.376e-05): Vrot = 419.60 km/s Disp = 101.98 km/s
Vrad(f) = 0.00 km/s Vsys(f) = -145.10 km/s
Inc(f) = 65.10 deg PA(f) = 324.20 deg
Xpos(f) = 13.00 pix Ypos(f) = 13.00 pix
Z0(f) = 0.00 Kpc


Preparing a bunch of cool outputs... Extracting execrable 2D maps... Done. Deriving illuminating radial profile... Done. Calculating the very last model... Error in `./BBarolo': double free or corruption (!prev): 0x0000562aa7f7d990 ======= Backtrace: ========= /lib/x86_64-linux-gnu/libc.so.6(+0x70bfb)[0x7f98b03a7bfb] /lib/x86_64-linux-gnu/libc.so.6(+0x76fc6)[0x7f98b03adfc6] /lib/x86_64-linux-gnu/libc.so.6(+0x7780e)[0x7f98b03ae80e] ./BBarolo(+0xda1a4)[0x562aa73d51a4] ./BBarolo(+0xd22f4)[0x562aa73cd2f4] ./BBarolo(+0xf532a)[0x562aa73f032a] ./BBarolo(+0x110290)[0x562aa740b290] ./BBarolo(+0x15f5bb)[0x562aa745a5bb] ./BBarolo(+0xd083)[0x562aa7308083] ./BBarolo(+0x9d68)[0x562aa7304d68] /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf1)[0x7f98b03572e1] ./BBarolo(+0xa7ca)[0x562aa73057ca] ======= Memory map: ======== 562aa72fb000-562aa74eb000 r-xp 00000000 00:27 1151054122620 /msn2e2/avenkat/thesis/softwares/Bbarolo-1.5/soft/bin/BBarolo-1.5 562aa76ea000-562aa76ec000 r--p 001ef000 00:27 1151054122620 /msn2e2/avenkat/thesis/softwares/Bbarolo-1.5/soft/bin/BBarolo-1.5 562aa76ec000-562aa76ed000 rw-p 001f1000 00:27 1151054122620 /msn2e2/avenkat/thesis/softwares/Bbarolo-1.5/soft/bin/BBarolo-1.5 562aa76ed000-562aa76f1000 rw-p 00000000 00:00 0 562aa7f45000-562aa80bd000 rw-p 00000000 00:00 0 [heap] 7f9878000000-7f98780a5000 rw-p 00000000 00:00 0 7f98780a5000-7f987c000000 ---p 00000000 00:00 0 7f987c000000-7f987c021000 rw-p 00000000 00:00 0 7f987c021000-7f9880000000 ---p 00000000 00:00 0 7f9880000000-7f98800a4000 rw-p 00000000 00:00 0 7f98800a4000-7f9884000000 ---p 00000000 00:00 0 7f9888000000-7f9888022000 rw-p 00000000 00:00 0 7f9888022000-7f988c000000 ---p 00000000 00:00 0 7f9890000000-7f989006c000 rw-p 00000000 00:00 0 7f989006c000-7f9894000000 ---p 00000000 00:00 0 7f9898000000-7f9898022000 rw-p 00000000 00:00 0 7f9898022000-7f989c000000 ---p 00000000 00:00 0 7f98a0000000-7f98a00ba000 rw-p 00000000 00:00 0 7f98a00ba000-7f98a4000000 ---p 00000000 00:00 0 7f98a8000000-7f98a8087000 rw-p 00000000 00:00 0 7f98a8087000-7f98ac000000 ---p 00000000 00:00 0 7f98ac301000-7f98ac502000 rw-p 00000000 00:00 0 7f98ac502000-7f98ac503000 ---p 00000000 00:00 0 7f98ac503000-7f98acd03000 rw-p 00000000 00:00 0 7f98acd03000-7f98acd04000 ---p 00000000 00:00 0 7f98acd04000-7f98ad504000 rw-p 00000000 00:00 0 7f98ad504000-7f98ad505000 ---p 00000000 00:00 0 7f98ad505000-7f98add05000 rw-p 00000000 00:00 0 7f98add05000-7f98add06000 ---p 00000000 00:00 0 7f98add06000-7f98ae506000 rw-p 00000000 00:00 0 7f98ae506000-7f98ae507000 ---p 00000000 00:00 0 7f98ae507000-7f98aed07000 rw-p 00000000 00:00 0 7f98aed07000-7f98aed08000 ---p 00000000 00:00 0 7f98aed08000-7f98af508000 rw-p 00000000 00:00 0 7f98af508000-7f98af509000 ---p 00000000 00:00 0 7f98af509000-7f98afd09000 rw-p 00000000 00:00 0 7f98afd09000-7f98afd0c000 r-xp 00000000 fe:00 33822335 /lib/x86_64-linux-gnu/libdl-2.24.so 7f98afd0c000-7f98aff0b000 ---p 00003000 fe:00 33822335 /lib/x86_64-linux-gnu/libdl-2.24.so 7f98aff0b000-7f98aff0c000 r--p 00002000 fe:00 33822335 /lib/x86_64-linux-gnu/libdl-2.24.so 7f98aff0c000-7f98aff0d000 rw-p 00003000 fe:00 33822335 /lib/x86_64-linux-gnu/libdl-2.24.so 7f98aff0d000-7f98aff1c000 r-xp 00000000 fe:00 37183546 /lib/x86_64-linux-gnu/libbz2.so.1.0.4 7f98aff1c000-7f98b011b000 ---p 0000f000 fe:00 37183546 /lib/x86_64-linux-gnu/libbz2.so.1.0.4 7f98b011b000-7f98b011c000 r--p 0000e000 fe:00 37183546 /lib/x86_64-linux-gnu/libbz2.so.1.0.4 7f98b011c000-7f98b011d000 rw-p 0000f000 fe:00 37183546 /lib/x86_64-linux-gnu/libbz2.so.1.0.4 7f98b011d000-7f98b0136000 r-xp 00000000 fe:00 37564716 /lib/x86_64-linux-gnu/libz.so.1.2.8 7f98b0136000-7f98b0335000 ---p 00019000 fe:00 37564716 /lib/x86_64-linux-gnu/libz.so.1.2.8 7f98b0335000-7f98b0336000 r--p 00018000 fe:00 37564716 /lib/x86_64-linux-gnu/libz.so.1.2.8 7f98b0336000-7f98b0337000 rw-p 00019000 fe:00 37564716 /lib/x86_64-linux-gnu/libz.so.1.2.8 7f98b0337000-7f98b04cc000 r-xp 00000000 fe:00 33822332 /lib/x86_64-linux-gnu/libc-2.24.so 7f98b04cc000-7f98b06cc000 ---p 00195000 fe:00 33822332 /lib/x86_64-linux-gnu/libc-2.24.so 7f98b06cc000-7f98b06d0000 r--p 00195000 fe:00 33822332 /lib/x86_64-linux-gnu/libc-2.24.so 7f98b06d0000-7f98b06d2000 rw-p 00199000 fe:00 33822332 /lib/x86_64-linux-gnu/libc-2.24.so 7f98b06d2000-7f98b06d6000 rw-p 00000000 00:00 0 7f98b06d6000-7f98b06ee000 r-xp 00000000 fe:00 33822383 /lib/x86_64-linux-gnu/libpthread-2.24.so 7f98b06ee000-7f98b08ed000 ---p 00018000 fe:00 33822383 /lib/x86_64-linux-gnu/libpthread-2.24.so 7f98b08ed000-7f98b08ee000 r--p 00017000 fe:00 33822383 /lib/x86_64-linux-gnu/libpthread-2.24.so 7f98b08ee000-7f98b08ef000 rw-p 00018000 fe:00 33822383 /lib/x86_64-linux-gnu/libpthread-2.24.so 7f98b08ef000-7f98b08f3000 rw-p 00000000 00:00 0 7f98b08f3000-7f98b0909000 r-xp 00000000 fe:00 33699333 /lib/x86_64-linux-gnu/libgcc_s.so.1 7f98b0909000-7f98b0b08000 ---p 00016000 fe:00 33699333 /lib/x86_64-linux-gnu/libgcc_s.so.1 7f98b0b08000-7f98b0b09000 r--p 00015000 fe:00 33699333 /lib/x86_64-linux-gnu/libgcc_s.so.1 7f98b0b09000-7f98b0b0a000 rw-p 00016000 fe:00 33699333 /lib/x86_64-linux-gnu/libgcc_s.so.1 7f98b0b0a000-7f98b0b36000 r-xp 00000000 fe:00 17667477 /usr/lib/x86_64-linux-gnu/libgomp.so.1.0.0 7f98b0b36000-7f98b0d35000 ---p 0002c000 fe:00 17667477 /usr/lib/x86_64-linux-gnu/libgomp.so.1.0.0 7f98b0d35000-7f98b0d36000 r--p 0002b000 fe:00 17667477 /usr/lib/x86_64-linux-gnu/libgomp.so.1.0.0 7f98b0d36000-7f98b0d37000 rw-p 0002c000 fe:00 17667477 /usr/lib/x86_64-linux-gnu/libgomp.so.1.0.0 7f98b0d37000-7f98b0e3a000 r-xp 00000000 fe:00 33822368 /lib/x86_64-linux-gnu/libm-2.24.so 7f98b0e3a000-7f98b1039000 ---p 00103000 fe:00 33822368 /lib/x86_64-linux-gnu/libm-2.24.so 7f98b1039000-7f98b103a000 r--p 00102000 fe:00 33822368 /lib/x86_64-linux-gnu/libm-2.24.so 7f98b103a000-7f98b103b000 rw-p 00103000 fe:00 33822368 /lib/x86_64-linux-gnu/libm-2.24.so 7f98b103b000-7f98b11ad000 r-xp 00000000 fe:00 18225260 /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.22 7f98b11ad000-7f98b13ad000 ---p 00172000 fe:00 18225260 /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.22 7f98b13ad000-7f98b13b7000 r--p 00172000 fe:00 18225260 /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.22 7f98b13b7000-7f98b13b9000 rw-p 0017c000 fe:00 18225260 /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.22 7f98b13b9000-7f98b13bd000 rw-p 00000000 00:00 0 7f98b13bd000-7f98b1510000 r-xp 00000000 fe:00 16835475 /usr/lib/x86_64-linux-gnu/libwcs.so.5.16 7f98b1510000-7f98b170f000 ---p 00153000 fe:00 16835475 /usr/lib/x86_64-linux-gnu/libwcs.so.5.16 7f98b170f000-7f98b1710000 r--p 00152000 fe:00 16835475 /usr/lib/x86_64-linux-gnu/libwcs.so.5.16 7f98b1710000-7f98b1713000 rw-p 00153000 fe:00 16835475 /usr/lib/x86_64-linux-gnu/libwcs.so.5.16 7f98b1713000-7f98b1714000 rw-p 00000000 00:00 0 7f98b1714000-7f98b1872000 r-xp 00000000 fe:00 16835237 /usr/lib/x86_64-linux-gnu/libcfitsio.so.5.3.41 7f98b1872000-7f98b1a71000 ---p 0015e000 fe:00 16835237 /usr/lib/x86_64-linux-gnu/libcfitsio.so.5.3.41 7f98b1a71000-7f98b1a72000 r--p 0015d000 fe:00 16835237 /usr/lib/x86_64-linux-gnu/libcfitsio.so.5.3.41 7f98b1a72000-7f98b1a76000 rw-p 0015e000 fe:00 16835237 /usr/lib/x86_64-linux-gnu/libcfitsio.so.5.3.41 7f98b1a76000-7f98b1aed000 rw-p 00000000 00:00 0 7f98b1aed000-7f98b1cd9000 r-xp 00000000 fe:00 21498975 /usr/lib/x86_64-linux-gnu/libfftw3.so.3.5.5 7f98b1cd9000-7f98b1ed8000 ---p 001ec000 fe:00 21498975 /usr/lib/x86_64-linux-gnu/libfftw3.so.3.5.5 7f98b1ed8000-7f98b1ee9000 r--p 001eb000 fe:00 21498975 /usr/lib/x86_64-linux-gnu/libfftw3.so.3.5.5 7f98b1ee9000-7f98b1eea000 rw-p 001fc000 fe:00 21498975 /usr/lib/x86_64-linux-gnu/libfftw3.so.3.5.5 7f98b1eea000-7f98b1f0d000 r-xp 00000000 fe:00 33822328 /lib/x86_64-linux-gnu/ld-2.24.so 7f98b209c000-7f98b20ea000 rw-p 00000000 00:00 0 7f98b210c000-7f98b210d000 rw-p 00000000 00:00 0 7f98b210d000-7f98b210e000 r--p 00023000 fe:00 33822328 /lib/x86_64-linux-gnu/ld-2.24.so 7f98b210e000-7f98b210f000 rw-p 00024000 fe:00 33822328 /lib/x86_64-linux-gnu/ld-2.24.so 7f98b210f000-7f98b2110000 rw-p 00000000 00:00 0 7ffc2e8d0000-7ffc2e8f1000 rw-p 00000000 00:00 0 [stack] 7ffc2e93b000-7ffc2e93d000 r--p 00000000 00:00 0 [vvar] 7ffc2e93d000-7ffc2e93f000 r-xp 00000000 00:00 0 [vdso] ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0 [vsyscall] Abort

I am not running this on a personal computer or laptop, this is run in a powerful machine at my institute with plenty of memory capacity. I tried changing the number of threads to a higher value, still nothing. The parameters that change between the first 3 sources and the rest are the filenames and their corresponding estimates in order to maintain consistency in evaluation. What am i doing wrong here?

editeodoro commented 3 years ago

Hello, thanks for reporting this problem. I do not see anything clearly wrong in your setup, I am guessing something in the datacube is not correctly read in by the code. Would you be able to send me a private email with your datacube and parameter file, such that I can reproduce the issue?

Thanks

aparnavenkat27 commented 3 years ago

Thank you for getting back to me! I've sent an email with the details to the contact email ID i found at the main software page. Cheers!

aparnavenkat27 commented 3 years ago

Issue fixed - cube sizes need to be at least 50x50 pixels to remove this error.