The DIAMONDS code

Jul 08, 2020

Contents

1 Authors 3

2 Description 5

3 Navigation 7 3.1 Package Content...... 7 3.2 Installation...... 12 3.3 User Guide Manual...... 16 3.4 Publications...... 17 3.5 Events...... 19 3.6 Logo...... 20

i ii The DIAMONDS code

Contents 1 The DIAMONDS code

2 Contents CHAPTER 1

Authors

• Enrico Corsaro • Joris De Ridder

3 The DIAMONDS code

4 Chapter 1. Authors CHAPTER 2

Description

The DIAMONDS (high-DImensional And multi-MOdal NesteD Sampling) code presented in this website is devel- oped in C++11 and structured in classes in order to be as much flexible and configurable as possible. The working scheme from the main function is as follow: • Read an input dataset • Set up model, likelihood, and prior distributions to be used in the Bayesian inference • Set up a drawing algorithm for the nested sampling • Configure and start the nested sampling • Compute and print the final results The code can be used for any application involving Bayesian parameter estimation and/or model selection problems. Users can supply new models, likelihood functions, and prior distributions whenever needed by taking the advantage of C++ class polymorphism and inheritance. Any new model, likelihood, and prior distribution can be defined and implemented upon a basic template. In addition, it is possible to feed the basic nested sample with different drawing algorithms based on clustering, as well as different clustering algorithms can in principle be used. The original paper publication that presents DIAMONDS and its application to asteroseismology is available atE. Corsaro & J. De Ridder 2014 A&A, 571, 71

5 The DIAMONDS code

6 Chapter 2. Description CHAPTER 3

Navigation

3.1 Package Content

The DIAMONDS code is available in a public GitHub repository. The repository, named DIAMONDS, contains the basic package that includes many demos, some of which presented in the main paper of the code, and the modules related to different likelihood functions and prior distributions, useful for a wide range of applications.

3.1.1 Downloading the Basic Package

If you want to retrieve the code you have two options: 1. [Recommended] Open a Git Client (e.g. see SourceTree, available for free). In this case you will have to clone the public repository into your local machine. If you want to clone our public GitHub repository, you need to create a new repository in SourceTree by choosing the option “Clone from URL” and specifying as URL the one of the public repository of DIAMONDS, namely https://github.com/EnricoCorsaro/DIAMONDS. When you clone the repository, we suggest you provide as repository name Diamonds. This option is the best way of retrieving the code because any update, even if small, will always be visible for you using the Git Client. You can then decide to pull the new change, so that the code will be updated without the need to re-download the entire package. 2. Download the code from the GitHub repository (by clicking on the download as a ZIP file button in the website, see image below). After your download is completed, you unzip the code package file, DIAMONDS-master.zip, and you rename the folder Diamonds-master into Diamonds.

Warning: If your folder name does not match the one listed in the CMake file of the code, then you will not be able to compile the code. Please make sure that this step is carefully accomplished as it may easily represent a failure step when installing the code..

7 The DIAMONDS code

3.1.2 DIAMONDS Basic Package

The content of the package is divided into different folders, which are described below: • include: this folder contains the header files of the different C++ classes of Diamonds, namely files having extension .h that contain the class function prototypes. • source: this folder contains the source files of the different C++ classes of Diamonds defined in the folder “include”, namely files having extension .cpp that contain the full implementation of all classes functions defined in their corresponding header files. • demos: this folder contains a set of demos to test the performance of the code, some of which are presented in the main paper of the code. Each demo has two files with the name coming from the name of the test distribution used in the demo, one with extension .h containing the likelihood function of the demo and its implementation, and the other with extension .cpp containing the main function with the configuration of the Diamonds code and used to run the demo itself. The demos folder also contains a file named mergeMultipleRuns.cpp which can be compiled and used separately for merging multiple runs. • tutorials: this folder contains ready-to-use tutorials that can be promptly compiled and executed by the user. These tutorials can be useful as a starting point to implement your own application for parameter estimation and model comparison with DIAMONDS. • docs: this folder contains the User Guide manual of the code and the original peer reviewed publication in Astronomy & Astrophysics. Additionally, four files are also included inside the folder Diamonds. These files are: • CMakeLists.txt. Used for compiling the code files. More information on how to configure the compiling file can be found in the installation guide page. • LICENSE.txt. Contains the license of the code. • README.md. Contains a short description of the code. • improvements.todo. Contains a list of future improvements that we will need to apply to the code.

