MCMC Parameters

Python Version License

Defines settings for the Markov Chain Monte Carlo (MCMC) analysis used to evaluate uncertainty in frequency estimation.

mcmc_parameters:
    length_mcmc_chains: 10000
    discard: 5000
    thin: 100
    number_processors_used_mcmc: 8
    number_mcmc_solutions: 30
    list_of_genes_mcmc: [2, 12, 24, 36, 48, 64, 72, 82, 96]
    prior_distributions:
        p0_distribution: gaussian
        gi_distribution: gaussian
        si_distribution: gaussian
    prior_frequencies:
        p0_prior: [50.6443465, 0.5]
        gi_prior: [[5.579378, 0.055], [7.456665, 0.004], [17.366595, 0.030], [17.910194, 0.032]]
        si_prior: [[-18.845166, 0.047], [-17.758310, 0.023]]

Parameters

  • length_mcmc_chains: int

    Total number of MCMC iterations per chain.

  • discard: int

    Number of initial samples to discard (burn-in period). This helps to reduce the dependency of the chains on their starting points.

  • thin: int

    Interval for thinning the MCMC samples. Thinning is used to reduce autocorrelation in MCMC chains and obtain more independent samples that better represent the true posterior distribution.

  • number_processors_used_mcmc: int

    Number of processors used for parallel computing. This value should be adapted to the hardware of the machine being used. It directly impacts the performance and efficiency of the software.

  • number_mcmc_solutions: int

    Number of solutions selected from the genetic algorithm fitting solutions used to execute the MCMC. The GA solutions are used as starting points for the MCMC solutions. The tool takes the best X number of GA solutions. Must be equal or smaller than the value of number_algorithm_solutions (see Genetic Algorithm Parameters).

  • list_of_genes_mcmc: list[int]

    Subset of the list of genes used in the GA section (see Genetic Algorithm Parameters) used to calculate the MCMC solutions. It is important to choose the number of genes with the best results as the MCMC simulation is computationally expensive.

  • prior_distributions: dict

    Specifies the type of prior distribution used for each frequency group. Options: “gaussian” or “uniform”.

    • p0_distribution: str

      Defines the prior distribution for p0.

    • gi_distribution: str

      Defines the prior distribution for gi (g1 to g4).

    • si_distribution: str

      Defines the prior distribution for si (s3 and s5).

  • prior_frequencies: dict

    Mean and standard deviation (for Gaussian) or min/max (for uniform) for each frequency prior.

    • p0_prior: list[float]

      Mean and std dev or min/max for p0.

    • gi_prior: list[list[float]]

      List of mean and std (if it’s gaussian) or min/max values (for uniform) for gi frequencies (g1 to g4).

    • si_prior: list[list[float]]

      List of mean and std (if it’s gaussian) or min/max values (for uniform) for si frequencies (s3 and s5).

Note

  • The value of number_processors_used_mcmc has to be equal or lower to the value of number_mcmc_solutions.

  • All the values of the list_of_genes_mcmc have to exist in the list_number_genes of the genetic algorithm section.

  • The values of prior_frequencies must be expressed in arcseconds per year (arcsec/yr).