The SKIRT project
advanced radiative transfer for astrophysics
NumberColumnMaterialNormalization Class Reference

#include <NumberColumnMaterialNormalization.hpp>

Inheritance diagram for NumberColumnMaterialNormalization:

Public Member Functions

std::pair< double, double > numberAndMass (const Geometry *geom, const MaterialMix *mix) const override
double numberColumnDensity () const
Public Member Functions inherited from AxisMaterialNormalization
Axis axis () const
Public Member Functions inherited from SimulationItem
template<class T>
T * find (bool setup=true) const
template<class T>
T * interface (int levels=-999999, bool setup=true) const
virtual string itemName () const
void setup ()
string typeAndName () const
Public Member Functions inherited from Item
 Item (const Item &)=delete
virtual ~Item ()
void addChild (Item *child)
const vector< Item * > & children () const
virtual void clearItemListProperty (const PropertyDef *property)
void destroyChild (Item *child)
virtual bool getBoolProperty (const PropertyDef *property) const
virtual vector< double > getDoubleListProperty (const PropertyDef *property) const
virtual double getDoubleProperty (const PropertyDef *property) const
virtual string getEnumProperty (const PropertyDef *property) const
virtual int getIntProperty (const PropertyDef *property) const
virtual vector< Item * > getItemListProperty (const PropertyDef *property) const
virtual ItemgetItemProperty (const PropertyDef *property) const
virtual string getStringProperty (const PropertyDef *property) const
int getUtilityProperty (string name) const
virtual void insertIntoItemListProperty (const PropertyDef *property, int index, Item *item)
Itemoperator= (const Item &)=delete
Itemparent () const
virtual void removeFromItemListProperty (const PropertyDef *property, int index)
virtual void setBoolProperty (const PropertyDef *property, bool value)
virtual void setDoubleListProperty (const PropertyDef *property, vector< double > value)
virtual void setDoubleProperty (const PropertyDef *property, double value)
virtual void setEnumProperty (const PropertyDef *property, string value)
virtual void setIntProperty (const PropertyDef *property, int value)
virtual void setItemProperty (const PropertyDef *property, Item *item)
virtual void setStringProperty (const PropertyDef *property, string value)
void setUtilityProperty (string name, int value)
virtual string type () const

Protected Member Functions

 NumberColumnMaterialNormalization ()
Protected Member Functions inherited from AxisMaterialNormalization
 AxisMaterialNormalization ()
double geometryColumnDensity (const Geometry *geom) const
Protected Member Functions inherited from MaterialNormalization
 MaterialNormalization ()
Protected Member Functions inherited from SimulationItem
 SimulationItem ()
virtual bool offersInterface (const std::type_info &interfaceTypeInfo) const
virtual void setupSelfAfter ()
virtual void setupSelfBefore ()
Protected Member Functions inherited from Item
 Item ()

Private Types

using BaseType
using ItemType

Private Attributes

double _numberColumnDensity

Friends

class ItemRegistry

Additional Inherited Members

Public Types inherited from AxisMaterialNormalization
enum class  Axis : int { X , Y , Z }

Detailed Description

A NumberColumnMaterialNormalization object normalizes the amount of material in a geometric medium by specifying the number column density along one of the coordinate axes.

Constructor & Destructor Documentation

◆ NumberColumnMaterialNormalization()

NumberColumnMaterialNormalization::NumberColumnMaterialNormalization ( )
inlineprotected

Default constructor for concrete Item subclass NumberColumnMaterialNormalization: "normalization by defining the number column density along a coordinate axis".

Member Function Documentation

◆ numberAndMass()

std::pair< double, double > NumberColumnMaterialNormalization::numberAndMass ( const Geometry * geom,
const MaterialMix * mix ) const
overridevirtual

This function returns the total number of entities and total mass in the medium, in that order, given a geometry and material mix in addition to the user configuration options offered by this class.

Implements MaterialNormalization.

◆ numberColumnDensity()

double NumberColumnMaterialNormalization::numberColumnDensity ( ) const
inline

This function returns the value of the discoverable double property numberColumnDensity: "the number column density along this axis".

This property represents a physical quantity of type "numbersurfacedensity".

The minimum value for this property is "]0".


The documentation for this class was generated from the following file: