PLaSK library

Loading...
Searching...
No Matches
Classes | Namespaces | Macros | Functions | Variables
material.hpp File Reference

This file contains base classes for materials and material database class. More...

`#include <string>`
`#include <map>`
`#include <vector>`
`#include <functional>`
`#include <tuple>`
`#include <type_traits>`
`#include "../math.hpp"`
`#include "../memory.hpp"`
`#include "../exceptions.hpp"`
`#include "../phys/constants.hpp"`
`#include "../phys/functions.hpp"`
`#include "../vector/tensor2.hpp"`
`#include "../vector/tensor3.hpp"`
`#include "../parallel.hpp"`
`#include "../optional.hpp"`
Include dependency graph for material.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

## Classes
struct | plask::Material
| Represent material, its physical properties. More...
struct | plask::Material::Parameters
| Parameters of material, information about: name, label, composition and dopant. More...
struct | plask::Material::StringBuilder
| Helper class for easy constructing string representations of complex materials. More...
struct | plask::DummyMaterial
| Dummy named material. More...
struct | plask::Semiconductor
| Base material class for all semiconductors and similar materials. More...
struct | plask::Metal
| Base material class for all metals. More...
struct | plask::Oxide
| Base material class for all oxides. More...
struct | plask::Dielectric
| Base material class for all dielectrics. More...
struct | plask::LiquidCrystal
| Base material class for all liquid crystals. More...
struct | plask::GenericMaterial
| Generic material, which can actually be instantiated. More...
struct | plask::MaterialWithBase
| Material with another one as base. More...
struct | plask::MaterialCache

## Namespaces
namespace | plask
| Patterson quadrature for complex function along specified line.

## Macros
#define | RETURN_MATERIAL_NAN(param)

## Functions
int | plask::elementGroup (const std::string &objectName)
| Get group in periodic table of given `object`.

## Variables
PLASK_API OmpNestedLock | plask::material_omp_lock
| Global Python lock.

## Detailed Description

This file contains base classes for materials and material database class.

Definition in file material.hpp.

## Macro Definition Documentation

## ◆ RETURN_MATERIAL_NAN

#define RETURN_MATERIAL_NAN | ( |  | param | ) |

Value:
static bool warn = true; \
if (warn) { writelog(LOG_WARNING, "Material {}: non-applicable parameter " BOOST_PP_STRINGIZE(param) " returned as NAN", name()); warn = false; } \
return NAN;

Definition at line 38 of file material.hpp.