00001
00007 #ifndef _DUST_XSECTION_HXX__
00008 #define _DUST_XSECTION_HXX__
00009
00010 #include "../dustmodel.h"
00011
00012 #include "dielectric.hxx"
00013
00014 #include <interpolate_forwd.hxx>
00015
00016 namespace Dust {
00017
00018
00025 struct Dielectrics {
00026
00027 Dust::DielctrcIplt GraphPar;
00028 Dust::DielctrcIplt GraphPerp;
00029 Dust::DielctrcIplt Sil;
00030
00033 Dielectrics ( dust_model *m) ;
00034
00035 ~Dielectrics();
00036
00037 };
00038
00044 double GraphCAbs(double lambda,
00045 double a , Dielectrics &d , dust_model*m);
00046
00047
00053 double PAHCAbs(double lambda,
00054 double a,
00055 dust_ionisation state,
00056 Dielectrics &d, dust_model * m);
00057
00065 double CarbCAbs(double lambda,
00066 double a,
00067 double ionf,
00068 Dielectrics &d, dust_model * m);
00069
00070
00074 BNLib::InterpolatorBase * CarbCAbsIplt ( double a,
00075 double ionf,
00076 dust_model * m) ;
00077
00078
00079
00084 double SilCAbs(double lambda, double a , Dielectrics &d, dust_model * m);
00085
00086
00090 BNLib::InterpolatorBase * SilCabsIplt ( double a,
00091 dust_model * m);
00092
00093
00094
00095
00096 }
00097
00098 #endif