cschreib / fastpp

C++ version of the SED fitting code FAST (Kriek et al. 2009); it's faster, uses less memory, and has more features.
MIT License
27 stars 4 forks source link

Segmentation fault: 11 when using a set of models #21

Closed fmvalentino closed 6 months ago

fmvalentino commented 7 months ago

Dear Corentin,

I'm running Fast++ on the photometry (with and without spectroscopy) for a single source with a simple set of standard parameters. When I run it with bc03 models, I encounter a "Segmentation fault: 11" error either while fitting or at the end, right after saving catalogs and best fits. This does not occur when I model the same galaxy with co11 models. I've tried reducing the number of templates, excluding or including spectroscopy, fixing parameters, but the error keeps appearing.

I've refreshed the Fast++ installation, but the error keeps appearing.

Would you have any ideas of how to fix this?

Thank you in advance for your help! Francesco

0) Machine: macOS Big Sur (11.7.9)

1) .param file: with bc03

#... FAST++ V1.2: parameter file .......................................

#--- GENERAL INFORMATION -----------------------------------------------
#
# Please read this parameter file in detail, you can find all relevant
# information here. Note that you have to adjust your input catalogs
# accordingly, otherwise FAST++ may not work properly!
#
# o Requirements:
#   - about 30 MB of free RAM memory
#   - at least one CPU core
#
# o The current directory should contain the following files:
#   - This parameter file
#   - [CATALOG].cat        If you fit broadband photometry
#   - [CATALOG].zout       If you input photometric redshifts
#   - [CATALOG].lir        If you input infrared luminosities
#   - [CATALOG].translate  If you input a translate file
#   - [SPECTRUM].spec      If you fit spectra
#
# o FAST++ runs from the command line.
#   The first argument is the parameter file. Default is 'fast.param'
#   $ fast++
#   $ fast++ my_fast.param
#
# o VERBOSE: set to 0 to disable output in the terminal (except for
#   warnings and errors, which are always shown)
#
# o PARALLEL: sets which part of the code should be executed in parallel.
#    - 'none': (default) no parallelization, the code will execute on
#      one CPU.
#    - 'generators': each model will be generated and adjusted to the
#      photometry in a separate thread. Good when you have a huge number
#      of models and very few galaxies to fit. Will fallback to 'models'
#      if a model cache exists.
#    - 'models': each model will be adjusted to the photometry in a
#      separate thread, but models are generated in the main thread only.
#      Good when you have many models and few galaxies to fit, or when
#      the models were already generated and cached on the disk.
#    - 'sources': the input catalog will be split into equal parts, and
#      each part will be analyzed in a separate thread. Good when you
#      have few models but lots of galaxies.
#
# o N_THREAD: sets the maximum number of threads the program can use at
#   once. This should be close to (or equal to) the number of available
#   cores on your CPU, or one less than the number of nodes available on a
#   cluster. Setting this to zero will disable parallelization.
#
# o MAX_QUEUED_FITS: sets the maximum number of fits that are queued and
#   waiting to be executed by the worker threads. Increasing this value
#   will make the code run faster, but will also increase memory usage.
#   For a run on a desktop computer with no more than 10 threads, a value
#   of 1000 provides a good compromise; larger values do not improve
#   performances significantly (no more than 10%).
#
#-----------------------------------------------------------------------

VERBOSE         = 1         # 0 / 1
PARALLEL        = 'generators'    # 'none', 'generators', 'models', or 'sources'
N_THREAD        = 4
MAX_QUEUED_FITS = 1000

