Gravity Brightening/Darkening (gravb_bol)

Setup

Let's first make sure we have the latest version of PHOEBE 2.0 installed. (You can comment out this line if you don't use pip for your installation or don't want to update to the latest release).


In [ ]:
!pip install -I "phoebe>=2.0,<2.1"

As always, let's do imports and initialize a logger and a new bundle. See Building a System for more details.


In [1]:
%matplotlib inline

In [2]:
import phoebe
from phoebe import u # units
import numpy as np
import matplotlib.pyplot as plt

logger = phoebe.logger()

b = phoebe.default_binary()


/usr/lib/python2.7/dist-packages/matplotlib/cbook/deprecation.py:106: MatplotlibDeprecationWarning: The mpl_toolkits.axes_grid module was deprecated in version 2.1. Use mpl_toolkits.axes_grid1 and mpl_toolkits.axisartist provies the same functionality instead.
  warnings.warn(message, mplDeprecation, stacklevel=1)

Relevant Parameters

The 'gravb_bol' parameter corresponds to the β coefficient for gravity darkening corrections.


In [3]:
print(b['gravb_bol'])


ParameterSet: 2 parameters
     gravb_bol@primary@component: 0.32
   gravb_bol@secondary@component: 0.32

In [4]:
print(b['gravb_bol@primary'])


Parameter: gravb_bol@primary@component
                       Qualifier: gravb_bol
                     Description: Bolometric gravity brightening
                           Value: 0.32
                  Constrained by: 
                      Constrains: None
                      Related to: None

If you have a logger enabled, PHOEBE will print a warning if the value of gravb_bol is outside the "suggested" ranges. Note that this is strictly a warning, and will never turn into an error at b.run_compute().

You can also manually call b.run_checks(). The first returned item tells whether the system has passed checks: True means it has, False means it has failed, and None means the tests pass but with a warning. The second argument tells the first warning/error message raised by the checks.

The checks use the following "suggested" values:

  • teff 8000+: gravb_bol >= 0.9 (suggest 1.0)
  • teff 6600-8000: gravb_bol 0.32-1.0
  • teff 6600-: grav_bol < 0.9 (suggest 0.32)

In [5]:
print(b.run_checks())


(True, '')

In [6]:
b['teff@primary'] = 8500
b['gravb_bol@primary'] = 0.8
print(b.run_checks())


Fri, 01 Feb 2019 13:53 PARAMETERS   WARNING 'primary' probably has a radiative atm (teff=8500K>8000K), for which gravb_bol=1.00 might be a better approx than gravb_bol=0.32
Fri, 01 Feb 2019 13:53 PARAMETERS   WARNING 'primary' probably has a radiative atm (teff=8500K>8000K), for which gravb_bol=1.00 might be a better approx than gravb_bol=0.80
(None, "'primary' probably has a radiative atm (teff=8500K>8000K), for which gravb_bol=1.00 might be a better approx than gravb_bol=0.80")

In [7]:
b['teff@primary'] = 7000
b['gravb_bol@primary'] = 0.2
print(b.run_checks())


Fri, 01 Feb 2019 13:53 PARAMETERS   WARNING 'primary' has intermittent temperature (6600K<teff=7000K<8000K), gravb_bol might be better between 0.32-1.00 than gravb_bol=0.20
(None, "'primary' has intermittent temperature (6600K<teff=7000K<8000K), gravb_bol might be better between 0.32-1.00 than gravb_bol=0.20")

In [8]:
b['teff@primary'] = 6000
b['gravb_bol@primary'] = 1.0
print(b.run_checks())


Fri, 01 Feb 2019 13:53 PARAMETERS   WARNING 'primary' has intermittent temperature (6600K<teff=6000K<8000K), gravb_bol might be better between 0.32-1.00 than gravb_bol=0.20
Fri, 01 Feb 2019 13:53 PARAMETERS   WARNING 'primary' probably has a convective atm (teff=6000K<6600K), for which gravb_bol=0.32 might be a better approx than gravb_bol=1.00
(None, "'primary' probably has a convective atm (teff=6000K<6600K), for which gravb_bol=0.32 might be a better approx than gravb_bol=1.00")

In [ ]: