PLUTO  4.4-patch2
Functions
particles_lp_emissivity.c File Reference

Functions to compute the emissivity due to synchrotron and Inverse compton processes from isotropic radiation source of Cosmic Microwave Background (CMB) photons for each particle based on its spectral dustribution. More...

#include "pluto.h"

Functions

void IC_SingleElectronPower (double, double, double *)
 
void IC_ComputeEmissivity_Petruk (Particle *, double, double *)
 
double Sync_GetKz (double, void *)
 
void Sync_GenerateFxAndGx (double, double *, double *)
 
void GetCrossProduct (double *, double *, double *)
 
void Sync_PolarisationAngle (double *, double *, double *, double *, double *, double *, double *)
 
int GetNearestIndex (double, double *, int)
 
void Particles_LP_Sync_Emissivity (Particle *pl, double freq_GHz, double ThObs, double *JnuSync, double *StkQ, double *StkU)
 
void Particles_LP_IC_Emissivity (Particle *pl, double freq_GHz, double ThObs, double *JnuIC)
 

Detailed Description

Authors
B. Vaidya (bvaid.nosp@m.ya@u.nosp@m.nito..nosp@m.it)
Date
June 09, 2017

Function Documentation

◆ GetCrossProduct()

void GetCrossProduct ( double *  a,
double *  b,
double *  acrb 
)

Function to compute the cross product of two vectors a and b.

Parameters
[in]aInput Vector a
[in]bInput Vector a
[out]acrbOutput Vector that has the cross product a x b

◆ GetNearestIndex()

int GetNearestIndex ( double  value,
double *  x,
int  len 
)

Computes the index of the nearest neighbour in a 1D array.

Parameters
[in]valueThe input value whose nearest index is sought.
[in]x1D Array of from which the index is to be obtained.
[in]lenLength of the Input array.
Returns
An integer which is the index of the Nearest point.

◆ IC_ComputeEmissivity_Petruk()

void IC_ComputeEmissivity_Petruk ( Particle *  pl,
double  freq_GHz,
double *  JnuIC 
)

Estimates the power per volume per energy emitted by an ensemble of electron N(E) with Isotropic radiation field of CMB photons. This assumes that the flow is non-relativistic and can be typically used to estimate IC Power from Supernovae.

Multiplication with a factor of h/(4*pi) estimates emissivity JnuIC in units of ergs/s.Hz.cm^3.str for the MHD module.

Parameters
[in]plPointer to the Particle Structure.
[in]freq_GHzObserved frequency of InverseCompton radiation in GHz.
[out]JnuICTotal InverseCompton emissivity at the prescribed frequency

◆ IC_SingleElectronPower()

void IC_SingleElectronPower ( double  SpecE,
double  freq_GHz,
double *  PowSE 
)

Estimates the power emitted by single electron at the Observed Frequency (user-defined) as it interacts with Isotropic radiation field of CMB photons. This assumes that the flow is non-relativistic. Typically used to estimate IC Power from Supernovae. Approximations in the Thompson's limit used here are adopted from Petruk, A & A, Vol. 499, 2009 [Eqs. 14 and 33]

Parameters
[in]SpecEElectron energy in cgs units.
[in]freq_GHzObserved frequency of synchrotron radiation in GHz.
[out]PowSEPower radiatied due to Single Electron (Nonrelativistic Fliud)

◆ Particles_LP_IC_Emissivity()

void Particles_LP_IC_Emissivity ( Particle *  pl,
double  freq_GHz,
double  ThObs,
double *  JnuIC 
)

Estimates the power emitted by an ensemble of electron N(E) with Isotropic radiation field of CMB photons. For non-relativistic flow approximations in the Thompson's limit are taken from Petruk et. al. 2009, typically used for Supernovae. For the relativistic flow approximations in the Thompson's limit used here are adopted from Dermer et. al. 1995. The relativistic implementation therefore account of beaming of incident CMB photon and also related relativistic effects. The output –> Total InverseCompton emissivity at the prescribed frequency is obtained in units of ergs/(s*cm^3*str)

Parameters
[in]plPointer to the Particle Structure.
[in]freq_GHzObserved frequency of InverseCompton radiation in GHz.
[in]ThObsLine of Sight Angle subtended from the Z axis in degrees.
[out]JnuICTotal InverseCompton emissivity at the prescribed frequency

◆ Particles_LP_Sync_Emissivity()

void Particles_LP_Sync_Emissivity ( Particle *  pl,
double  freq_GHz,
double  ThObs,
double *  JnuSync,
double *  StkQ,
double *  StkU 
)

Routine that computes the total synchrotrn emissivity and polarised Stoke Parameters for a given observed frequency and line of sight angle. The output is obtained in cgs units : ergs/(s*cm^3*Hz*str)

Parameters
[in]plPointer to the Particle Structure.
[in]freq_GHzObserved frequency of synchrotron radiation in GHz.
[in]ThObsLine of Sight Angle subtended from the Z axis in degrees.
[out]JnuSyncTotal synchrotron emissivity at the prescribed frequency
[out]StkQStoke Q Value from Linear Polarised Synchrotron emission.
[out]StkUStoke U Value from Linear Polarised Synchrotron emission.

◆ Sync_GenerateFxAndGx()

void Sync_GenerateFxAndGx ( double  x,
double *  FxIntp,
double *  GxIntp 
)

This routine generates the 1D array of F(x) = Int(K(5/3, z)dz) and G(x) = Int(K(2/3,z)dz) on the first call. These functions are required to compute synchrotron emissivity

Parameters
[in]xDimensionless electron energy
[out]FxIntpInterpolated value of F(x)/x
[out]GxIntpInterpolated value of G(x)/x

◆ Sync_GetKz()

double Sync_GetKz ( double  t,
void *  Fx_p 
)

This routine computes the value of Modified Bessel Function K_(5/3)(t) using its integral form [Eilek, 1996 Appendix A]. This required to estimate the synchrotron emissivity of single electron.

Parameters
[in]tIndependent variable t
[in]Fx_pPointer to the structure to modify parameters.
Returns
Returns of the value of K_(5/3)(t).

◆ Sync_PolarisationAngle()

void Sync_PolarisationAngle ( double *  B,
double *  V,
double *  nlos,
double *  Dfact,
double *  csPolAng,
double *  snPolAng,
double *  Bperp 
)

Compute angle of polarisation required to compute Stoke Parameters from the total emissivity. Appropriate Relativistic corrections are incoprated following the work by Lyutikov (2203) & Del Zanna (2006)

Parameters
[in]BMagnetic field vector interpolated on a macro-particles
[in]VThree Velocity vector interpolated on a macro-particles
[in]nlosLine of sight vector.
[out]DfactDoppler Factor.
[out]csPolAngCosine of the Polarisation Angle to compute Stoke Parameters
[out]snPolAngSine of the Polarisation Angle to compute Stoke Parameters
[out]snChiSine of Angle between the B field and line of sight vector in jet frame.