Defines a set of setup routines and checkers for simulators. More...
#include <iostream>#include <sstream>#include <string>#include <stdexcept>#include <limits>#include "viennashe/forwards.h"#include "viennashe/accessors.hpp"#include "viennashe/setters.hpp"#include "viennashe/device.hpp"#include "viennashe/exception.hpp"#include "viennashe/util/misc.hpp"#include "viennashe/physics/physics.hpp"#include "viennashe/materials/all.hpp"#include "viennashe/util/filter.hpp"#include "viennashe/util/checks.hpp"#include "viennashe/log/log.hpp"#include "viennagrid/algorithm/norm.hpp"#include "viennagrid/algorithm/quantity_transfer.hpp"#include "viennagrid/algorithm/closest_points.hpp"#include "viennagrid/algorithm/distance.hpp"#include "viennagrid/mesh/segmentation.hpp"#include "viennagrid/mesh/mesh_operations.hpp"Go to the source code of this file.
Namespaces | |
| namespace | viennashe |
| The main ViennaSHE namespace. All functionality resides inside this namespace. | |
| namespace | viennashe::detail |
| Namespace for implementation details. Typically not of interest for the library user. | |
Functions | |
| template<typename ElementTagT , typename DeviceType , typename AccessorType , typename FilterType , typename CheckerType > | |
| bool | viennashe::detail::check_quantity_on_ncell (DeviceType const &device, AccessorType const &accessor, FilterType const &filter, CheckerType const &checker) |
| Ensures that a quantity is available on n-cells of a certain dimension. If this is not the case, the quantity is transferred (averaged/interpolated) from cells of other dimension. An exception is thrown if the fallback-transfer fails. More... | |
| template<typename TagT , typename FallbackTagT , typename DeviceType , typename AccessorType , typename FilterType , typename CheckerType , typename FallbackAccessorType , typename FallbackSetterType , typename FallbackAveragerType , typename FallbackFilterType , typename FallbackCheckerType > | |
| bool | viennashe::detail::setup_and_check_quantity_on_ncell_with_fallback (DeviceType &device, AccessorType const &accessor, FilterType const &filter, CheckerType const &checker, FallbackAccessorType const &fallback_accessor, FallbackSetterType &fallback_setter, FallbackAveragerType const &fallback_averager, FallbackFilterType const &fallback_filter, FallbackCheckerType const &fallback_checker) |
| Ensures that a quantity is available on n-cells of a certain dimension. If this is not the case, the quantity is transferred (averaged/interpolated) from cells of other dimension. More... | |
| invalid_doping_in_device_exception | viennashe::detail::get_invalid_doping_exception (viennashe::carrier_type_id ctype) |
| Helper routine for creating the exception thrown if the donator doping is found to be invalid on the device. More... | |
| template<typename DeviceType > | |
| void | viennashe::setup_doping_on_vertices (DeviceType &device, viennashe::carrier_type_id ctype) |
| Sets up donator or acceptor doping on vertices. If doping is provided on cells, it is interpolated accordingly. More... | |
| template<typename DeviceType > | |
| void | viennashe::setup_doping_on_vertices (DeviceType &device) |
| Sets up donator and acceptor doping on vertices. If doping is provided on cells, it is interpolated accordingly. More... | |
Defines a set of setup routines and checkers for simulators.
Definition in file simulator_setup.hpp.