4 #include <gsl/gsl_spline.h> 45 Dust(
double nu0,
double kappa0,
double beta)
57 void setModel(
double nu0,
double kappa0,
double beta);
62 double kappa(
double nu, gsl_interp_accel *acc =
nullptr)
const;
68 double rho() const noexcept {
return rho_; }
Dust(const std::string &model="OH5", double rho=100.0)
Default constructor.
Dust(double nu0, double kappa0, double beta)
Fixed power-law constructor.
const std::string & name() const noexcept
Current model name.
void setModel(const std::string &model, double rho=100.0)
Set dust properties model (table-based).
Fixed power-law opacity parameters.
Declares the CommandLine class.
std::string name_
Current model name.
void printModels(std::vector< mu::CommandLine::Option > &opts, char name)
Add available dust model names to options summary.
The MathUtils miscellaneous utilities library.
double kappa(double nu, gsl_interp_accel *acc=nullptr) const
Gas/dust extinction opacity (cm^2/g).
double rho_
Current model gas-to-dust ratio.
gsl_spline * spline_
Table interpolator.
Opacity opacity_
Fixed power law.
double rho() const noexcept
Current model gas-to-dust ratio.
bool ln_
Whether to interpolate in log space.