#--- BROADBAND PHOTOMETRIC INFORMATION ---------------------------------
#
# o [CATALOG].cat (similar as for EAzY):
#   - Example catalog: hdfn_fs99.cat
#   - FAST++ recognizes columns with names {id,ID,z_spec,F[n],E[n],
#     TOT[n]} with n the number of the filter
#   - If z_spec is not given or any negative value, no z_spec is assumed
#   - Give a negative error or "NaN" if the object has no coverage in a
#     certain band
#
# o [CATALOG].zout (preferably generated with EAzY):
#   - Example catalog: hdfn_fs99.zout
#   - If NAME_ZPHOT is not defined, FAST reads columns with labels "z_phot"
#     as best-fit photometric redshifts "l68/l95/l99" and "h68/h95/h99"
#     for the confidence intervals
#   - If input photo-z is a negative value, the photo-z will be ignored
#   - If [CATALOG].zout is not available, and no z_specs are given in
#     [CATALOG].cat, then the redshifts are allowed to float
#   - You can also read in spectroscopic redshifts from [CATALOG].zout.
#     The corresponding column should be labeled "z_spec". However, if you
#     list them in [CATALOG].cat, FAST++ will ignore those in [CATALOG].zout
#
# o [CATALOG].translate:
#   - Example file: hdfn_fs99.translate
#   - Translates the column names in [CATALOG].cat to the required
#     F[n],E[n],etc formats
#   - Will only be used when available
#
# o AB_ZEROPOINT: m_AB = AB_ZEROPOINT - 2.5*log(F[n])
#   - Default: AB_ZEROPOINT = 23.9
#   - fluxes in micro Janskys: AB_ZEROPOINT = 23.9
#   - fluxes in erg sec^{-1} cm^{-2} Hz^{-1}: AB_ZEROPOINT = 48.6
#
# o FILTERS_RES: similar as for EAzY
#
# o FILTER_FORMAT: tells the program in the response curves provided in
#   filters_res file are determined for energy-counting (=0) or photon-
#   counting (=1) detectors (Default: 1)
#
# o TEMP_ERR_FILE: Template error function. The photometric errors are
#   in rest-frame multiplied by this function.
#
# o NAME_ZPHOT: Header name of the column in your [CATALOG].zout file
#   that you want to use for your photometric redshifts. If not defined,
#   FAST will look for 'z_phot'
#
# o FORCE_ZPHOT: if set to 1, tells the program to treat the photometric
#   redshifts as spectroscopic redshifts.
#
# o BEST_AT_ZPHOT: if set to 1, tells the program to force the best-fit
#   solution to match the photometric redshift obtained by EAzY, but the
#   confidence intervals will still account for the uncertainty on the
#   redshift (note that these intervals may not be centered on the best-
#   fit solution if this option is enabled).
#
# o ZPHOT_CONF: tells which confidence interval of the photometric
#   redshifts should be used to limit the grid for each galaxy.
#   Redshifts outside of this confidence interval will not be considered.
#
# o USE_LIR: if set to 1 and [CATALOG].lir exists, FAST++ will read
#   infrared luminosities from this file and use them to constrain the
#   fit. Must contain columns: id, lir and elir. The observed luminosities
#   (given in units of total solar luminosity) are compared to difference
#   of bolometric luminosity before and after dust attenuation is applied
#   to the models. This can help break degeneracies, but requires that
#   the redshift is well known.
#
#-----------------------------------------------------------------------

CATALOG        = 'psb'
AB_ZEROPOINT   = 23.9
FILTERS_RES    = 'FILTER.RES.latest'
FILTER_FORMAT  = 1
TEMP_ERR_FILE  = '/Users/fvalenti/bin/fastpp/share/TEMPLATE_ERROR.fast.v0.2'
NAME_ZPHOT     = 'z_phot'
FORCE_ZPHOT    = 1          # 0 / 1
BEST_AT_ZPHOT  = 0          # 0 / 1
ZPHOT_CONF     = 68         # 68 / 95 / 99
USE_LIR        = 0          # 0 / 1

#--- SPECTROSCOPIC INFORMATION -----------------------------------------
#
# o SPECTRUM:
#   - Example file: "1030_gnirs.spec"
#   - The file should have the following format:
#     # bin wl_low wl_low F[id1] E[id1] F[id2] E[id2] ...
#   - bin: ID of the bin in which the spectral element falls
#   - wl_low: lower wavelength of the spectral element in Angstrom
#   - wl_up: upper wavelength of the spectral element in Angstrom
#   - (e)fl: in 10^-19 ergs s-1 cm-2 Angstrom-1 (these units do not
#     matter if AUTO_SCALE is set to 1)
#   - id[.]: should be an ID in the flux catalog
#   - Missing values can be signaled with negative errors or "NaN".
#
# o AUTO_SCALE: This option automatically adjusts the spectrum to the
#   model separately from the rest of the photometry. The spectrum thus
#   does not participate in determining the best amplitude of the
#   model, but still participates in the chi2. This can account for
#   uncertain flux calibration of the spectrum, and will emphasize more
#   the features of the spectrum rather than its absolute flux level.
#   Note that when this feature is enabled, the template error function,
#   if used, will not be applied to the spectral data.
#
# o APPLY_VDISP: Velocity dispersion of the spectral templates. Setting
#   this parameter to a non-zero value will broaden the templates with
#   a fixed velocity dispersion before the fit. This is only relevant
#   when fitting spectra, and has an impact on performances (a couple
#   seconds of extra delay), so it is disabled by default.
#
#-----------------------------------------------------------------------

