MOSFiT icon indicating copy to clipboard operation
MOSFiT copied to clipboard

Bolometric magnitudes not computed correctly

Open mnicholl opened this issue 4 years ago • 0 comments

Current strategy for bolometric magnitudes is a "white" filter defined as 100% transmission across a wavelength range that can be defined in filterrules.json. Mosfit then treats this as a normal filter and returns an AB magnitude in the normal way by integrating the SED and zero point over this range.

BUT this is not really applicable to bolometric magnitudes because these are defined using log(Flux) --ok, luminosity-- rather than log(Flux density). This means that the zero point used must also be a function of flux rather than flux density. Bolometric magnitudes are NOT AB magnitudes.

The standard definition is M_bol = -2.5*log (L / 3.0128e35) where L is in erg/s. This is the quantity which any sensible user will want to give Mosfit to fit to (assuming it has to be in magnitudes, really fitting directly to L in erg/s could be better).

Prescribing a simple AB offset will not fix this, because the difference between the "AB magnitude" calculated using the white filter and the real definition of M_bol depends a lot on the shape of the SED (so will vary over time, or between different transients) and depends on the wavelength range used for the integral.

To-do: add another band system ("bol") and, if band == "white" and system == "bol", do NOT do the AB integral, but instead do a simple integration of the SED over the white filter and then use the correct zero point in units of luminosity. This will mostly affect photometry.py

mnicholl avatar Jun 30 '20 11:06 mnicholl