PLaSK library

Loading...
Searching...
No Matches
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
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< Material > | operator() (double m1_weight) const override
| Construct material.
shared_ptr< Material > | singleMaterial () 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 MaterialConstructor > | constructor

## 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

  constructor | material constructor
  material1composition | incomplate composition of first material
  material2composition | incomplate composition of second material, must be defined for the same objects as `material1composition`
  shape | changing 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_weight | weight 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
| inline override virtual

Construct material.

Parameters

  m1_weight | weight 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
| inline override virtual

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:

- plask/material/db.hpp
- plask/material/db.cpp