SPECTRUM =''
AUTO_SCALE     = 0          # 0 / 1
APPLY_VDISP    = 266          # km/s    ; 300 km/s for the first run

#--- OUTPUT INFORMATION  -----------------------------------------------
#
# o OUTPUT_DIR: output directory for results
#
# o OUTPUT_FILE: output file for results.
#   If not given: [CATALOG]_[SPECTRUM].fout
#
# o N_SIM: The number of Monte Carlo simulations used to determine the
#   confidence levels. If zero or not defined, only best-fit values will
#   be given.
#
# o C_INTERVAL: Percentage of confidence intervals, choose from 68% (1
#   sigma), 95% (2 sigma), or 99% (3 sigma)
#
# o BEST_FIT: output best-fit SPS model in the 'best_fits' directory
#
# o BEST_FROM_SIM: use the median of the Monte Carlo simulation as
#   best-fit instead of the model with the smallest chi squared on
#   the original (unperturbed) photometry.
#
# o SAVE_SIM: save the best-fit parameters for each Monte Carlo
#   simulation for all sources in the "best_fits" directory.
#
# o SFR_AVG: output the SFR as the average of the 'SFR_AVG' last million
#   years. If set to zero (the default) FAST++ will output the
#   instantaneous SFR.
#
# o INTRINSIC_BEST_FIT: if BEST_FIT=1, setting this option to 1 will also
#   output the intrinsic best-fit SED of the galaxy, as it would be seen
#   without dust obscuration. This intrinsic SED is saved as a third
#   column in the best-fit SED file.
#
# o BEST_SFHS: if set to 1, the program will output the best-fit star
#   formation history along with the best fit SEDs. If Monte Carlo
#   simulations are enabled, the confidence intervals of the SFH will
#   also be written.
#
# o SFH_OUTPUT_STEP: if BEST_SFHS=1, sets the time step of the output SFH
#   in million years. The default is 10 Myr.
#
# o SFH_OUTPUT: 'sfr' will output the evolution of the star formation rate
#   with time, while 'mass' will show the total stellar mass (including
#   mass loss).
#
# o REST_MAG: list of filter ID to use to compute rest-frame magnitudes.
#   These absolute magnitudes are then given at 10pc in the AB system,
#   using AB_ZEROPOINT, and are not corrected for attenuation.
#
# o CONTINUUM_INDICES: file listing the continuum indices (absorption
#   line equivalent-width, Dn4000, ...) to compute from each model
#   spectrum. See examples in the "share/continuum_indices" directory.
#
# o SFH_QUANTITIES: list of SFH quantities to compute for each model.
#   These quantities are computed directly on the SFH functional form
#   of each model, and are thus non-parametric. Available quantites:
#    - 'tsf': shortest time interval over which 68% of SFR took place
#             (= duration of star formation).
#    - 'past_sfr': average SFR during the above time interval
#                  (= mean past SFR).
#    - 'sfr'X : average SFR over the last 'X' Myr.
#    - 'brate'X : 'sfr'X / 'past_sfr' (= birth-rate parameter).
#    - 'tquench'X : elapsed time since the SFR dropped below a factor
#                   'X' of the 'past_sfr' (= time since quenching).
#    - 'tform'X : elapsed time since the galaxy had formed 'X'% of its
#                 current mass (= time since formation).
#
# o OUTPUT_COLUMNS: define here what columns to write in [CATALOG].fout
#   Available columns: id, metal, lage, Av, lmass, lsfr, lssfr, lldust,
#   llion, lmform and chi2. If using the "standard" FAST templates, two
#   additional columns are available: ltau and la2t. If using custom SFH,
#   you can also choose any of your custom SFH parameter. Rest-frame
#   magnitudes specified in 'REST_MAG' are also available, the format is
#   "M[...]" where "[...]" is the filter ID. By default all available
#   parameters are written in the file (except lldust, llion, and lmform).
#
# o OUTPUT_PRECISION: define the numerical precision to use when printing
#   values in the output catalog. The default (0) means to use the
#   standard precision, which is 1e-4 for the redshift and metallicity,
#   and 1e-2 for everything else. If set to any other power of ten
#   between zero and one (excluded), this value will be used to round
#   the outputs. Note, this only affects the output catalog (.fout);
#   all other outputs (including grid files) are always stored in full
#   precision.
#
#-----------------------------------------------------------------------

