PLaSK library
Loading...
Searching...
No Matches
plask::MaterialsDB::MixedCompositionOnlyFactory Struct Reference

Factory of alloy material which construct it version with mixed version of two compositions (for materials without dopants). More...

#include <plask/material/db.hpp>

Inheritance diagram for plask::MaterialsDB::MixedCompositionOnlyFactory:
[legend]
Collaboration diagram for plask::MaterialsDB::MixedCompositionOnlyFactory:
[legend]

Public Member Functions

 MixedCompositionOnlyFactory (shared_ptr< const MaterialConstructor > constructor, const Material::Composition &material1composition, const Material::Composition &material2composition, double shape=1.)
 Construct MixedCompositionFactory for given material constructor and two compositions for this constructor.
 
shared_ptr< Materialoperator() (double m1_weight) const override
 Construct material.
 
shared_ptr< MaterialsingleMaterial () const override
 Get material only if this factory represents solid material (if operator(double m1_weight) is independent from m1_weight).
 
- Public Member Functions inherited from plask::MaterialsDB::MixedCompositionFactory
 MixedCompositionFactory (shared_ptr< const MaterialConstructor > constructor)
 Construct MixedCompositionFactory for given material constructor and two compositions for this constructor.
 
virtual ~MixedCompositionFactory ()
 

Protected Member Functions

Material::Composition mixedComposition (double m1_weight) const
 Calculate mixed composition, of material1composition and material2composition.
 

Protected Attributes

Material::Composition material1composition
 
Material::Composition material2composition
 
double shape
 
- Protected Attributes inherited from plask::MaterialsDB::MixedCompositionFactory
shared_ptr< const MaterialConstructorconstructor
 

Detailed Description

Factory of alloy material which construct it version with mixed version of two compositions (for materials without dopants).

Definition at line 172 of file db.hpp.

Constructor & Destructor Documentation

◆ MixedCompositionOnlyFactory()

plask::MaterialsDB::MixedCompositionOnlyFactory::MixedCompositionOnlyFactory ( shared_ptr< const MaterialConstructor constructor,
const Material::Composition material1composition,
const Material::Composition material2composition,
double  shape = 1. 
)

Construct MixedCompositionFactory for given material constructor and two compositions for this constructor.

Parameters
constructormaterial constructor
material1compositionincomplate composition of first material
material2compositionincomplate composition of second material, must be defined for the same objects as material1composition
shapechanging material shape exponent

Definition at line 41 of file db.cpp.

Member Function Documentation

◆ mixedComposition()

Material::Composition plask::MaterialsDB::MixedCompositionOnlyFactory::mixedComposition ( double  m1_weight) const
protected

Calculate mixed composition, of material1composition and material2composition.

Parameters
m1_weightweight of first composition (material1composition)
Returns
incomplate, mixed composision

Definition at line 50 of file db.cpp.

◆ operator()()

shared_ptr< Material > plask::MaterialsDB::MixedCompositionOnlyFactory::operator() ( double  m1_weight) const
inlineoverridevirtual

Construct material.

Parameters
m1_weightweight of first composition
Returns
constructed material

Implements plask::MaterialsDB::MixedCompositionFactory.

Definition at line 202 of file db.hpp.

◆ singleMaterial()

shared_ptr< Material > plask::MaterialsDB::MixedCompositionOnlyFactory::singleMaterial ( ) const
inlineoverridevirtual

Get material only if this factory represents solid material (if operator(double m1_weight) is independent from m1_weight).

Returns
material or nullptr if it is not solid

Implements plask::MaterialsDB::MixedCompositionFactory.

Definition at line 206 of file db.hpp.

Member Data Documentation

◆ material1composition

Material::Composition plask::MaterialsDB::MixedCompositionOnlyFactory::material1composition
protected

Definition at line 176 of file db.hpp.

◆ material2composition

Material::Composition plask::MaterialsDB::MixedCompositionOnlyFactory::material2composition
protected

Definition at line 176 of file db.hpp.

◆ shape

double plask::MaterialsDB::MixedCompositionOnlyFactory::shape
protected

Definition at line 178 of file db.hpp.


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