Manticore  Version 1.5.3
Physics of Molecular Clouds
manticore.h
Go to the documentation of this file.
1 #ifndef MANTICORE_H
2 #define MANTICORE_H
3 
4 #include <CCfits/CCfits>
5 #include <gsl/gsl_spline.h>
6 
7 #include "mutils/CommandLine.h"
8 
9 namespace manticore {
10 
13 
15 constexpr int mapDataCode = FLOAT_IMG;
16 
18 constexpr long modelMapLen = 961L;
19 
22 
24 constexpr double c_light = 2.99792458e10;
25 
27 constexpr double h_Planck = 6.626070040e-27;
28 
30 constexpr double k_Boltzman = 1.38064852e-16;
31 
33 constexpr double m_H = 1.6737237e-24;
34 
35 extern mapDataType
36  getError(const mapDataType &data, CCfits::PHDU &hdu,
37  const mutils::CommandLine &cli);
38 
39 extern gsl_spline
40  *initSpline(const tableType &table, bool ln = false, unsigned stride = 1);
41 
42 extern void
43  process(const mutils::CommandLine &cli);
44 
45 extern void
46  setKeys(CCfits::ExtHDU &hdu, const CCfits::PHDU &hdu0,
47  const mutils::CommandLine &cli, const std::vector<long> &ll);
48 
49 extern void
52  CCfits::FITS *outFITS,
53  const std::vector<mapDataType> &bandData,
54  const std::vector<mapDataType> &bandError,
55  const std::vector<CCfits::PHDU*> &bandHDU,
56  const std::vector<long> &axis,
57  const mutils::CommandLine &cli,
58  const std::vector<long> &ll,
59  const std::vector<long> &ur,
60  const std::vector<long> &st);
61 
62 extern int
63  getBand(const CCfits::HDU &hdu);
64 
65 } // namespace manticore
66 
67 #endif // MANTICORE_H
void process(const mutils::CommandLine &cli)
Processes multi-wavelength maps into temperature/column density maps.
Definition: process.cc:104
constexpr double h_Planck
Planck's constant (erg*s).
Definition: manticore.h:27
constexpr double k_Boltzman
Planck's constant (erg/K).
Definition: manticore.h:30
Command line options and arguments.
Definition: CommandLine.h:47
Package namespace.
Definition: Detector.cc:15
constexpr double m_H
Mass of hygdrogen atom (g).
Definition: manticore.h:33
Declares the CommandLine class.
constexpr double c_light
Speed of light (cm/s).
Definition: manticore.h:24
mapDataType getError(const mapDataType &data, CCfits::PHDU &hdu, const mutils::CommandLine &cli)
void solve(std::vector< mapDataType > &outMap, std::vector< CCfits::ExtHDU * > &outHDU, CCfits::FITS *outFITS, const std::vector< mapDataType > &bandData, const std::vector< mapDataType > &bandError, const std::vector< CCfits::PHDU * > &bandHDU, const std::vector< long > &axis, const mutils::CommandLine &cli, const std::vector< long > &ll, const std::vector< long > &ur, const std::vector< long > &st)
Performs least-squares fitting of band SEDs.
Definition: solve.cc:1006
int getBand(const CCfits::HDU &hdu)
Returns nominal band center (microns) from an HDU.
Definition: manticore.cc:105
constexpr long modelMapLen
One-dimensional length of model map image.
Definition: manticore.h:18
gsl_spline * initSpline(const tableType &table, bool ln, unsigned stride)
Initializes cubic spline interpolator.
Definition: manticore.cc:81
constexpr int mapDataCode
Output FITS maps data code (cf. mapDataType).
Definition: manticore.h:15
void setKeys(CCfits::ExtHDU &hdu, const CCfits::PHDU &hdu0, const mutils::CommandLine &cli, const std::vector< long > &ll)
Sets header keywords for an output map.
Definition: process.cc:241