1#ifndef VIENNASHE_SETTERS_HPP
2#define VIENNASHE_SETTERS_HPP
19#include "viennagrid/forwards.hpp"
20#include "viennagrid/mesh/mesh.hpp"
43 template <
typename DeviceType>
52 void operator()(T
const & t,
value_type value)
const { is_doping_n_ ? device_.set_doping_n(value, t) : device_.set_doping_p(value, t); }
Convenience functor for setting the doping across the device.
doping_setter(DeviceType &d, viennashe::carrier_type_id ctype)
void operator()(T const &t, value_type value) const
Contains the definition of a device class independent of the actual macroscopic model to be solved.
Provides the exceptions used in the main viennashe namespace.
Contains forward declarations and definition of small classes that must be defined at an early stage.
A very simple material database. Needs to be replaced by something more versatile soon.
The main ViennaSHE namespace. All functionality resides inside this namespace.
carrier_type_id
Enumeration type for selecting the carrier type.
Provides a number of fundamental constants. All constants in SI units.
Contains the definition of a trap level.