PLaSK library
Loading...
Searching...
No Matches
plask::Material::Parameters Struct Reference

Parameters of material, information about: name, label, composition and dopant. More...

#include <plask/material/material.hpp>

Collaboration diagram for plask::Material::Parameters:
[legend]

Public Member Functions

 Parameters ()
 Construct empty parameters info.
 
 Parameters (const std::string &full_name, bool allow_dopant_without_amount=false)
 Construct parameters filled with information parsed from format name[_label][:dopant].
 
bool operator== (const Parameters &other) const
 
bool isAlloy () const
 Check if material is simple, i.e.
 
bool hasDopantName () const
 Check if dopant name is known.
 
bool hasDoping () const
 Check if has full dopant information (with ammount).
 
void parse (const std::string &full_material_str, bool allow_dopant_without_amount=false)
 Parse material in format name[_label][:dopant].
 
Composition completeComposition () const
 Get complete composition.
 
void setDoping (const std::string &dopant, double doping)
 Set doping parameters.
 
void clearDoping ()
 Clear doping parameters.
 
std::string str () const
 Construct good material string.
 

Public Attributes

std::string name
 name of material, part before label, can be undefined for complex materials
 
std::string label
 material label
 
Composition composition
 material composition
 
std::string dopant
 name of dopant
 
double doping
 ammount of dopant (0.0 if there is no dopant)
 

Detailed Description

Parameters of material, information about: name, label, composition and dopant.

It stores all information which are represented by material string, but without precision lossing (amounts are stored in doubles).

Can be obtained either from string (see parse(std::string)) or material (see getParameters()).

Definition at line 138 of file material.hpp.

Constructor & Destructor Documentation

◆ Parameters() [1/2]

plask::Material::Parameters::Parameters ( )
inline

Construct empty parameters info.

Definition at line 156 of file material.hpp.

◆ Parameters() [2/2]

plask::Material::Parameters::Parameters ( const std::string &  full_name,
bool  allow_dopant_without_amount = false 
)
inlineexplicit

Construct parameters filled with information parsed from format name[_label][:dopant].

Part before label is always put in name, also for complex materials.

Parameters
full_material_strmaterial in format name[_label][:dopant]
allow_dopant_without_amountif true, dopant part without ammount is allowed (in such case, dopant is filled, but doping is 0.0)

Definition at line 165 of file material.hpp.

Member Function Documentation

◆ clearDoping()

void plask::Material::Parameters::clearDoping ( )
inline

Clear doping parameters.

Definition at line 215 of file material.hpp.

◆ completeComposition()

Material::Composition plask::Material::Parameters::completeComposition ( ) const

Get complete composition.

Returns
complete composition (without NaNs)

Definition at line 125 of file material.cpp.

◆ hasDopantName()

bool plask::Material::Parameters::hasDopantName ( ) const
inline

Check if dopant name is known.

Returns
true only if dopant name is known (doping still can be equal 0)

Definition at line 183 of file material.hpp.

◆ hasDoping()

bool plask::Material::Parameters::hasDoping ( ) const
inline

Check if has full dopant information (with ammount).

Returns
true if has full dopant information

Definition at line 189 of file material.hpp.

◆ isAlloy()

bool plask::Material::Parameters::isAlloy ( ) const
inline

Check if material is simple, i.e.

has empty composition.

Returns
true only if material is simple

Definition at line 177 of file material.hpp.

◆ operator==()

bool plask::Material::Parameters::operator== ( const Parameters other) const
inline

Definition at line 168 of file material.hpp.

◆ parse()

void plask::Material::Parameters::parse ( const std::string &  full_material_str,
bool  allow_dopant_without_amount = false 
)

Parse material in format name[_label][:dopant].

Part before label is always put in name, also for complex materials.

Parameters
full_material_strmaterial in format name[_label][:dopant]
allow_dopant_without_amountif true, dopant part without ammount is allowed (in such case, dopant is filled, but doping is 0.0)

Definition at line 85 of file material.cpp.

◆ setDoping()

void plask::Material::Parameters::setDoping ( const std::string &  dopant,
double  doping 
)

Set doping parameters.

Parameters
dopant,dopingnew dopant parameters

Definition at line 129 of file material.cpp.

◆ str()

std::string plask::Material::Parameters::str ( ) const

Construct good material string.

Definition at line 99 of file material.cpp.

Member Data Documentation

◆ composition

Composition plask::Material::Parameters::composition

material composition

Definition at line 147 of file material.hpp.

◆ dopant

std::string plask::Material::Parameters::dopant

name of dopant

Definition at line 150 of file material.hpp.

◆ doping

double plask::Material::Parameters::doping

ammount of dopant (0.0 if there is no dopant)

Definition at line 153 of file material.hpp.

◆ label

std::string plask::Material::Parameters::label

material label

Definition at line 144 of file material.hpp.

◆ name

std::string plask::Material::Parameters::name

name of material, part before label, can be undefined for complex materials

Definition at line 141 of file material.hpp.


The documentation for this struct was generated from the following files: