public class Material
extends java.lang.Object
implements java.io.Serializable, java.lang.Cloneable
This class models an arbitrary material. Materials are defined by density and their characteristic attenuation of XRays of different energies.
Note. A material without a defined energy dependent attenuation cannot be used in polychromatic XRay projection modeling
.Constructor and Description |
---|
Material() |
Material(double density)
Initializes a material with a given density.
|
Modifier and Type | Method and Description |
---|---|
java.lang.Object |
clone() |
java.util.ArrayList<java.lang.Double> |
getAbsorptionEdges()
Retrieve all the absorption edges of material in MeV.
|
double |
getAttenuation(double energy,
AttenuationType attType)
Retrieve the energy dependent attenuation of material
|
double |
getAttenuation(double energy,
AttenuationType attType,
AttenuationRetrievalMode mode)
Retrieve the energy dependent attenuation of material.
|
double |
getCTValue()
Retrieve the CT value of a given material in [HU]
|
double |
getDensity()
Retrieves the density of the material in [g/cm^3]
|
java.lang.String |
getName()
Retrieve the name of the material
|
WeightedAtomicComposition |
getWeightedAtomicComposition()
Retrieve the atomic composition of material by mass
|
void |
setDensity(double density)
Update the density and CT Value of the material with given value
|
void |
setName(java.lang.String name)
Update the name of the material.
|
void |
setWeightedAtomicComposition(WeightedAtomicComposition comp)
Update the atomic composition of material by mass
|
java.lang.String |
toString() |
public Material()
public Material(double density)
density
- is density of initialized materialpublic void setName(java.lang.String name)
name
- is name of materialpublic java.lang.String getName()
public double getCTValue()
public double getAttenuation(double energy, AttenuationType attType)
energy
- is energy of interest in KeVattType
- is type of attenuation, all types of attenuation are supported.AttenuationType
,
TestMassAttenuationData
public double getAttenuation(double energy, AttenuationType attType, AttenuationRetrievalMode mode)
energy
- is energy of interest in KeVattType
- is type of attenuation, all types of attenuation are supported.mode
- is retrieval mode.AttenuationType
,
AttenuationRetrievalMode
,
TestMassAttenuationData
public void setDensity(double density)
density
- is density of the materialpublic double getDensity()
public void setWeightedAtomicComposition(WeightedAtomicComposition comp)
comp
- is Treemap containing the atomic composition of material by masspublic WeightedAtomicComposition getWeightedAtomicComposition()
public java.util.ArrayList<java.lang.Double> getAbsorptionEdges()
public java.lang.String toString()
toString
in class java.lang.Object
public java.lang.Object clone()
clone
in class java.lang.Object