OUTPUT_DIR         = 'delayed/bc03_ch/'
OUTPUT_FILE        = ''
N_SIM              = 100
C_INTERVAL         = [68,90,95]            # 68 / 95 / 99 or [68,95] etc
BEST_FIT           = 1             # 0 / 1
BEST_FROM_SIM      = 0             # 0 / 1
SAVE_SIM           = 1             # 0 / 1
SFR_AVG            = 10             # 0, 100 Myr, 300 Myr etc
INTRINSIC_BEST_FIT = 0             # 0 / 1
BEST_SFHS          = 1             # 0 / 1
SFH_OUTPUT_STEP    = 10            # 10 Myr, 100 Myr etc
SFH_OUTPUT         = 'sfr'         # 'sfr' or 'mass'
REST_MAG           = [140,142,161,153,155,121,81,414,415,416]            # [140,142,161] for UVJ colors
CONTINUUM_INDICES  = ''
SFH_QUANTITIES     = ['tsf','past_sfr','sfr10','tquench10','tform50','brate10']            # ['tquench10','tform50','brate10',...]
OUTPUT_COLUMNS     = ['id','z','ltau','lage','av','lmass','lsfr','lssfr','lldust','lscale','sscale','chi2','tsf','past_sfr','sfr10','tquench10','tform50','brate10','M140','M142','M153','M155','M161','M121','M81','M414','M415','M416','metal']            # ['id','Av','lmass','lsfr', ...]
OUTPUT_PRECISION   = 0             # 0 / 0.01 / 0.0001 / 1e-6

#--- CHOOSE STELLAR POPULATIONS LIBRARY --------------------------------
#
# o LIBRARY_DIR: directory containing the stellar population libraries
#   of the form: ised_[SFH].[resolutions].
#   The binaries in these directories are of the following form:
#   [library]_[resolution]_[imf]_z[metallicity]_ltau[ltau/yr].ised
#
# o All binary inputs are made using "csp_galaxev"
#   ("galaxev" software by Bruzual & Charlot 2003) on the SSP models
#   "bc2003_[RESOLUTION]_[metal]_[IMF]_ssp.ised" and assuming no dust
#   law (and no recycling of gas ejected by stars for exponentially
#   declining star formation history)
#
# o LIBRARY: choose from Bruzual & Charlot 2003 ('bc03'),
#   Maraston 2005 ('ma05'), and FSPS by Conroy et al. ('co11')
#
# o RESOLUTION: Choose 'hr' for spectral fitting, and 'pr' (photometric
#   resolution) or 'lr' for medium and broadband filters. Not all
#   resolutions are standard available for all SFHs or libraries or IMFs
#
# o IMF (stellar initial mass function), choose from
#   - 'ch'(abrier)
#   - 'sa'(lpeter)
#   - 'kr'(oupa)
#
# o SFH: parametrization of the star formation history (SFH), choose from
#   - 'exp': exponentially declining SFH; sfr ~ exp(-t/tau)
#   - 'del': delayed exponentially declining SFH; sfr ~ t exp(-t/tau)
#   - 'tru': truncated SFH, with constant star formation between
#            t_onset and t_onset+tau
#   For all SFH you can specify the range tau in the grid
#
# o DUST_LAW: parametrization of the dust attenuation curve. You can
#   choose from the following options
#   - 'calzetti': Calzetti (2000) dust law
#   - 'mw': Milky Way, following parametrization by Cardelli et al. (1989)
#   - 'kc': Kriek & Conroy (2013). Average dust law. We use the
#      parametrization by Noll et al. with E_B = 1 and delta = -0.1
#   - 'noll': For this law you have to parametrize E_b and delta.
#      You can only pick one value for each, arrays are not allowed.
#
# o MY_SFH: if you define this option, FAST++ will not fit a range of
#   star-formation histories, but just one model (so LOG_TAU_XXX will
#   be ignored). For this option you can only read in one custom star
#   formation history, for which you have to make the ISED file
#   yourself using "csp_galaxev". The naming of the ised file has to
#   be as follows:
#   [library]_[resolution]_[imf]_z[metallicity]_[MY_SFH].ised
#   This file needs to be placed directly in 'LIBRARY_DIR'
#
# o CUSTOM_SFH: if you define this option, FAST++ will build a grid of
#   templates on the fly using SSP models, instead of reading the
#   composite models from "csp_galaxev". You can therefore fit any
#   star formation history. The SFH must be a mathematical expression
#   which returns the SFR as a function of the time 't' since the galaxy
#   was born (the unit of the SFR doest not matter). Custom grid parameters
#   can be referenced in this function (see below) but not the age or the
#   dust attenuation.
#
# o CUSTOM_PARAMS: when using CUSTOM_SFH, define here the names of your
#   grid parameters (e.g., log_tau). For each of these parameters you
#   must provide the _MIN, _MAX and _STEP values, as for the other
#   grid parameters.
#
# o CUSTOM_SFH_LOOKBACK: changes the meaning of the time 't' in the SFH
#   expression, so that 't' refers to the lookback time. The instant t=0
#   then refers to the moment where the galaxy is observed, and larger
#   values correspond to earlier times in the past. This is equivalent
#   to substituting 't' for '10^lage - t' in the SFH expression.
#
#-----------------------------------------------------------------------

