************************************************************************

Information on the MOBSE package. 

Updated version of BSE implemented by Nicola Giacobbo at University of 
Padova, IT, in collaboration with Michela Mapelli and Mario Spera.

COPYRIGHT: Nicola Giacobbo. If you want to use MOBSE for publications 
           please contact Nicola Giacobbo giacobbo.nicola@gmail.com

Information on the updates present in MOBSE can be found in the paper: 

"Black hole binaries with the MOBSE code: the impact of progenitor's 
 metallicity and Eddington factor"
 Giacobbo N., Mapelli M., Spera M. submitted. 

Information on the standard BSE package can be found in the paper: 

"Evolution of binary stars and the effect of tides on binary 
 populations" 
 Hurley J.R., Tout C.A., & Pols O.R., 2002, MNRAS, 329, 897. 

Any queries that are not answered by referring to these texts, or by 
reading the comments in the programs, can be addressed to: 
  giacobbo.nicola@gmail.com  

************************************************************************

Stellar mass range: 0.1 -> 150 Msun 
Metallicity range:  0.0001 -> 0.03 (0.02 is solar) 
Period range:       all 
Eccentricity Range: 0.0 -> 1.0

************************************************************************

The MOBSE package contains the following FORTRAN files: 

IMORTANT: many subroutines are named as in the BSE package but contain some 
          upgrades. They are identified by (*). The are some new 
          functions indicated by (+).

mobse.f       - Main routine. Evolves one binary and creates data files. 
const_mobse.h - parameter file 
evolv3.f      - routine that controls the evolution of the binary 
binary.in     - input file for mobse.f (*)
comenv.f      - common envelope evolution
corerd.f      - estimates the core radius of a giant-like star
deltat.f      - determines stellar evolution update timestep 
dgcore.f      - determines the outcome when two degenerate cores merge 
gntage.f      - calculates parameters of new star resulting from a merger 
hrdiag.f      - decides which evolution stage the star is currently at 
                and then the appropriate luminosity, radius
                and core mass are calculated (*) 
instar.f      - sets the collision matrix (*)
kick.f        - generates supernova kick and adjusts orbital parameters (*)
mix.f         - models stellar collisions (*)
mlwind.f      - contains the mass loss prescription (*) 
mrenv.f       - calculates envelope parameters
ran3.f        - random number generator
rl.f          - calculates Roche-lobe radius 
star.f        - derives the landmark timescales and luminosities 
                that divide the various evolution stages (*)
zcnsts.f      - sets all the constants of the formulae which depend on 
                metallicity (apart for stellar winds) (*) 
zdata.h       - contains all the coefficient values for zcnsts (*) 
zfuncs.f      - all the formulae as a collection of separate functions (*)
pisn.f        - contains the prescriptions for the pair-instability and the 
                pulsation-pair-instability (+)
eddington.f   - calculates the Eddington factor (+)
fallback.f    - computes the fallback factor (+)

and 

Makefile  - gfortran compiler. Use command "make mobse"

************************************************************************

MOBSE works as BSE and can be use in the same way. Then if you are 
familiar with BSE, the main routine mobse.f is an example 
to show how EVOLV3 should be used. 
If have never used BSE, don't worry. The routines contain all original 
information and all the upgredes are commented. 

In the following I report a part of the README_BSE file which is valid also for
MOBSE, if you replace EVOLV2 with EVOLV3 and bse.f with mobse.f

"In the case of EVOLV2 being called in a loop over many stars 
be careful to initialise each new star, i.e. 

mass(i) = mass0(i)
kstar(i) = 1
epoch(i) = 0.0
ospin(i) = 0.0
tphys = 0.0 

as well as setting the masses (mass0), period (tb) and eccentricity (ecc). 

However, the routine ZCNSTS only needs to be called each time you change
metallicity.

You may not want to use bse.f at all and instead, for example, prefer to use 
EVOLV2 directly as the main routine. 
Also, you may want to utilize the individual subroutines in different ways."

************************************************************************

Definitions of the evolution types for the stars:  
*
*       ------------------------------------------------------------
 KW
              0 - deeply or fully convective low mass MS star
              1 - Main Sequence star
              2 - Hertzsprung Gap
              3 - First Giant Branch
              4 - Core Helium Burning
              5 - First Asymptotic Giant Branch
              6 - Second Asymptotic Giant Branch
              7 - Main Sequence Naked Helium star
              8 - Hertzsprung Gap Naked Helium star
              9 - Giant Branch Naked Helium star
             10 - Helium White Dwarf
             11 - Carbon/Oxygen White Dwarf
             12 - Oxygen/Neon White Dwarf
             13 - Neutron Star
             14 - Black Hole
             15 - Massless Supernova
*       ------------------------------------------------------------

Good luck!

************************************************************************