8 Chapter 3. Navigation The DIAMONDS code

3.1.3 File Structure

We discourage the user, especially if not familiar with the working mechanism of the code, from modifying the content of the source and header files provided in the package. This is to avoid severe impairment of the correct working of the code and of its capability of producing reliable results. For this purpose, the code has been tested to correctly work in the form available by download in this website and any changes to the original files may cause its malfunction. Header and Implementation files Header files and their corresponding implementations are divided in different categories, based on the role that the particular class has in the computation process. The categories can be identified by their filename. We use here asterisks legend specifying on which level the user is supposed to change existing classes and/or add new ones: • *** for categories whose classes should never be changed (at the risk to disrupt the correct functioning of the entire code). • ** for categories that can in principle be replaced and/or changed but at the risk that computation efficiency may be considerably affected (it is recommended to use those provided in the package). • * for categories whose classes should in principle be usable for the most variety of applications and do not require any change or additions. These categories can however be enriched with new classes for purposes that were not contemplated in the basic version of the code. • [no asterisk] for categories whose classes need to be created and configured by the user based on the problem one wants to investigate.

Sampler***

The main class is termed NestedSampler and constitutes the core of the nested sampling computation. The current version of the NestedSampler relies on the usage of a cluster algortihm as a basic algortihm for the sampling. Other implementations that can be provided in the future may include different algorithms than the clustering ones. Derivate classes (concrete) provided in the basic package are: • MultiEllipsoidalSampler - This class implements the Simultaneous Ellipsoidal Sampling algorithm, presented in the main paper of DIAMONDS. This class relies on the use of a clustering algortihm and can in principle be replaced by another sampler class which relies on a cluster algorithm too. • ZeroSampler - Empty sampler used in the merger file.

Clusterer**

The main class (abstract) is termed Clusterer. Derivate classes (concrete) provided in the basic package are: • KmeansClusterer - The generalized k-means algortihm (X means) for clustering a sample of points, based on the use of the Bayesian Information Criterion. • GaussianMixtureClusterer - A Gaussian Mixture model based on Expectation-Maximization algorithm for clustering a sample of points. • ZeroClusterer - Empty clusterer used in the merger file.

Reducer**

The main class (abstract) is termed LivePointsReducer. Derivate classes (concrete) provided in the basic package are: • PowerlawReducer - A reducer made for removing live points from the nested sampling process to be con- centrated toward the end of the computation.

3.1. Package Content 9 The DIAMONDS code

• FerozReducer - The live points reducer introduced by Feroz et al. 2009 in the first version of MultiNest.

Projector**

The main class (abstract) is termed Projector. Derivate classes (concrete) provided in the basic package are: • PrincipalComponentProjector - a Principal Component analysis feature projector to reduce the di- mensionality of the inference problem when correlations among free parameters of the model are present.

Metric**

The main class (abstract) is termed Metric. Derivate classes (concrete) provided in the basic package are: • EuclideanMetric - Standard Euclidean metric to define the distance between two points in the parameter space. • ManhattanMetric - Manhattan metric to define the distance between two points in the parameter space. • FractionalDistanceMetric - User controlled fractional distance metric to define the distance between two points in the parameter space.

Likelihood*

The main class (abstract) is termed Likelihood. Derivate classes (concrete) provided in the basic package are: • NormalLikelihood - The Normal (or Gaussian normalized) Likelihood used in a wide range of applications • ExponentialLikelihood - The exponential likelihood used in the analysis of stellar power spectra for the study of oscillations (see the original paper of DIAMONDS for an application) • MeanNormalLikelihood - A special case of Gaussian Likelihood useful for a more robust treatment of the uncertainties in the observations • MultiLinearNormalLikelihood - A particular form of Normal likelihood to be used for a multi-linear fit, as that shown in the related tutorial • ZeroLikelihood - Empty likelihood used in the merger file