LIBRARY_DIR         = '/Users/fvalenti/bin/fastpp/share/libraries/'
LIBRARY             = 'bc03'         # 'bc03' / 'ma05' / 'co11'
RESOLUTION          = 'hr'           # 'pr' / 'lr' / 'hr'
IMF                 = 'ch'           # 'ch' / 'sa' / 'kr'
SFH                 = 'del'          # 'exp' / 'del' / 'tru'
DUST_LAW            = 'kc'     # 'calzetti' / 'mw' / 'kc' / 'noll'
MY_SFH              = ''

#--- DEFINE GRID -------------------------------------------------------
#
# o Choose only values for tau and metallicity that are in your library.
#   Otherwise extend your library.
#
# o If EAzY is used, make sure Z_MIN, Z_MAX are similar.
#
# o METAL: the options differ per stellar population library
#   ma05: Z=0.001, Z=0.01, Z=0.02 [solar], and Z=0.04
#   bc03: Z=0.004, Z=0.008, Z=0.02 [solar], and Z=0.05
#   co11: Z=0.0008, Z=0.0031, Z=0.0096, Z=0.019 [solar], and Z=0.03
#   You can choose more than one by defining an array.
#
# o If a grid has already been made for a specific LIBRARY, RESOLUTION,
#   IMF, tau, age, z, A_v, A_v_bc, metallicity, and filter set and/or
#   spectral elements, the grid will be automatically read from the cache
#   unless the NO_CACHE option is set to "1". This option will also
#   prevent the code from writing this cache in the first place.
#
# o DIFFERENTIAL_A_V: By default (0), all stars suffer the same amount
#   of extinction by dust. If DIFFERENTIAL_A_V is set to "1", young
#   stars will be place under a thicker screen of dust, as controlled by
#   A_V_BC_MIN, A_V_BC_MAX, A_V_BC_STEP, and LOG_BC_AGE_MAX.
#
# o LOG_BC_AGE_MAX: When DIFFERENTIAL_A_V is set to "1", stars in their
#   birth cloud will be given extra attenuation. Only stars younger than
#   LOG_BC_AGE_MAX are considered to be in their birthcloud. The default
#   of 10 Myr is taken from Charlot&Fall (2001).
#
# o NO_MAX_AGE: By default (0), ages that exceed the age of the universe
#   are not allowed. However, when NO_MAX_AGE is put to "1" you can have
#   older ages.
#
#-----------------------------------------------------------------------

LOG_TAU_MIN    = 6.5            # log [yr]
LOG_TAU_MAX    = 10.            # log [yr]
LOG_TAU_STEP   = 0.1            # log [yr], min 0.1
LOG_AGE_MIN    = 6.5            # log [yr]; 
LOG_AGE_MAX    = 9.2        # log [yr]; max age universe
LOG_AGE_STEP   = 0.1            # log [yr]
NO_MAX_AGE     = 0              # 0 / 1
Z_MIN          = 4.1045            # Cannot be 0.0
Z_MAX          = 4.1085
Z_STEP         = 0.001
Z_STEP_TYPE    = 0              # 0: Z_STEP, 1: Z_STEP*(1+z)
A_V_MIN        = 0.0            # [mag]
A_V_MAX        = 1.0            # [mag]
A_V_STEP       = 0.1            # [mag]
A_V_BC_MIN       = 0.             # [mag]
A_V_BC_MAX       = 0.             # [mag]
A_V_BC_STEP      = 0.1            # [mag]
DIFFERENTIAL_A_V = 0              # 0 / 1
LOG_BC_AGE_MAX   = 7.0            # log [yr]
METAL          = [0.02] # BC  [0.008,0.02,0.05] 
NO_CACHE       = 0             # 0 / 1

#--- COSMOLOGY ---------------------------------------------------------
#
#-----------------------------------------------------------------------

H0             = 70.0               # Hubble constant
OMEGA_M        = 0.3                # Omega matter
OMEGA_L        = 0.7                # Omega lambda

#--- SAVE INTERMEDIATE PRODUCTS ----------------------------------------
#
# o SAVE_CHI_GRID: if "1" then the chi2 grid for all objects will be
#   saved in a ".grid" file in the output directory.
#
# o SAVE_BESTCHI: if anything else than "0", the models with a chi2
#   less than SAVE_BESTCHI different from the best chi2 will be
#   saved in a ".grid" file in the "best_chi2" directory, for each
#   object separately. This will occupy less disk space than the
#   SAVE_CHI_GRID option. Usual values are "1" to have 68% chance of
#   including the "true" model, "2.71" for 90% and "6.63" for 95%.
#   SAVE_CHI_GRID and SAVE_BESTCHI can be enabled together.
#
#-----------------------------------------------------------------------

SAVE_CHI_GRID  = 0          # 0 / 1
SAVE_BESTCHI   = 1       # 1 (68%) / 2.71 (90%) / 3.84 (95%) / 6.63 (99%) / etc
  1. Error:
note: this is FAST++ version '1.5.0-dfac27f'
note: averaging SFRs over 10 Myr
note: applying Madau+1995 IGM absorption
note: convolving templates with sigma=266 km/s
note: computing SFH quantities: {tform50, tsf, past_sfr, tquench10, sfr10, brate10}
note: reading fluxes from 'psb.cat'
note: using column translation file 'psb.translate'
note: ... translated 16 column names
note: reading filters from 'FILTER.RES.latest'
note: found 416 filters in the database, will use 8 of them
note: ... plus 10 for rest-frame magnitudes
note: reading fluxes...
note: fitting 1 source with 8 fluxes
note: apply template library error function to photometry '/Users/fvalenti/bin/fastpp/share/TEMPLATE_ERROR.fast.v0.2'
note: define grid...
note: fitting a grid of 55440 templates (ntau=36,nmetal=1,nage=28,nav=11,navbc=1,nz=5)
note: cache file is 'delayed/bc03_ch/bc03_hr_ch_del_kc_dfe63a61ac9a9db8b24a76a4028755bab26660f4.grid'
note: initializing template error function...
note: identify zspecs and redshift bounds in the grid...
note: start fitting...
[--------------------------------] 55441 100%, 7s elapsed, 0ns left, 7s total             
note: finding best fits...
note: saving catalog
note: saving best fits
Segmentation fault: 11
cschreib commented 7 months ago

Hi Francesco! I'll try to have a look when I get a moment to sit down and replicate the issue. What would help me get there faster is if you could also provide me with a copy of your catalogs, if they are not top secret (if they are, you can send them to me by email and I will destroy them when I'm done).

In did not see anything obviously wrong with your param file at first sight, which suggests to me you've hit an edge case in your data.

fmvalentino commented 7 months ago

Salut Corentin,

Thank you for the prompt reply!

I attach the files I’m reading (also translate and filter) to an email. For context, when I run the models with Co11, it returns meaningful results.

Thanks, Francesco

cschreib commented 7 months ago

I haven't been able to reproduce the problem exactly yet, using the example catalog, but looking at the source code I've identified a couple of bugs that might be causing the problem. If you can try the latest commit on the master branch and let me know if that fixed it!

cschreib commented 7 months ago

I have also not been able to reproduce the segmentation fault with the data you sent me, unfortunately... If you are still having issues with the latest commits, please let me know and we'll try to find a way to troubleshoot the problem on your own machine.

fmvalentino commented 7 months ago

Thank you for the prompt action, Corentin!

I've refreshed the installation, re-run the codes in a couple of versions, and the same error did not appear! I attach a copy of the log (a few warnings appeared, e.g., about vif), just in case it can be useful for you.

Best and thanks again! Francesco

log_installationv1.5.1.txt

cschreib commented 6 months ago

Glad we got it fixed! The problem could indeed be random and change behavior when recompiling (because of arcane details about compiled languages security features you probably don't care about! But if ever you did, look up ASLR). Please feel free to re-open this ticket if it happens again, though.