Object Profiles

Object profiles contains commonly used profiles of different types of source objects such as PointSource, Disk etc…

class lfd.analysis.profiles.objectprofiles.PointSource(h, res=0.001, **kwargs)[source]

Simple point like source. Point-like sources are not resolved, therefore regardless of scale and size only a single element of obj will have a value

Parameters:
  • h (float) – height of the object, in meters
  • res (float) – desired resolution in arcseconds. The scale step (the difference between two neighbouring “x-axis” points) is then determined by scaling the appropriate angular size of the object by the resolution, so that the object remains unresolved at the required resolution.
f(r)[source]

Returns the intensity value of the object at a point. Evaluating a point source over only handfull of points is not well defined. The function may not behave properly if number of points is very small, i.e. 2 or 3 points only.

class lfd.analysis.profiles.objectprofiles.GaussianSource(h, fwhm, res=0.001, units='meters', **kwargs)[source]

Simple gaussian intensity profile.

Parameters:
  • h (float) – height of the object, in meters
  • fwhm (float) – FWHM of the gaussian profile
  • res (float) – desired resolution, in arcseconds
  • units (string) – spatial units (meters by default) - currently not very well supported
f(r)[source]

Evaluate the gaussian at a point.

class lfd.analysis.profiles.objectprofiles.DiskSource(h, radius, res=0.001, **kwargs)[source]

Brightness profile of a disk-like source.

Parameters:
  • h (float) – height of the object, in meters
  • radius (float) – radius of the objects disk, in meters
  • res (float) – desired resolution, in arcseconds
f(r, units='arcsec')[source]

Returns the brightness value of the object at a point. By default the units of the scale are arcseconds but radians are also accepted.

width()[source]

FWHM is not a good metric for measuring the end size of the object because disk-like profiles do not taper off towards the top. Instead width of the object (difference between first and last point with brightness above zero) is a more appropriate measure of the size of the object.

class lfd.analysis.profiles.objectprofiles.RabinaSource(h, angle, **kwargs)[source]
Bektesevic & Vinkovic et. al. 2017 (arxiv: 1707.07223) Eq. (9)

a 1D integrated projection of fiducial 3D meteor head model as given by:

Rabina J., et al. 2016, J. Quant. Spectrosc. Radiat. Transf,178, 295

The integration of this profile is complicated and depends on variety of parameters, such as the angle of the observer linesight and meteor direction of travel. It is not practical to preform the integration every time brightness value needs to be estimated (too slow). A set of pregenerated projections of this profile to a plane were created where the angle between meteor direction of travel and observer linesight varies in the range from 0-1.5 radians (0-86 degrees) which are then used to produce this 1D profile. The 1D profile is created from a crosssection perpendicular to the meteors direction of travel. These 2D profiles are avilable as images in the rabina directory along with the required code to generate them. The default profile is then scaled appropriately to the desired height and any missing brightness values are then interpolated between the points.

Parameters:
  • angle (string, float or int) – If string the path to the premade 2D integrated Rabina profile projection, if float or int the angle in radians that will be converted into a filename of one of the premade Rabina profiles.
  • h (float) – height of the object, in meters

Note

Integrating 3D Rabina profile to create the 2D projection is very costly. Premade profiles range from 0 to 1.5 radians in steps of 0.1 radians, or approximately 0 to 90 degrees in steps of ~6 degrees. If a specific projection angle is required code to generate one can be found in profiles/rabina dir (see also: profiles.utils.get_rabina_dir).

f(r, units='arcsec')[source]

Returns the brightness value at a desired point.

lfd.analysis.profiles.objectprofiles.exp_fwhms(tau, n, duration)[source]

Generates series of n exponentially smaller FWHM values depending on the scale time tau for the desired temporal duration.

Parameters:
  • tau (float) – scale time of the decay
  • n (int) – number of generated FWHM values
  • duration (float) – total duration in which n FWHMs will be equaly spaced