Prior*

The main class (abstract) is termed Prior. Derivate classes (concrete) provided in the basic package are: • UniformPrior - The flat proper prior for a wide range of applications involving the use of simple boundaries on the inferred parameters • NormalPrior - The Gaussian normalized prior for cases in which parameter estimates are already known • SuperGaussianPrior - The so-called super Gaussian distribution consisting in a plateau and two Gaussian tails on each side, for mixed situations in which estimates of the free parameters may be known but for preserving a larger degree of confidence • GridUniformPrior - A particular type of distribution which allows to sample only particular ranges of values, each of them contained between regular boundaries equidistant from one another. • ZeroPrior - Empty prior used in the merger file

10 Chapter 3. Navigation The DIAMONDS code

Model

The main class (abstract) is termed Model. Among the different categories of classes, this one is the most subject to changes because it is intimately related to the theoretical interpretation one intends to use for the given problem. Derivate classes (concrete) provided in the basic package are • GaussianModel - A model to perform the fit of a multi-dimensional Gaussian as used in the related tutorial • SuperGaussianModel - A model to perform the fit of a Super Gaussian model • PolynomialModel - A model to perform the fit of a Polynomial function as used in the related tutorial • MultiLinearModel - A model to perform the fit of a multi-linear model as used in the related tutorial • ZeroModel - used as an empty model in the merger file.

3.1.4 Demos

Demo files are provided for testing the correct functioning of the code and can be run immediately after its compilation. Each demo has to be compiled separately from the code and the command line for their compilation is provided at the beginning of each demo .cpp file. When running a demo you assume Diamonds has been compiled already on your machine. The demos were mainly taken from the examples given in the papers by Shaw, J. R., Bridges, M., & Hobson, M. P. 2007, MNRAS, 378, 1365; Feroz, F., Hobson, M. P., & Bridges, M. 2009, MNRAS, 398, 1601; Feroz, F. & Hobson, M. P. 2008, MNRAS, 384, 449; Feroz, F. & Skilling, J. 2013, in American Institute of Physics Conference Series, Vol. 1553, American Institute of Physics Conference Series, ed. U. von Toussaint, 106–113 (FS13). The demos contained in the basic package are listed below: • 2D Single Gaussian • 2D Two Gaussians • 2D Five Gaussians • Single Gaussian (Any dimensions) • 2D Eggbox Function • 2D Himmelblau Function • 2D Rastrigin Function • 2D Rosenbrock Function • 2D Two Gaussian Shells Other demos allow for the testing of the sampling algorithm and of different priors and are: • Prior Drawing 1D - Test the sampling from a given prior in a 1D example • Prior Drawing 2D - Test the sampling from a given prior in a 2D example • Prior Drawing 3D - Test the sampling from a given prior in a 3D example • Kmeans Clusterer 2D - Test the functioning of the Xmeans clusterer from a 2D input sample • Kmeans Clusterer 5D - Test the functioning of the Xmeans clusterer from a 5D input sample • Gaussian Mixture Clusterer 2D - Test the functioning of the GMM-EM clusterer from a 2D input sample • Gaussian Mixture Clusterer 5D - Test the functioning of the GMM-EM clusterer from a 5D input sample • Principal Component Projector 5D - Test the functioning of the PCA projection on a 5D input sample • Ellipsoid 2D - Test the functioning of the ellipsoidal sampler for a 2D example

3.1. Package Content 11 The DIAMONDS code

• Ellipsoid 5D - Test the functioning of the ellipsoidal sampler for a 5D example • Ellipsoid 7D - Test the functioning of the ellipsoidal sampler for a 7D example Input data files for running the demos are all included in the demos folder.

3.1.5 Tutorials

The current version of the code includes a number of tutorials that are ready to be compiled and run in your system. These tutorials allow you to have a good starting point to set up DIAMONDS for your own application, as well as providing suitable examples of real-life applications that can be used in a variety of fields. The tutorials available are: • Polynomial Fit: to perform a fit using a polynomial of an arbitrary degree • Gaussian Fit: to perform a fit using a multi-dimensional Gaussian over an arbitrary number of input covariates • Multi-Linear fit: to perform a fit using a multi-linear model over an arbitrary number of input covariates, and related uncertainties For more information on the tutorials, how to compile the codes, and run the tests, please refer to the hands-on tutorial presentation available here.

3.2 Installation

The following installation guide is suited for Mac OS X users and may be subject to some variations for Linux-based OS, mostly concerning the compilation of the source files. If you encounter technical problems in installing the code, please send us an e-mail specifying the error messages (possibly sending your compilation log file) and the commands you attempted to execute. Based on the feedback already reported by some of the users of Diamonds and the experience gained during the installation of the code in different operative systems, we provide a list of possible compilation issues and how to solve them at the bottom of this page.

3.2.1 Prerequisites

1. We advise you to first read the original code paper describing the code, E. Corsaro & J. De Ridder 2014 A&A, 571, 71. This is a preliminary task that is necessary to become more familiar with the working scheme of the code and the meaning of its configuring parameters. 2. Before installing DIAMONDS you need to install the CMake compiler, a compiler suited for C, C++ source files that is able to recognize the most suited compiler installed in your machine, depending on the platform you have. For Mac OS X it is clang, while for Linux-based OS it is gcc. For our purposes, we recommend you to install CMake 2.8 or later. You can find the dmg file of the version 2.8.12.2 (suggested for Mavericks OS) here, while more recent versions are required for El Captain OS or more recent OS X (we recommend CMake version 3.5.1 or later in this case).

Warning: Make sure you install the CMake command line tool as well, since you need that to compile DIAMONDS via terminal. To do so, either open the CMake app and go to Tools/Install for Command Line Use if you have installed it already, or select the option during the installation phase. To avoid further compilation issues, we also recommend to update Xcode to its latest version.

12 Chapter 3. Navigation The DIAMONDS code

You also have the possibility to install cmake directly from the terminal. If you are running on a Mac OS X system, then execute the command

$ sudo brew install cmake

If you are running on a Unix system such as Ubuntu, then use the command

$ sudo apt-get install cmake

Alternatively, CMake can be installed automatically with the pipeline by using the installing shell script, install_osx.sh for Mac OS X, or install_unix.sh for Unix OS, that is provided in the GitHub reposi- tory of FAMED. 3. Retrieve the code package from the public GitHub repository. How to retrieve the package and a description of the content of the package are presented in the Package Content section of this website. We also recommend to read this information before proceeding.

3.2.2 Shell script installation

If you decide to perform a shell script installation then you need to execute the shell script install_osx.sh for Mac OS X, or install_unix.sh for Unix OS. The shell scripts are made different depending on which OS you are running because different compilers are used and because Unix systems may require some additional fixes during the installation process (see also the section below). The scripts are available in the GitHub repository of DIAMONDS, for Mac OS X and for Unix OS. Once you downloaded the script, place it under the main folder where you want all the software installed. Then we recommend to make it an executable by typing the terminal command (e.g. for the Mac OS version)

$ chmod +x install_osx.sh

In order to start the installation from scratch, go to the directory where you want to place the DIAMONDS software and run the following command via terminal

$ ./install_osx.sh

The shell script will also compile one demo of DIAMONDS and make a run test for it. If you are able to see the demo test running, then your code has been installed successfully.

3.2.3 Mac OS X 10.6 or later

If one wants to follow a standard manual installation, the procedure is rather simple. However, we recommend you to strictly follow the steps listed below in the same order as they are indicated. Once you have downloaded the DIAMONDS package and installed CMake following step #2 of the prerequisites, we can proceed by compiling the code. To do so, go to your Diamonds directory, then open the ASCII file CMakeLists.txt. Inside you will find the first lines commented with what you need to execute via terminal. Simply follow the guidline below. Starting from your Diamonds directory:

