ATLAS Offline Software
Loading...
Searching...
No Matches
TRT_PAI_gasComponent.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef TRT_PAI_gasComponent_h
6#define TRT_PAI_gasComponent_h
7
8#include "TRT_PAI_element.h"
9
10#include <string>
11#include <vector>
12
17public:
18
22 TRT_PAI_gasComponent() : m_name("unnamed") {};
23
28 TRT_PAI_gasComponent(const std::string & nm) : m_name(nm) {};
29
35 void addElement(TRT_PAI_element* pe, unsigned int n);
36
40 const std::string& getName() { return m_name; };
41
45 int getNElementTypes() {return m_pelements.size();}
46
51 unsigned int getElementMultiplicity(unsigned int n) {
52 return m_elementMultiplicity[n];
53 }
54
59 TRT_PAI_element* getElement(unsigned int n) { return m_pelements[n]; }
60
65 double getDensity(double tempK=293.);
66private:
67 std::string m_name;
68 std::vector<TRT_PAI_element*> m_pelements;
69 std::vector<unsigned int> m_elementMultiplicity;
70};
71
72#endif
Chemical element.
double getDensity(double tempK=293.)
Get density of gas component (molecule) at atmospheric preassure.
unsigned int getElementMultiplicity(unsigned int n)
Get multiplicity of this element in gas component (molecule)
std::vector< TRT_PAI_element * > m_pelements
TRT_PAI_gasComponent()
Constructor of unnamed component.
int getNElementTypes()
Get number of different elements in this gas component (molecule)
std::vector< unsigned int > m_elementMultiplicity
TRT_PAI_gasComponent(const std::string &nm)
Constructor of gas component.
TRT_PAI_element * getElement(unsigned int n)
Get pointer to this element in gas component (molecule)
void addElement(TRT_PAI_element *pe, unsigned int n)
Add element to gas component.
const std::string & getName()
Get name of gas component (molecule)