$ mkdir build $ cd build $ cmake .. $ make -j 4

The last make option, specifies the number of jobs to run simultaneously (most suited for a 4-CPU hardware) and allows to speed up the compilation process. When the compilation and linking is executed, after a while you should display the ending message

3.2. Installation 13 The DIAMONDS code

$ Linking CXX shared library libdiamonds.dylib $ [100%] Built target diamonds

This means that you have successfully installed DIAMONDS as a library in your machine. At this stage, you can run the demo files provided in the folder demo of the code package. To do so, simply open the .cpp files, copy the command line provided at the top, following the word “clang:”, then copy the line in your terminal under the same demos folder and execute it. The command line provided inside the demo source file is given by

$ clang++ -o demoFileName demoFileName.cpp -L../build/ -I ../include/ -l diamonds -

˓→stdlib=libc++ -std=c++11 -Wno-deprecated-register

This means that the compilation is done by linking the library of the DIAMONDS code that you just created. The option -Wno-deprecated-register allows to silent the warning for the unspecified keyword register, no longer available in more recent versions of Xcode. You may want to remove this keyword if the warning is not present. Once the demo is compiled, you can simply run the executable via terminal by typing

$ ./demoFileName

where demoFileName is the name of the corresponding demo tha was compiled, as displayed after the compilation.

3.2.4 Linux OS

The installation procedure for Linux OS is exactly the same as that provided for Mac OS X. However, when installing the code on a Linux-based environment we have experienced some issues with the local compiler used by CMake. The g++ should work fine in general, though listing a series of warnings related to missing typedefs used in the Eigen library provided within the code package. After the compilation of DIAMONDS you can compile the demo files using the following command line:

$ g++ -o demoFileName demoFileName.cpp -L../build/ -I../include/ -ldiamonds -std=c++11

If you are using GNU 4.6 or older, it will be approriate to replace the option -std=c++11 with -std=c++0x. You can find a list of possible compilation problems and relative solutions listed in the following.

Missing library path

When attempting to compile the demo files, the local path of the DIAMONDS library may not be recognized. If this happens, follow the guidelines below. If the library cannot be found, the following error will occur:

$ ./demoFileName ./demoFileName: error while loading shared libraries: libdiamonds.so.0: cannot open shared object file: No such file or directory

In a simple way, and since the DIAMONDS compilation is only required once, to avoid this error you can define the shell variable LD_LIBRARY_PATH to include the directory where the library is installed. For example, in the Bourne shell (/bin/sh or /bin/bash), the library search path can be set with the following commands:

$ LD_LIBRARY_PATH=/localPath/Diamonds/build $ export LD_LIBRARY_PATH $ ./demoFileName

Alternatively you can set an environment variable and store the information in your bashrc file, so that you automati- cally load it and you don’t have to set the library path everytime you reboot your system.

14 Chapter 3. Navigation The DIAMONDS code

export LD_LIBRARY_PATH=/localPath/Diamonds/build

Compilation failure due to hidden files starting with ._

As reported by some Linux users that have installed the code, another problem that may arise in the compiling phase is the presence of Mac OS X hidden files starting with ._ and ending with .cpp, present in the source folder. These files are not meaningful in Linux OS as they are used by Mac OS to store information about tagging and comments, and must be removed in order to compile the code. If one of such a file, e.g. ._HiddenFileName.cpp, is present in your code directory, this will give rise to a bunch of error messages of the form:

$ /localPath/Diamonds/source/._HiddenFileName.cpp:1:1: warning: null character(s)

˓→ignored [enabled by default] /localPath/Diamonds/source/._HiddenFileName.cpp:1:2: error: stray ‘\5’ in program /localPath/Diamonds/source/._HiddenFileName.cpp:1:2: error: stray ‘\26’ in program /localPath/Diamonds/source/._HiddenFileName.cpp:1:2: error: stray ‘\7’ in program

Make sure you have deleted them from your code folder. Then redo the compilation process from the beginning.

Compilation failure due to conflicts with existing MESA libraries

As reported by users that have installed the code in Ubuntu OS, the version of GNU, 4.9.X (or later) used during the compilation of Diamonds, does not allow to compile the demos provided in the package. This may occur for users that have installed MESA libraries in their system, thus generating conflicts in the call for the compiler used. In particular, when attempting to compile a demo, one could display an error message similar to the following one:

$ g++ -o demoFileName demoFileName.cpp -L../build/ -I../include/ -ldiamonds -std=c++11 In file included from /localPathGNU/include/c++/4.9.3/bits/localefwd.h:40:0, from /localPathGNU/include/c++/4.9.3/ios:41, from /localPathGNU/include/c++/4.9.3/ostream:38, from /localPathGNU/include/c++/4.9.3/iostream:39, from demoFileName.cpp:6: /localPathGNU/include/c++/4.9.3/x86_64-pc-linux-gnu/bit /c++locale.h:52:23: error: 'uselocale' was not declared in this scope extern "C" __typeof(uselocale) __uselocale; ^

In order to get rid of the problem it is necessary to force GNU to use the version 4.8 (or later). To do so we recommend to follow the steps below. 1. Restart the standard compilation procedure of Diamonds by using the following line commands (make sure you have first deleted or emptied the build folder)

$ mkdir build $ cd build $ cmake -D CMAKE_CXX_COMPILER=g++-4.8 .. $ make -j 4

2. Go to the demos folder and compile the demos using the command line

$ g++-4.8 -o demoFileName demoFileName.cpp -L../build/ -I../include/ -ldiamonds -

˓→std=c++11

3.2. Installation 15 The DIAMONDS code

Compilation error due to old assembler version for AMD chips

A less common error in the compilation phase may arise for users running a Unix system in AMD chips. If the version of the assembler is too old, this may generate an error of the following type

$ Assembler messages: $ 1316: Error: expecting string instruction after `rep'

The problem is that the GNU compiler is generating rep; ret instructions to avoid a performance penalty for AMD chips. Older assemblers detect this as an error. A version of Binutils that causes the problem is the GNU assembler (Linux/GNU Binutils) 2.22.52. To solve the problem, it is necessary to install a more recent version of Binutils, namely the 2.23.52 (or later).

3.2.5 Windows OS 10

For Windows OS 10 we recommend using the free application for creating an Ubuntu virtual machine. For details on how to set up this environment, visit Install Ubuntu on Windows 10. Once the Ubuntu VM is installed and running in Windows OS, simply follow the guidlines presented in the Linux OS section of this page. You can even decide to use the shell script installation with the install_unix.sh script inside the Ubuntu VM, making sure to have the basic ubuntu packages installed, which include the GCC compiler suite.

3.3 User Guide Manual

The user guide manual is a comprehensive text to guide you to a proper usage of the DIAMONDS code. It is available for download in the docs/ folder of the public GitHub repository of DIAMONDS here. The manual is usually referred to the current version of DIAMONDS. It is updated from time to time as soon as significant changes to the code are made (your feedback is of course important!). The User Guide Manual is intended as a complement to what described in the original paper publication of the code. The manual is structured in four different chapters and provides all the required information to set up and properly configure the code for your own application. Some very useful code internal calibrations and diagrams obtained from existing published results and from new experimental testing are also included to help the user in configuring the code. The manual provides a comprehensive troubleshooting of the main computational errors and an essential guide on how to interpret the results and understand their reliability. A table of content is given in the following. 1. Getting Started • Setting up the local working path • The input dataset • The model • The likelihood function • The prior probability distribution • Configuring the cluster algorithm • Configuring the nested sampling algorithm • What output is obtained and how to use it 2. The enlargement fraction f of the sampling ellipsoid

16 Chapter 3. Navigation The DIAMONDS code

• The number of clusters Nclust

• The number of live points Nlive • The shrinking rate 훼

• The initial enlargement fraction f 0

• Computational times tcomp and tnorm

• How Nclust can change the enlargement fraction f 3. Tackling incomplete computations • Assertion failure • No better likelihood points found • Ellipsoid matrix decomposition failed • Computation unable to start with NaN values • Computation unable to start with zero evidence 4. Checking the results and understanding their reliability

• How f 0 and 훼 can change the MPD • False multimodal MPD • False spike-like MPD • Truncated MPD and the role of uniform priors • How to extend the methodology to multiple analyses

3.4 Publications

In the following we list publications in peer-reviewed journals and other non-refereed journals that have used DIA- MONDS.

3.4.1 Peer-reviewed journals

• Silva Aguirre V., Stello D., Stokholm A. et al. 2019, Detection and characterisation of oscillating red giants: first results from the TESS satellite, The Astrophyisical Journal Letters (in press) • Pereira F., Campante T. L., Cunha M. et al. 2019, Gaussian process modelling of granulation and oscillations in red giant , Monthly Notices of the Royal Astronomical Society, 489, 5764 • Campante T. L., Corsaro E., Lund M. N. et al. 2019, TESS Asteroseismology of the Known Red-giant Host Stars HD 212771 and HD 203949, The Astrophysical Journal, 885, 31 • Bonanno A., Corsaro E., Del Sordo F. et al. 2019, Acoustic oscillations and dynamo action in the G8 sub-giant EK Eri, Astronomy & Astrophysics, 628, 106 • Viani L., Basu S., Corsaro E. et al. 2019, Determining the Best Method of Calculating the Large Frequency Separation For Stellar Models, The Astrophysical Journal, 879, 33 • Huber D., Chaplin W. J., Chontos A. 2019, A Hot Saturn Orbiting an Oscillating Late Subgiant Discovered by TESS, The Astronomical Journal, 157, 245 • Creevey O., Grundahl F., Thévenin F. 2019, First detection of oscillations in the Halo giant HD 122563: Vali- dation of seismic scaling relations and new parameters, Astronomy & Astrophysics, 625, 33

3.4. Publications 17 The DIAMONDS code

• Corsaro E. 2019, Fast and automated oscillation frequency extraction using Bayesian multi-modality, Frontiers in Astronomy and Space Sciences, 6, 21 • McKeever J. M., Basu S., Corsaro E. 2019, The Helium Abundance of NGC 6791 from Modeling of Stellar Oscillations, The Astrophysical Journal, 874, 180 • Bonomo, Aldo S.; Zeng, Li; Damasso, Mario et al. 2019, A giant impact as the likely origin of different twins in the Kepler-107 system, Nature Astronomy, 3, 416 • Themessl N., Hekker S., Southworth J. et al. 2018, Oscillating red giants in eclipsing binary systems: empirical reference value for asteroseismic scaling relation, Monthly Notices of the Royal Astronomical Society, 478, 4669 • Di Mauro M. P., Venturs R., Corsaro E. et al. 2018, The Rotational Shear Layer inside the Early Red-giant KIC 4448777, The Astrophysical Journal, 862, 9 • Li Y., Bedding, T. R., Li T. et al. 2018, Asteroseismology of KIC 7107778: a binary comprising almost identical subgiants, Monthly Notices of the Royal Astronomical Society, 476, 470 • Corsaro E., De Ridder J., García R. A., 2018, Bayesian peak bagging analysis of 19 low- low-luminosity red giants observed with Kepler (Corrigendum), Astronomy & Astrophysics, 612, 2 • Beck P. G., Kallinger T., Pavlovski, K. et al. 2018, Seismic probing of the first dredge-up event through the eccentric red-giant and red-giant spectroscopic binary KIC 9163796. How different are red-giant stars with a mass ratio of 1.015?, Astronomy & Astrophysics, 612, 22 • Corsaro E. 2018, Tutorial: Asteroseismic Data Analysis with DIAMONDS, Astrophysics and Space Science Proceedings book series, Asteroseismology and : Listening to the Stars and Searching for New Worlds • Salabert D., García R. A., Jiménez A., Photospheric activity of the with VIRGO and GOLF. Comparison with standard activity proxies, Astronomy & Astrophysics, 608, 87 • Corsaro E., Mathur S., García R. A. et al. 2017, effect on stellar granulation detected from oscillating red giants in open clusters, Astronomy & Astrophysics, 605, 3 • Corsaro E., Yueh-Ning L., García R. A. et al. 2017, Spin alignment of stars in old open clusters, Nature Astronomy, 1, 64 • Andrés Triana S., Corsaro E., De Ridder J. et al. 2017, Internal rotation of 13 low-mass low-luminosity red giants in the Kepler field, Astronomy & Astrophysics, 602, 62 • Gaulme P., Rowe, J. F., Bedding, T. R. et al. 2016b, A Distant Mirror: Solar Oscillations Observed on Neptune by the Kepler K2 Mission, The Astrophysical Journal Letters, 833, 13 • Gaulme P., McKeever, J., Jackiewicz, J. et al. 2016a, Testing the Asteroseismic Scaling Relations for Red Giants with Eclipsing Binaries Observed by Kepler, The Astrophysical Journal, 832, 121 • Rawls M., Gaulme P., McKeever J. et al. 2016, KIC 9246715: The Double Red Giant Eclipsing Binary with Odd Oscillations, The Astrophysical Journal, 818, 108 • Corsaro E., De Ridder J., García R. A., 2015b, Bayesian peak bagging analysis of 19 low-mass low-luminosity red giants observed with Kepler, Astronomy & Astrophysics, 579, 83 • Corsaro E., De Ridder J., García R. A., 2015a, High-precision acoustic helium signatures in 18 low-mass low- luminosity red giants. Analysis from more than four of Kepler observations, Astronomy & Astrophysics, 578, 76 • Corsaro E., De Ridder J., 2014, DIAMONDS: A new Bayesian nested sampling tool. Application to peak bagging of solar-like oscillations, Astronomy & Astrophysics, 571, 71

18 Chapter 3. Navigation The DIAMONDS code

3.4.2 Non peer-reviewed journals

• Beck P. G., Kallinger T., Pavlovski, K. et al. 2017, Constraining stellar physics from red-giant stars in binaries - stellar rotation, mixing processes and stellar activity, Conference proceedings for KASC meeting “Seismology of the Sun and the Distant Stars 2016” • Corsaro E., Yueh-Ning L., García R. A. et al. 2016, Formation history of old open clusters constrained by detailed asteroseismology of red giant stars observed by Kepler, Conference proceeding for SF2A 2016 • Corsaro E. & De Ridder J. 2015, DIAMONDS: a new Bayesian nested sampling tool, KASC 7-CoRoT 3 Con- ference Proceeding • Corsaro E. & De Ridder J. 2015, Peak Bagging of red giant stars observed by Kepler: first results with a new method based on Bayesian nested sampling, KASC 7-CoRoT 3 Conference Proceeding

3.5 Events

In the following we list past and upcoming events related with DIAMONDS and its application for research in astron- omy and astrophysics.

3.5.1 Upcoming

• TBD

3.5.2 Past

• 9-10 January 2018 DIAMONDS was presented and used for a hands-on-computer tutorial during a dedicated 2-days workshop held in OCA, Nice, France • 17-27 July 2016 DIAMONDS was presented and used for a hands-on-computer tutorial on asteroseismic data analysis at the IV Azores International Advanced School in Space Sciences, entitled “Asteroseismology and Exoplanets: Listening to the Stars and Searching for New Worlds”, hosted in the Azores Islands, Portugal. Find more information by clicking on the image below.

3.5. Events 19 The DIAMONDS code

• 27 October 2015 DIAMONDS was presented and used for a hands-on-computer tutorial on asteroseismic data analysis at the Space-Inn School on “Astero/Helioseismology and Stellar/Solar Physics”, held in CEA Saclay, France.

3.6 Logo

If you want to support our activity, we encourage you to use logos of DIAMONDS in your conference and informal meeting presentations that involve work made up with the use of the code. Feel free to choose the logo the best adapts to your presentation theme.

20 Chapter 3. Navigation The DIAMONDS code

Transparent Logo for dark background

3.6. Logo 21