PLaSK library

Loading...
Searching...
No Matches
Namespaces | Classes | Typedefs | Enumerations | Functions | Variables
plask Namespace Reference

Patterson quadrature for complex function along specified line. More...

## Namespaces
namespace | align
namespace | axis
namespace | category
namespace | ccategory
namespace | detail
namespace | details
namespace | edge
namespace | electrical
namespace | gain
namespace | hyman
namespace | interpolation
namespace | masked_hyman
namespace | materials
namespace | optical
namespace | phys
| Basic physical quantities and functions.
namespace | python
namespace | solvers
namespace | spline
namespace | thermal

## Classes
struct | __InterpolateMeta__
struct | __InterpolateMeta__< SrcMeshT, SrcT, DstT, __ILLEGAL_INTERPOLATION_METHOD__ >
class | AccurateSum
| Allow to compute sum of doubles much more accurate than directly. More...
struct | aligned_allocator
| STL compatible allocator to use with with 16 byte aligned types. More...
struct | aligned_deleter
| Aligned deleter for use e.g. More...
struct | aligned_deleter< T[]>
struct | ArrangeContainer
| Sequence container that repeats its child over a line shifted by a vector. More...
struct | AssignWithBackup
| Assign new value to variable and back the old value in destructor. More...
struct | AxisNames
| Held names of axises. More...
struct | BadId
| This is thrown if name is bad id. More...
struct | BadInput
| This exception is thrown when value specified by the user is bad. More...
struct | BadMesh
| This exception is thrown when the mesh is somehow bad. More...
struct | BandEdges
| Conduction and valence band edges (eV) More...
struct | BandMatrix
struct | BarycentricExtrudedTriangularMesh3DLazyDataImpl
struct | BarycentricTriangularMesh2DLazyDataImpl
struct | Block
| Represent figure which, depends from `dim` is: More...
struct | Boundary
| Instance of this class represents predicate which chooses a subset of points (strictly: indices of points) from a mesh. More...
struct | BoundaryCondition
| One boundary-condition pair. More...
struct | BoundaryConditions
| Set of boundary conditions for given mesh type and boundary condition description type. More...
struct | BoundaryConditionsWithMesh
| Set of boundary conditions instances for given mesh type and boundary condition description type. More...
struct | BoundaryConditionWithMesh
| One boundary-condition pair concretized for a given mesh. More...
struct | BoundaryNodeSet
| Holds BoundaryNodeSetImpl and delegate all calls to it. More...
struct | BoundaryNodeSetImpl
| Base class for boundaries logic. More...
struct | BoundaryNodeSetWithMeshImpl
| Template of base class for boundaries of mesh with given type which store reference to mesh. More...
struct | BoundaryOp
| Boundary which represents union/intersection/difference (depending on OpNodeSetImplT) of boundaries. More...
struct | BoundingBoxCache
| Lazy cache of object bounding box. More...
struct | Box2D
| Rectangle class. More...
struct | Box3D
| Cuboid class. More...
struct | CacheBase
struct | CacheRemoveOnEachChange
| Strategy of removing from cache which removes key always when it is changed. More...
struct | CacheRemoveOnlyWhenDeleted
| Strategy of removing from cache which removes key only when it is deleted. More...
struct | CacheRemoveStrategyBase
| Base class for strategy of removing from cache. More...
struct | CarriersConcentration
| Carriers concentration (1/cm^3) For majority carriers it is not specified whether the carriers are electrons or holes. More...
class | CartesianMesh2DTo3D
| 3D mesh that wrap 2D mesh. More...
class | CartesianMesh2DTo3DExtend
| 3D mesh that wrap 2D mesh (sourceMesh). More...
struct | CFileOutput
struct | chooseType
| Choose nr-th type from types list. More...
struct | Circle
| Represents circle (sphere in 3D) with given radius and center at point (0, 0). More...
struct | Clip
| Represent geometry object equal to its child clipped to given box. More...
struct | CombinedProviderBase
| Template of base class of combine provider. More...
struct | CompressedSetOfNumbers
| Sorted, compressed, indexed set of numbers. More...
struct | ComputationError
| This exception should be thrown by solvers in case of error in computations. More...
struct | Conductivity
| Electrical conductivity [S/m]. More...
struct | ConstDataSourceImpl
| Don't use this directly, use ConstDataSource instead. More...
struct | ConstDataSourceImpl< PropertyT, FIELD_PROPERTY, OutputSpaceType, VariadicTemplateTypesHolder< ExtraArgs... > >
struct | ConstDataSourceImpl< PropertyT, MULTI_FIELD_PROPERTY, OutputSpaceType, VariadicTemplateTypesHolder< ExtraArgs... > >
class | ConstMaterial
struct | ConstValueLazyDataImpl
| Lazy data vector of consts. More...
struct | CriticalException
| Exceptions of this class are thrownin cases of critical and very unexpected errors (possible plask bugs). More...
struct | CurrentDensity
| Electric current density (kA/cm²) This is 2D vector for two-dimensional sovers. More...
struct | CustomFieldProperty
| Helper class which makes it easier to define property tags classes for vectorial fields that can be interpolated. More...
struct | CyclicReferenceException
| Exceptions of this class are thrown when called operation on geometry graph will cause cyclic reference. More...
struct | Cylinder
| Cylinder with given height and base radius. More...
struct | CylReductionTo2DMesh
| This class is a 2D mesh which wraps 3D mesh (`sourceMesh`), reduce each point of sourceMesh (in cylinder) to 2D and translate it by given vector (`translation`). More...
struct | DataError
| This exception is called when operation on data vectors cannot be performed. More...
struct | DataFrom2Dto3DSourceImpl
| Don't use this directly, use DataFrom2Dto3DSource instead. More...
struct | DataFrom2Dto3DSourceImpl< PropertyT, FIELD_PROPERTY, VariadicTemplateTypesHolder< ExtraArgs... > >
| Don't use this directly, use DataFrom2Dto3DSource instead. More...
struct | DataFrom2Dto3DSourceImpl< PropertyT, MULTI_FIELD_PROPERTY, VariadicTemplateTypesHolder< ExtraArgs... > >
| Don't use this directly, use DataFrom2Dto3DSource instead. More...
struct | DataFrom3Dto2DSourceImpl
| Don't use this directly, use DataFrom3Dto2DSource instead. More...
struct | DataFrom3Dto2DSourceImpl< PropertyT, FIELD_PROPERTY, VariadicTemplateTypesHolder< ExtraArgs... > >
| Don't use this directly, use DataFrom3Dto2DSource instead. More...
struct | DataFrom3Dto2DSourceImpl< PropertyT, MULTI_FIELD_PROPERTY, VariadicTemplateTypesHolder< ExtraArgs... > >
| Don't use this directly, use DataFrom3Dto2DSource instead. More...
struct | DataFrom3DtoCyl2DSourceImpl
| Don't use this directly, use DataFrom3DtoCyl2DSource instead. More...
struct | DataFrom3DtoCyl2DSourceImpl< PropertyT, FIELD_PROPERTY, VariadicTemplateTypesHolder< ExtraArgs... > >
| Don't use this directly, use DataFrom3DtoCyl2DSource instead. More...
struct | DataFrom3DtoCyl2DSourceImpl< PropertyT, MULTI_FIELD_PROPERTY, VariadicTemplateTypesHolder< ExtraArgs... > >
| Don't use this directly, use DataFrom3DtoCyl2DSource instead. More...
struct | DataFromCyl2Dto3DSourceImpl
| Don't use this directly, use DataFromCyl2Dto3DSource instead. More...
struct | DataFromCyl2Dto3DSourceImpl< PropertyT, FIELD_PROPERTY, VariadicTemplateTypesHolder< ExtraArgs... > >
| Don't use this directly, use DataFromCyl2Dto3DSource instead. More...
struct | DataFromCyl2Dto3DSourceImpl< PropertyT, MULTI_FIELD_PROPERTY, VariadicTemplateTypesHolder< ExtraArgs... > >
| Don't use this directly, use DataFromCyl2Dto3DSource instead. More...
class | DataLog
| Template of base class for classes which store or log n-dimensional data. More...
struct | DataSourceImpl
| Don't use this directly, use DataSource instead. More...
class | DataSourceImpl< PropertyT, FIELD_PROPERTY, OutputSpaceT, VariadicTemplateTypesHolder< ExtraArgs... > >
class | DataSourceImpl< PropertyT, MULTI_FIELD_PROPERTY, OutputSpaceT, VariadicTemplateTypesHolder< ExtraArgs... > >
struct | DataSourceWithReceiver
struct | DataVector
| Store pointer and size. More...
struct | DelegateProvider
struct | DelegateProvider< _Res(_ArgTypes...)>
| Template of class which is good base class for providers which delegate calls of operator() to external functor (function or method). More...
struct | DgbMatrix
| Symmetric band matrix structure. More...
struct | Dielectric
| Base material class for all dielectrics. More...
struct | DiffBoundarySetImpl
| This logic holds two boundaries and represent a set difference of them. More...
struct | DimensionError
| This exception is thrown if there is a problem with dimensions. More...
struct | DirectionWithout
struct | DirectionWithout< 2, Primitive< 2 >::DIRECTION_TRAN >
struct | DirectionWithout< 2, Primitive< 2 >::DIRECTION_VERT >
struct | DirectionWithout< 3, Primitive< 3 >::DIRECTION_LONG >
struct | DirectionWithout< 3, Primitive< 3 >::DIRECTION_TRAN >
struct | DirectionWithout< 3, Primitive< 3 >::DIRECTION_VERT >
struct | DontCopyThisField
| This template can be used to show fileds shich should be just ignore by copy constructors and assign operators of the class. More...
struct | DpbMatrix
| Symmetric band matrix structure. More...
struct | DummyMaterial
| Dummy named material. More...
class | DynamicLibraries
| Represent set of dynamically loaded library. More...
struct | DynamicLibrary
| Hold opened shared library. More...
struct | ElementIndexValueGetter
struct | Ellipse
| Represents ellipse (sphere in 3D) with given radius and center at point (0, 0). More...
struct | EllipticCylinder
| EllipticCylinder with given height and base radius. More...
struct | EmptyBoundaryImpl
| Implementation of empty boundary logic. More...
struct | EmptyLeafCacheNode
struct | EnergyLevels
| Energy levels for electrons and holes (eV) More...
struct | Epsilon
| Permittivity tensor. More...
class | EquilateralMesh3D
class | EventWithSourceAndFlags
| Base class for classes which store information about event generated by objects of type `SourceType`. More...
struct | Exception
| Base class for all exceptions thrown by plask library. More...
struct | ExtrudedTriangularMesh3D
| 3D mesh that is a cartesian product of 2D triangular mesh at long-tran and 1D mesh at vert axis. More...
class | Extrusion
| Represent 3D geometry object which are extend of 2D object (child) in lon direction. More...
struct | FemMatrix
struct | FemSolverWithMaskedMesh
struct | FemSolverWithMesh
struct | FermiLevels
| Quasi-Fermi levels for electrons and holes (eV) More...
struct | FieldProperty
| Helper class which makes it easier to define property tags class for fields. More...
struct | FieldProvider
| Instantiation of this template is abstract base class for provider class which provide values in points described by mesh and use interpolation. More...
struct | FieldSumProvider
| Template of class of sum provider for providers with interpolation. More...
struct | FieldSumProviderImpl
| Template of base class of sum provider for providers with interpolation. More...
struct | FieldSumProviderImpl< PropertyT, SpaceT, VariadicTemplateTypesHolder< ExtraArgs... > >
struct | FilterBaseImpl
| Don't use this directly, use FilterBase or Filter instead. More...
struct | FilterBaseImpl< PropertyT, FIELD_PROPERTY, OutputSpaceType, VariadicTemplateTypesHolder< ExtraArgs... > >
struct | FilterBaseImpl< PropertyT, MULTI_FIELD_PROPERTY, OutputSpaceType, VariadicTemplateTypesHolder< ExtraArgs... > >
struct | FilterCommonBase
struct | FilterImpl
struct | FilterImpl< PropertyT, Geometry2DCartesian >
| Filter which provides data in 2D Cartesian space. More...
struct | FilterImpl< PropertyT, Geometry2DCylindrical >
| Filter which provides data in 2D cylindrical space. More...
struct | FilterImpl< PropertyT, Geometry3D >
| Filter which provides data in 3D Cartesian space. More...
struct | FiltersFactory
| Construct filters using data from XML. More...
struct | Flip
| Represent geometry object equal to mirror reflection of its child. More...
struct | FunctorIndexedIterator
| Template to create iterators which using functor having size argument. More...
struct | Gain
| Material gain (1/cm). More...
struct | Gap1D
| Gap in one, choose at compile time, direction. More...
struct | GenericMaterial
| Generic material, which can actually be instantiated. More...
struct | Geometry
| Base class for all geometry trunks. More...
class | Geometry2DCartesian
| Geometry trunk in 2D Cartesian space. More...
class | Geometry2DCylindrical
| Geometry trunk in 2D Cylindrical space. More...
class | Geometry3D
| Geometry trunk in 3D space. More...
class | GeometryD
| Base class for all geometry trunks in given space. More...
struct | GeometryException
| Base class for all geometry exceptions thrown by plask library. More...
struct | GeometryObject
| Base class for all geometries. More...
struct | GeometryObjectBBox
| Geometry object + its bounding box. More...
struct | GeometryObjectContainer
| Template of base class for all container nodes. More...
struct | GeometryObjectD
| Template of base roles for geometry objects in space with given number of dimensions (2 or 3). More...
struct | GeometryObjectLeaf
| Template of base classes for all leaf nodes. More...
struct | GeometryObjectSeparator
| Template of base classes for all separator nodes. More...
struct | GeometryObjectTransform
| Template of base class for all transform nodes. More...
struct | GeometryObjectTransformSpace
| Template of base class for all transformations which change the space between its parent and child. More...
class | GeometryReader
| Allow to read geometry from XML. More...
struct | Heat
| Density of heat sources [W/m²] or (W/m³). More...
struct | HeatFlux
| Heat flux in 2D or 3D space [W/m] or [W/m²]. More...
struct | HeatSumProvider
| Provider which sums heat densities from one or more sources. More...
struct | HeightReader
| Helper used by read_... stack functions. More...
struct | Holder
| Template for base class of object holder. More...
struct | HolderRef
| Template for base class of object holder. More...
struct | HollowCylinder
| Hollow cylinder (tube) with given height and two base radii (internal and external). More...
struct | Hyman
struct | Hyman< dcomplex >
struct | Hyman< Tensor2< T > >
struct | Hyman< Tensor3< T > >
struct | Hyman< Vec< 2, T > >
struct | Hyman< Vec< 3, T > >
struct | HymanSplineMaskedRect2DLazyDataImpl
struct | HymanSplineMaskedRect3DLazyDataImpl
struct | HymanSplineRect2DLazyDataImpl
struct | HymanSplineRect3DLazyDataImpl
struct | IllFormatedComplex
| Exception thrown by complex parser when complex number is ill-formated. More...
struct | IndexedIterator
| Template to create iterators for containers which have operator[]. More...
struct | indices
| Don't use this directly, use applyTuple instead. More...
struct | InnerDataSource
struct | InternalCacheNode
| Instances of this template represents all internal nodes of cache. More...
struct | InterpolatedLazyDataImpl
| Base class for lazy data (vector) that perform interpolation. More...
struct | InterpolationAlgorithm
| Specialization of this class are used for interpolation and can depend on source mesh type, data type and the interpolation method. More...
struct | InterpolationAlgorithm< EquilateralMesh3D, SrcT, DstT, INTERPOLATION_SMOOTH_SPLINE >
struct | InterpolationAlgorithm< EquilateralMesh3D, SrcT, DstT, INTERPOLATION_SPLINE >
struct | InterpolationAlgorithm< EquilateralMesh3D::ElementMesh, SrcT, DstT, INTERPOLATION_NEAREST >
struct | InterpolationAlgorithm< ExtrudedTriangularMesh3D, SrcT, DstT, INTERPOLATION_LINEAR >
struct | InterpolationAlgorithm< ExtrudedTriangularMesh3D, SrcT, DstT, INTERPOLATION_NEAREST >
struct | InterpolationAlgorithm< ExtrudedTriangularMesh3D::ElementMesh, SrcT, DstT, INTERPOLATION_NEAREST >
struct | InterpolationAlgorithm< LateralMesh3D< SrcMeshT >, SrcT, DstT, INTERPOLATION_DEFAULT >
struct | InterpolationAlgorithm< LateralMesh3D< SrcMeshT >, SrcT, DstT, method >
struct | InterpolationAlgorithm< RectangularMaskedMesh2D, SrcT, DstT, INTERPOLATION_LINEAR >
struct | InterpolationAlgorithm< RectangularMaskedMesh2D, SrcT, DstT, INTERPOLATION_NEAREST >
struct | InterpolationAlgorithm< RectangularMaskedMesh2D, SrcT, DstT, INTERPOLATION_SPLINE >
struct | InterpolationAlgorithm< RectangularMaskedMesh2D::ElementMesh, SrcT, DstT, INTERPOLATION_LINEAR >
struct | InterpolationAlgorithm< RectangularMaskedMesh2D::ElementMesh, SrcT, DstT, INTERPOLATION_NEAREST >
struct | InterpolationAlgorithm< RectangularMaskedMesh2D::ElementMesh, SrcT, DstT, INTERPOLATION_SPLINE >
struct | InterpolationAlgorithm< RectangularMaskedMesh3D, SrcT, DstT, INTERPOLATION_LINEAR >
struct | InterpolationAlgorithm< RectangularMaskedMesh3D, SrcT, DstT, INTERPOLATION_NEAREST >
struct | InterpolationAlgorithm< RectangularMaskedMesh3D, SrcT, DstT, INTERPOLATION_SPLINE >
struct | InterpolationAlgorithm< RectangularMaskedMesh3D::ElementMesh, SrcT, DstT, INTERPOLATION_LINEAR >
struct | InterpolationAlgorithm< RectangularMaskedMesh3D::ElementMesh, SrcT, DstT, INTERPOLATION_NEAREST >
struct | InterpolationAlgorithm< RectangularMaskedMesh3D::ElementMesh, SrcT, DstT, INTERPOLATION_SPLINE >
struct | InterpolationAlgorithm< RectangularMesh2D, SrcT, DstT, INTERPOLATION_LINEAR >
struct | InterpolationAlgorithm< RectangularMesh2D, SrcT, DstT, INTERPOLATION_NEAREST >
struct | InterpolationAlgorithm< RectangularMesh2D, SrcT, DstT, INTERPOLATION_SMOOTH_SPLINE >
struct | InterpolationAlgorithm< RectangularMesh2D, SrcT, DstT, INTERPOLATION_SPLINE >
struct | InterpolationAlgorithm< RectangularMesh2D::ElementMesh, SrcT, DstT, INTERPOLATION_NEAREST >
struct | InterpolationAlgorithm< RectangularMesh3D, SrcT, DstT, INTERPOLATION_LINEAR >
struct | InterpolationAlgorithm< RectangularMesh3D, SrcT, DstT, INTERPOLATION_NEAREST >
struct | InterpolationAlgorithm< RectangularMesh3D, SrcT, DstT, INTERPOLATION_SMOOTH_SPLINE >
struct | InterpolationAlgorithm< RectangularMesh3D, SrcT, DstT, INTERPOLATION_SPLINE >
struct | InterpolationAlgorithm< RectangularMesh3D::ElementMesh, SrcT, DstT, INTERPOLATION_NEAREST >
struct | InterpolationAlgorithm< SrcMeshT, SrcT, DstT, INTERPOLATION_DEFAULT >
| Specialization of InterpolationAlgorithm showing elegant message if algorithm default is used. More...
struct | InterpolationAlgorithm< TriangularMesh2D, SrcT, DstT, INTERPOLATION_LINEAR >
struct | InterpolationAlgorithm< TriangularMesh2D, SrcT, DstT, INTERPOLATION_NEAREST >
struct | InterpolationAlgorithm< TriangularMesh2D::ElementMesh, SrcT, DstT, INTERPOLATION_NEAREST >
struct | InterpolationAlgorithm< typename std::enable_if< method !=INTERPOLATION_DEFAULT, EquilateralMesh3D >::type, SrcT, DstT, method >
struct | InterpolationAlgorithm< typename std::enable_if< method !=INTERPOLATION_DEFAULT, EquilateralMesh3D::ElementMesh >::type, SrcT, DstT, method >
struct | InterpolationAlgorithm< typename std::enable_if< method !=INTERPOLATION_DEFAULT, RectangularMesh2D::ElementMesh >::type, SrcT, DstT, method >
struct | InterpolationAlgorithm< typename std::enable_if< method !=INTERPOLATION_DEFAULT, RectangularMesh3D::ElementMesh >::type, SrcT, DstT, method >
class | InterpolationFlags
| Interpolation flags that give information how to interpolate fields on periodic and symmetric geometries. More...
struct | Intersection
| Represent geometry object equal to intersection of the children. More...
struct | IntersectionBoundarySetImpl
| This logic holds two boundaries and represent a set intersection of them. More...
struct | is_callable
| Check if Expr is callable. More...
struct | IterativeMatrixParams
struct | LateralMesh3D
| 3D mesh with arbitrary lateral mesh and constant vertical coordinate. More...
struct | LateralVec
struct | Lattice
| Lattice container that arranges its children in two-dimensional lattice. More...
class | LazyData
| Lazy data (vector). More...
struct | LazyDataDelegateImpl
| Call functor to get data. More...
struct | LazyDataFromVectorImpl
| Wrap DataVector and allow to access to it. More...
struct | LazyDataImpl
| Base class for implementation used by lazy data vector. More...
struct | LeafCacheNode
struct | LightE
| Profile of the optical electric field [V/m]. More...
struct | LightH
| Profile of the optical magnetic field (A/m). More...
struct | LightMagnitude
| Profile of the optical field 1/2 E × conj(E) / Z0 [W/m²]. More...
struct | LightMagnitudeSumProvider
| Provider which sums light intensities from one or more sources. More...
struct | LinearInterpolatedLazyDataImpl
| Implementation of InterpolatedLazyDataImpl which calls src_mesh.interpolateLinear(src_vec, dst_mesh). More...
struct | LiquidCrystal
| Base material class for all liquid crystals. More...
class | Logger
| Abstract class that is base for all loggers. More...
struct | Luminescence
| Luminescence [?]. More...
struct | make_seq_indices_impl
struct | make_seq_indices_impl< Begin, End, indices< Indices... > >
struct | make_seq_indices_impl< End, End, indices< Indices... > >
struct | Manager
| Geometry manager features: More...
struct | Material
| Represent material, its physical properties. More...
struct | MaterialCache
class | MaterialCantBeMixedException
struct | MaterialInfo
| Collect meta-information about material. More...
struct | MaterialMethodNotImplemented
| This exception is thrown by material methods which are not implemented. More...
struct | MaterialParseException
| Exceptions of this class are thrownwhen material string parser find errors. More...
struct | MaterialsDB
| Materials database. More...
struct | MaterialWithBase
| Material with another one as base. More...
struct | Mesh
| Base class for all the meshes. More...
class | MeshAxis
| Abstract class to derive all mesh axes from. More...
struct | MeshBase
| Common base for meshes and generators. More...
struct | MeshD
| Base class for all meshes defined for specified number of dimensions. More...
class | MeshGenerator
| Base class for every mesh generator. More...
class | MeshGeneratorD
| Base class for specific mesh generator. More...
struct | Metal
| Base material class for all metals. More...
struct | MethodIterator
| Template to create iterators which using method having index argument. More...
struct | MIArgumentRange
class | MidpointAxis
struct | MINote
struct | Mirror
| Represent geometry object equal to its child with mirror reflection. More...
struct | MISee
struct | MISeeClass
struct | MISource
struct | MixedMaterial
| Material which consist of several real materials. More...
struct | ModeEffectiveIndex
| Effective index. More...
struct | ModeLightE
| Profile of the optical electric field [V/m]. More...
struct | ModeLightH
| Profile of the optical magnetic field (A/m). More...
struct | ModeLightMagnitude
| Profile of the optical field 1/2 E × conj(E) / Z0 [W/m²]. More...
struct | ModeLoss
| Modal loss (1/cm). More...
struct | ModePropagationConstant
| Propagation constant (1/µm). More...
struct | ModeWavelength
| Wavelength (nm). More...
struct | MultiCustomFieldProperty
| Helper class which makes it easier to define property tags classes for multiple vectorial fields that can be interpolated. More...
struct | MultiFieldProperty
| Helper class which makes it easier to define property tags class for multiple fields. More...
struct | MultiFieldProvider
| Instantiation of this template is abstract base class for provider class which provide values in points described by mesh and use interpolation. More...
struct | MultiLateralMesh3D
| 3D mesh with arbitrary lateral mesh and vertical axis. More...
class | MultiStackContainer
| N-stacks. More...
struct | MultiValueProperty
| Helper class which makes it easier to define property tags class for multiple value (double type by default) properties. More...
struct | MultiValueProvider
| Instantiation of this template is abstract base class for provider which provide multiple values (for example one double). More...
struct | MultiVectorFieldProperty
| Helper class which makes it easier to define property tags classes for multiple vectorial fields that can be interpolated. More...
struct | NamesConflictException
| Exceptions of this class are thrownby some geometry object classes when there is no required child. More...
struct | NaNImpl
| This template is used by NaN function and have to be specialized to support new types (other than type supported by std::numeric_limits). More...
struct | NaNImpl< std::complex< T > >
| Specialization of NaNImpl which adds support for complex numbers. More...
struct | NaNImpl< Tensor2< T > >
| Specialization of NaNImpl which add support for 2D tensors. More...
struct | NaNImpl< Tensor3< T > >
| Specialization of NaNImpl which add support for 3D tensors. More...
struct | NaNImpl< Vec< 2, T > >
| Specialization of NaNImpl which add support for 2D vectors. More...
struct | NaNImpl< Vec< 3, T > >
| Specialization of NaNImpl which add support for 3D vectors. More...
struct | NearestNeighborElementExtrudedTriangularMesh3DLazyDataImpl
struct | NearestNeighborElementTriangularMesh2DLazyDataImpl
struct | NearestNeighborExtrudedTriangularMesh3DLazyDataImpl
struct | NearestNeighborInterpolatedLazyDataImpl
| Implementation of InterpolatedLazyDataImpl which calls src_mesh.interpolateNearestNeighbor(src_vec, dst_mesh). More...
struct | NearestNeighborTriangularMesh2DLazyDataImpl
struct | NoChildException
| Exceptions of this class are thrown by some geometry object classes when there is no required child. More...
struct | NoGeometryException
| Exceptions of this class are thrown when solvers don't have geometry set. More...
class | NoLogging
| Logger switch. More...
struct | NoMeshException
| Exceptions of this class are thrown when solvers don't have mesh set. More...
struct | NoProvider
| This exception is thrown, typically on access to receiver data, when there is no provider connected with it. More...
struct | NoSuchAxisNames
| This exception is thrown when axis (typically with given name) is not found. More...
struct | NoSuchGeometry
| This exception is thrown when geometry (typically with given name) is not found. More...
struct | NoSuchGeometryObject
| This exception is thrown when geometry object (typically with given name) is not found. More...
struct | NoSuchGeometryObjectType
| This exception is thrown when geometry object (typically with given name) is not found. More...
class | NoSuchMaterial
| This exception is thrown when material (typically with given name) is not found. More...
struct | NoSuchPath
| This exception is thrown when named PatHints are not found. More...
struct | NotImplemented
| This exception is thrown when some method is not implemented. More...
struct | NotUniqueObjectException
| Exceptions of this class are thrown by some geometry object classes. More...
struct | NoValue
struct | OmpEnabler
struct | OmpLock
struct | OmpLockGuard
struct | OmpLockState
| State of the current lock. More...
struct | OnePointAxis
| A trivial axis that contains only one point. More...
struct | OnePointMesh
| Mesh which represent set with only one point in space with size given as template parameter `DIM`. More...
class | OrderedAxis
| Rectilinear mesh in 1D space. More...
class | OrderedMesh1DRegularGenerator
| Generator of basic 2D geometry grid with approximately equal spacing. More...
struct | OrderedMesh1DSimpleGenerator
| Generator of basic 2D geometry grid. More...
struct | OStreamOutput
struct | OuterDataSource
| Data source in which input object is outer and contains output object. More...
struct | OutOfBoundsException
| This exception is thrown when some value (function argument) is out of bound. More...
struct | Oxide
| Base material class for all oxides. More...
struct | Path
| Path in geometry graph. More...
struct | PathHints
| Represent hints for path finder. More...
struct | PointsOnCircleMeshExtend
| 3D mesh that wrap 2D mesh (sourceMesh). More...
struct | Polygon
struct | PolymorphicDelegateProvider
struct | PolymorphicDelegateProvider< _BaseClass, _Res(_ArgTypes...)>
| Template of class which is a good base class for providers which delegate calls of operator() to external functor (function or method). More...
struct | PolymorphicForwardIterator
| Polymorphic, forward iterator. More...
struct | PolymorphicForwardIteratorImpl
| Base class for forward, polymorphic iterators implementations. More...
struct | PolymorphicForwardIteratorWithIndex
| Polymorphic, forward iterator which allow to get index of current position. More...
struct | PolymorphicForwardIteratorWithIndexImpl
| Base class for forward, polymorphic iterators implementations which allow to get index of current position. More...
struct | PolymorphicForwardIteratorWrapperImpl
| Polymorphic iterator that wrap another (usually not polymorphic) iterator (of type wrapped_iterator_type). More...
struct | PositionValidator
struct | Potential
| Electric potential (V) More...
struct | PredicateBoundaryImpl
| Boundary logic implementation which represents set of indexes which fulfill predicate. More...
struct | Primitive
| Define types of primitives and constants in space with given number of dimensions. More...
struct | Primitive< 1 >
| Specialization of Primitive, which define types of primitives and constants in space with 1 dimensions. More...
struct | Primitive< 2 >
| Specialization of Primitive, which define types of primitives and constants in space with 2 dimensions. More...
struct | Primitive< 3 >
| Specialization of Primitive, which define types of primitives and constants in space with 3 dimensions. More...
struct | Printable
| Base class / helper for printable classes with virtual print method. More...
struct | Prism
struct | Property
| Helper class which makes it easier to define property tags class. More...
struct | Property< _propertyType, _ValueType, _ValueType, _ExtraParams... >
struct | PropertyAt
| Describe property type in given space. More...
struct | PropertyAt< PropertyTag, void >
struct | PropertyAtDimImpl
| Describe property in given space. Don't use it directly, but use PropertyAtDim. More...
struct | PropertyAtDimImpl< PropertyTag, 2, false >
struct | PropertyAtDimImpl< PropertyTag, 2, true >
| Describe property in 2D space. Don't use it directly, but use PropertyAtDim. More...
struct | PropertyAtDimImpl< PropertyTag, 3, false >
struct | PropertyAtDimImpl< PropertyTag, 3, true >
| Describe property in 3D space. Don't use it directly, but use PropertyAtDim. More...
struct | PropertyAtImpl
struct | PropertyAtImpl< PropertyTag, Geometry2DCylindrical, Geometry3D, false >
struct | PropertyAtImpl< PropertyTag, Geometry3D, Geometry2DCylindrical, false >
struct | PropertyTypeToProviderName
struct | PropertyTypeToProviderName< FIELD_PROPERTY >
struct | PropertyTypeToProviderName< MULTI_FIELD_PROPERTY >
struct | PropertyTypeToProviderName< MULTI_VALUE_PROPERTY >
struct | PropertyTypeToProviderName< SINGLE_VALUE_PROPERTY >
struct | Provider
| Base class for all Providers. More...
struct | ProviderFor
| Specializations of this class define implementations of providers for given property tag: More...
struct | ProviderImpl
| Specializations of this class are implementations of providers for given property tag class and this tag properties. More...
struct | ProviderImpl< PropertyT, FIELD_PROPERTY, SpaceT, VariadicTemplateTypesHolder< _ExtraParams... > >
| Specialization which implements provider class which provides values in mesh points and uses interpolation. More...
struct | ProviderImpl< PropertyT, MULTI_FIELD_PROPERTY, SpaceT, VariadicTemplateTypesHolder< _ExtraParams... > >
| Specialization which implements provider class which provides multiple values in mesh points and uses interpolation. More...
struct | ProviderImpl< PropertyT, MULTI_VALUE_PROPERTY, SpaceT, VariadicTemplateTypesHolder< _ExtraParams... > >
| Partial specialization which implements abstract provider class which provides a single value, typically one double. More...
struct | ProviderImpl< PropertyT, SINGLE_VALUE_PROPERTY, SpaceT, VariadicTemplateTypesHolder< _ExtraParams... > >
| Partial specialization which implements abstract provider class which provides a single value, typically one double. More...
class | Receiver
| Base class for all Receivers. More...
struct | ReceiverBase
| Common non-template base for all receivers. More...
struct | ReceiverFor
| Specializations of this class are implementations of Receiver for given property tag. More...
struct | Rectangular_t
struct | Rectangular_t< 1 >
struct | RectangularMaskedMesh2D
| Rectangular mesh which uses (and indexes) only chosen elements and all nodes in their corners. More...
struct | RectangularMaskedMesh3D
| Rectangular mesh which uses (and indexes) only chosen elements and all nodes in their corners. More...
struct | RectangularMaskedMeshBase
| Common base class for RectangularMaskedMesh 2D and 3D. More...
class | RectangularMesh2D
| Rectilinear mesh in 2D space. More...
class | RectangularMesh2DFrom1DGenerator
| Generator of 2D geometry grid using other generator for horizontal axis. More...
class | RectangularMesh2DRegularGenerator
| Generator of basic 2D geometry grid with approximately equal spacing. More...
struct | RectangularMesh2DSimpleGenerator
| Generator of basic 2D geometry grid. More...
class | RectangularMesh3D
| Rectangular mesh in 3D space. More...
struct | RectangularMesh3DRegularGenerator
| Generator of basic 3D geometry grid with approximately equal spacing. More...
struct | RectangularMesh3DSimpleGenerator
| Generator of basic 3D geometry grid. More...
struct | RectangularMeshBase2D
struct | RectangularMeshBase3D
struct | RectangularMeshDivideGenerator
| Dividing generator ensuring no rapid change of element size. More...
struct | RectangularMeshRefinedGenerator
| Dividing generator ensuring no rapid change of element size. More...
struct | RectangularMeshSmoothGenerator
| Dense-edge generator that has very dense sampling near edges and gradually gets wider towards the center. More...
class | RectilinearMesh3D
| Rectilinear mesh in 3D space. More...
struct | ReductionTo2DMesh
| This class is a 2D mesh which wraps 3D mesh (`sourceMesh`), reduce each point of sourceMesh to 2D and translate it back by given vector (`translation`). More...
struct | RefractiveIndex
| Refractive index. More...
struct | RegisterMeshGeneratorReader
| Helper which call stores mesh reader when constructed. More...
struct | RegisterMeshReader
| Helper which call stores mesh reader when constructed. More...
class | RegularAxis
| Regular mesh in 1d space. More...
struct | ReindexedContainer
| ReindexedContainer instantiation is class which objects have reference to original container and operator[]. More...
struct | Revolution
| Represent 3D geometry object which is an effect of revolving a 2D object (child) around the up axis. More...
struct | RotatedCuboid
| Represent a cuboid that can be rotated in a horizontal plane. More...
struct | SafeDataImpl
| LazyData implementation removing NaN from another data. More...
struct | SameMeshChecker
| Object of this class allows for checking if a given mesh is the same mesh which has been used recently. More...
struct | ScaledFieldProvider
| Template of class of scaled provider for providers with interpolation. More...
struct | ScaledFieldProviderImpl
| Template of base class of scaled provider for providers with interpolation. More...
struct | ScaledFieldProviderImpl< DstPropertyT, SrcPropertyT, MULTI_FIELD_PROPERTY, SpaceT, ScaleT, VariadicTemplateTypesHolder< ExtraArgs... > >
struct | ScaledFieldProviderImpl< DstPropertyT, SrcPropertyT, propertyType, SpaceT, ScaleT, VariadicTemplateTypesHolder< ExtraArgs... > >
struct | ScaledLazyDataImpl
struct | ScaledProviderBase
| Template of base of scaled provider. More...
struct | SegmentSet
struct | SegmentSetMember
struct | SegmentsIterator
| Iterate over segments. More...
struct | Semiconductor
| Base material class for all semiconductors and similar materials. More...
struct | ShelfContainer2D
| Horizontal stack. More...
struct | SingleValueProperty
| Helper class which makes it easier to define property tags class for single value (double type by default) properties. More...
struct | SingleValueProvider
| Instantiation of this template is abstract base class for provider which provide one value (for example one double). More...
struct | SmoothSplineRect2DLazyDataImpl
struct | SmoothSplineRect3DLazyDataImpl
class | Solver
| Base class for all solvers. More...
class | SolverOver
| Base class for all solvers operating on specified space. More...
struct | SolverWithMesh
| Base class for all solvers operating on specified olding an external mesh. More...
struct | SparseBandMatrix
struct | SparseFreeMatrix
struct | SparseMatrix
struct | SpatialIndexNode
| Base class for cache and nodes of cache. More...
struct | SplineMaskedRect2DLazyDataImpl
struct | SplineMaskedRect3DLazyDataImpl
struct | SplineMaskedRectElement2DLazyDataImpl
struct | SplineMaskedRectElement3DLazyDataImpl
struct | SplineRect2DLazyDataImpl
struct | SplineRect3DLazyDataImpl
struct | StackContainer
| Container which have children in stack/layers. More...
struct | StackContainerBaseImpl
| Common code for stack containers (which have children in stack/layers). More...
struct | StderrLogger
struct | StdSetBoundaryImpl
| Implementation of boundary logic which holds a set of node indices in std::set. More...
class | StringInterpreter
| Objects of this class allow to parse string value and interpret it as given type. More...
struct | StrongCache
| Cache values of type Value using Key type to index it. More...
struct | Temperature
| Physical property tag class for temperature: More...
struct | Tensor2
| Diagonal tensor with all lateral components equal. More...
struct | Tensor3
| Non-diagonal tensor with all non-diagonal lateral projection. More...
struct | ThermalConductivity
| Thermal conductivity [W/m*K]. More...
struct | TranslatedInnerDataSourceImpl
| Don't use this directly, use TranslatedInnerDataSource instead. More...
struct | TranslatedInnerDataSourceImpl< PropertyT, FIELD_PROPERTY, SpaceType, VariadicTemplateTypesHolder< ExtraArgs... > >
| Don't use this directly, use TranslatedInnerDataSource instead. More...
struct | TranslatedInnerDataSourceImpl< PropertyT, MULTI_FIELD_PROPERTY, SpaceType, VariadicTemplateTypesHolder< ExtraArgs... > >
| Don't use this directly, use TranslatedInnerDataSource instead. More...
struct | TranslatedMesh
| Mesh which translates another mesh by given vector. More...
struct | TranslatedOuterDataSourceImpl
| Don't use this directly, use TranslatedOuterDataSource instead. More...
struct | TranslatedOuterDataSourceImpl< PropertyT, FIELD_PROPERTY, SpaceType, VariadicTemplateTypesHolder< ExtraArgs... > >
| Don't use this directly, use TranslatedOuterDataSource instead. More...
struct | TranslatedOuterDataSourceImpl< PropertyT, MULTI_FIELD_PROPERTY, SpaceType, VariadicTemplateTypesHolder< ExtraArgs... > >
| Don't use this directly, use TranslatedOuterDataSource instead. More...
struct | Translation
| Represent geometry object equal to its child translated by vector. More...
struct | TranslationContainer
| Geometry objects container in which every child has an associated aligner. More...
struct | Triangle
| Represents triangle with one vertex at point (0, 0). More...
struct | TriangleGenerator
| Generator which creates triangular mesh by Triangle library authored by Jonathan Richard Shewchuk. More...
struct | TriangularMesh2D
struct | TriangularMesh2DGetterForRtree
| Utility struct that allows for using triangular mesh in boost::geometry::index::rtree effectively (without copying coordinates of nodes). More...
struct | TriangularPrism
| Represents prism with triangular base one vertex at point (0, 0, 0) and height h. More...
struct | TrifreeCaller
struct | UnexpectedGeometryObjectTypeException
| This exception is thrown when geometry object has type different than expectation (for example is 3d but expected 2d). More...
struct | UnionBoundarySetImpl
| This logic holds a list of boundaries and represent a set of indices which is an union of sets from this boundaries. More...
struct | VariadicTemplateTypesHolder
struct | Vec
| Generic template for 2D and 3D vectors. More...
struct | Vec< 2, T >
| Vector in 2D space. More...
struct | Vec< 3, T >
| Vector in 3D space. More...
struct | VecComponent
| Vector component helper. More...
struct | VecFuzzyCompare
struct | VectorFieldProperty
| Helper class which makes it easier to define property tags classes for vectorial fields that can be interpolated. More...
struct | Voltage
| Electric voltage (V) More...
struct | WeakCache
| Cache values of type Value using Key type to index it. More...
struct | WithAligners
| Template of base class for containers which have aligners, one per child. More...
struct | XMLBadAttrException
| Exceptions of this class are thrown when the attribute has wrong value. More...
struct | XMLConflictingAttributesException
| Exceptions of this class are thrown if two optional attributes in XML conflict with each other. More...
struct | XMLDuplicatedElementException
| Exceptions of this class are thrown when illegal repetition of tag appears. More...
struct | XMLException
| Base class for all exceptions thrown by plask library. More...
struct | XMLNoAttrException
| Exceptions of this class are thrown when the required attribute is not found in XML tag. More...
class | XMLReader
| XML pull parser. More...
struct | XMLUnexpectedAttrException
| Exceptions of this class are thrown when the required attribute is not found in XML tag. More...
struct | XMLUnexpectedElementException
| Exceptions of this class are thrown when the type of XML element is different than expected. More...
struct | XMLUnexpectedEndException
| Exceptions of this class are thrown when XML file/data stream unexpected end. More...
struct | XMLWriter
| Object of this class help produce valid XML documents. More...
struct | XMLWriterException
| Exceptions of this type are thrown by XMLWriter class. More...
struct | YEnds
struct | ZeroImpl
| This template is used by Zero function and have to be specialized to support new types. More...
struct | ZeroImpl< Tensor2< T > >
| Specialization of ZeroImpl which add support for 2D vectors. More...
struct | ZeroImpl< Tensor3< T > >
| Specialization of ZeroImpl which add support for 3D vectors. More...
struct | ZeroImpl< Vec< 2, T > >
| Specialization of ZeroImpl which add support for 2D vectors. More...
struct | ZeroImpl< Vec< 3, T > >
| Specialization of ZeroImpl which add support for 2D vectors. More...

## Typedefs
template<typename PropertyT , typename OutputSpaceType >
using | DataSource = DataSourceImpl< PropertyT, PropertyT::propertyType, OutputSpaceType, typename PropertyT::ExtraParams >
template<typename PropertyT , typename OutputSpaceType >
using | ConstDataSource = ConstDataSourceImpl< PropertyT, PropertyT::propertyType, OutputSpaceType, typename PropertyT::ExtraParams >
template<typename PropertyT >
using | DataFrom3Dto2DSource = DataFrom3Dto2DSourceImpl< PropertyT, PropertyT::propertyType, typename PropertyT::ExtraParams >
| Source of data in 2D space which read, and averages data from outer 3D space.
template<typename PropertyT >
using | DataFrom2Dto3DSource = DataFrom2Dto3DSourceImpl< PropertyT, PropertyT::propertyType, typename PropertyT::ExtraParams >
| Source of data in 3D space which read it from inner 2D space (Extrusion).
template<typename PropertyT >
using | DataFrom3DtoCyl2DSource = DataFrom3DtoCyl2DSourceImpl< PropertyT, PropertyT::propertyType, typename PropertyT::ExtraParams >
| Source of data in 2D space which read, and averages data from outer 3D space.
template<typename PropertyT >
using | DataFromCyl2Dto3DSource = DataFromCyl2Dto3DSourceImpl< PropertyT, PropertyT::propertyType, typename PropertyT::ExtraParams >
| Source of data in 3D space which read it from inner 2D cylindrical space (Revolution).
template<typename PropertyT , typename OutputSpaceType >
using | FilterBase = FilterBaseImpl< PropertyT, PropertyT::propertyType, OutputSpaceType, typename PropertyT::ExtraParams >
| Base class for filters which recalculate field from one space to another (OutputSpaceType).
template<typename PropertyT , typename OutputSpaceType >
using | Filter = FilterImpl< PropertyT, OutputSpaceType >
| Filter is a special kind of Solver which "solves" the problem using another Solvers.
template<typename PropertyT , typename SpaceType >
using | TranslatedInnerDataSource = TranslatedInnerDataSourceImpl< PropertyT, PropertyT::propertyType, SpaceType, typename PropertyT::ExtraParams >
| Source of data in space `SpaceType` space which read it from inner space of same type.
template<typename PropertyT , typename SpaceType >
using | TranslatedOuterDataSource = TranslatedOuterDataSourceImpl< PropertyT, PropertyT::propertyType, SpaceType, typename PropertyT::ExtraParams >
| Source of data in space `SpaceType` space which read it from outer space of same type.
typedef Block< 2 > | Rectangle
typedef Block< 3 > | Cuboid
typedef boost::variant< shared_ptr< Material >, shared_ptr< MaterialsDB::MixedCompositionFactory > > | SolidOrGradientMaterial
| Any of the allowed material types.
typedef std::pair< shared_ptr< GeometryObject >, shared_ptr< GeometryObject > > | Edge
template<int dim>
using | StackContainerChildAligner = typename chooseType< dim-2, align::Aligner< Primitive< 3 >::DIRECTION_TRAN >, align::Aligner< Primitive< 3 >::DIRECTION_LONG, Primitive< 3 >::DIRECTION_TRAN > >::type
template<typename T >
using | aligned_unique_ptr = std::unique_ptr< T, aligned_deleter< T > >
template<typename MeshType >
using | UnionBoundary = BoundaryOp< MeshType, UnionBoundarySetImpl >
| Boundary which represents union of boundaries.
template<typename MeshType >
using | DiffBoundary = BoundaryOp< MeshType, DiffBoundarySetImpl >
| Boundary which represents difference of boundaries.
template<typename MeshType >
using | IntersectionBoundary = BoundaryOp< MeshType, IntersectionBoundarySetImpl >
| Boundary which represents intersection of boundaries.
typedef OrderedAxis | OrderedMesh1D
template<int DIM>
using | RectangularMesh = typename std::conditional< DIM==2, RectangularMesh2D, typename std::conditional< DIM==3, RectangularMesh3D, void >::type >::type
template<int DIM>
using | RectangularMeshBase = typename std::conditional< DIM==2, RectangularMeshBase2D, typename std::conditional< DIM==3, RectangularMeshBase3D, void >::type >::type
template<int DIM>
using | RectangularMaskedMesh = typename std::conditional< DIM==2, RectangularMaskedMesh2D, typename std::conditional< DIM==3, RectangularMaskedMesh3D, void >::type >::type
typedef RegularAxis | RegularMesh1D
typedef boost::geometry::index::rtree< std::size_t, boost::geometry::index::quadratic< 16 >, TriangularMesh2DGetterForRtree > | RtreeOfTriangularMesh2DNodes
| Boost rtree that holds nodes of TriangularMesh2D.
template<typename PropertyTag , int dim>
using | PropertyAtDim = PropertyAtDimImpl< PropertyTag, dim, PropertyTag::hasUniqueValueType >
typedef FieldProperty< double > | ScalarFieldProperty
| Helper class which makes it easier to define property tags classes for scalar fields (fields of doubles).
typedef MultiFieldProperty< double > | MultiScalarFieldProperty
| Helper class which makes it easier to define property tags classes for multiple scalar fields (fields of doubles).
typedef Solver * | solver_construct_f(const std::string &name)
typedef std::size_t | openmp_size_t
| type similar to std::size_t which can be used in for loop with current version of OpenMP
template<std::size_t Begin, std::size_t End>
using | make_seq_indices = typename make_seq_indices_impl< Begin, End, indices<> >::type
template<typename F >
using | return_type = typename std::result_of< F >::type
typedef boost::tokenizer< boost::escaped_list_separator< char > > | split_esc_tokenizer
typedef OStreamOutput< std::ostream & > | OStreamRef
typedef OStreamOutput< std::ofstream > | OFStream
typedef XMLWriter::Element | XMLElement
| Easier access to XML element type.

## Enumerations
enum | FemMatrixAlgorithm { ALGORITHM_CHOLESKY , ALGORITHM_GAUSS , ALGORITHM_ITERATIVE }
| Choice of matrix factorization algorithms. More...
enum | EmptyElementsHandling { EMPTY_ELEMENTS_DEFAULT , EMPTY_ELEMENTS_EXCLUDED , EMPTY_ELEMENTS_INCLUDED }
enum | LogLevel { LOG_CRITICAL_ERROR = 0 , LOG_ERROR = 1 , LOG_ERROR_DETAIL = 2 , LOG_WARNING = 3 , LOG_IMPORTANT = 4 , LOG_INFO = 5 , LOG_RESULT = 6 , LOG_DATA = 7 , LOG_DETAIL = 8 , LOG_DEBUG = 9 }
enum | InterpolationMethod : unsigned { INTERPOLATION_DEFAULT = 0 , INTERPOLATION_NEAREST , INTERPOLATION_LINEAR , INTERPOLATION_SPLINE , INTERPOLATION_SMOOTH_SPLINE , INTERPOLATION_PERIODIC_SPLINE , INTERPOLATION_FOURIER , __ILLEGAL_INTERPOLATION_METHOD__ }
| Supported interpolation methods. More...
enum | PropertyType { SINGLE_VALUE_PROPERTY = 0 , MULTI_VALUE_PROPERTY = 1 , FIELD_PROPERTY = 2 , MULTI_FIELD_PROPERTY = 3 }
| Type of properties. More...

## Functions
template<class T >
T | average (const DataVector< T > &v)
| Compute data arithmetic mean.
template<int dim>
shared_ptr< GeometryObject > | read_circle (GeometryReader &reader)
shared_ptr< GeometryObject > | read_Clip2D (GeometryReader &reader)
shared_ptr< GeometryObject > | read_Clip3D (GeometryReader &reader)
template<typename ChildParamF , typename WithoutChildParamF >
void | read_children (GeometryReader &reader, ChildParamF child_param_read, WithoutChildParamF without_child_param_read)
| Read children, call child_param_read if children is in <item> tag and without_child_param_read if there was no <item> tag.
shared_ptr< GeometryObject > | read_cuboid (GeometryReader &reader)
shared_ptr< GeometryObject > | read_cylinder (GeometryReader &reader)
shared_ptr< GeometryObject > | read_hollow_cylinder (GeometryReader &reader)
shared_ptr< GeometryObject > | read_ellipse (GeometryReader &reader)
shared_ptr< GeometryObject > | read_elliptic_cylinder (GeometryReader &reader)
template<int dim>
shared_ptr< GeometryObject > | read_Intersection (GeometryReader &reader)
shared_ptr< GeometryObject > | read_arrange2d (GeometryReader &reader)
shared_ptr< GeometryObject > | read_arrange3d (GeometryReader &reader)
shared_ptr< GeometryObject > | read_lattice (GeometryReader &reader)
shared_ptr< GeometryObject > | read_block2D (GeometryReader &reader)
shared_ptr< GeometryObject > | changeToBlock (const SolidOrGradientMaterial &material, const shared_ptr< const GeometryObject > &to_change, Vec< 3, double > &translation, bool draft=false)
| Construct Block with the same dimenstion as bounding box of `to_change`.
template<typename GeometryType >
shared_ptr< GeometryObject > | read_flip_like (GeometryReader &reader)
shared_ptr< GeometryObject > | readPolygon (GeometryReader &reader)
constexpr Primitive< 3 >::Direction | direction3D (Primitive< 2 >::Direction dir2D)
constexpr Primitive< 3 >::Direction | direction3D (Primitive< 3 >::Direction dir3D)
shared_ptr< GeometryObject > | read_triangular_prism (GeometryReader &reader)
shared_ptr< GeometryObject > | read_prism (GeometryReader &reader)
bool | isAutoName (const std::string &name)
SpatialIndexNode< 2 > * | constructInternalNode (int dir, const double &offset, SpatialIndexNode< 2 > *lo, SpatialIndexNode< 2 > *hi)
SpatialIndexNode< 3 > * | constructInternalNode (int dir, const double &offset, SpatialIndexNode< 3 > *lo, SpatialIndexNode< 3 > *hi)
template<int DIMS>
void | inPlaceSplit (std::vector< GeometryObjectBBox< DIMS > > &inputAndLo, std::vector< GeometryObjectBBox< DIMS > > &hi, int dir, double offset)
template<int DIMS>
void | calcOptimalSplitOffset (const std::vector< GeometryObjectBBox< DIMS > > &inputSortedByLo, const std::vector< GeometryObjectBBox< DIMS > > &inputSortedByHi, int inputDir, int &bestDir, double &bestOffset, int &bestValue)
| Calculate optimal splitting offset in given direction.
template<int DIMS>
SpatialIndexNode< DIMS > * | buildCacheR (std::vector< GeometryObjectBBox< DIMS > > *input, int max_depth=16)
| Build cache.
template<int DIMS>
std::unique_ptr< SpatialIndexNode< DIMS > > | buildSpatialIndex (const std::vector< shared_ptr< Translation< DIMS > > > &children)
| Build spatial index.
template PLASK_API std::unique_ptr< SpatialIndexNode< 2 > > | buildSpatialIndex (const std::vector< shared_ptr< Translation< 2 > > > &children)
template PLASK_API std::unique_ptr< SpatialIndexNode< 3 > > | buildSpatialIndex (const std::vector< shared_ptr< Translation< 3 > > > &children)
shared_ptr< GeometryObject > | read_translation2D (GeometryReader &reader)
shared_ptr< GeometryObject > | read_translation3D (GeometryReader &reader)
shared_ptr< GeometryObject > | read_cartesianExtend (GeometryReader &reader)
shared_ptr< GeometryObject > | read_revolution (GeometryReader &reader)
template<int dim>
shared_ptr< GeometryObject > | read_TranslationContainer (GeometryReader &reader)
shared_ptr< GeometryObject > | read_triangle (GeometryReader &reader)
template<typename T , typename S >
LazyData< typename ScaledLazyDataImpl< T, S >::CellType > | operator* (LazyData< T > data, const S &scale)
| Compute factor of `data` and `a`.
template<typename T , typename S >
LazyData< typename ScaledLazyDataImpl< T, S >::CellType > | operator* (const S &scale, LazyData< T > data)
| Compute factor of `vec` and `a`.
template<class T1 , class T2 >
bool | operator== (LazyData< T1 > const &a, LazyData< T2 > const &b)
| Check if two lazy data vectors are equal.
template<class T1 , class T2 >
bool | operator== (LazyData< T1 > const &a, DataVector< T2 > const &b)
| Check if two vectors are equal.
template<class T1 , class T2 >
bool | operator== (DataVector< T1 > const &a, LazyData< T2 > const &b)
| Check if two vectors are equal.
template<class T1 , class T2 >
bool | operator!= (LazyData< T1 > const &a, LazyData< T2 > const &b)
| Check if two data vectors are not equal.
template<class T1 , class T2 >
bool | operator!= (LazyData< T1 > const &a, DataVector< T2 > const &b)
template<class T1 , class T2 >
bool | operator!= (DataVector< T1 > const &a, LazyData< T2 > const &b)
template<class T1 , class T2 >
bool | operator< (LazyData< T1 > const &a, LazyData< T2 > const &b)
| A lexical comparison of two (lazy) data vectors.
template<class T1 , class T2 >
bool | operator< (DataVector< T1 > const &a, LazyData< T2 > const &b)
template<class T1 , class T2 >
bool | operator< (LazyData< T1 > const &a, DataVector< T2 > const &b)
template<class T1 , class T2 >
bool | operator> (LazyData< T1 > const &a, LazyData< T2 > const &b)
| A lexical comparison of two (lazy) data vectors.
template<class T1 , class T2 >
bool | operator> (DataVector< T1 > const &a, LazyData< T2 > const &b)
template<class T1 , class T2 >
bool | operator> (LazyData< T1 > const &a, DataVector< T2 > const &b)
template<class T1 , class T2 >
bool | operator<= (LazyData< T1 > const &a, LazyData< T2 > const &b)
| A lexical comparison of two (lazy) data vectors.
template<class T1 , class T2 >
bool | operator<= (DataVector< T1 > const &a, LazyData< T2 > const &b)
template<class T1 , class T2 >
bool | operator<= (LazyData< T1 > const &a, DataVector< T2 > const &b)
template<class T1 , class T2 >
bool | operator>= (LazyData< T1 > const &a, LazyData< T2 > const &b)
| A lexical comparison of two (lazy) data vectors.
template<class T1 , class T2 >
bool | operator>= (DataVector< T1 > const &a, LazyData< T2 > const &b)
template<class T1 , class T2 >
bool | operator>= (LazyData< T1 > const &a, DataVector< T2 > const &b)
template<class T >
std::ostream & | operator<< (std::ostream &out, LazyData< T > const &to_print)
| Print lazy data vector to stream.
template<typename T >
LazyData< T > | SafeData (const LazyData< T > &src, const T safe_value=Zero< T >())
| Make LazyData removing NaN from another lazy data.
std::uint64_t | getUniqueNumber ()
| Get unique number.
std::string | getUniqueString ()
| Get unique string.
PLASK_API std::string | host_name ()
PLASK_API void | createDefaultLogger ()
| Create default logger.
void | writelog (LogLevel level, const std::string &msg)
| Log a message.
template<typename... Args>
void | writelog (LogLevel level, const std::string &msg, Args &&... params)
| Log a message.
template<typename ConditionT >
ConditionT | parseBoundaryValue (const XMLReader &tag_with_value)
| Parse condition from XML tag.
void | checkCompositionSimilarity (const Material::Composition &material1composition, const Material::Composition &material2composition)
std::string & | appendPart (std::string &name, const std::string &part_value, char separator)
std::string & | appendDopant (std::string &name, const std::string &dopant_name)
std::string & | appendLabel (std::string &name, const std::string &label)
std::string & | appendLabelDopant (std::string &name, const std::string &label, const std::string &dopant_name)
std::string | alloyDbKey (const Material::Composition &composition, const std::string &label, const std::string &dopant_name)
std::string | alloyDbKey (std::vector< std::string > elNames, const std::string &label, const std::string &dopant_name)
std::string | alloyDbKey (const std::string &name, const std::string &label, const std::string &dopant_name)
std::string | alloyDbKey (const std::string &fullAlloyName)
std::string | dbKey (const Material::Parameters &parameters)
int | elementGroup (const std::string &objectName)
| Get group in periodic table of given `object`.
template<typename NameValuePairIter >
void | fillGroupMaterialCompositionAmounts (NameValuePairIter begin, NameValuePairIter end, int group_nr)
const char * | getObjectEnd (const char *begin, const char *end)
const char * | getAmountEnd (const char *begin, const char *end)
double | toDouble (const std::string &s, const char *fullname)
template std::complex< double > | parse_complex< double > (std::string str_to_parse)
template<typename T >
constexpr std::remove_cv< typenamestd::remove_reference< T >::type >::type | NaN ()
| Construct NaN or its counterpart with given type `T`.
template<typename T >
constexpr std::remove_cv< typenamestd::remove_reference< T >::type >::type | Zero ()
| Construct NaN or its counterpart with given type `T`.
long double | conj (long double x)
double | conj (double x)
float | conj (float x)
bool | is_zero (double v, double abs_supremum=SMALL)
| Check if the real number is almost zero.
bool | is_zero (dcomplex v)
| Check if the complex number is almost zero.
bool | isnan (dcomplex v)
| Check if the complex number is NaN.
template<typename T >
T | remove_nan (T val, const T nan=Zero< T >())
| Replace NaN with some specified value (zero by default).
plask::dcomplex | operator* (int a, const plask::dcomplex &b)
plask::dcomplex | operator* (const plask::dcomplex &a, int b)
plask::dcomplex | operator* (unsigned a, const plask::dcomplex &b)
plask::dcomplex | operator* (const plask::dcomplex &a, unsigned b)
plask::dcomplex | operator/ (int a, const plask::dcomplex &b)
plask::dcomplex | operator/ (const plask::dcomplex &a, int b)
plask::dcomplex | operator/ (unsigned a, const plask::dcomplex &b)
plask::dcomplex | operator/ (const plask::dcomplex &a, unsigned b)
double | abs2 (const dcomplex &x)
template<typename T >
const T & | clamp (const T &v, const T &min, const T &max)
| Clamp value to given range.
template<typename T >
bool | in_range (const T &v, const T &beg, const T &end)
| Check if value `v` is in given range [beg, end).
template<typename T1 , typename T2 , typename T3 >
auto | fma (T1 to_mult_1, T2 to_mult_2, T3 to_sum) -> decltype(to_mult_1 *to_mult_2+to_sum)
| Wrapper over std::fma witch works for all types.
float | fma (float to_mult_1, float to_mult_2, float to_sum)
double | fma (double to_mult_1, double to_mult_2, double to_sum)
long double | fma (long double to_mult_1, long double to_mult_2, long double to_sum)
bool | dbl_compare_eq (double x, double y)
| Check if two doubles are equals.
bool | dbl_compare_lt (double x, double y)
| Check if `x` is less than `y`.
bool | dbl_compare_gt (double x, double y)
| Check if `x` is greater than `y`.
bool | dbl_compare_lteq (double x, double y)
| Check if `x` is less or equals to `y`.
bool | dbl_compare_gteq (double x, double y)
| Check if `x` is greater or equals to `y`.
template<typename T >
std::complex< T > | parse_complex (std::string str_to_parse)
| Parse complex number in format: R+Ij, R, Ij, or (R, I), where R and I are floating point numbers (last is standard C++ format).
void * | aligned_malloc (std::size_t size)
| Allocate size bytes.
void | aligned_free (void *ptr)
| Free memory allocated with aligned_malloc.
void * | aligned_realloc (void *ptr, std::size_t new_size, std::size_t old_size=0)
| Reallocate an aligned block of memory.
template<typename T >
T * | aligned_malloc (std::size_t num=1)
| Create new data with aligned allocation.
template<typename T >
void | aligned_free (T *ptr)
| Delete data with aligned allocation.
template<typename T , typename... Args>
T * | aligned_new (Args &&... args)
| Create new object with aligned allocation.
template<typename T >
void | aligned_delete (T *ptr)
| Delete object with aligned allocation.
template<typename T , typename... Args>
T * | aligned_new_array (std::size_t num, Args &&... args)
| Create new array with aligned allocation.
template<typename T >
void | aligned_delete_array (std::size_t num, T *ptr)
| Delete array with aligned allocation.
template<typename T >
shared_ptr< T > | getUnique (const shared_ptr< T > &ptr)
| Copy ptr data if is not the only shared_ptr instance managing the current object, i.e.
template<typename T >
shared_ptr< T > | getUnique (const shared_ptr< const T > &ptr)
| Copy ptr data if is not the only shared_ptr instance managing the current object, i.e.
template<typename T >
void | makeUnique (shared_ptr< T > &ptr)
| Copy ptr data if is not the only shared_ptr instance managing the current object, i.e.
PLASK_API void | prepareNearestNeighborInterpolationForAxis (const MeshAxis &axis, const InterpolationFlags &flags, double &wrapped_point_coord, int axis_nr)
| TODO doc - this is code by M.
PLASK_API void | prepareInterpolationForAxis (const MeshAxis &axis, const InterpolationFlags &flags, double wrapped_point_coord, int axis_nr, std::size_t &index_lo, std::size_t &index_hi, double &lo, double &hi, bool &invert_lo, bool &invert_hi)
| TODO doc - this is code by M.
template<int DIM>
shared_ptr< OnePointMesh< DIM > > | toMesh (const plask::Vec< DIM, double > &point)
| Create one-point mesh that includes given `point`.
template<int DIM>
shared_ptr< TranslatedMesh< DIM > > | translate (const shared_ptr< const MeshD< DIM > > &sourceMesh, const Vec< DIM, double > &translation)
BoundaryNodeSet | operator+ (BoundaryNodeSet left, BoundaryNodeSet right)
| Return union of left and right sets of nodes.
BoundaryNodeSet | operator| (BoundaryNodeSet left, BoundaryNodeSet right)
BoundaryNodeSet | operator* (BoundaryNodeSet left, BoundaryNodeSet right)
| Return intersection of left and right sets of nodes.
BoundaryNodeSet | operator& (BoundaryNodeSet left, BoundaryNodeSet right)
BoundaryNodeSet | operator- (BoundaryNodeSet left, BoundaryNodeSet right)
| Return difference of left and right sets of nodes.
template<typename MeshType >
Boundary< MeshType > | operator+ (Boundary< MeshType > left, Boundary< MeshType > right)
| Return boundary which produces the union of sets given by left and right boundaries.
template<typename MeshType >
Boundary< MeshType > | operator| (Boundary< MeshType > left, Boundary< MeshType > right)
template<typename MeshType >
Boundary< MeshType > | operator* (Boundary< MeshType > left, Boundary< MeshType > right)
| Return boundary which produces the intersection of sets given by left and right boundaries.
template<typename MeshType >
Boundary< MeshType > | operator& (Boundary< MeshType > left, Boundary< MeshType > right)
template<typename MeshType >
Boundary< MeshType > | operator- (Boundary< MeshType > left, Boundary< MeshType > right)
| Return boundary which produces the difference of sets given by left and right boundaries.
template<typename MeshType >
MeshType::Boundary | makeEmptyBoundary ()
| Helper to create empty boundary.
template<typename Boundary , typename Predicate >
Boundary | makePredicateBoundary (Predicate predicate)
| Helper to create boundary which represents set of indexes which fulfill given `predicate`.
template<typename Boundary >
Boundary | parseBoundary (const std::string &PLASK_UNUSED(boundary_desc), Manager &PLASK_UNUSED(manager))
| Parse boundary of given type from string.
template<typename Boundary >
Boundary | parseBoundary (XMLReader &PLASK_UNUSED(boundary_desc), Manager &PLASK_UNUSED(manager))
| Parse boundary from XML reader.
Vec< 3, double > | from_longTran_vert (const Vec< 2, double > &longTran, const double &vert)
Vec< 2, double > | to_longTran (const Vec< 3, double > &longTranVert)
Box2D | to_longTran (const Box3D &box)
template<int dim>
PLASK_API shared_ptr< OrderedAxis > | makeGeometryAxis (const shared_ptr< GeometryObjectD< dim > > &geometry, Primitive< 3 >::Direction dir, double split=0.)
| Get axis with points along edges of bounding boxes of all geometry elements.
shared_ptr< OrderedAxis > | makeGeometryGrid1D (const shared_ptr< GeometryObjectD< 2 > > &geometry, double split=0.)
| Generate grid along edges of bounding boxes of all geometry elements.
shared_ptr< RectangularMesh< 2 > > | makeGeometryGrid (const shared_ptr< GeometryObjectD< 2 > > &geometry, double split=0.)
| Generate grid along edges of bounding boxes of all geometry elements.
shared_ptr< RectangularMesh< 3 > > | makeGeometryGrid (const shared_ptr< GeometryObjectD< 3 > > &geometry, double split=0.)
| Generate grid along edges of bounding boxes of all geometry elements.
shared_ptr< OrderedAxis > | refineAxis (const shared_ptr< MeshAxis > &axis, double spacing)
| Divide existing axis into finer mesh with points approximately spaced by `spacing`.
template<int dim>
shared_ptr< MeshGenerator > | readRectangularDivideGenerator (XMLReader &reader, Manager &manager)
template<int dim>
shared_ptr< MeshGenerator > | readRectangularSmoothGenerator (XMLReader &reader, Manager &manager)
template PLASK_API shared_ptr< OrderedAxis > | makeGeometryAxis (const shared_ptr< GeometryObjectD< 2 > > &geometry, Primitive< 3 >::Direction dir, double split)
template PLASK_API shared_ptr< OrderedAxis > | makeGeometryAxis (const shared_ptr< GeometryObjectD< 3 > > &geometry, Primitive< 3 >::Direction dir, double split)
shared_ptr< OrderedAxis > | makeGeometryGrid1D (const shared_ptr< GeometryD< 2 > > &geometry)
| Generate grid along edges of bounding boxes of all geometry elements.
shared_ptr< RectangularMesh< 2 > > | makeGeometryGrid (const shared_ptr< GeometryD< 2 > > &geometry)
| Generate grid along edges of bounding boxes of all geometry elements.
shared_ptr< RectangularMesh< 3 > > | makeGeometryGrid (const shared_ptr< GeometryD< 3 > > &geometry)
| Generate grid along edges of bounding boxes of all geometry elements.
shared_ptr< MeshGenerator > | readTriangleGenerator (XMLReader &reader, const Manager &)
template<InterpolationMethod default_method>
InterpolationMethod | getInterpolationMethod (InterpolationMethod method)
| Helper utility that replaces INTERPOLATION_DEFAULT with particular method.
template<typename SrcMeshT , typename SrcT , typename DstT = SrcT>
LazyData< typename std::remove_const< DstT >::type > | interpolate (shared_ptr< const SrcMeshT > src_mesh, DataVector< const SrcT > src_vec, shared_ptr< const MeshD< SrcMeshT::DIM > > dst_mesh, InterpolationMethod method=INTERPOLATION_DEFAULT, const InterpolationFlags &flags=InterpolationFlags(), bool verbose=true)
| Calculate (interpolate when needed) a field of some physical properties in requested points of (dst_mesh) if values of this field in points of (src_mesh) are known.
template<typename SrcMeshT , typename SrcT , typename DstT = SrcT, typename DstMeshT >
LazyData< typename std::remove_const< DstT >::type > | interpolate (shared_ptr< SrcMeshT > src_mesh, DataVector< SrcT > src_vec, shared_ptr< DstMeshT > dst_mesh, InterpolationMethod method=INTERPOLATION_DEFAULT, const InterpolationFlags &flags=InterpolationFlags(), bool verbose=true)
shared_ptr< OrderedMesh1D > | readRectilinearMeshAxis (XMLReader &reader)
shared_ptr< OrderedMesh1D > | readOrderedMesh1D (XMLReader &reader)
shared_ptr< OrderedMesh1D > | readOrderedMesh1D_obsolete (XMLReader &reader)
shared_ptr< RectangularMesh2D > | make_rectangular_mesh (const RectangularMesh2D &to_copy)
| Copy `to_copy` mesh using OrderedAxis to represent each axis in returned mesh.
shared_ptr< RectangularMesh2D > | make_rectangular_mesh (shared_ptr< const RectangularMesh2D > to_copy)
shared_ptr< RectangularMesh3D > | make_rectangular_mesh (const RectangularMesh3D &to_copy)
| Copy `to_copy` mesh using OrderedAxis to represent each axis in returned mesh.
shared_ptr< RectangularMesh3D > | make_rectangular_mesh (shared_ptr< const RectangularMesh3D > to_copy)
shared_ptr< MeshAxis > | readMeshAxis (XMLReader &reader)
| Read 1d mesh axis from XML.
template<>
RectangularMeshBase2D::Boundary | parseBoundary< RectangularMeshBase2D::Boundary > (const std::string &boundary_desc, plask::Manager &)
template<>
RectangularMeshBase2D::Boundary | parseBoundary< RectangularMeshBase2D::Boundary > (XMLReader &boundary_desc, Manager &env)
template<>
RectangularMeshBase3D::Boundary | parseBoundary< RectangularMeshBase3D::Boundary > (const std::string &boundary_desc, plask::Manager &)
template<>
RectangularMeshBase3D::Boundary | parseBoundary< RectangularMeshBase3D::Boundary > (XMLReader &boundary_desc, Manager &env)
shared_ptr< RegularMesh1D > | readRegularMeshAxis (XMLReader &reader)
shared_ptr< RegularMesh1D > | readRegularMesh1D (XMLReader &reader)
shared_ptr< RegularMesh1D > | readRegularMesh1D_obsolete (XMLReader &reader)
TriangularMesh2D::Segment | makeSegment (std::size_t a, std::size_t b)
std::size_t | readTriangularMesh2D_readNodeIndex (XMLReader &reader, const char *attrName, std::size_t nodes_size)
template PLASK_API std::set< std::size_t > | TriangularMesh2D::boundaryNodes< TriangularMesh2D::BoundaryDir::TOP > (const TriangularMesh2D::SegmentsCounts &segmentsCount) const
template PLASK_API std::set< std::size_t > | TriangularMesh2D::boundaryNodes< TriangularMesh2D::BoundaryDir::LEFT > (const TriangularMesh2D::SegmentsCounts &segmentsCount) const
template PLASK_API std::set< std::size_t > | TriangularMesh2D::boundaryNodes< TriangularMesh2D::BoundaryDir::RIGHT > (const TriangularMesh2D::SegmentsCounts &segmentsCount) const
template PLASK_API std::set< std::size_t > | TriangularMesh2D::boundaryNodes< TriangularMesh2D::BoundaryDir::BOTTOM > (const TriangularMesh2D::SegmentsCounts &segmentsCount) const
template PLASK_API std::set< std::size_t > | TriangularMesh2D::boundaryNodes< TriangularMesh2D::BoundaryDir::ALL > (const TriangularMesh2D::SegmentsCounts &segmentsCount) const
template<>
TriangularMesh2D::Boundary | parseBoundary< TriangularMesh2D::Boundary > (const std::string &boundary_desc, plask::Manager &)
template<>
TriangularMesh2D::Boundary | parseBoundary< TriangularMesh2D::Boundary > (XMLReader &boundary_desc, Manager &env)
| PLASK_API_EXTERN_TEMPLATE_STRUCT (NearestNeighborTriangularMesh2DLazyDataImpl< double, double >)
| PLASK_API_EXTERN_TEMPLATE_STRUCT (NearestNeighborTriangularMesh2DLazyDataImpl< dcomplex, dcomplex >)
| PLASK_API_EXTERN_TEMPLATE_STRUCT (NearestNeighborTriangularMesh2DLazyDataImpl< Vec< 2, double >, Vec< 2, double > >)
| PLASK_API_EXTERN_TEMPLATE_STRUCT (NearestNeighborTriangularMesh2DLazyDataImpl< Vec< 2, dcomplex >, Vec< 2, dcomplex > >)
| PLASK_API_EXTERN_TEMPLATE_STRUCT (NearestNeighborTriangularMesh2DLazyDataImpl< Vec< 3, double >, Vec< 3, double > >)
| PLASK_API_EXTERN_TEMPLATE_STRUCT (NearestNeighborTriangularMesh2DLazyDataImpl< Vec< 3, dcomplex >, Vec< 3, dcomplex > >)
| PLASK_API_EXTERN_TEMPLATE_STRUCT (NearestNeighborTriangularMesh2DLazyDataImpl< Tensor2< double >, Tensor2< double > >)
| PLASK_API_EXTERN_TEMPLATE_STRUCT (NearestNeighborTriangularMesh2DLazyDataImpl< Tensor2< dcomplex >, Tensor2< dcomplex > >)
| PLASK_API_EXTERN_TEMPLATE_STRUCT (NearestNeighborTriangularMesh2DLazyDataImpl< Tensor3< double >, Tensor3< double > >)
| PLASK_API_EXTERN_TEMPLATE_STRUCT (NearestNeighborTriangularMesh2DLazyDataImpl< Tensor3< dcomplex >, Tensor3< dcomplex > >)
| PLASK_API_EXTERN_TEMPLATE_STRUCT (BarycentricTriangularMesh2DLazyDataImpl< double, double >)
| PLASK_API_EXTERN_TEMPLATE_STRUCT (BarycentricTriangularMesh2DLazyDataImpl< dcomplex, dcomplex >)
| PLASK_API_EXTERN_TEMPLATE_STRUCT (BarycentricTriangularMesh2DLazyDataImpl< Vec< 2, double >, Vec< 2, double > >)
| PLASK_API_EXTERN_TEMPLATE_STRUCT (BarycentricTriangularMesh2DLazyDataImpl< Vec< 2, dcomplex >, Vec< 2, dcomplex > >)
| PLASK_API_EXTERN_TEMPLATE_STRUCT (BarycentricTriangularMesh2DLazyDataImpl< Vec< 3, double >, Vec< 3, double > >)
| PLASK_API_EXTERN_TEMPLATE_STRUCT (BarycentricTriangularMesh2DLazyDataImpl< Vec< 3, dcomplex >, Vec< 3, dcomplex > >)
| PLASK_API_EXTERN_TEMPLATE_STRUCT (BarycentricTriangularMesh2DLazyDataImpl< Tensor2< double >, Tensor2< double > >)
| PLASK_API_EXTERN_TEMPLATE_STRUCT (BarycentricTriangularMesh2DLazyDataImpl< Tensor2< dcomplex >, Tensor2< dcomplex > >)
| PLASK_API_EXTERN_TEMPLATE_STRUCT (BarycentricTriangularMesh2DLazyDataImpl< Tensor3< double >, Tensor3< double > >)
| PLASK_API_EXTERN_TEMPLATE_STRUCT (BarycentricTriangularMesh2DLazyDataImpl< Tensor3< dcomplex >, Tensor3< dcomplex > >)
| PLASK_API_EXTERN_TEMPLATE_STRUCT (NearestNeighborElementTriangularMesh2DLazyDataImpl< double, double >)
| PLASK_API_EXTERN_TEMPLATE_STRUCT (NearestNeighborElementTriangularMesh2DLazyDataImpl< dcomplex, dcomplex >)
| PLASK_API_EXTERN_TEMPLATE_STRUCT (NearestNeighborElementTriangularMesh2DLazyDataImpl< Vec< 2, double >, Vec< 2, double > >)
| PLASK_API_EXTERN_TEMPLATE_STRUCT (NearestNeighborElementTriangularMesh2DLazyDataImpl< Vec< 2, dcomplex >, Vec< 2, dcomplex > >)
| PLASK_API_EXTERN_TEMPLATE_STRUCT (NearestNeighborElementTriangularMesh2DLazyDataImpl< Vec< 3, double >, Vec< 3, double > >)
| PLASK_API_EXTERN_TEMPLATE_STRUCT (NearestNeighborElementTriangularMesh2DLazyDataImpl< Vec< 3, dcomplex >, Vec< 3, dcomplex > >)
| PLASK_API_EXTERN_TEMPLATE_STRUCT (NearestNeighborElementTriangularMesh2DLazyDataImpl< Tensor2< double >, Tensor2< double > >)
| PLASK_API_EXTERN_TEMPLATE_STRUCT (NearestNeighborElementTriangularMesh2DLazyDataImpl< Tensor2< dcomplex >, Tensor2< dcomplex > >)
| PLASK_API_EXTERN_TEMPLATE_STRUCT (NearestNeighborElementTriangularMesh2DLazyDataImpl< Tensor3< double >, Tensor3< double > >)
| PLASK_API_EXTERN_TEMPLATE_STRUCT (NearestNeighborElementTriangularMesh2DLazyDataImpl< Tensor3< dcomplex >, Tensor3< dcomplex > >)
template<typename T >
std::string | str (T x)
| Convert something to pretty string.
std::string | str (double x, const char *fmt="{:.9g}")
| Convert double number to pretty string.
std::string | str (std::complex< double > x, const char *fmt="{:.9g}{:+0.9g}j", const char *rfmt=nullptr)
| Convert complex number to pretty string.
template<typename ContainerType , typename Reference >
Reference | dereferenceByIndexOperator (ContainerType &container, std::size_t index)
template<typename ContainerType >
IndexedIterator< ContainerType > | makeIndexedIterator (ContainerType *c, std::size_t index)
| Get IndexedIterator for given container.
template<typename Functor >
FunctorIndexedIterator< Functor > | makeFunctorIndexedIterator (Functor f, std::size_t index)
| Get FunctorIndexedIterator for given functor.
template<typename ContainerType >
ReindexedContainer< ContainerType > | reindexContainer (ContainerType &originalContainer, int firstIndex=0, int delta=1)
| Helper function to create ReindexedContainer instantiation objects.
template<typename map_t >
map_t::mapped_type | map_find (map_t &map, const typename map_t::key_type &to_find, typename map_t::mapped_type &&if_not_found=nullptr)
| Try find value in map by key and return if_not_found value if object was not found.
template<typename Iter , typename Val >
Iter | find_nearest_using_lower_bound (Iter begin, Iter end, const Val &to_find, Iter lower_bound)
| Find position in ascending ordered, radnom access, sequence [begin, end) of floats or doubles nearest to `to_find`.
template<typename Iter , typename Val >
Iter | find_nearest_binary (Iter begin, Iter end, const Val &to_find)
| Find position in ascending ordered, radnom access, sequence [begin, end) of floats or doubles nearest to `to_find`.
template<typename ForwadIterator >
std::ostream & | printRange (std::ostream &out, ForwadIterator begin, ForwadIterator end, const char *separator=", ")
| Print range separating elements by `separator` (which is not printed after last element).
template<typename Tuple >
constexpr std::size_t | tuple_size ()
template<typename Op , typename T , template< std::size_t... > class I, std::size_t... Indices>
constexpr auto | apply_tuple_return_type_impl (Op &&op, T &&t, I< Indices... >) -> return_type< Op(decltype(std::get< Indices >(std::forward< T >(t)))...)>
template<typename Op , typename T >
constexpr auto | apply_tuple_return_type (Op &&op, T &&t) -> decltype(apply_tuple_return_type_impl(op, t, make_seq_indices< 0, tuple_size< T >()>{}))
template<typename Ret , typename Op , typename T , template< std::size_t... > class I, std::size_t... Indices>
Ret | apply_tuple (Op &&op, T &&t, I< Indices... >)
template<typename Op , typename Tuple >
auto | apply_tuple (Op &&op, Tuple &&t) -> decltype(apply_tuple_return_type(std::forward< Op >(op), std::forward< Tuple >(t)))
| Call `f` using arguments from tuple.
std::pair< std::string, std::string > | splitString2 (const std::string &to_split, char splitter)
| Split string to two parts: before spliter and after spliter.
std::string | removedChars (const std::string &str, const std::string &chars_to_remove)
split_esc_tokenizer | splitEscIterator (const std::string &str, char splitter, char quote_char='\'', char esc_char='\\')
| Split `str` to sequence of tokens.
std::vector< std::string > | splitEsc (const std::string &str, char splitter, char quote_char='\'', char esc_char='\\')
| Split `str` to sequence of tokens.
bool | isEngLower (char ch)
bool | isEngUpper (char ch)
bool | isEngAlpha (char ch)
bool | isDigit (char ch)
bool | isCid (const char *potential_id)
| Check if `potential_id` is valid C/C++/python name.
template<typename Iter >
std::ostream & | print_seq (std::ostream &out, Iter begin, Iter end, const char *sep=", ")
| Print all values from sequence [begin, end) sepparating by `sep`.
template<typename Pred >
std::string | filterChars (const std::string &str, Pred pred)
| Calculate copy of string `str` without some characters.
template<typename CharReplacer >
std::string | replaceChars (const std::string &str, CharReplacer repl)
| Calculate copy of string `str` with some characters replaced by other.
template<typename RangeT , typename PredicateT , typename SequenceSequenceT = std::vector<std::string>>
SequenceSequenceT | splitAndTrimPred (RangeT &input, PredicateT pred, boost::algorithm::token_compress_mode_type eCompress=boost::algorithm::token_compress_off)
| Split `input` to sequence of tokens.
template<typename T >
std::string | type_name ()
| Get simplified type name of given type.
std::string | exePathAndName ()
| Retrieves the fully qualified path for current program executable file.
std::string | exePath ()
| Get path to current program executable file.
std::string | prefixPath ()
| Get environment variable PLASK_PREFIX_PATH (should be without rearmost '/' or '\') or, if it is not set, path one step above the current program executable file.
std::string | plaskLibPath ()
| Get path to plask library files (shared libraries).
std::string | plaskSolversPath (const std::string &category)
| Get path to files (shared libraries) with solvers in given `category`.
std::string | plaskMaterialsPath ()
| Get path to materials files (shared libraries).
template<>
double | abs2< 2, dcomplex > (const Vec< 2, dcomplex > &v)
template<>
double | abs2< 3, dcomplex > (const Vec< 3, dcomplex > &v)
template<>
double | abs< 2, double > (const Vec< 2, double > &v)
template<typename T >
constexpr Vec< 2, T > | conj (const Vec< 2, T > &v)
| Calculate vector conjugate.
template<typename T1 , typename T2 >
auto | dot (const Vec< 2, T1 > &v1, const Vec< 2, T2 > &v2) -> decltype(v1.c0 *v2.c0)
| Compute dot product of two vectors `v1` and `v2`.
template<typename T1 , typename T2 >
auto | cross (const Vec< 2, T1 > &v1, const Vec< 2, T2 > &v2) -> decltype(v1.c0 *v2.c1)
| Compute (analog of 3d) cross product of two vectors `v1` and `v2`.
auto | dot (const Vec< 2, dcomplex > &v1, const Vec< 2, double > &v2) -> decltype(v1.c0 *v2.c0)
| Compute dot product of two vectors `v1` and `v2`.
auto | dot (const Vec< 2, dcomplex > &v1, const Vec< 2, dcomplex > &v2) -> decltype(v1.c0 *v2.c0)
| Compute dot product of two vectors `v1` and `v2`.
template<typename T >
constexpr Vec< 2, T > | vec (const T c0__tran, const T c1__up)
| Helper to create 2D vector.
template<typename T >
bool | is_zero (const Vec< 2, T > &v)
| Check if the vector is almost zero.
template<typename T >
constexpr Vec< 3, T > | conj (const Vec< 3, T > &v)
| Calculate vector conjugate.
template<typename T1 , typename T2 >
auto | dot (const Vec< 3, T1 > &v1, const Vec< 3, T2 > &v2) -> decltype(v1.c0 *v2.c0)
| Compute dot product of two vectors `v1` and `v2`.
auto | dot (const Vec< 3, dcomplex > &v1, const Vec< 3, double > &v2) -> decltype(v1.c0 *v2.c0)
| Compute dot product of two vectors `v1` and `v2`.
auto | dot (const Vec< 3, dcomplex > &v1, const Vec< 3, dcomplex > &v2) -> decltype(v1.c0 *v2.c0)
| Compute dot product of two vectors `v1` and `v2`.
template<typename T >
constexpr Vec< 3, T > | vec (const T c0__lon, const T c1__tran, const T c2__up)
| Helper to create 3D vector.
template<typename T >
bool | is_zero (const Vec< 3, T > &v)
| Check if the vector is almost zero.
template<typename T1 , typename T2 >
auto | dot (const LateralVec< T1 > &v1, const LateralVec< T2 > &v2) -> decltype(v1.c0 *v2.c0)
| Compute dot product of two vectors `v1` and `v2`.
template<typename T1 , typename T2 >
auto | cross (const LateralVec< T1 > &v1, const LateralVec< T2 > &v2) -> decltype(v1.c0 *v2.c1)
| Compute (analog of 3d) cross product of two vectors `v1` and `v2`.
template<typename T , typename OtherT >
auto | operator* (const OtherT scale, const Tensor2< T > &tensor) -> decltype(tensor *scale)
| Calculate this tensor multiplied by scalar `scale`.
template<typename T >
Tensor2< T > | conj (const Tensor2< T > &v)
| Calculate tensor conjugate.
template<typename T >
bool | is_zero (const Tensor2< T > &v)
| Check if the tensor is almost zero.
template<typename T , typename OtherT >
auto | operator* (const OtherT scale, const Tensor3< T > &tensor) -> decltype(tensor *scale)
| Calculate this tensor multiplied by scalar `scale`.
template<typename T >
Tensor3< T > | conj (const Tensor3< T > &v)
| Calculate tensor conjugate.
template<typename T >
bool | is_zero (const Tensor3< T > &v)
| Check if the tensor is almost zero.
template<typename T >
bool | isnan (plask::Tensor3< T > tens)
double | fermiDiracHalf (double x)
template<>
thermal::tstatic::Convection | parseBoundaryValue< thermal::tstatic::Convection > (const XMLReader &tag_with_value)
template<>
thermal::tstatic::Radiation | parseBoundaryValue< thermal::tstatic::Radiation > (const XMLReader &tag_with_value)

## Variables
template struct PLASK_API | Circle< 2 >
template struct PLASK_API | Circle< 3 >
template struct PLASK_API | Clip< 2 >
template struct PLASK_API | Clip< 3 >
template struct PLASK_API | GeometryObjectContainer< 2 >
template struct PLASK_API | GeometryObjectContainer< 3 >
template struct PLASK_API | Intersection< 2 >
template struct PLASK_API | Intersection< 3 >
template struct PLASK_API | ArrangeContainer< 2 >
template struct PLASK_API | ArrangeContainer< 3 >
template struct PLASK_API | GeometryObjectLeaf< 2 >
template struct PLASK_API | GeometryObjectLeaf< 3 >
template struct PLASK_API | Block< 2 >
template struct PLASK_API | Block< 3 >
template struct PLASK_API | Flip< 2 >
template struct PLASK_API | Flip< 3 >
template struct PLASK_API | Mirror< 2 >
template struct PLASK_API | Mirror< 3 >
template struct PLASK_API | GeometryObjectD< 2 >
template struct PLASK_API | GeometryObjectD< 3 >
PLASK_API const char *const | DIRECTION_NAMES [] = { "longitudinal", "transverse", "vertical" }
constexpr double | POINT_TOLLERANCE = 1e-12
template struct PLASK_API | GeometryObjectSeparator< 2 >
template struct PLASK_API | GeometryObjectSeparator< 3 >
template class PLASK_API | GeometryD< 2 >
template class PLASK_API | GeometryD< 3 >
template struct PLASK_API | SpatialIndexNode< 2 >
template struct PLASK_API | SpatialIndexNode< 3 >
template struct PLASK_API | StackContainer< 2 >
template struct PLASK_API | StackContainer< 3 >
template class PLASK_API | MultiStackContainer< StackContainer< 2 > >
template class PLASK_API | MultiStackContainer< StackContainer< 3 > >
template class PLASK_API | MultiStackContainer< ShelfContainer2D >
template struct PLASK_API | Translation< 2 >
template struct PLASK_API | Translation< 3 >
template struct PLASK_API | TranslationContainer< 2 >
template struct PLASK_API | TranslationContainer< 3 >
template struct PLASK_API | BoundingBoxCache< 2 >
template struct PLASK_API | BoundingBoxCache< 3 >
std::atomic< std::uint64_t > | id
PLASK_API LogLevel | maxLoglevel = LOG_DEBUG
| Maximum log level.
PLASK_API bool | forcedLoglevel = false
PLASK_API shared_ptr< Logger > | default_logger
| Pointer to the logger.
PLASK_API OmpNestedLock | material_omp_lock
| Global Python lock.
constexpr double | PI = M_PI
constexpr double | E = M_E
constexpr double | LOG2E = M_LOG2E
constexpr double | LOG10E = M_LOG10E
constexpr double | LN2 = M_LN2
constexpr double | LN10 = M_LN10
constexpr double | PI_2 = M_PI_2
constexpr double | PI_4 = M_PI_4
constexpr double | _1_PI = M_1_PI
constexpr double | _2_PI = M_2_PI
constexpr double | _2_SQRTPI = M_2_SQRTPI
constexpr double | SQRT2 = M_SQRT2
constexpr double | SQRT1_2 = M_SQRT1_2
constexpr double | PI_DOUBLED = 6.28318530717958647692
constexpr double | SMALL = std::numeric_limits<double>::epsilon()
| The numeric precision limit.
constexpr double | SMALL2 = SMALL*SMALL
| Squared numeric precision limit.
template struct PLASK_API | OnePointMesh< 2 >
template struct PLASK_API | OnePointMesh< 3 >
template struct PLASK_API | TranslatedMesh< 2 >
template struct PLASK_API | TranslatedMesh< 3 >
template struct PLASK_API | NearestNeighborExtrudedTriangularMesh3DLazyDataImpl< double, double >
template struct PLASK_API | NearestNeighborExtrudedTriangularMesh3DLazyDataImpl< dcomplex, dcomplex >
template struct PLASK_API | NearestNeighborExtrudedTriangularMesh3DLazyDataImpl< Vec< 2, double >, Vec< 2, double > >
template struct PLASK_API | NearestNeighborExtrudedTriangularMesh3DLazyDataImpl< Vec< 2, dcomplex >, Vec< 2, dcomplex > >
template struct PLASK_API | NearestNeighborExtrudedTriangularMesh3DLazyDataImpl< Vec< 3, double >, Vec< 3, double > >
template struct PLASK_API | NearestNeighborExtrudedTriangularMesh3DLazyDataImpl< Vec< 3, dcomplex >, Vec< 3, dcomplex > >
template struct PLASK_API | NearestNeighborExtrudedTriangularMesh3DLazyDataImpl< Tensor2< double >, Tensor2< double > >
template struct PLASK_API | NearestNeighborExtrudedTriangularMesh3DLazyDataImpl< Tensor2< dcomplex >, Tensor2< dcomplex > >
template struct PLASK_API | NearestNeighborExtrudedTriangularMesh3DLazyDataImpl< Tensor3< double >, Tensor3< double > >
template struct PLASK_API | NearestNeighborExtrudedTriangularMesh3DLazyDataImpl< Tensor3< dcomplex >, Tensor3< dcomplex > >
template struct PLASK_API | BarycentricExtrudedTriangularMesh3DLazyDataImpl< double, double >
template struct PLASK_API | BarycentricExtrudedTriangularMesh3DLazyDataImpl< dcomplex, dcomplex >
template struct PLASK_API | BarycentricExtrudedTriangularMesh3DLazyDataImpl< Vec< 2, double >, Vec< 2, double > >
template struct PLASK_API | BarycentricExtrudedTriangularMesh3DLazyDataImpl< Vec< 2, dcomplex >, Vec< 2, dcomplex > >
template struct PLASK_API | BarycentricExtrudedTriangularMesh3DLazyDataImpl< Vec< 3, double >, Vec< 3, double > >
template struct PLASK_API | BarycentricExtrudedTriangularMesh3DLazyDataImpl< Vec< 3, dcomplex >, Vec< 3, dcomplex > >
template struct PLASK_API | BarycentricExtrudedTriangularMesh3DLazyDataImpl< Tensor2< double >, Tensor2< double > >
template struct PLASK_API | BarycentricExtrudedTriangularMesh3DLazyDataImpl< Tensor2< dcomplex >, Tensor2< dcomplex > >
template struct PLASK_API | BarycentricExtrudedTriangularMesh3DLazyDataImpl< Tensor3< double >, Tensor3< double > >
template struct PLASK_API | BarycentricExtrudedTriangularMesh3DLazyDataImpl< Tensor3< dcomplex >, Tensor3< dcomplex > >
template struct PLASK_API | NearestNeighborElementExtrudedTriangularMesh3DLazyDataImpl< double, double >
template struct PLASK_API | NearestNeighborElementExtrudedTriangularMesh3DLazyDataImpl< dcomplex, dcomplex >
template struct PLASK_API | NearestNeighborElementExtrudedTriangularMesh3DLazyDataImpl< Vec< 2, double >, Vec< 2, double > >
template struct PLASK_API | NearestNeighborElementExtrudedTriangularMesh3DLazyDataImpl< Vec< 2, dcomplex >, Vec< 2, dcomplex > >
template struct PLASK_API | NearestNeighborElementExtrudedTriangularMesh3DLazyDataImpl< Vec< 3, double >, Vec< 3, double > >
template struct PLASK_API | NearestNeighborElementExtrudedTriangularMesh3DLazyDataImpl< Vec< 3, dcomplex >, Vec< 3, dcomplex > >
template struct PLASK_API | NearestNeighborElementExtrudedTriangularMesh3DLazyDataImpl< Tensor2< double >, Tensor2< double > >
template struct PLASK_API | NearestNeighborElementExtrudedTriangularMesh3DLazyDataImpl< Tensor2< dcomplex >, Tensor2< dcomplex > >
template struct PLASK_API | NearestNeighborElementExtrudedTriangularMesh3DLazyDataImpl< Tensor3< double >, Tensor3< double > >
template struct PLASK_API | NearestNeighborElementExtrudedTriangularMesh3DLazyDataImpl< Tensor3< dcomplex >, Tensor3< dcomplex > >
template struct PLASK_API | RectangularMeshRefinedGenerator< 1 >
template struct PLASK_API | RectangularMeshRefinedGenerator< 2 >
template struct PLASK_API | RectangularMeshRefinedGenerator< 3 >
template struct PLASK_API | RectangularMeshDivideGenerator< 1 >
template struct PLASK_API | RectangularMeshDivideGenerator< 2 >
template struct PLASK_API | RectangularMeshDivideGenerator< 3 >
template struct PLASK_API | RectangularMeshSmoothGenerator< 1 >
template struct PLASK_API | RectangularMeshSmoothGenerator< 2 >
template struct PLASK_API | RectangularMeshSmoothGenerator< 3 >
const char * | interpolationMethodNames [__ILLEGAL_INTERPOLATION_METHOD__+1]
template struct PLASK_API | MeshD< 1 >
template struct PLASK_API | MeshD< 2 >
template struct PLASK_API | MeshD< 3 >
template class PLASK_API | MeshGeneratorD< 1 >
template class PLASK_API | MeshGeneratorD< 2 >
template class PLASK_API | MeshGeneratorD< 3 >
RegisterMeshReader | rectilinearmesh1d_reader ("rectilinear1d", readOrderedMesh1D_obsolete)
template struct PLASK_API | HymanSplineMaskedRect2DLazyDataImpl< double, double >
template struct PLASK_API | HymanSplineMaskedRect2DLazyDataImpl< dcomplex, dcomplex >
template struct PLASK_API | HymanSplineMaskedRect2DLazyDataImpl< Vec< 2, double >, Vec< 2, double > >
template struct PLASK_API | HymanSplineMaskedRect2DLazyDataImpl< Vec< 2, dcomplex >, Vec< 2, dcomplex > >
template struct PLASK_API | HymanSplineMaskedRect2DLazyDataImpl< Vec< 3, double >, Vec< 3, double > >
template struct PLASK_API | HymanSplineMaskedRect2DLazyDataImpl< Vec< 3, dcomplex >, Vec< 3, dcomplex > >
template struct PLASK_API | HymanSplineMaskedRect2DLazyDataImpl< Tensor2< double >, Tensor2< double > >
template struct PLASK_API | HymanSplineMaskedRect2DLazyDataImpl< Tensor2< dcomplex >, Tensor2< dcomplex > >
template struct PLASK_API | HymanSplineMaskedRect2DLazyDataImpl< Tensor3< double >, Tensor3< double > >
template struct PLASK_API | HymanSplineMaskedRect2DLazyDataImpl< Tensor3< dcomplex >, Tensor3< dcomplex > >
template struct PLASK_API | HymanSplineMaskedRect3DLazyDataImpl< double, double >
template struct PLASK_API | HymanSplineMaskedRect3DLazyDataImpl< dcomplex, dcomplex >
template struct PLASK_API | HymanSplineMaskedRect3DLazyDataImpl< Vec< 2, double >, Vec< 2, double > >
template struct PLASK_API | HymanSplineMaskedRect3DLazyDataImpl< Vec< 2, dcomplex >, Vec< 2, dcomplex > >
template struct PLASK_API | HymanSplineMaskedRect3DLazyDataImpl< Vec< 3, double >, Vec< 3, double > >
template struct PLASK_API | HymanSplineMaskedRect3DLazyDataImpl< Vec< 3, dcomplex >, Vec< 3, dcomplex > >
template struct PLASK_API | HymanSplineMaskedRect3DLazyDataImpl< Tensor2< double >, Tensor2< double > >
template struct PLASK_API | HymanSplineMaskedRect3DLazyDataImpl< Tensor2< dcomplex >, Tensor2< dcomplex > >
template struct PLASK_API | HymanSplineMaskedRect3DLazyDataImpl< Tensor3< double >, Tensor3< double > >
template struct PLASK_API | HymanSplineMaskedRect3DLazyDataImpl< Tensor3< dcomplex >, Tensor3< dcomplex > >
template struct PLASK_API | HymanSplineMaskedRect2DLazyDataImpl< double, double, SplineMaskedRectElement2DLazyDataImpl< double, double > >
template struct PLASK_API | HymanSplineMaskedRect2DLazyDataImpl< dcomplex, dcomplex, SplineMaskedRectElement2DLazyDataImpl< dcomplex, dcomplex > >
template struct PLASK_API | HymanSplineMaskedRect2DLazyDataImpl< Vec< 2, double >, Vec< 2, double >, SplineMaskedRectElement2DLazyDataImpl< Vec< 2, double >, Vec< 2, double > > >
template struct PLASK_API | HymanSplineMaskedRect2DLazyDataImpl< Vec< 2, dcomplex >, Vec< 2, dcomplex >, SplineMaskedRectElement2DLazyDataImpl< Vec< 2, dcomplex >, Vec< 2, dcomplex > > >
template struct PLASK_API | HymanSplineMaskedRect2DLazyDataImpl< Vec< 3, double >, Vec< 3, double >, SplineMaskedRectElement2DLazyDataImpl< Vec< 3, double >, Vec< 3, double > > >
template struct PLASK_API | HymanSplineMaskedRect2DLazyDataImpl< Vec< 3, dcomplex >, Vec< 3, dcomplex >, SplineMaskedRectElement2DLazyDataImpl< Vec< 3, dcomplex >, Vec< 3, dcomplex > > >
template struct PLASK_API | HymanSplineMaskedRect2DLazyDataImpl< Tensor2< double >, Tensor2< double >, SplineMaskedRectElement2DLazyDataImpl< Tensor2< double >, Tensor2< double > > >
template struct PLASK_API | HymanSplineMaskedRect2DLazyDataImpl< Tensor2< dcomplex >, Tensor2< dcomplex >, SplineMaskedRectElement2DLazyDataImpl< Tensor2< dcomplex >, Tensor2< dcomplex > > >
template struct PLASK_API | HymanSplineMaskedRect2DLazyDataImpl< Tensor3< double >, Tensor3< double >, SplineMaskedRectElement2DLazyDataImpl< Tensor3< double >, Tensor3< double > > >
template struct PLASK_API | HymanSplineMaskedRect2DLazyDataImpl< Tensor3< dcomplex >, Tensor3< dcomplex >, SplineMaskedRectElement2DLazyDataImpl< Tensor3< dcomplex >, Tensor3< dcomplex > > >
template struct PLASK_API | HymanSplineMaskedRect3DLazyDataImpl< double, double, SplineMaskedRectElement3DLazyDataImpl< double, double > >
template struct PLASK_API | HymanSplineMaskedRect3DLazyDataImpl< dcomplex, dcomplex, SplineMaskedRectElement3DLazyDataImpl< dcomplex, dcomplex > >
template struct PLASK_API | HymanSplineMaskedRect3DLazyDataImpl< Vec< 2, double >, Vec< 2, double >, SplineMaskedRectElement3DLazyDataImpl< Vec< 2, double >, Vec< 2, double > > >
template struct PLASK_API | HymanSplineMaskedRect3DLazyDataImpl< Vec< 2, dcomplex >, Vec< 2, dcomplex >, SplineMaskedRectElement3DLazyDataImpl< Vec< 2, dcomplex >, Vec< 2, dcomplex > > >
template struct PLASK_API | HymanSplineMaskedRect3DLazyDataImpl< Vec< 3, double >, Vec< 3, double >, SplineMaskedRectElement3DLazyDataImpl< Vec< 3, double >, Vec< 3, double > > >
template struct PLASK_API | HymanSplineMaskedRect3DLazyDataImpl< Vec< 3, dcomplex >, Vec< 3, dcomplex >, SplineMaskedRectElement3DLazyDataImpl< Vec< 3, dcomplex >, Vec< 3, dcomplex > > >
template struct PLASK_API | HymanSplineMaskedRect3DLazyDataImpl< Tensor2< double >, Tensor2< double >, SplineMaskedRectElement3DLazyDataImpl< Tensor2< double >, Tensor2< double > > >
template struct PLASK_API | HymanSplineMaskedRect3DLazyDataImpl< Tensor2< dcomplex >, Tensor2< dcomplex >, SplineMaskedRectElement3DLazyDataImpl< Tensor2< dcomplex >, Tensor2< dcomplex > > >
template struct PLASK_API | HymanSplineMaskedRect3DLazyDataImpl< Tensor3< double >, Tensor3< double >, SplineMaskedRectElement3DLazyDataImpl< Tensor3< double >, Tensor3< double > > >
template struct PLASK_API | HymanSplineMaskedRect3DLazyDataImpl< Tensor3< dcomplex >, Tensor3< dcomplex >, SplineMaskedRectElement3DLazyDataImpl< Tensor3< dcomplex >, Tensor3< dcomplex > > >
template struct PLASK_API | HymanSplineRect2DLazyDataImpl< double, double >
template struct PLASK_API | HymanSplineRect2DLazyDataImpl< dcomplex, dcomplex >
template struct PLASK_API | HymanSplineRect2DLazyDataImpl< Vec< 2, double >, Vec< 2, double > >
template struct PLASK_API | HymanSplineRect2DLazyDataImpl< Vec< 2, dcomplex >, Vec< 2, dcomplex > >
template struct PLASK_API | HymanSplineRect2DLazyDataImpl< Vec< 3, double >, Vec< 3, double > >
template struct PLASK_API | HymanSplineRect2DLazyDataImpl< Vec< 3, dcomplex >, Vec< 3, dcomplex > >
template struct PLASK_API | HymanSplineRect2DLazyDataImpl< Tensor2< double >, Tensor2< double > >
template struct PLASK_API | HymanSplineRect2DLazyDataImpl< Tensor2< dcomplex >, Tensor2< dcomplex > >
template struct PLASK_API | HymanSplineRect2DLazyDataImpl< Tensor3< double >, Tensor3< double > >
template struct PLASK_API | HymanSplineRect2DLazyDataImpl< Tensor3< dcomplex >, Tensor3< dcomplex > >
template struct PLASK_API | HymanSplineRect3DLazyDataImpl< double, double >
template struct PLASK_API | HymanSplineRect3DLazyDataImpl< dcomplex, dcomplex >
template struct PLASK_API | HymanSplineRect3DLazyDataImpl< Vec< 2, double >, Vec< 2, double > >
template struct PLASK_API | HymanSplineRect3DLazyDataImpl< Vec< 2, dcomplex >, Vec< 2, dcomplex > >
template struct PLASK_API | HymanSplineRect3DLazyDataImpl< Vec< 3, double >, Vec< 3, double > >
template struct PLASK_API | HymanSplineRect3DLazyDataImpl< Vec< 3, dcomplex >, Vec< 3, dcomplex > >
template struct PLASK_API | HymanSplineRect3DLazyDataImpl< Tensor2< double >, Tensor2< double > >
template struct PLASK_API | HymanSplineRect3DLazyDataImpl< Tensor2< dcomplex >, Tensor2< dcomplex > >
template struct PLASK_API | HymanSplineRect3DLazyDataImpl< Tensor3< double >, Tensor3< double > >
template struct PLASK_API | HymanSplineRect3DLazyDataImpl< Tensor3< dcomplex >, Tensor3< dcomplex > >
template struct PLASK_API | SmoothSplineRect2DLazyDataImpl< double, double >
template struct PLASK_API | SmoothSplineRect2DLazyDataImpl< dcomplex, dcomplex >
template struct PLASK_API | SmoothSplineRect2DLazyDataImpl< Vec< 2, double >, Vec< 2, double > >
template struct PLASK_API | SmoothSplineRect2DLazyDataImpl< Vec< 2, dcomplex >, Vec< 2, dcomplex > >
template struct PLASK_API | SmoothSplineRect2DLazyDataImpl< Vec< 3, double >, Vec< 3, double > >
template struct PLASK_API | SmoothSplineRect2DLazyDataImpl< Vec< 3, dcomplex >, Vec< 3, dcomplex > >
template struct PLASK_API | SmoothSplineRect2DLazyDataImpl< Tensor2< double >, Tensor2< double > >
template struct PLASK_API | SmoothSplineRect2DLazyDataImpl< Tensor2< dcomplex >, Tensor2< dcomplex > >
template struct PLASK_API | SmoothSplineRect2DLazyDataImpl< Tensor3< double >, Tensor3< double > >
template struct PLASK_API | SmoothSplineRect2DLazyDataImpl< Tensor3< dcomplex >, Tensor3< dcomplex > >
template struct PLASK_API | SmoothSplineRect3DLazyDataImpl< double, double >
template struct PLASK_API | SmoothSplineRect3DLazyDataImpl< dcomplex, dcomplex >
template struct PLASK_API | SmoothSplineRect3DLazyDataImpl< Vec< 2, double >, Vec< 2, double > >
template struct PLASK_API | SmoothSplineRect3DLazyDataImpl< Vec< 2, dcomplex >, Vec< 2, dcomplex > >
template struct PLASK_API | SmoothSplineRect3DLazyDataImpl< Vec< 3, double >, Vec< 3, double > >
template struct PLASK_API | SmoothSplineRect3DLazyDataImpl< Vec< 3, dcomplex >, Vec< 3, dcomplex > >
template struct PLASK_API | SmoothSplineRect3DLazyDataImpl< Tensor2< double >, Tensor2< double > >
template struct PLASK_API | SmoothSplineRect3DLazyDataImpl< Tensor2< dcomplex >, Tensor2< dcomplex > >
template struct PLASK_API | SmoothSplineRect3DLazyDataImpl< Tensor3< double >, Tensor3< double > >
template struct PLASK_API | SmoothSplineRect3DLazyDataImpl< Tensor3< dcomplex >, Tensor3< dcomplex > >
RegisterMeshReader | regularmesh_reader ("regular", readRegularMesh1D)
RegisterMeshReader | regularmesh1d_reader ("regular1d", readRegularMesh1D_obsolete)
template struct PLASK_API | NearestNeighborTriangularMesh2DLazyDataImpl< double, double >
template struct PLASK_API | NearestNeighborTriangularMesh2DLazyDataImpl< dcomplex, dcomplex >
template struct PLASK_API | NearestNeighborTriangularMesh2DLazyDataImpl< Vec< 2, double >, Vec< 2, double > >
template struct PLASK_API | NearestNeighborTriangularMesh2DLazyDataImpl< Vec< 2, dcomplex >, Vec< 2, dcomplex > >
template struct PLASK_API | NearestNeighborTriangularMesh2DLazyDataImpl< Vec< 3, double >, Vec< 3, double > >
template struct PLASK_API | NearestNeighborTriangularMesh2DLazyDataImpl< Vec< 3, dcomplex >, Vec< 3, dcomplex > >
template struct PLASK_API | NearestNeighborTriangularMesh2DLazyDataImpl< Tensor2< double >, Tensor2< double > >
template struct PLASK_API | NearestNeighborTriangularMesh2DLazyDataImpl< Tensor2< dcomplex >, Tensor2< dcomplex > >
template struct PLASK_API | NearestNeighborTriangularMesh2DLazyDataImpl< Tensor3< double >, Tensor3< double > >
template struct PLASK_API | NearestNeighborTriangularMesh2DLazyDataImpl< Tensor3< dcomplex >, Tensor3< dcomplex > >
template struct PLASK_API | BarycentricTriangularMesh2DLazyDataImpl< double, double >
template struct PLASK_API | BarycentricTriangularMesh2DLazyDataImpl< dcomplex, dcomplex >
template struct PLASK_API | BarycentricTriangularMesh2DLazyDataImpl< Vec< 2, double >, Vec< 2, double > >
template struct PLASK_API | BarycentricTriangularMesh2DLazyDataImpl< Vec< 2, dcomplex >, Vec< 2, dcomplex > >
template struct PLASK_API | BarycentricTriangularMesh2DLazyDataImpl< Vec< 3, double >, Vec< 3, double > >
template struct PLASK_API | BarycentricTriangularMesh2DLazyDataImpl< Vec< 3, dcomplex >, Vec< 3, dcomplex > >
template struct PLASK_API | BarycentricTriangularMesh2DLazyDataImpl< Tensor2< double >, Tensor2< double > >
template struct PLASK_API | BarycentricTriangularMesh2DLazyDataImpl< Tensor2< dcomplex >, Tensor2< dcomplex > >
template struct PLASK_API | BarycentricTriangularMesh2DLazyDataImpl< Tensor3< double >, Tensor3< double > >
template struct PLASK_API | BarycentricTriangularMesh2DLazyDataImpl< Tensor3< dcomplex >, Tensor3< dcomplex > >
template struct PLASK_API | NearestNeighborElementTriangularMesh2DLazyDataImpl< double, double >
template struct PLASK_API | NearestNeighborElementTriangularMesh2DLazyDataImpl< dcomplex, dcomplex >
template struct PLASK_API | NearestNeighborElementTriangularMesh2DLazyDataImpl< Vec< 2, double >, Vec< 2, double > >
template struct PLASK_API | NearestNeighborElementTriangularMesh2DLazyDataImpl< Vec< 2, dcomplex >, Vec< 2, dcomplex > >
template struct PLASK_API | NearestNeighborElementTriangularMesh2DLazyDataImpl< Vec< 3, double >, Vec< 3, double > >
template struct PLASK_API | NearestNeighborElementTriangularMesh2DLazyDataImpl< Vec< 3, dcomplex >, Vec< 3, dcomplex > >
template struct PLASK_API | NearestNeighborElementTriangularMesh2DLazyDataImpl< Tensor2< double >, Tensor2< double > >
template struct PLASK_API | NearestNeighborElementTriangularMesh2DLazyDataImpl< Tensor2< dcomplex >, Tensor2< dcomplex > >
template struct PLASK_API | NearestNeighborElementTriangularMesh2DLazyDataImpl< Tensor3< double >, Tensor3< double > >
template struct PLASK_API | NearestNeighborElementTriangularMesh2DLazyDataImpl< Tensor3< dcomplex >, Tensor3< dcomplex > >
FiltersFactory::RegisterStandard< BandEdges > | registerBandEdgesFilters
FiltersFactory::RegisterStandard< CarriersConcentration > | registerCarriersConcentrationFilters
FiltersFactory::RegisterStandard< CurrentDensity > | registerCurrentDensityFilters
FiltersFactory::RegisterStandard< Potential > | registerPotentialFilters
FiltersFactory::RegisterStandard< FermiLevels > | registerFermiLevels
FiltersFactory::RegisterStandard< Voltage > | registerEnergyFilters
FiltersFactory::RegisterStandard< Conductivity > | registerConductivityFilters
FiltersFactory::RegisterStandard< Gain > | registerGainFilters
FiltersFactory::RegisterStandard< RefractiveIndex > | registerRefractiveIndexFilters
FiltersFactory::RegisterStandard< Epsilon > | registerEpsilonFilters
FiltersFactory::RegisterStandard< Temperature > | registerTemperatureFilters
FiltersFactory::RegisterStandard< Heat > | registerHeatFilters
FiltersFactory::RegisterStandard< ThermalConductivity > | registerThermalConductivityFilters
constexpr char | FILE_PATH_SEPARATOR = '/'
template struct PLASK_API | Vec< 2, double >
template struct PLASK_API | Vec< 2, int >
template struct PLASK_API | Vec< 3, double >
template struct PLASK_API | LateralVec< double >
template struct PLASK_API | LateralVec< int >

## Detailed Description

Patterson quadrature for complex function along specified line.

## Typedef Documentation

## ◆ aligned_unique_ptr

template<typename T >

using plask::aligned_unique_ptr = typedef std::unique_ptr<T, aligned_deleter<T> >

Definition at line 178 of file memalloc.hpp.

## ◆ ConstDataSource

template<typename PropertyT , typename OutputSpaceType >

using plask::ConstDataSource = typedef ConstDataSourceImpl<PropertyT, PropertyT::propertyType, OutputSpaceType, typename PropertyT::ExtraParams>

Definition at line 386 of file base.hpp.

## ◆ Cuboid

typedef Block<3> plask::Cuboid

Definition at line 415 of file leaf.hpp.

## ◆ DataFrom2Dto3DSource

template<typename PropertyT >

using plask::DataFrom2Dto3DSource = typedef DataFrom2Dto3DSourceImpl<PropertyT, PropertyT::propertyType, typename PropertyT::ExtraParams>

Source of data in 3D space which read it from inner 2D space (Extrusion).

Definition at line 237 of file change_space_size.hpp.

## ◆ DataFrom3Dto2DSource

template<typename PropertyT >

using plask::DataFrom3Dto2DSource = typedef DataFrom3Dto2DSourceImpl<PropertyT, PropertyT::propertyType, typename PropertyT::ExtraParams>

Source of data in 2D space which read, and averages data from outer 3D space.

Definition at line 115 of file change_space_size.hpp.

## ◆ DataFrom3DtoCyl2DSource

template<typename PropertyT >

using plask::DataFrom3DtoCyl2DSource = typedef DataFrom3DtoCyl2DSourceImpl<PropertyT, PropertyT::propertyType, typename PropertyT::ExtraParams>

Source of data in 2D space which read, and averages data from outer 3D space.

Definition at line 96 of file change_space_size_cyl.hpp.

## ◆ DataFromCyl2Dto3DSource

template<typename PropertyT >

using plask::DataFromCyl2Dto3DSource = typedef DataFromCyl2Dto3DSourceImpl<PropertyT, PropertyT::propertyType, typename PropertyT::ExtraParams>

Source of data in 3D space which read it from inner 2D cylindrical space (Revolution).

Definition at line 265 of file change_space_size_cyl.hpp.

## ◆ DataSource

template<typename PropertyT , typename OutputSpaceType >

using plask::DataSource = typedef DataSourceImpl<PropertyT, PropertyT::propertyType, OutputSpaceType, typename PropertyT::ExtraParams>

Definition at line 162 of file base.hpp.

## ◆ DiffBoundary

template<typename MeshType >

using plask::DiffBoundary = typedef BoundaryOp<MeshType, DiffBoundarySetImpl>

Boundary which represents difference of boundaries.

Definition at line 714 of file boundary.hpp.

## ◆ Edge

typedef std::pair< shared_ptr<GeometryObject>, shared_ptr<GeometryObject> > plask::Edge

Definition at line 27 of file path.hpp.

## ◆ Filter

template<typename PropertyT , typename OutputSpaceType >

using plask::Filter = typedef FilterImpl<PropertyT, OutputSpaceType>

Filter is a special kind of Solver which "solves" the problem using another Solvers.

It calculates its output using input of similar type and changing it in some way, for example translating it from one space to another (2D -> 3D, 3D -> 2D, etc.).

Typically filter has one or more inputs (input receiver) and one output (output provider).

Template Parameters

  PropertyT | property which has type FIELD_PROPERTY
  OutputSpaceType | space of `out` provider included in this filter

Definition at line 763 of file filter.hpp.

## ◆ FilterBase

template<typename PropertyT , typename OutputSpaceType >

using plask::FilterBase = typedef FilterBaseImpl<PropertyT, PropertyT::propertyType, OutputSpaceType, typename PropertyT::ExtraParams>

Base class for filters which recalculate field from one space to another (OutputSpaceType).

Template Parameters

  PropertyT | property which has type FIELD_PROPERTY
  OutputSpaceType | space of `out` provider included in this filter

Definition at line 475 of file filter.hpp.

## ◆ IntersectionBoundary

template<typename MeshType >

using plask::IntersectionBoundary = typedef BoundaryOp<MeshType, IntersectionBoundarySetImpl>

Boundary which represents intersection of boundaries.

Definition at line 717 of file boundary.hpp.

## ◆ make_seq_indices

template<std::size_t Begin, std::size_t End>

using plask::make_seq_indices = typedef typename make_seq_indices_impl<Begin, End, indices<> >::type

Definition at line 166 of file stl.hpp.

## ◆ MultiScalarFieldProperty

typedef MultiFieldProperty<double> plask::MultiScalarFieldProperty

Helper class which makes it easier to define property tags classes for multiple scalar fields (fields of doubles).

Property tag class can be subclass of this, but never should be typedefs to this (tag class for each property must be a separate class — always use different types for different properties).

Definition at line 422 of file providerfor.hpp.

## ◆ OFStream

typedef OStreamOutput<std::ofstream> plask::OFStream

Definition at line 47 of file writer.cpp.

## ◆ openmp_size_t

typedef std::size_t plask::openmp_size_t

type similar to std::size_t which can be used in for loop with current version of OpenMP

Definition at line 31 of file openmp.hpp.

## ◆ OrderedMesh1D

typedef OrderedAxis plask::OrderedMesh1D

Definition at line 301 of file ordered1d.hpp.

## ◆ OStreamRef

typedef OStreamOutput<std::ostream&> plask::OStreamRef

Definition at line 46 of file writer.cpp.

## ◆ PropertyAtDim

template<typename PropertyTag , int dim>

using plask::PropertyAtDim = typedef PropertyAtDimImpl<PropertyTag, dim, PropertyTag::hasUniqueValueType>

Definition at line 218 of file providerfor.hpp.

## ◆ Rectangle

typedef Block<2> plask::Rectangle

Definition at line 414 of file leaf.hpp.

## ◆ RectangularMaskedMesh

template<int DIM>

using plask::RectangularMaskedMesh = typedef typename std::conditional< DIM == 2, RectangularMaskedMesh2D, typename std::conditional<DIM == 3, RectangularMaskedMesh3D, void>::type >::type

Definition at line 25 of file rectangular_masked.hpp.

## ◆ RectangularMesh

template<int DIM>

using plask::RectangularMesh = typedef typename std::conditional< DIM == 2, RectangularMesh2D, typename std::conditional<DIM == 3, RectangularMesh3D, void>::type >::type

Definition at line 27 of file rectangular.hpp.

## ◆ RectangularMeshBase

template<int DIM>

using plask::RectangularMeshBase = typedef typename std::conditional< DIM == 2, RectangularMeshBase2D, typename std::conditional<DIM == 3, RectangularMeshBase3D, void>::type >::type

Definition at line 1237 of file rectangular_common.hpp.

## ◆ RegularMesh1D

typedef RegularAxis plask::RegularMesh1D

Definition at line 216 of file regular1d.hpp.

## ◆ return_type

template<typename F >

using plask::return_type = typedef typename std::result_of<F>::type

Definition at line 172 of file stl.hpp.

## ◆ RtreeOfTriangularMesh2DNodes

typedef boost::geometry::index::rtree< std::size_t, boost::geometry::index::quadratic<16>, TriangularMesh2DGetterForRtree > plask::RtreeOfTriangularMesh2DNodes

Boost rtree that holds nodes of TriangularMesh2D.

Definition at line 771 of file triangular2d.hpp.

## ◆ ScalarFieldProperty

typedef FieldProperty<double> plask::ScalarFieldProperty

Helper class which makes it easier to define property tags classes for scalar fields (fields of doubles).

Property tag class can be subclass of this, but never should be typedefs to this (tag class for each property must be a separate class — always use different types for different properties).

Definition at line 414 of file providerfor.hpp.

## ◆ SolidOrGradientMaterial

typedef boost::variant<shared_ptr<Material>, shared_ptr<MaterialsDB::MixedCompositionFactory> > plask::SolidOrGradientMaterial

Any of the allowed material types.

Definition at line 74 of file object.hpp.

## ◆ solver_construct_f

typedef Solver * plask::solver_construct_f(const std::string &name)

Definition at line 667 of file solver.hpp.

## ◆ split_esc_tokenizer

typedef boost::tokenizer< boost::escaped_list_separator<char> > plask::split_esc_tokenizer

Definition at line 140 of file string.hpp.

## ◆ StackContainerChildAligner

template<int dim>

using plask::StackContainerChildAligner = typedef typename chooseType<dim-2, align::Aligner<Primitive<3>::DIRECTION_TRAN>, align::Aligner<Primitive<3>::DIRECTION_LONG, Primitive<3>::DIRECTION_TRAN> >::type

Definition at line 347 of file stack.hpp.

## ◆ TranslatedInnerDataSource

template<typename PropertyT , typename SpaceType >

using plask::TranslatedInnerDataSource = typedef TranslatedInnerDataSourceImpl<PropertyT, PropertyT::propertyType, SpaceType, typename PropertyT::ExtraParams>

Source of data in space `SpaceType` space which read it from inner space of same type.

Definition at line 134 of file translation.hpp.

## ◆ TranslatedOuterDataSource

template<typename PropertyT , typename SpaceType >

using plask::TranslatedOuterDataSource = typedef TranslatedOuterDataSourceImpl<PropertyT, PropertyT::propertyType, SpaceType, typename PropertyT::ExtraParams>

Source of data in space `SpaceType` space which read it from outer space of same type.

Definition at line 179 of file translation.hpp.

## ◆ UnionBoundary

template<typename MeshType >

using plask::UnionBoundary = typedef BoundaryOp<MeshType, UnionBoundarySetImpl>

Boundary which represents union of boundaries.

Definition at line 711 of file boundary.hpp.

## ◆ XMLElement

typedef XMLWriter::Element plask::XMLElement

Easier access to XML element type.

Definition at line 386 of file writer.hpp.

## Enumeration Type Documentation

## ◆ EmptyElementsHandling

enum plask::EmptyElementsHandling

Enumerator
EMPTY_ELEMENTS_DEFAULT | Use default handling (exclude for Cholesky, include for iterative)
EMPTY_ELEMENTS_EXCLUDED | Exclude empty elements from matrix.
EMPTY_ELEMENTS_INCLUDED | Include empty elements in matrix.

Definition at line 139 of file fem_solver.hpp.

## ◆ FemMatrixAlgorithm

enum plask::FemMatrixAlgorithm

Choice of matrix factorization algorithms.

Enumerator
ALGORITHM_CHOLESKY | Cholesky factorization.
ALGORITHM_GAUSS | Gauss elimination of asymmetric matrix (slower but safer as it uses pivoting)
ALGORITHM_ITERATIVE | Conjugate gradient iterative solver.

Definition at line 25 of file fem_solver.hpp.

## ◆ InterpolationMethod

enum plask::InterpolationMethod : unsigned

Supported interpolation methods.

See also
  About interpolation

Enumerator
INTERPOLATION_DEFAULT | Default interpolation (depends on source mesh)
INTERPOLATION_NEAREST | Nearest neighbor interpolation.
INTERPOLATION_LINEAR | Linear interpolation.
INTERPOLATION_SPLINE | Spline interpolation with parabolic derivatives and Hyman monotonic filter.
INTERPOLATION_SMOOTH_SPLINE | Spline interpolation with continuous second derivatives.
INTERPOLATION_PERIODIC_SPLINE | Spline interpolation with continuous second derivatives and periodic edges (1D only)
INTERPOLATION_FOURIER | Fourier transform interpolation.
__ILLEGAL_INTERPOLATION_METHOD__ |

Definition at line 100 of file interpolation.hpp.

## ◆ LogLevel

enum plask::LogLevel

Enumerator
LOG_CRITICAL_ERROR | Exceptions and errors unconditionally interrupting program flow.
LOG_ERROR | Non-critical errors (e.g. failed convergence etc.), user can decide if the program should continue.
LOG_ERROR_DETAIL | Details of an error (e.g. stack trace)
LOG_WARNING | Warning.
LOG_IMPORTANT | Important messages.
LOG_INFO | Basic log level, gives general information on the program flow.
LOG_RESULT | Single value results (also provided with provider mechanism) for easy tracking.
LOG_DATA | Intermediate data/results, mainly for presentation in live plots.
LOG_DETAIL | Less important details on computations (i.e. recomputations of Jacobian in Broyden method)
LOG_DEBUG | Pretty much everything.

Definition at line 27 of file log.hpp.

## ◆ PropertyType

enum plask::PropertyType

Type of properties.

See also
  Providers and receivers

Enumerator
SINGLE_VALUE_PROPERTY | Single value property.
MULTI_VALUE_PROPERTY | Multiple values property.
FIELD_PROPERTY | Property for field which can be interpolated.
MULTI_FIELD_PROPERTY | Property for multiple fields which can be interpolated.

Definition at line 34 of file providerfor.hpp.

## Function Documentation

## ◆ abs2()

double plask::abs2 | ( | const dcomplex & | x | ) |
| inline

Definition at line 231 of file math.hpp.

## ◆ abs2< 2, dcomplex >()

template<>

double plask::abs2< 2, dcomplex > | ( | const Vec< 2, dcomplex > & | v | ) |
| inline

Definition at line 33 of file vec.hpp.

## ◆ abs2< 3, dcomplex >()

template<>

double plask::abs2< 3, dcomplex > | ( | const Vec< 3, dcomplex > & | v | ) |
| inline

Definition at line 36 of file vec.hpp.

## ◆ abs< 2, double >()

template<>

double plask::abs< 2, double > | ( | const Vec< 2, double > & | v | ) |
| inline

Definition at line 61 of file vec.hpp.

## ◆ aligned_delete()

template<typename T >

void plask::aligned_delete | ( | T * | ptr | ) |
| inline

Delete object with aligned allocation.

Parameters

  ptr | pointer of object to delete

Template Parameters

  T | object type

Definition at line 199 of file memalloc.hpp.

## ◆ aligned_delete_array()

template<typename T >

void plask::aligned_delete_array | ( | std::size_t | num,
|  | T * | ptr
| ) |  |
| inline

Delete array with aligned allocation.

Parameters

  ptr | pointer of object to delete
  num | number of array elements

Template Parameters

  T | object type

Definition at line 224 of file memalloc.hpp.

## ◆ aligned_free() [1/2]

template<typename T >

void plask::aligned_free | ( | T * | ptr | ) |
| inline

Delete data with aligned allocation.

Parameters

  ptr | pointer of object to delete

Template Parameters

  T | object type

Definition at line 153 of file memalloc.hpp.

## ◆ aligned_free() [2/2]

void plask::aligned_free | ( | void * | ptr | ) |
| inline

Free memory allocated with aligned_malloc.

Parameters

  ptr | pointer to free

Definition at line 101 of file memalloc.hpp.

## ◆ aligned_malloc() [1/2]

template<typename T >

T * plask::aligned_malloc | ( | std::size_t | num = `1` | ) |
| inline

Create new data with aligned allocation.

Template Parameters

  T | object type

Parameters

  num | number of array elements

Returns
  pointer to reserved memory

Definition at line 142 of file memalloc.hpp.

## ◆ aligned_malloc() [2/2]

void * plask::aligned_malloc | ( | std::size_t | size | ) |
| inline

Allocate size bytes.

The returned pointer is guaranteed to have 16 bytes alignment.

Parameters

  size | number of bytes to allocate

Exceptions

  std::bad_alloc | on allocation failure

Definition at line 83 of file memalloc.hpp.

## ◆ aligned_new()

template<typename T , typename... Args>

T * plask::aligned_new | ( | Args &&... | args | ) |
| inline

Create new object with aligned allocation.

Template Parameters

  T | object type

Parameters

  args | arguments forwarded to object constructor

Returns
  pointer to reserved memory

Definition at line 187 of file memalloc.hpp.

## ◆ aligned_new_array()

template<typename T , typename... Args>

T * plask::aligned_new_array | ( | std::size_t | num,
|  | Args &&... | args
| ) |  |
| inline

Create new array with aligned allocation.

Template Parameters

  T | object type

Parameters

  num | number of array elements
  args | arguments forwarded to object constructor

Definition at line 211 of file memalloc.hpp.

## ◆ aligned_realloc()

void * plask::aligned_realloc | ( | void * | ptr,
|  | std::size_t | new_size,
|  | std::size_t | old_size = `0`
| ) |  |
| inline

Reallocate an aligned block of memory.

Parameters

  ptr | pointer to reallocate
  new_size | new size
  old_size | old size

Exceptions

  std::bad_alloc | on allocation failure

Definition at line 120 of file memalloc.hpp.

## ◆ alloyDbKey() [1/4]

std::string plask::alloyDbKey | ( | const Material::Composition & | composition,
|  | const std::string & | label,
|  | const std::string & | dopant_name
| ) |  |

Definition at line 83 of file db.cpp.

## ◆ alloyDbKey() [2/4]

std::string plask::alloyDbKey | ( | const std::string & | fullAlloyName | ) |

Definition at line 100 of file db.cpp.

## ◆ alloyDbKey() [3/4]

std::string plask::alloyDbKey | ( | const std::string & | name,
|  | const std::string & | label,
|  | const std::string & | dopant_name
| ) |  |

Definition at line 96 of file db.cpp.

## ◆ alloyDbKey() [4/4]

std::string plask::alloyDbKey | ( | std::vector< std::string > | elNames,
|  | const std::string & | label,
|  | const std::string & | dopant_name
| ) |  |

Definition at line 89 of file db.cpp.

## ◆ appendDopant()

std::string & plask::appendDopant | ( | std::string & | name,
|  | const std::string & | dopant_name
| ) |  |

Definition at line 71 of file db.cpp.

## ◆ appendLabel()

std::string & plask::appendLabel | ( | std::string & | name,
|  | const std::string & | label
| ) |  |

Definition at line 75 of file db.cpp.

## ◆ appendLabelDopant()

std::string & plask::appendLabelDopant | ( | std::string & | name,
|  | const std::string & | label,
|  | const std::string & | dopant_name
| ) |  |

Definition at line 79 of file db.cpp.

## ◆ appendPart()

std::string & plask::appendPart | ( | std::string & | name,
|  | const std::string & | part_value,
|  | char | separator
| ) |  |

Definition at line 62 of file db.cpp.

## ◆ apply_tuple() [1/2]

template<typename Ret , typename Op , typename T , template< std::size_t... > class I, std::size_t... Indices>

Ret plask::apply_tuple | ( | Op && | op,
|  | T && | t,
|  | I< Indices... > |
| ) |  |
| inline

Definition at line 207 of file stl.hpp.

## ◆ apply_tuple() [2/2]

template<typename Op , typename Tuple >

auto plask::apply_tuple | ( | Op && | op,
|  | Tuple && | t
| ) |  | -> decltype(apply_tuple_return_type( std::forward<Op>(op), std::forward<Tuple>(t) ))
| inline

Call `f` using arguments from tuple.

Parameters

  op | functor to call
  t | tuple which contains all `f` arguments

Returns
  result returned by `f`

Definition at line 219 of file stl.hpp.

## ◆ apply_tuple_return_type()

template<typename Op , typename T >

constexpr auto plask::apply_tuple_return_type | ( | Op && | op,
|  | T && | t
| ) |  | -> decltype(apply_tuple_return_type_impl(op, t, make_seq_indices< 0, tuple_size< T >()>{}))
| constexpr

## ◆ apply_tuple_return_type_impl()

template<typename Op , typename T , template< std::size_t... > class I, std::size_t... Indices>

constexpr auto plask::apply_tuple_return_type_impl | ( | Op && | op,
|  | T && | t,
|  | I< Indices... > |
| ) |  | -> return_type< Op(decltype(std::get< Indices >(std::forward< T >(t)))...)>
| constexpr

## ◆ average()

template<class T >

T plask::average | ( | const DataVector< T > & | v | ) |

Compute data arithmetic mean.

Parameters

  v | source data

Definition at line 818 of file data.hpp.

## ◆ buildCacheR()

template<int DIMS>

SpatialIndexNode< DIMS > * plask::buildCacheR | ( | std::vector< GeometryObjectBBox< DIMS > > * | input,
|  | int | max_depth = `16`
| ) |  |
| inline

Build cache.

Parameters

  input | 1 + DIMS * 2 vectors sorted by: 0 - in original order, dir*2 + 1 (for dim = 0 ... DIMS-1) - sorted by lower bound of bounding box in direction dir, dir*2 + 2 (for dim = 0 ... DIMS-1) - sorted by upper bound of bounding box in direction dir. Warning: this function change (destroy) inputs vectors.
  max_depth | maximum depth

Returns
  constructed cache

Definition at line 230 of file spatial_index.cpp.

## ◆ buildSpatialIndex() [1/3]

template PLASK_API std::unique_ptr< SpatialIndexNode< 2 > > plask::buildSpatialIndex | ( | const std::vector< shared_ptr< Translation< 2 > > > & | children | ) |

## ◆ buildSpatialIndex() [2/3]

template PLASK_API std::unique_ptr< SpatialIndexNode< 3 > > plask::buildSpatialIndex | ( | const std::vector< shared_ptr< Translation< 3 > > > & | children | ) |

## ◆ buildSpatialIndex() [3/3]

template<int DIMS>

std::unique_ptr< SpatialIndexNode< DIMS > > plask::buildSpatialIndex | ( | const std::vector< shared_ptr< Translation< DIMS > > > & | children | ) |

Build spatial index.

The index prevent reverse order of children in case of material searching.

Parameters

  children | vector of geometry object for which index should be build

Returns
  constructed index

Definition at line 251 of file spatial_index.cpp.

## ◆ calcOptimalSplitOffset()

template<int DIMS>

void plask::calcOptimalSplitOffset | ( | const std::vector< GeometryObjectBBox< DIMS > > & | inputSortedByLo,
|  | const std::vector< GeometryObjectBBox< DIMS > > & | inputSortedByHi,
|  | int | inputDir,
|  | int & | bestDir,
|  | double & | bestOffset,
|  | int & | bestValue
| ) |  |

Calculate optimal splitting offset in given direction.

Parameters

  inputSortedByLo,inputSortedByHi | input vector sorted by lo and hi boxes coordinates (in inputDir)
  inputDir | searched direction
  bestDir,bestOffset,bestValue | parameters of earlier best point, eventually changed

Definition at line 188 of file spatial_index.cpp.

## ◆ changeToBlock()

PLASK_API shared_ptr< GeometryObject > plask::changeToBlock | ( | const SolidOrGradientMaterial & | material,
|  | const shared_ptr< const GeometryObject > & | to_change,
|  | Vec< 3, double > & | translation,
|  | bool | draft = `false`
| ) |  |

Construct Block with the same dimenstion as bounding box of `to_change`.

Parameters

  material | material of the constructed Block
  to_change | geometry object
  translation[out] | set to position (lower corner) of `to_change` bounding box
  draft | should draft graded material be created?

Returns
  Block<to_change->getDimensionsCount()> object

Definition at line 302 of file leaf.cpp.

## ◆ checkCompositionSimilarity()

void plask::checkCompositionSimilarity | ( | const Material::Composition & | material1composition,
|  | const Material::Composition & | material2composition
| ) |  |

Definition at line 26 of file db.cpp.

## ◆ clamp()

template<typename T >

const T & plask::clamp | ( | const T & | v,
|  | const T & | min,
|  | const T & | max
| ) |  |

Clamp value to given range.

Parameters

  v | value to clamp
  min,max | minimal and maximal value which can be returned

Returns
  `min` if v < min, `max` if v > max, `v` in another cases

Definition at line 242 of file math.hpp.

## ◆ conj() [1/7]

template<typename T >

Tensor2< T > plask::conj | ( | const Tensor2< T > & | v | ) |
| inline

Calculate tensor conjugate.

Parameters

  v | a tensor

Returns
  conjugate tensor

Definition at line 276 of file tensor2.hpp.

## ◆ conj() [2/7]

template<typename T >

Tensor3< T > plask::conj | ( | const Tensor3< T > & | v | ) |
| inline

Calculate tensor conjugate.

Parameters

  v | a tensor

Returns
  conjugate tensor

Definition at line 463 of file tensor3.hpp.

## ◆ conj() [3/7]

template<typename T >

constexpr Vec< 2, T > plask::conj | ( | const Vec< 2, T > & | v | ) |
| inline constexpr

Calculate vector conjugate.

Parameters

  v | a vector

Returns
  conjugate vector

Definition at line 385 of file 2d.hpp.

## ◆ conj() [4/7]

template<typename T >

constexpr Vec< 3, T > plask::conj | ( | const Vec< 3, T > & | v | ) |
| inline constexpr

Calculate vector conjugate.

Parameters

  v | a vector

Returns
  conjugate vector

Definition at line 427 of file 3d.hpp.

## ◆ conj() [5/7]

double plask::conj | ( | double | x | ) |
| inline

Definition at line 178 of file math.hpp.

## ◆ conj() [6/7]

float plask::conj | ( | float | x | ) |
| inline

Definition at line 179 of file math.hpp.

## ◆ conj() [7/7]

long double plask::conj | ( | long double | x | ) |
| inline

Definition at line 177 of file math.hpp.

## ◆ constructInternalNode() [1/2]

SpatialIndexNode< 2 > * plask::constructInternalNode | ( | int | dir,
|  | const double & | offset,
|  | SpatialIndexNode< 2 > * | lo,
|  | SpatialIndexNode< 2 > * | hi
| ) |  |
| inline

Definition at line 156 of file spatial_index.cpp.

## ◆ constructInternalNode() [2/2]

SpatialIndexNode< 3 > * plask::constructInternalNode | ( | int | dir,
|  | const double & | offset,
|  | SpatialIndexNode< 3 > * | lo,
|  | SpatialIndexNode< 3 > * | hi
| ) |  |
| inline

Definition at line 163 of file spatial_index.cpp.

## ◆ createDefaultLogger()

PLASK_API void plask::createDefaultLogger | ( |  | ) |

Create default logger.

Definition at line 219 of file log.cpp.

## ◆ cross() [1/2]

template<typename T1 , typename T2 >

auto plask::cross | ( | const LateralVec< T1 > & | v1,
|  | const LateralVec< T2 > & | v2
| ) |  | -> decltype(v1.c0*v2.c1)
| inline

Compute (analog of 3d) cross product of two vectors `v1` and `v2`.

Parameters

  v1,v2 | vectors

Returns
  (analog of 3d) cross product of v1 and v2

Definition at line 352 of file lateral.hpp.

## ◆ cross() [2/2]

template<typename T1 , typename T2 >

auto plask::cross | ( | const Vec< 2, T1 > & | v1,
|  | const Vec< 2, T2 > & | v2
| ) |  | -> decltype(v1.c0 * v2.c1)
| inline

Compute (analog of 3d) cross product of two vectors `v1` and `v2`.

Parameters

  v1,v2 | vectors

Returns
  (analog of 3d) cross product of v1 and v2

Definition at line 402 of file 2d.hpp.

## ◆ dbKey()

std::string plask::dbKey | ( | const Material::Parameters & | parameters | ) |

Definition at line 106 of file db.cpp.

## ◆ dbl_compare_eq()

bool plask::dbl_compare_eq | ( | double | x,
|  | double | y
| ) |  |
| inline

Check if two doubles are equals.

It differs from standard == operator in case of comparing NaN-s: dbl_compare_eq(NaN, NaN) is `true`.

Parameters

  x,y | numbers to compare

Returns
  `true` only if `x` equals to `y`

Definition at line 302 of file math.hpp.

## ◆ dbl_compare_gt()

bool plask::dbl_compare_gt | ( | double | x,
|  | double | y
| ) |  |
| inline

Check if `x` is greater than `y`.

It differs from standard > operator in case of comparing NaN-s: NaN is greater than all other numbers. It is fine to use this to sort doubles or store doubles in standard containers (which is not true in case of standard > operator).

Parameters

  x,y | numbers to compare

Returns
  `true` only if `x` is greater than `y`

Definition at line 328 of file math.hpp.

## ◆ dbl_compare_gteq()

bool plask::dbl_compare_gteq | ( | double | x,
|  | double | y
| ) |  |
| inline

Check if `x` is greater or equals to `y`.

It differs from standard <= operator in case of comparing NaN-s: NaN is greater than all other numbers.

Parameters

  x,y | numbers to compare

Returns
  `true` only if `x` is greater or equals to `y`.

Definition at line 346 of file math.hpp.

## ◆ dbl_compare_lt()

bool plask::dbl_compare_lt | ( | double | x,
|  | double | y
| ) |  |
| inline

Check if `x` is less than `y`.

It differs from standard < operator in case of comparing NaN-s: NaN is greater than all other numbers. It is fine to use this to sort doubles or store doubles in standard containers (which is not true in case of standard < operator).

Parameters

  x,y | numbers to compare

Returns
  `true` only if `x` is less than `y`

Definition at line 315 of file math.hpp.

## ◆ dbl_compare_lteq()

bool plask::dbl_compare_lteq | ( | double | x,
|  | double | y
| ) |  |
| inline

Check if `x` is less or equals to `y`.

It differs from standard >= operator in case of comparing NaN-s: NaN is greater than all other numbers.

Parameters

  x,y | numbers to compare

Returns
  `true` only if `x` is less or equals to `y`.

Definition at line 337 of file math.hpp.

## ◆ dereferenceByIndexOperator()

template<typename ContainerType , typename Reference >

Reference plask::dereferenceByIndexOperator | ( | ContainerType & | container,
|  | std::size_t | index
| ) |  |
| inline

Definition at line 220 of file iterators.hpp.

## ◆ direction3D() [1/2]

constexpr Primitive< 3 >::Direction plask::direction3D | ( | Primitive< 2 >::Direction | dir2D | ) |
| inline constexpr

Definition at line 850 of file primitives.hpp.

## ◆ direction3D() [2/2]

constexpr Primitive< 3 >::Direction plask::direction3D | ( | Primitive< 3 >::Direction | dir3D | ) |
| inline constexpr

Definition at line 854 of file primitives.hpp.

## ◆ dot() [1/7]

template<typename T1 , typename T2 >

auto plask::dot | ( | const LateralVec< T1 > & | v1,
|  | const LateralVec< T2 > & | v2
| ) |  | -> decltype(v1.c0*v2.c0)
| inline

Compute dot product of two vectors `v1` and `v2`.

Parameters

  v1 | first vector
  v2 | second vector

Returns
  dot product v1·v2

Definition at line 342 of file lateral.hpp.

## ◆ dot() [2/7]

auto plask::dot | ( | const Vec< 2, dcomplex > & | v1,
|  | const Vec< 2, dcomplex > & | v2
| ) |  | -> decltype(v1.c0 * v2.c0)
| inline

Compute dot product of two vectors `v1` and `v2`.

Parameters

  v1 | first vector
  v2 | second vector

Returns
  dot product v1·v2

Definition at line 424 of file 2d.hpp.

## ◆ dot() [3/7]

auto plask::dot | ( | const Vec< 2, dcomplex > & | v1,
|  | const Vec< 2, double > & | v2
| ) |  | -> decltype(v1.c0 * v2.c0)
| inline

Compute dot product of two vectors `v1` and `v2`.

Parameters

  v1 | first vector
  v2 | second vector

Returns
  dot product v1·v2

Definition at line 413 of file 2d.hpp.

## ◆ dot() [4/7]

template<typename T1 , typename T2 >

auto plask::dot | ( | const Vec< 2, T1 > & | v1,
|  | const Vec< 2, T2 > & | v2
| ) |  | -> decltype(v1.c0 * v2.c0)
| inline

Compute dot product of two vectors `v1` and `v2`.

Parameters

  v1 | first vector
  v2 | second vector

Returns
  dot product v1·v2

Definition at line 393 of file 2d.hpp.

## ◆ dot() [5/7]

auto plask::dot | ( | const Vec< 3, dcomplex > & | v1,
|  | const Vec< 3, dcomplex > & | v2
| ) |  | -> decltype(v1.c0*v2.c0)
| inline

Compute dot product of two vectors `v1` and `v2`.

Parameters

  v1 | first vector
  v2 | second vector

Returns
  dot product v1·v2

Definition at line 458 of file 3d.hpp.

## ◆ dot() [6/7]

auto plask::dot | ( | const Vec< 3, dcomplex > & | v1,
|  | const Vec< 3, double > & | v2
| ) |  | -> decltype(v1.c0*v2.c0)
| inline

Compute dot product of two vectors `v1` and `v2`.

Parameters

  v1 | first vector
  v2 | second vector

Returns
  dot product v1·v2

Definition at line 447 of file 3d.hpp.

## ◆ dot() [7/7]

template<typename T1 , typename T2 >

auto plask::dot | ( | const Vec< 3, T1 > & | v1,
|  | const Vec< 3, T2 > & | v2
| ) |  | -> decltype(v1.c0*v2.c0)
| inline

Compute dot product of two vectors `v1` and `v2`.

Parameters

  v1 | first vector
  v2 | second vector

Returns
  dot product v1·v2

Definition at line 436 of file 3d.hpp.

## ◆ elementGroup()

int plask::elementGroup | ( | const std::string & | objectName | ) |

Get group in periodic table of given `object`.

Parameters

  objectName | name of object

Returns
  group of object with given name `objectName` or 0 if given object is not known

Definition at line 29 of file material.cpp.

## ◆ exePath()

PLASK_API std::string plask::exePath | ( |  | ) |

Get path to current program executable file.

Returns
  path to program executable

Definition at line 65 of file system.cpp.

## ◆ exePathAndName()

PLASK_API std::string plask::exePathAndName | ( |  | ) |

Retrieves the fully qualified path for current program executable file.

Returns
  program executable name with path

Definition at line 35 of file system.cpp.

## ◆ fermiDiracHalf()

double plask::fermiDiracHalf | ( | double | x | ) |

Definition at line 255 of file fd.cpp.

## ◆ fillGroupMaterialCompositionAmounts()

template<typename NameValuePairIter >

void plask::fillGroupMaterialCompositionAmounts | ( | NameValuePairIter | begin,
|  | NameValuePairIter | end,
|  | int | group_nr
| ) |  |
| inline

Definition at line 38 of file material.cpp.

## ◆ filterChars()

template<typename Pred >

std::string plask::filterChars | ( | const std::string & | str,
|  | Pred | pred
| ) |  |

Calculate copy of string `str` without some characters.

Parameters

  str | string to filter
  pred | predictad which return `true` for chars which should stay, and `false` for char which should be removed

Returns
  copy of str which contains only chars for which Pred is `true`

Template Parameters

  Pred | functor which take one argument (char) and return bool

Definition at line 97 of file string.hpp.

## ◆ find_nearest_binary()

template<typename Iter , typename Val >

Iter plask::find_nearest_binary | ( | Iter | begin,
|  | Iter | end,
|  | const Val & | to_find
| ) |  |
| inline

Find position in ascending ordered, radnom access, sequence [begin, end) of floats or doubles nearest to `to_find`.

Parameters

  begin,end | ordered, radnom access, sequence [begin, end), can't be empty
  to_find | value to which nearest one should be found

Returns
  first position pos for which abs(*pos-to_find) is minimal

Definition at line 78 of file stl.hpp.

## ◆ find_nearest_using_lower_bound()

template<typename Iter , typename Val >

Iter plask::find_nearest_using_lower_bound | ( | Iter | begin,
|  | Iter | end,
|  | const Val & | to_find,
|  | Iter | lower_bound
| ) |  |
| inline

Find position in ascending ordered, radnom access, sequence [begin, end) of floats or doubles nearest to `to_find`.

Parameters

  begin,end | ordered, radnom access, sequence [begin, end), can't be empty
  to_find | value to which nearest one should be found
  lower_bound | must be equal to std::lower_bound(begin, end, to_find)

Returns
  first position pos for which abs(*pos-to_find) is minimal

Definition at line 60 of file stl.hpp.

## ◆ fma() [1/4]

double plask::fma | ( | double | to_mult_1,
|  | double | to_mult_2,
|  | double | to_sum
| ) |  |
| inline

Definition at line 274 of file math.hpp.

## ◆ fma() [2/4]

float plask::fma | ( | float | to_mult_1,
|  | float | to_mult_2,
|  | float | to_sum
| ) |  |
| inline

Definition at line 270 of file math.hpp.

## ◆ fma() [3/4]

long double plask::fma | ( | long double | to_mult_1,
|  | long double | to_mult_2,
|  | long double | to_sum
| ) |  |
| inline

Definition at line 278 of file math.hpp.

## ◆ fma() [4/4]

template<typename T1 , typename T2 , typename T3 >

auto plask::fma | ( | T1 | to_mult_1,
|  | T2 | to_mult_2,
|  | T3 | to_sum
| ) |  | -> decltype(to_mult_1*to_mult_2+to_sum)
| inline

Wrapper over std::fma witch works for all types.

For float, double and long double it calls std::fma, and for rest it just calculates to_mult_1 * to_mult_2 + to_sum.

Parameters

  to_mult_1,to_mult_2,to_sum |

Returns
  result of to_mult_1 * to_mult_2 + to_sum, typically with better precision

Definition at line 266 of file math.hpp.

## ◆ from_longTran_vert()

Vec< 3, double > plask::from_longTran_vert | ( | const Vec< 2, double > & | longTran,
|  | const double & | vert
| ) |  |
| inline

Definition at line 23 of file extruded_triangular3d.cpp.

## ◆ getAmountEnd()

const char * plask::getAmountEnd | ( | const char * | begin,
|  | const char * | end
| ) |  |

Definition at line 302 of file material.cpp.

## ◆ getInterpolationMethod()

template<InterpolationMethod default_method>

InterpolationMethod plask::getInterpolationMethod | ( | InterpolationMethod | method | ) |
| inline

Helper utility that replaces INTERPOLATION_DEFAULT with particular method.

Definition at line 120 of file interpolation.hpp.

## ◆ getObjectEnd()

const char * plask::getObjectEnd | ( | const char * | begin,
|  | const char * | end
| ) |  |

Definition at line 294 of file material.cpp.

## ◆ getUnique() [1/2]

template<typename T >

shared_ptr< T > plask::getUnique | ( | const shared_ptr< const T > & | ptr | ) |
| inline

Copy ptr data if is not the only shared_ptr instance managing the current object, i.e.

whether ptr.unique() is `false` (ptr.use_count() != 1).

Parameters

  ptr | shared pointer

Returns
  ptr if ptr.unique() is `true` (ptr.use_count() == 1) or shared_ptr with copy of object managing by ptr if ptr.unique() is `false`

Template Parameters

  T | type of object managing by ptr, must have copy constructor

Definition at line 184 of file memory.hpp.

## ◆ getUnique() [2/2]

template<typename T >

shared_ptr< T > plask::getUnique | ( | const shared_ptr< T > & | ptr | ) |
| inline

Copy ptr data if is not the only shared_ptr instance managing the current object, i.e.

whether ptr.unique() is `false` (ptr.use_count() != 1).

Parameters

  ptr | shared pointer

Returns
  ptr if ptr.unique() is `true` (ptr.use_count() == 1) or shared_ptr with copy of object managing by ptr if ptr.unique() is `false`

Template Parameters

  T | type of object managing by ptr, must have copy constructor

Definition at line 173 of file memory.hpp.

## ◆ getUniqueNumber()

PLASK_API std::uint64_t plask::getUniqueNumber | ( |  | ) |

Get unique number.

This function is threads-safe.

Returns
  unique number

Definition at line 24 of file id.cpp.

## ◆ getUniqueString()

PLASK_API std::string plask::getUniqueString | ( |  | ) |

Get unique string.

This function is threads-safe.

Returns
  lexical_cast<std::string>(getUniqueNumber())

Definition at line 28 of file id.cpp.

## ◆ host_name()

PLASK_API std::string plask::host_name | ( |  | ) |

Definition at line 46 of file log.cpp.

## ◆ in_range()

template<typename T >

bool plask::in_range | ( | const T & | v,
|  | const T & | beg,
|  | const T & | end
| ) |  |

Check if value `v` is in given range [beg, end).

Parameters

  v | value to check
  beg,end | ends of range [beg, end)

Returns
  `true` only if beg <= v && v < end

Definition at line 255 of file math.hpp.

## ◆ inPlaceSplit()

template<int DIMS>

void plask::inPlaceSplit | ( | std::vector< GeometryObjectBBox< DIMS > > & | inputAndLo,
|  | std::vector< GeometryObjectBBox< DIMS > > & | hi,
|  | int | dir,
|  | double | offset
| ) |  |

Definition at line 172 of file spatial_index.cpp.

## ◆ interpolate() [1/2]

template<typename SrcMeshT , typename SrcT , typename DstT = SrcT>

LazyData< typename std::remove_const< DstT >::type > plask::interpolate | ( | shared_ptr< const SrcMeshT > | src_mesh,
|  | DataVector< const SrcT > | src_vec,
|  | shared_ptr< const MeshD< SrcMeshT::DIM > > | dst_mesh,
|  | InterpolationMethod | method = `INTERPOLATION_DEFAULT`,
|  | const InterpolationFlags & | flags = `InterpolationFlags()`,
|  | bool | verbose = `true`
| ) |  |

Calculate (interpolate when needed) a field of some physical properties in requested points of (dst_mesh) if values of this field in points of (src_mesh) are known.

Parameters

  src_mesh | set of points in which fields values are known
  src_vec | the vector of known field values in points described by sec_mesh
  dst_mesh | requested set of points, in which the field values should be calculated (interpolated)
  method | interpolation method to use
  verbose | if true, the log message is written

Returns
  vector of the field values in points described by dst_mesh, can be equal to src_vec if src_mesh and dst_mesh are the same mesh

Exceptions

  NotImplemented | if given interpolation method is not implemented for used source mesh type
  CriticalException | if given interpolation method is not valid

See also
  About interpolation

Definition at line 366 of file interpolation.hpp.

## ◆ interpolate() [2/2]

template<typename SrcMeshT , typename SrcT , typename DstT = SrcT, typename DstMeshT >

LazyData< typename std::remove_const< DstT >::type > plask::interpolate | ( | shared_ptr< SrcMeshT > | src_mesh,
|  | DataVector< SrcT > | src_vec,
|  | shared_ptr< DstMeshT > | dst_mesh,
|  | InterpolationMethod | method = `INTERPOLATION_DEFAULT`,
|  | const InterpolationFlags & | flags = `InterpolationFlags()`,
|  | bool | verbose = `true`
| ) |  |

Definition at line 382 of file interpolation.hpp.

## ◆ is_zero() [1/6]

template<typename T >

bool plask::is_zero | ( | const Tensor2< T > & | v | ) |
| inline

Check if the tensor is almost zero.

Parameters

  v | tensor to verify

Definition at line 290 of file tensor2.hpp.

## ◆ is_zero() [2/6]

template<typename T >

bool plask::is_zero | ( | const Tensor3< T > & | v | ) |
| inline

Check if the tensor is almost zero.

Parameters

  v | tensor to verify

Definition at line 480 of file tensor3.hpp.

## ◆ is_zero() [3/6]

template<typename T >

bool plask::is_zero | ( | const Vec< 2, T > & | v | ) |
| inline

Check if the vector is almost zero.

Parameters

  v | vector to verify

Definition at line 447 of file 2d.hpp.

## ◆ is_zero() [4/6]

template<typename T >

bool plask::is_zero | ( | const Vec< 3, T > & | v | ) |
| inline

Check if the vector is almost zero.

Parameters

  v | vector to verify

Definition at line 487 of file 3d.hpp.

## ◆ is_zero() [5/6]

bool plask::is_zero | ( | dcomplex | v | ) |
| inline

Check if the complex number is almost zero.

Parameters

  v | number to verify

Definition at line 195 of file math.hpp.

## ◆ is_zero() [6/6]

bool plask::is_zero | ( | double | v,
|  | double | abs_supremum = `SMALL`
| ) |  |
| inline

Check if the real number is almost zero.

Parameters

  v | number to verify
  abs_supremum |

Returns
  `true` only if abs(v) < abs_supremum

Definition at line 189 of file math.hpp.

## ◆ isAutoName()

bool plask::isAutoName | ( | const std::string & | name | ) |
| inline

Definition at line 121 of file reader.cpp.

## ◆ isCid()

PLASK_API bool plask::isCid | ( | const char * | potential_id | ) |

Check if `potential_id` is valid C/C++/python name.

Parameters

  potential_id |

Returns
  `true` only if `potential_id` is valid C/C++/python name

Definition at line 60 of file string.cpp.

## ◆ isDigit()

bool plask::isDigit | ( | char | ch | ) |

Definition at line 58 of file string.cpp.

## ◆ isEngAlpha()

bool plask::isEngAlpha | ( | char | ch | ) |

Definition at line 56 of file string.cpp.

## ◆ isEngLower()

bool plask::isEngLower | ( | char | ch | ) |
| inline

Definition at line 48 of file string.cpp.

## ◆ isEngUpper()

bool plask::isEngUpper | ( | char | ch | ) |
| inline

Definition at line 52 of file string.cpp.

## ◆ isnan() [1/2]

bool plask::isnan | ( | dcomplex | v | ) |
| inline

Check if the complex number is NaN.

Definition at line 200 of file math.hpp.

## ◆ isnan() [2/2]

template<typename T >

bool plask::isnan | ( | plask::Tensor3< T > | tens | ) |
| inline

Definition at line 490 of file tensor3.hpp.

## ◆ make_rectangular_mesh() [1/4]

PLASK_API shared_ptr< RectangularMesh2D > plask::make_rectangular_mesh | ( | const RectangularMesh2D & | to_copy | ) |

Copy `to_copy` mesh using OrderedAxis to represent each axis in returned mesh.

Parameters

  to_copy | mesh to copy

Returns
  mesh with each axis of type OrderedAxis

Definition at line 224 of file rectangular2d.cpp.

## ◆ make_rectangular_mesh() [2/4]

PLASK_API shared_ptr< RectangularMesh3D > plask::make_rectangular_mesh | ( | const RectangularMesh3D & | to_copy | ) |

Copy `to_copy` mesh using OrderedAxis to represent each axis in returned mesh.

Parameters

  to_copy | mesh to copy

Returns
  mesh with each axis of type OrderedAxis

Definition at line 40 of file rectangular3d.cpp.

## ◆ make_rectangular_mesh() [3/4]

shared_ptr< RectangularMesh2D > plask::make_rectangular_mesh | ( | shared_ptr< const RectangularMesh2D > | to_copy | ) |
| inline

Definition at line 1090 of file rectangular2d.hpp.

## ◆ make_rectangular_mesh() [4/4]

shared_ptr< RectangularMesh3D > plask::make_rectangular_mesh | ( | shared_ptr< const RectangularMesh3D > | to_copy | ) |
| inline

Definition at line 250 of file rectangular3d.hpp.

## ◆ makeEmptyBoundary()

template<typename MeshType >

MeshType::Boundary plask::makeEmptyBoundary | ( |  | ) |
| inline

Helper to create empty boundary.

Returns
  empty boundary

Template Parameters

  MeshType | type of mesh for which boundary should be returned

Definition at line 893 of file boundary.hpp.

## ◆ makeFunctorIndexedIterator()

template<typename Functor >

FunctorIndexedIterator< Functor > plask::makeFunctorIndexedIterator | ( | Functor | f,
|  | std::size_t | index
| ) |  |
| inline

Get FunctorIndexedIterator for given functor.

Parameters

  f | functor
  index | initial iterator position

Returns
  iterator which using functor f and has position index

See also
  FunctorIndexedIterator

Definition at line 443 of file iterators.hpp.

## ◆ makeGeometryAxis() [1/3]

template PLASK_API shared_ptr< OrderedAxis > plask::makeGeometryAxis | ( | const shared_ptr< GeometryObjectD< 2 > > & | geometry,
|  | Primitive< 3 >::Direction | dir,
|  | double | split
| ) |  |

## ◆ makeGeometryAxis() [2/3]

template PLASK_API shared_ptr< OrderedAxis > plask::makeGeometryAxis | ( | const shared_ptr< GeometryObjectD< 3 > > & | geometry,
|  | Primitive< 3 >::Direction | dir,
|  | double | split
| ) |  |

## ◆ makeGeometryAxis() [3/3]

template<int dim>

PLASK_API shared_ptr< OrderedAxis > plask::makeGeometryAxis | ( | const shared_ptr< GeometryObjectD< dim > > & | geometry,
|  | Primitive< 3 >::Direction | dir,
|  | double | split = `0.`
| ) |  |

Get axis with points along edges of bounding boxes of all geometry elements.

Parameters

  geometry | given geometry object
  dir | direction along which the points should be added
  split | if not 0 split points at boundaries into two separated by `split`

Definition at line 22 of file generator_rectangular.cpp.

## ◆ makeGeometryGrid() [1/4]

shared_ptr< RectangularMesh< 2 > > plask::makeGeometryGrid | ( | const shared_ptr< GeometryD< 2 > > & | geometry | ) |
| inline

Generate grid along edges of bounding boxes of all geometry elements.

Parameters

  geometry | given geometry

Returns
  generated mesh

Definition at line 72 of file generator_rectangular.hpp.

## ◆ makeGeometryGrid() [2/4]

shared_ptr< RectangularMesh< 3 > > plask::makeGeometryGrid | ( | const shared_ptr< GeometryD< 3 > > & | geometry | ) |
| inline

Generate grid along edges of bounding boxes of all geometry elements.

Parameters

  geometry | given geometry

Returns
  generated mesh

Definition at line 81 of file generator_rectangular.hpp.

## ◆ makeGeometryGrid() [3/4]

PLASK_API shared_ptr< RectangularMesh< 2 > > plask::makeGeometryGrid | ( | const shared_ptr< GeometryObjectD< 2 > > & | geometry,
|  | double | split = `0.`
| ) |  |

Generate grid along edges of bounding boxes of all geometry elements.

Parameters

  geometry | given geometry object
  split | if not 0 split points at boundaries into two separated by `split`

Returns
  generated mesh

Definition at line 52 of file generator_rectangular.cpp.

## ◆ makeGeometryGrid() [4/4]

PLASK_API shared_ptr< RectangularMesh< 3 > > plask::makeGeometryGrid | ( | const shared_ptr< GeometryObjectD< 3 > > & | geometry,
|  | double | split = `0.`
| ) |  |

Generate grid along edges of bounding boxes of all geometry elements.

Parameters

  geometry | given geometry object
  split | if not 0 split points at boundaries into two separated by `split`

Returns
  generated mesh

Definition at line 73 of file generator_rectangular.cpp.

## ◆ makeGeometryGrid1D() [1/2]

shared_ptr< OrderedAxis > plask::makeGeometryGrid1D | ( | const shared_ptr< GeometryD< 2 > > & | geometry | ) |
| inline

Generate grid along edges of bounding boxes of all geometry elements.

Parameters

  geometry | given geometry

Returns
  generated mesh

Definition at line 63 of file generator_rectangular.hpp.

## ◆ makeGeometryGrid1D() [2/2]

PLASK_API shared_ptr< OrderedAxis > plask::makeGeometryGrid1D | ( | const shared_ptr< GeometryObjectD< 2 > > & | geometry,
|  | double | split = `0.`
| ) |  |

Generate grid along edges of bounding boxes of all geometry elements.

Parameters

  geometry | given geometry object
  split | if not 0 split points at boundaries into two separated by `split`

Returns
  generated mesh

Definition at line 42 of file generator_rectangular.cpp.

## ◆ makeIndexedIterator()

template<typename ContainerType >

IndexedIterator< ContainerType > plask::makeIndexedIterator | ( | ContainerType * | c,
|  | std::size_t | index
| ) |  |
| inline

Get IndexedIterator for given container.

Parameters

  c | container
  index | initial iterator position

Returns
  iterator over container c which points to the position index

See also
  IndexedIterator

Definition at line 313 of file iterators.hpp.

## ◆ makePredicateBoundary()

template<typename Boundary , typename Predicate >

Boundary plask::makePredicateBoundary | ( | Predicate | predicate | ) |
| inline

Helper to create boundary which represents set of indexes which fulfill given `predicate`.

Use: makePredicateBoundary<MeshType::Boundary>(predicate);

Parameters

  predicate | functor which check if given point is in boundary

Returns
  boundary which represents set of indexes which fulfill `predicate`

Template Parameters

  Boundary | type of boundary which should be returned
  Predicate | predicate which check if given point is in boundary, predicate has the following arguments: MeshType mesh (mesh and index in mesh), std::size_t index

Definition at line 910 of file boundary.hpp.

## ◆ makeSegment()

TriangularMesh2D::Segment plask::makeSegment | ( | std::size_t | a,
|  | std::size_t | b
| ) |  |
| inline

Definition at line 139 of file triangular2d.cpp.

## ◆ makeUnique()

template<typename T >

void plask::makeUnique | ( | shared_ptr< T > & | ptr | ) |
| inline

Copy ptr data if is not the only shared_ptr instance managing the current object, i.e.

whether ptr.unique() is `false` (ptr.use_count() != 1).

Parameters

  ptr | shared pointer which will be changed to shared_ptr with copy of object managing by ptr if ptr.unique() is `false`

Template Parameters

  T | type of object managing by ptr, must have copy constructor

Definition at line 194 of file memory.hpp.

## ◆ map_find()

template<typename map_t >

map_t::mapped_type plask::map_find | ( | map_t & | map,
|  | const typename map_t::key_type & | to_find,
|  | typename map_t::mapped_type && | if_not_found = `nullptr`
| ) |  |
| inline

Try find value in map by key and return if_not_found value if object was not found.

Parameters

  map | map to find in it
  to_find | key to find
  if_not_found | value to return when there is no object with to_find key in map

Returns
  founded object or if_not_found value

Definition at line 34 of file stl.hpp.

## ◆ NaN()

template<typename T >

constexpr std::remove_cv< typenamestd::remove_reference< T >::type >::type plask::NaN | ( |  | ) |
| inline constexpr

Construct NaN or its counterpart with given type `T`.

Returns
  NaN or its counterpart

Definition at line 130 of file math.hpp.

## ◆ operator!=() [1/3]

template<class T1 , class T2 >

bool plask::operator!= | ( | DataVector< T1 > const & | a,
|  | LazyData< T2 > const & | b
| ) |  |
| inline

Definition at line 337 of file lazydata.hpp.

## ◆ operator!=() [2/3]

template<class T1 , class T2 >

bool plask::operator!= | ( | LazyData< T1 > const & | a,
|  | DataVector< T2 > const & | b
| ) |  |
| inline

Definition at line 336 of file lazydata.hpp.

## ◆ operator!=() [3/3]

template<class T1 , class T2 >

bool plask::operator!= | ( | LazyData< T1 > const & | a,
|  | LazyData< T2 > const & | b
| ) |  |
| inline

Check if two data vectors are not equal.

Parameters

  a,b | vectors to compare

Returns
  `true` only if a is not equal to b

Definition at line 335 of file lazydata.hpp.

## ◆ operator&() [1/2]

template<typename MeshType >

Boundary< MeshType > plask::operator& | ( | Boundary< MeshType > | left,
|  | Boundary< MeshType > | right
| ) |  |
| inline

Definition at line 783 of file boundary.hpp.

## ◆ operator&() [2/2]

BoundaryNodeSet plask::operator& | ( | BoundaryNodeSet | left,
|  | BoundaryNodeSet | right
| ) |  |
| inline

Definition at line 742 of file boundary.hpp.

## ◆ operator*() [1/10]

template<typename MeshType >

Boundary< MeshType > plask::operator* | ( | Boundary< MeshType > | left,
|  | Boundary< MeshType > | right
| ) |  |
| inline

Return boundary which produces the intersection of sets given by left and right boundaries.

Parameters

  left,right | boundaries

Returns
  the intersection boundary

Definition at line 779 of file boundary.hpp.

## ◆ operator*() [2/10]

BoundaryNodeSet plask::operator* | ( | BoundaryNodeSet | left,
|  | BoundaryNodeSet | right
| ) |  |
| inline

Return intersection of left and right sets of nodes.

Parameters

  left,right | sets of nodes

Returns
  the intersection

Definition at line 739 of file boundary.hpp.

## ◆ operator*() [3/10]

template<typename T , typename OtherT >

auto plask::operator* | ( | const OtherT | scale,
|  | const Tensor2< T > & | tensor
| ) |  | -> decltype(tensor * scale)

Calculate this tensor multiplied by scalar `scale`.

Parameters

  scale | scalar
  tensor | tensor

Returns
  this tensor multiplied by scalar

Definition at line 267 of file tensor2.hpp.

## ◆ operator*() [4/10]

template<typename T , typename OtherT >

auto plask::operator* | ( | const OtherT | scale,
|  | const Tensor3< T > & | tensor
| ) |  | -> decltype(tensor * scale)

Calculate this tensor multiplied by scalar `scale`.

Parameters

  scale | scalar
  tensor | tensor

Returns
  this tensor multiplied by scalar

Definition at line 454 of file tensor3.hpp.

## ◆ operator*() [5/10]

plask::dcomplex plask::operator* | ( | const plask::dcomplex & | a,
|  | int | b
| ) |  |
| inline

Definition at line 219 of file math.hpp.

## ◆ operator*() [6/10]

plask::dcomplex plask::operator* | ( | const plask::dcomplex & | a,
|  | unsigned | b
| ) |  |
| inline

Definition at line 221 of file math.hpp.

## ◆ operator*() [7/10]

template<typename T , typename S >

LazyData< typename ScaledLazyDataImpl< T, S >::CellType > plask::operator* | ( | const S & | scale,
|  | LazyData< T > | data
| ) |  |

Compute factor of `vec` and `a`.

Parameters

  vec | vector to multiply
  a | multiply factor

Returns
  `vec` * `a`

Definition at line 300 of file lazydata.hpp.

## ◆ operator*() [8/10]

plask::dcomplex plask::operator* | ( | int | a,
|  | const plask::dcomplex & | b
| ) |  |
| inline

Definition at line 218 of file math.hpp.

## ◆ operator*() [9/10]

template<typename T , typename S >

LazyData< typename ScaledLazyDataImpl< T, S >::CellType > plask::operator* | ( | LazyData< T > | data,
|  | const S & | scale
| ) |  |

Compute factor of `data` and `a`.

Parameters

  data | vector to multiply
  a | multiply factor

Returns
  `vec` * `a`

Definition at line 289 of file lazydata.hpp.

## ◆ operator*() [10/10]

plask::dcomplex plask::operator* | ( | unsigned | a,
|  | const plask::dcomplex & | b
| ) |  |
| inline

Definition at line 220 of file math.hpp.

## ◆ operator+() [1/2]

template<typename MeshType >

Boundary< MeshType > plask::operator+ | ( | Boundary< MeshType > | left,
|  | Boundary< MeshType > | right
| ) |  |
| inline

Return boundary which produces the union of sets given by left and right boundaries.

Parameters

  left,right | boundaries

Returns
  the union boundary

Definition at line 763 of file boundary.hpp.

## ◆ operator+() [2/2]

BoundaryNodeSet plask::operator+ | ( | BoundaryNodeSet | left,
|  | BoundaryNodeSet | right
| ) |  |
| inline

Return union of left and right sets of nodes.

Parameters

  left,right | sets of nodes

Returns
  the union

Definition at line 725 of file boundary.hpp.

## ◆ operator-() [1/2]

template<typename MeshType >

Boundary< MeshType > plask::operator- | ( | Boundary< MeshType > | left,
|  | Boundary< MeshType > | right
| ) |  |
| inline

Return boundary which produces the difference of sets given by left and right boundaries.

Parameters

  left,right | boundaries

Returns
  the difference boundary

Definition at line 794 of file boundary.hpp.

## ◆ operator-() [2/2]

BoundaryNodeSet plask::operator- | ( | BoundaryNodeSet | left,
|  | BoundaryNodeSet | right
| ) |  |
| inline

Return difference of left and right sets of nodes.

Parameters

  left,right | sets of nodes

Returns
  the difference

Definition at line 752 of file boundary.hpp.

## ◆ operator/() [1/4]

plask::dcomplex plask::operator/ | ( | const plask::dcomplex & | a,
|  | int | b
| ) |  |
| inline

Definition at line 223 of file math.hpp.

## ◆ operator/() [2/4]

plask::dcomplex plask::operator/ | ( | const plask::dcomplex & | a,
|  | unsigned | b
| ) |  |
| inline

Definition at line 225 of file math.hpp.

## ◆ operator/() [3/4]

plask::dcomplex plask::operator/ | ( | int | a,
|  | const plask::dcomplex & | b
| ) |  |
| inline

Definition at line 222 of file math.hpp.

## ◆ operator/() [4/4]

plask::dcomplex plask::operator/ | ( | unsigned | a,
|  | const plask::dcomplex & | b
| ) |  |
| inline

Definition at line 224 of file math.hpp.

## ◆ operator<() [1/3]

template<class T1 , class T2 >

bool plask::operator< | ( | DataVector< T1 > const & | a,
|  | LazyData< T2 > const & | b
| ) |  |
| inline

Definition at line 347 of file lazydata.hpp.

## ◆ operator<() [2/3]

template<class T1 , class T2 >

bool plask::operator< | ( | LazyData< T1 > const & | a,
|  | DataVector< T2 > const & | b
| ) |  |
| inline

Definition at line 350 of file lazydata.hpp.

## ◆ operator<() [3/3]

template<class T1 , class T2 >

bool plask::operator< | ( | LazyData< T1 > const & | a,
|  | LazyData< T2 > const & | b
| ) |  |
| inline

A lexical comparison of two (lazy) data vectors.

Parameters

  a,b | vectors to compare

Returns
  `true` only if `a` is smaller than the `b`

Definition at line 344 of file lazydata.hpp.

## ◆ operator<<()

template<class T >

std::ostream & plask::operator<< | ( | std::ostream & | out,
|  | LazyData< T > const & | to_print
| ) |  |

Print lazy data vector to stream.

Parameters

  out | output, destination stream
  to_print | lazy data vector to print

Returns
  `out`

Definition at line 387 of file lazydata.hpp.

## ◆ operator<=() [1/3]

template<class T1 , class T2 >

bool plask::operator<= | ( | DataVector< T1 > const & | a,
|  | LazyData< T2 > const & | b
| ) |  |
| inline

Definition at line 368 of file lazydata.hpp.

## ◆ operator<=() [2/3]

template<class T1 , class T2 >

bool plask::operator<= | ( | LazyData< T1 > const & | a,
|  | DataVector< T2 > const & | b
| ) |  |
| inline

Definition at line 369 of file lazydata.hpp.

## ◆ operator<=() [3/3]

template<class T1 , class T2 >

bool plask::operator<= | ( | LazyData< T1 > const & | a,
|  | LazyData< T2 > const & | b
| ) |  |
| inline

A lexical comparison of two (lazy) data vectors.

Parameters

  a,b | vectors to compare

Returns
  `true` only if `a` is smaller or equal to `b`

Definition at line 367 of file lazydata.hpp.

## ◆ operator==() [1/3]

template<class T1 , class T2 >

bool plask::operator== | ( | DataVector< T1 > const & | a,
|  | LazyData< T2 > const & | b
| ) |  |
| inline

Check if two vectors are equal.

Parameters

  a,b | vectors to compare

Returns
  `true` only if a is equal to b (a[0]==b[0], a[1]==b[1], ...)

Definition at line 328 of file lazydata.hpp.

## ◆ operator==() [2/3]

template<class T1 , class T2 >

bool plask::operator== | ( | LazyData< T1 > const & | a,
|  | DataVector< T2 > const & | b
| ) |  |
| inline

Check if two vectors are equal.

Parameters

  a,b | vectors to compare

Returns
  `true` only if a is equal to b (a[0]==b[0], a[1]==b[1], ...)

Definition at line 319 of file lazydata.hpp.

## ◆ operator==() [3/3]

template<class T1 , class T2 >

bool plask::operator== | ( | LazyData< T1 > const & | a,
|  | LazyData< T2 > const & | b
| ) |  |
| inline

Check if two lazy data vectors are equal.

Parameters

  a,b | vectors to compare

Returns
  `true` only if a is equal to b (a[0]==b[0], a[1]==b[1], ...)

Definition at line 310 of file lazydata.hpp.

## ◆ operator>() [1/3]

template<class T1 , class T2 >

bool plask::operator> | ( | DataVector< T1 > const & | a,
|  | LazyData< T2 > const & | b
| ) |  |
| inline

Definition at line 359 of file lazydata.hpp.

## ◆ operator>() [2/3]

template<class T1 , class T2 >

bool plask::operator> | ( | LazyData< T1 > const & | a,
|  | DataVector< T2 > const & | b
| ) |  |
| inline

Definition at line 360 of file lazydata.hpp.

## ◆ operator>() [3/3]

template<class T1 , class T2 >

bool plask::operator> | ( | LazyData< T1 > const & | a,
|  | LazyData< T2 > const & | b
| ) |  |
| inline

A lexical comparison of two (lazy) data vectors.

Parameters

  a,b | vectors to compare

Returns
  `true` only if `b` is smaller than the `a`

Definition at line 358 of file lazydata.hpp.

## ◆ operator>=() [1/3]

template<class T1 , class T2 >

bool plask::operator>= | ( | DataVector< T1 > const & | a,
|  | LazyData< T2 > const & | b
| ) |  |
| inline

Definition at line 377 of file lazydata.hpp.

## ◆ operator>=() [2/3]

template<class T1 , class T2 >

bool plask::operator>= | ( | LazyData< T1 > const & | a,
|  | DataVector< T2 > const & | b
| ) |  |
| inline

Definition at line 378 of file lazydata.hpp.

## ◆ operator>=() [3/3]

template<class T1 , class T2 >

bool plask::operator>= | ( | LazyData< T1 > const & | a,
|  | LazyData< T2 > const & | b
| ) |  |
| inline

A lexical comparison of two (lazy) data vectors.

Parameters

  a,b | vectors to compare

Returns
  `true` only if `b` is smaller or equal to `a`

Definition at line 376 of file lazydata.hpp.

## ◆ operator|() [1/2]

template<typename MeshType >

Boundary< MeshType > plask::operator| | ( | Boundary< MeshType > | left,
|  | Boundary< MeshType > | right
| ) |  |
| inline

Definition at line 767 of file boundary.hpp.

## ◆ operator|() [2/2]

BoundaryNodeSet plask::operator| | ( | BoundaryNodeSet | left,
|  | BoundaryNodeSet | right
| ) |  |
| inline

Definition at line 728 of file boundary.hpp.

## ◆ parse_complex()

template<typename T >

std::complex< T > plask::parse_complex | ( | std::string | str_to_parse | ) |

Parse complex number in format: R+Ij, R, Ij, or (R, I), where R and I are floating point numbers (last is standard C++ format).

Parameters

  str_to_parse | string to parse

Returns
  parsed complex number

Exceptions

  IllFormatedComplex | when `str_to_parse` is in bad format

Definition at line 369 of file math.hpp.

## ◆ parse_complex< double >()

template PLASK_API std::complex< double > plask::parse_complex< double > | ( | std::string | str_to_parse | ) |

## ◆ parseBoundary() [1/2]

template<typename Boundary >

Boundary plask::parseBoundary | ( | const std::string & | PLASK_UNUSEDboundary_desc,
|  | Manager & | PLASK_UNUSEDmanager
| ) |  |
| inline

Parse boundary of given type from string.

Specialization of this function:

template <> inline BoundaryType parseBoundary<BoundaryType>(const std::string& boundary_desc) { ... }

are responsible to parse boundary of type `BoundaryType` from string.

Parameters

  boundary_desc | boundary description, depends on type of boundary (which generally depends on mesh type)
  manager | geometry manager

Returns
  parsed boundary or Boundary() if can't parse given string

Definition at line 932 of file boundary.hpp.

## ◆ parseBoundary() [2/2]

template<typename Boundary >

Boundary plask::parseBoundary | ( | XMLReader & | PLASK_UNUSEDboundary_desc,
|  | Manager & | PLASK_UNUSEDmanager
| ) |  |
| inline

Parse boundary from XML reader.

It starts from tag which beginning is pointed by reader and (in case of successful parse) move reader to end of this tag.

For given boundary type (Boundary) specialization of this function:

template <> inline Boundary parseBoundary<Boundary>(XMLReader& boundary_desc) { ... }

are responsible to parse boundary from XML for this boundary type (which generally depends on mesh type).

Parameters

  boundary_desc | boundary description, depends on type of mesh
  manager | geometry manager

Returns
  parsed boundary or Boundary() if can't parse given tag

Definition at line 950 of file boundary.hpp.

## ◆ parseBoundary< RectangularMeshBase2D::Boundary >() [1/2]

template<>

RectangularMeshBase2D::Boundary plask::parseBoundary< RectangularMeshBase2D::Boundary > | ( | const std::string & | boundary_desc,
|  | plask::Manager & |
| ) |  |
| inline

Definition at line 641 of file rectangular_common.hpp.

## ◆ parseBoundary< RectangularMeshBase2D::Boundary >() [2/2]

template<>

RectangularMeshBase2D::Boundary plask::parseBoundary< RectangularMeshBase2D::Boundary > | ( | XMLReader & | boundary_desc,
|  | Manager & | env
| ) |  |
| inline

Definition at line 644 of file rectangular_common.hpp.

## ◆ parseBoundary< RectangularMeshBase3D::Boundary >() [1/2]

template<>

RectangularMeshBase3D::Boundary plask::parseBoundary< RectangularMeshBase3D::Boundary > | ( | const std::string & | boundary_desc,
|  | plask::Manager & |
| ) |  |
| inline

Definition at line 1230 of file rectangular_common.hpp.

## ◆ parseBoundary< RectangularMeshBase3D::Boundary >() [2/2]

template<>

RectangularMeshBase3D::Boundary plask::parseBoundary< RectangularMeshBase3D::Boundary > | ( | XMLReader & | boundary_desc,
|  | Manager & | env
| ) |  |
| inline

Definition at line 1233 of file rectangular_common.hpp.

## ◆ parseBoundary< TriangularMesh2D::Boundary >() [1/2]

template<>

TriangularMesh2D::Boundary plask::parseBoundary< TriangularMesh2D::Boundary > | ( | const std::string & | boundary_desc,
|  | plask::Manager & |
| ) |  |
| inline

Definition at line 712 of file triangular2d.hpp.

## ◆ parseBoundary< TriangularMesh2D::Boundary >() [2/2]

template<>

TriangularMesh2D::Boundary plask::parseBoundary< TriangularMesh2D::Boundary > | ( | XMLReader & | boundary_desc,
|  | Manager & | env
| ) |  |
| inline

Definition at line 715 of file triangular2d.hpp.

## ◆ parseBoundaryValue()

template<typename ConditionT >

ConditionT plask::parseBoundaryValue | ( | const XMLReader & | tag_with_value | ) |
| inline

Parse condition from XML tag.

Default implementation just read it from "value" attribute which use boost::lexical_cast to convert it to given type `ConditionT`. Specializations for chosen types can require other attributes.

Parameters

  tag_with_value | XML tag to parse

Returns
  parsed condition

Template Parameters

  ConditionT | type of condition to parse

Definition at line 662 of file manager.hpp.

## ◆ parseBoundaryValue< thermal::tstatic::Convection >()

template<>

thermal::tstatic::Convection plask::parseBoundaryValue< thermal::tstatic::Convection > | ( | const XMLReader & | tag_with_value | ) |
| inline

Definition at line 50 of file common.hpp.

## ◆ parseBoundaryValue< thermal::tstatic::Radiation >()

template<>

thermal::tstatic::Radiation plask::parseBoundaryValue< thermal::tstatic::Radiation > | ( | const XMLReader & | tag_with_value | ) |
| inline

Definition at line 55 of file common.hpp.

## ◆ PLASK_API_EXTERN_TEMPLATE_STRUCT() [1/30]

plask::PLASK_API_EXTERN_TEMPLATE_STRUCT | ( | BarycentricTriangularMesh2DLazyDataImpl< dcomplex, dcomplex > |  | ) |

## ◆ PLASK_API_EXTERN_TEMPLATE_STRUCT() [2/30]

plask::PLASK_API_EXTERN_TEMPLATE_STRUCT | ( | BarycentricTriangularMesh2DLazyDataImpl< double, double > |  | ) |

## ◆ PLASK_API_EXTERN_TEMPLATE_STRUCT() [3/30]

plask::PLASK_API_EXTERN_TEMPLATE_STRUCT | ( | BarycentricTriangularMesh2DLazyDataImpl< Tensor2< dcomplex >, Tensor2< dcomplex > > |  | ) |

## ◆ PLASK_API_EXTERN_TEMPLATE_STRUCT() [4/30]

plask::PLASK_API_EXTERN_TEMPLATE_STRUCT | ( | BarycentricTriangularMesh2DLazyDataImpl< Tensor2< double >, Tensor2< double > > |  | ) |

## ◆ PLASK_API_EXTERN_TEMPLATE_STRUCT() [5/30]

plask::PLASK_API_EXTERN_TEMPLATE_STRUCT | ( | BarycentricTriangularMesh2DLazyDataImpl< Tensor3< dcomplex >, Tensor3< dcomplex > > |  | ) |

## ◆ PLASK_API_EXTERN_TEMPLATE_STRUCT() [6/30]

plask::PLASK_API_EXTERN_TEMPLATE_STRUCT | ( | BarycentricTriangularMesh2DLazyDataImpl< Tensor3< double >, Tensor3< double > > |  | ) |

## ◆ PLASK_API_EXTERN_TEMPLATE_STRUCT() [7/30]

plask::PLASK_API_EXTERN_TEMPLATE_STRUCT | ( | BarycentricTriangularMesh2DLazyDataImpl< Vec< 2, dcomplex >, Vec< 2, dcomplex > > |  | ) |

## ◆ PLASK_API_EXTERN_TEMPLATE_STRUCT() [8/30]

plask::PLASK_API_EXTERN_TEMPLATE_STRUCT | ( | BarycentricTriangularMesh2DLazyDataImpl< Vec< 2, double >, Vec< 2, double > > |  | ) |

## ◆ PLASK_API_EXTERN_TEMPLATE_STRUCT() [9/30]

plask::PLASK_API_EXTERN_TEMPLATE_STRUCT | ( | BarycentricTriangularMesh2DLazyDataImpl< Vec< 3, dcomplex >, Vec< 3, dcomplex > > |  | ) |

## ◆ PLASK_API_EXTERN_TEMPLATE_STRUCT() [10/30]

plask::PLASK_API_EXTERN_TEMPLATE_STRUCT | ( | BarycentricTriangularMesh2DLazyDataImpl< Vec< 3, double >, Vec< 3, double > > |  | ) |

## ◆ PLASK_API_EXTERN_TEMPLATE_STRUCT() [11/30]

plask::PLASK_API_EXTERN_TEMPLATE_STRUCT | ( | NearestNeighborElementTriangularMesh2DLazyDataImpl< dcomplex, dcomplex > |  | ) |

## ◆ PLASK_API_EXTERN_TEMPLATE_STRUCT() [12/30]

plask::PLASK_API_EXTERN_TEMPLATE_STRUCT | ( | NearestNeighborElementTriangularMesh2DLazyDataImpl< double, double > |  | ) |

## ◆ PLASK_API_EXTERN_TEMPLATE_STRUCT() [13/30]

plask::PLASK_API_EXTERN_TEMPLATE_STRUCT | ( | NearestNeighborElementTriangularMesh2DLazyDataImpl< Tensor2< dcomplex >, Tensor2< dcomplex > > |  | ) |

## ◆ PLASK_API_EXTERN_TEMPLATE_STRUCT() [14/30]

plask::PLASK_API_EXTERN_TEMPLATE_STRUCT | ( | NearestNeighborElementTriangularMesh2DLazyDataImpl< Tensor2< double >, Tensor2< double > > |  | ) |

## ◆ PLASK_API_EXTERN_TEMPLATE_STRUCT() [15/30]

plask::PLASK_API_EXTERN_TEMPLATE_STRUCT | ( | NearestNeighborElementTriangularMesh2DLazyDataImpl< Tensor3< dcomplex >, Tensor3< dcomplex > > |  | ) |

## ◆ PLASK_API_EXTERN_TEMPLATE_STRUCT() [16/30]

plask::PLASK_API_EXTERN_TEMPLATE_STRUCT | ( | NearestNeighborElementTriangularMesh2DLazyDataImpl< Tensor3< double >, Tensor3< double > > |  | ) |

## ◆ PLASK_API_EXTERN_TEMPLATE_STRUCT() [17/30]

plask::PLASK_API_EXTERN_TEMPLATE_STRUCT | ( | NearestNeighborElementTriangularMesh2DLazyDataImpl< Vec< 2, dcomplex >, Vec< 2, dcomplex > > |  | ) |

## ◆ PLASK_API_EXTERN_TEMPLATE_STRUCT() [18/30]

plask::PLASK_API_EXTERN_TEMPLATE_STRUCT | ( | NearestNeighborElementTriangularMesh2DLazyDataImpl< Vec< 2, double >, Vec< 2, double > > |  | ) |

## ◆ PLASK_API_EXTERN_TEMPLATE_STRUCT() [19/30]

plask::PLASK_API_EXTERN_TEMPLATE_STRUCT | ( | NearestNeighborElementTriangularMesh2DLazyDataImpl< Vec< 3, dcomplex >, Vec< 3, dcomplex > > |  | ) |

## ◆ PLASK_API_EXTERN_TEMPLATE_STRUCT() [20/30]

plask::PLASK_API_EXTERN_TEMPLATE_STRUCT | ( | NearestNeighborElementTriangularMesh2DLazyDataImpl< Vec< 3, double >, Vec< 3, double > > |  | ) |

## ◆ PLASK_API_EXTERN_TEMPLATE_STRUCT() [21/30]

plask::PLASK_API_EXTERN_TEMPLATE_STRUCT | ( | NearestNeighborTriangularMesh2DLazyDataImpl< dcomplex, dcomplex > |  | ) |

## ◆ PLASK_API_EXTERN_TEMPLATE_STRUCT() [22/30]

plask::PLASK_API_EXTERN_TEMPLATE_STRUCT | ( | NearestNeighborTriangularMesh2DLazyDataImpl< double, double > |  | ) |

## ◆ PLASK_API_EXTERN_TEMPLATE_STRUCT() [23/30]

plask::PLASK_API_EXTERN_TEMPLATE_STRUCT | ( | NearestNeighborTriangularMesh2DLazyDataImpl< Tensor2< dcomplex >, Tensor2< dcomplex > > |  | ) |

## ◆ PLASK_API_EXTERN_TEMPLATE_STRUCT() [24/30]

plask::PLASK_API_EXTERN_TEMPLATE_STRUCT | ( | NearestNeighborTriangularMesh2DLazyDataImpl< Tensor2< double >, Tensor2< double > > |  | ) |

## ◆ PLASK_API_EXTERN_TEMPLATE_STRUCT() [25/30]

plask::PLASK_API_EXTERN_TEMPLATE_STRUCT | ( | NearestNeighborTriangularMesh2DLazyDataImpl< Tensor3< dcomplex >, Tensor3< dcomplex > > |  | ) |

## ◆ PLASK_API_EXTERN_TEMPLATE_STRUCT() [26/30]

plask::PLASK_API_EXTERN_TEMPLATE_STRUCT | ( | NearestNeighborTriangularMesh2DLazyDataImpl< Tensor3< double >, Tensor3< double > > |  | ) |

## ◆ PLASK_API_EXTERN_TEMPLATE_STRUCT() [27/30]

plask::PLASK_API_EXTERN_TEMPLATE_STRUCT | ( | NearestNeighborTriangularMesh2DLazyDataImpl< Vec< 2, dcomplex >, Vec< 2, dcomplex > > |  | ) |

## ◆ PLASK_API_EXTERN_TEMPLATE_STRUCT() [28/30]

plask::PLASK_API_EXTERN_TEMPLATE_STRUCT | ( | NearestNeighborTriangularMesh2DLazyDataImpl< Vec< 2, double >, Vec< 2, double > > |  | ) |

## ◆ PLASK_API_EXTERN_TEMPLATE_STRUCT() [29/30]

plask::PLASK_API_EXTERN_TEMPLATE_STRUCT | ( | NearestNeighborTriangularMesh2DLazyDataImpl< Vec< 3, dcomplex >, Vec< 3, dcomplex > > |  | ) |

## ◆ PLASK_API_EXTERN_TEMPLATE_STRUCT() [30/30]

plask::PLASK_API_EXTERN_TEMPLATE_STRUCT | ( | NearestNeighborTriangularMesh2DLazyDataImpl< Vec< 3, double >, Vec< 3, double > > |  | ) |

## ◆ plaskLibPath()

PLASK_API std::string plask::plaskLibPath | ( |  | ) |

Get path to plask library files (shared libraries).

This directory contains subdirectories: solvers (see plaskSolversPath), materials (see plaskMaterialsPath).

Returns
  path to plask library files (with rearmost '/' or '\')

Definition at line 79 of file system.cpp.

## ◆ plaskMaterialsPath()

PLASK_API std::string plask::plaskMaterialsPath | ( |  | ) |

Get path to materials files (shared libraries).

Returns
  path (with rearmost '/' or '\')

Definition at line 98 of file system.cpp.

## ◆ plaskSolversPath()

PLASK_API std::string plask::plaskSolversPath | ( | const std::string & | category | ) |

Get path to files (shared libraries) with solvers in given `category`.

Parameters

  category | name of solvers category

Returns
  path (with rearmost '/' or '\')

Definition at line 89 of file system.cpp.

## ◆ prefixPath()

PLASK_API std::string plask::prefixPath | ( |  | ) |

Get environment variable PLASK_PREFIX_PATH (should be without rearmost '/' or '\') or, if it is not set, path one step above the current program executable file.

Returns
  path one step above from program executable

Definition at line 69 of file system.cpp.

## ◆ prepareInterpolationForAxis()

PLASK_API void plask::prepareInterpolationForAxis | ( | const MeshAxis & | axis,
|  | const InterpolationFlags & | flags,
|  | double | wrapped_point_coord,
|  | int | axis_nr,
|  | std::size_t & | index_lo,
|  | std::size_t & | index_hi,
|  | double & | lo,
|  | double & | hi,
|  | bool & | invert_lo,
|  | bool & | invert_hi
| ) |  |

TODO doc - this is code by M.

Dems copied from interpolation methods of rectngular meshes

This function is used by linear and spline interpolations of rectangular meshes.

Parameters

  [in] | axis |
  [in] | flags |
  [in] | wrapped_point_coord |
  [in] | axis_nr |
  [out] | index_lo |
  [out] | index_hi |
  [out] | lo |
  [out] | hi |
  [out] | invert_lo |
  [out] | invert_hi |

Definition at line 99 of file axis1d.cpp.

## ◆ prepareNearestNeighborInterpolationForAxis()

PLASK_API void plask::prepareNearestNeighborInterpolationForAxis | ( | const MeshAxis & | axis,
|  | const InterpolationFlags & | flags,
|  | double & | wrapped_point_coord,
|  | int | axis_nr
| ) |  |

TODO doc - this is code by M.

Dems copied from interpolation methods of rectngular meshes

Parameters

  [in] | axis |
  [in] | flags |
  [in,out] | wrapped_point_coord |
  [in] | axis_nr |

Definition at line 89 of file axis1d.cpp.

## ◆ print_seq()

template<typename Iter >

std::ostream & plask::print_seq | ( | std::ostream & | out,
|  | Iter | begin,
|  | Iter | end,
|  | const char * | sep = `", "`
| ) |  |

Print all values from sequence [begin, end) sepparating by `sep`.

Parameters

  out | print destination
  begin,end | sequence to print
  sep |

Returns
  out

Definition at line 73 of file string.hpp.

## ◆ printRange()

template<typename ForwadIterator >

std::ostream & plask::printRange | ( | std::ostream & | out,
|  | ForwadIterator | begin,
|  | ForwadIterator | end,
|  | const char * | separator = `", "`
| ) |  |

Print range separating elements by `separator` (which is not printed after last element).

Parameters

  out | stream to print to
  begin,end | [begin, end) range to print
  separator | string placed between each pair of adjacent elements

Returns
  out

Definition at line 93 of file stl.hpp.

## ◆ read_arrange2d()

shared_ptr< GeometryObject > plask::read_arrange2d | ( | GeometryReader & | reader | ) |

Definition at line 247 of file lattice.cpp.

## ◆ read_arrange3d()

shared_ptr< GeometryObject > plask::read_arrange3d | ( | GeometryReader & | reader | ) |

Definition at line 258 of file lattice.cpp.

## ◆ read_block2D()

shared_ptr< GeometryObject > plask::read_block2D | ( | GeometryReader & | reader | ) |

Definition at line 136 of file leaf.cpp.

## ◆ read_cartesianExtend()

shared_ptr< GeometryObject > plask::read_cartesianExtend | ( | GeometryReader & | reader | ) |

Definition at line 126 of file transform_space_cartesian.cpp.

## ◆ read_children()

template<typename ChildParamF , typename WithoutChildParamF >

void plask::read_children | ( | GeometryReader & | reader,
|  | ChildParamF | child_param_read,
|  | WithoutChildParamF | without_child_param_read
| ) |  |
| inline

Read children, call child_param_read if children is in <item> tag and without_child_param_read if there was no <item> tag.

Read "path" parameter from each <item> tag.

Parameters

  reader | reader
  child_param_read | functor called for each <item> tag, without parameters, should create child, add it to container and return PathHints::Hint (and move reader.source to end of current, <item>, tag)
  without_child_param_read | functor called for each children (when there was no <item> tag), should create child, add it to container, and move reader.source to end of current tag

Definition at line 333 of file container.hpp.

## ◆ read_circle()

template<int dim>

shared_ptr< GeometryObject > plask::read_circle | ( | GeometryReader & | reader | ) |

Definition at line 161 of file circle.cpp.

## ◆ read_Clip2D()

shared_ptr< GeometryObject > plask::read_Clip2D | ( | GeometryReader & | reader | ) |

Definition at line 186 of file clip.cpp.

## ◆ read_Clip3D()

shared_ptr< GeometryObject > plask::read_Clip3D | ( | GeometryReader & | reader | ) |

Definition at line 193 of file clip.cpp.

## ◆ read_cuboid()

shared_ptr< GeometryObject > plask::read_cuboid | ( | GeometryReader & | reader | ) |

Definition at line 128 of file cuboid.cpp.

## ◆ read_cylinder()

shared_ptr< GeometryObject > plask::read_cylinder | ( | GeometryReader & | reader | ) |

Definition at line 129 of file cylinder.cpp.

## ◆ read_ellipse()

shared_ptr< GeometryObject > plask::read_ellipse | ( | GeometryReader & | reader | ) |

Definition at line 118 of file ellipse.cpp.

## ◆ read_elliptic_cylinder()

shared_ptr< GeometryObject > plask::read_elliptic_cylinder | ( | GeometryReader & | reader | ) |

Definition at line 186 of file elliptic_cylinder.cpp.

## ◆ read_flip_like()

template<typename GeometryType >

shared_ptr< GeometryObject > plask::read_flip_like | ( | GeometryReader & | reader | ) |

Definition at line 253 of file mirror.cpp.

## ◆ read_hollow_cylinder()

shared_ptr< GeometryObject > plask::read_hollow_cylinder | ( | GeometryReader & | reader | ) |

Definition at line 309 of file cylinder.cpp.

## ◆ read_Intersection()

template<int dim>

shared_ptr< GeometryObject > plask::read_Intersection | ( | GeometryReader & | reader | ) |

Definition at line 138 of file intersection.cpp.

## ◆ read_lattice()

shared_ptr< GeometryObject > plask::read_lattice | ( | GeometryReader & | reader | ) |

Definition at line 503 of file lattice.cpp.

## ◆ read_prism()

shared_ptr< GeometryObject > plask::read_prism | ( | GeometryReader & | reader | ) |

Definition at line 329 of file prism.cpp.

## ◆ read_revolution()

shared_ptr< GeometryObject > plask::read_revolution | ( | GeometryReader & | reader | ) |

Definition at line 163 of file transform_space_cylindric.cpp.

## ◆ read_translation2D()

shared_ptr< GeometryObject > plask::read_translation2D | ( | GeometryReader & | reader | ) |

Definition at line 154 of file transform.cpp.

## ◆ read_translation3D()

shared_ptr< GeometryObject > plask::read_translation3D | ( | GeometryReader & | reader | ) |

Definition at line 161 of file transform.cpp.

## ◆ read_TranslationContainer()

template<int dim>

shared_ptr< GeometryObject > plask::read_TranslationContainer | ( | GeometryReader & | reader | ) |

Definition at line 131 of file translation_container.cpp.

## ◆ read_triangle()

shared_ptr< GeometryObject > plask::read_triangle | ( | GeometryReader & | reader | ) |

Definition at line 164 of file triangle.cpp.

## ◆ read_triangular_prism()

shared_ptr< GeometryObject > plask::read_triangular_prism | ( | GeometryReader & | reader | ) |

Definition at line 140 of file prism.cpp.

## ◆ readMeshAxis()

shared_ptr< MeshAxis > plask::readMeshAxis | ( | XMLReader & | reader | ) |

Read 1d mesh axis from XML.

Parameters

  reader |

Returns
  the axis readed

Definition at line 19 of file rectangular_common.cpp.

## ◆ readOrderedMesh1D()

shared_ptr< OrderedMesh1D > plask::readOrderedMesh1D | ( | XMLReader & | reader | ) |

Definition at line 184 of file ordered1d.cpp.

## ◆ readOrderedMesh1D_obsolete()

shared_ptr< OrderedMesh1D > plask::readOrderedMesh1D_obsolete | ( | XMLReader & | reader | ) |

Definition at line 196 of file ordered1d.cpp.

## ◆ readPolygon()

shared_ptr< GeometryObject > plask::readPolygon | ( | GeometryReader & | reader | ) |

Definition at line 161 of file polygon.cpp.

## ◆ readRectangularDivideGenerator()

template<int dim>

shared_ptr< MeshGenerator > plask::readRectangularDivideGenerator | ( | XMLReader & | reader,
|  | Manager & | manager
| ) |  |

Definition at line 555 of file generator_rectangular.cpp.

## ◆ readRectangularSmoothGenerator()

template<int dim>

shared_ptr< MeshGenerator > plask::readRectangularSmoothGenerator | ( | XMLReader & | reader,
|  | Manager & | manager
| ) |  |

Definition at line 615 of file generator_rectangular.cpp.

## ◆ readRectilinearMeshAxis()

shared_ptr< OrderedMesh1D > plask::readRectilinearMeshAxis | ( | XMLReader & | reader | ) |

Definition at line 162 of file ordered1d.cpp.

## ◆ readRegularMesh1D()

shared_ptr< RegularMesh1D > plask::readRegularMesh1D | ( | XMLReader & | reader | ) |

Definition at line 80 of file regular1d.cpp.

## ◆ readRegularMesh1D_obsolete()

shared_ptr< RegularMesh1D > plask::readRegularMesh1D_obsolete | ( | XMLReader & | reader | ) |

Definition at line 90 of file regular1d.cpp.

## ◆ readRegularMeshAxis()

PLASK_API shared_ptr< RegularMesh1D > plask::readRegularMeshAxis | ( | XMLReader & | reader | ) |

Definition at line 72 of file regular1d.cpp.

## ◆ readTriangleGenerator()

shared_ptr< MeshGenerator > plask::readTriangleGenerator | ( | XMLReader & | reader,
|  | const Manager & |
| ) |  |

Definition at line 159 of file generator_triangular.cpp.

## ◆ readTriangularMesh2D_readNodeIndex()

std::size_t plask::readTriangularMesh2D_readNodeIndex | ( | XMLReader & | reader,
|  | const char * | attrName,
|  | std::size_t | nodes_size
| ) |  |

Definition at line 479 of file triangular2d.cpp.

## ◆ refineAxis()

PLASK_API shared_ptr< OrderedAxis > plask::refineAxis | ( | const shared_ptr< MeshAxis > & | axis,
|  | double | spacing
| ) |  |

Divide existing axis into finer mesh with points approximately spaced by `spacing`.

Parameters

  spacing | approximate distance between mesh points

Returns
  refined mesh

Definition at line 89 of file generator_rectangular.cpp.

## ◆ reindexContainer()

template<typename ContainerType >

ReindexedContainer< ContainerType > plask::reindexContainer | ( | ContainerType & | originalContainer,
|  | int | firstIndex = `0`,
|  | int | delta = `1`
| ) |  |

Helper function to create ReindexedContainer instantiation objects.

Parameters

  originalContainer,firstIndex,delta | ReindexedContainer constructor parameters

Returns
  ReindexedContainer<ContainerType>(originalContainer, firstIndex, delta)

Template Parameters

  ContainerType | type of original container

Definition at line 483 of file iterators.hpp.

## ◆ remove_nan()

template<typename T >

T plask::remove_nan | ( | T | val,
|  | const T | nan = `Zero<T>()`
| ) |  |
| inline

Replace NaN with some specified value (zero by default).

Parameters

  val | value to test
  nan | value returned instead of NaN

Returns
  `val` or its replacement (`nan`) if value is NaN

Definition at line 212 of file math.hpp.

## ◆ removedChars()

PLASK_API std::string plask::removedChars | ( | const std::string & | str,
|  | const std::string & | chars_to_remove
| ) |  |

Parameters

  str | string to filter
  chars_to_remove | set of characters to remove

Returns
  copy of str with removed chars which are include in chars_to_remove

Definition at line 34 of file string.cpp.

## ◆ replaceChars()

template<typename CharReplacer >

std::string plask::replaceChars | ( | const std::string & | str,
|  | CharReplacer | repl
| ) |  |

Calculate copy of string `str` with some characters replaced by other.

Parameters

  str | string
  repl | functor which return new character or string for each input character

Returns
  copy of str witch replaced all characters by results of `repl`

Template Parameters

  CharReplacer | functor which take one argument (char) and return char or string

Definition at line 111 of file string.hpp.

## ◆ SafeData()

template<typename T >

LazyData< T > plask::SafeData | ( | const LazyData< T > & | src,
|  | const T | safe_value = `Zero<T>()`
| ) |  |
| inline

Make LazyData removing NaN from another lazy data.

Parameters

  src | source lazy data or vector
  sane_value | sane value that is returned instead of NaN

Definition at line 437 of file lazydata.hpp.

## ◆ splitAndTrimPred()

template<typename RangeT , typename PredicateT , typename SequenceSequenceT = std::vector<std::string>>

SequenceSequenceT plask::splitAndTrimPred | ( | RangeT & | input,
|  | PredicateT | pred,
|  | boost::algorithm::token_compress_mode_type | eCompress = `boost::algorithm::token_compress_off`
| ) |  |

Split `input` to sequence of tokens.

White spaces on beginning and ending of each token are removed.

Parameters

  input | input string
  pred | a predicate to identify separators, this predicate is supposed to return `true` only if a given object is a separator
  eCompress | if it is set to boost::algorithm::token_compress_on, adjacent separators are merged together, otherwise, every two separators delimit a token.

Returns
  sequence of token

Definition at line 133 of file string.hpp.

## ◆ splitEsc()

PLASK_API std::vector< std::string > plask::splitEsc | ( | const std::string & | str,
|  | char | splitter,
|  | char | quote_char = `'\''`,
|  | char | esc_char = `'\\'`
| ) |  |

Split `str` to sequence of tokens.

White spaces on beginning and ending of each token are removed.

Parameters

  str | input string
  splitter | character which separate tokents, typically ',' or ';'
  quote_char | the character to use for the quote also allow to insert separate character in token
  esc_char | escape character which allow to insert separate character in token

Returns
  sequence of token

Definition at line 42 of file string.cpp.

## ◆ splitEscIterator()

PLASK_API split_esc_tokenizer plask::splitEscIterator | ( | const std::string & | str,
|  | char | splitter,
|  | char | quote_char = `'\''`,
|  | char | esc_char = `'\\'`
| ) |  |

Split `str` to sequence of tokens.

White spaces on beginning and ending of each token are removed.

Parameters

  str | input string
  splitter | character which separate tokents, typically ',' or ';'
  quote_char | the character to use for the quote, allow to insert separate character in token (if token is quoted)
  esc_char | escape character which allow to insert separate character in token, typically '\'

Returns
  tokenizer which allow to iterate over tokens

Definition at line 38 of file string.cpp.

## ◆ splitString2()

PLASK_API std::pair< std::string, std::string > plask::splitString2 | ( | const std::string & | to_split,
|  | char | splitter
| ) |  |

Split string to two parts: before spliter and after spliter.

If spliter is not included in string return pair: to_split and empty string.

Parameters

  to_split | string to split
  splitter | splitter character

Returns
  two strings, to_split after split

Definition at line 27 of file string.cpp.

## ◆ str() [1/3]

std::string plask::str | ( | double | x,
|  | const char * | fmt = `"{:.9g}"`
| ) |  |
| inline

Convert double number to pretty string.

Parameters

  x | value to convert
  fmt | format to use

Definition at line 46 of file format.hpp.

## ◆ str() [2/3]

std::string plask::str | ( | std::complex< double > | x,
|  | const char * | fmt = `"{:.9g}{:+0.9g}j"`,
|  | const char * | rfmt = `nullptr`
| ) |  |
| inline

Convert complex number to pretty string.

Parameters

  x | value to convert
  fmt | format to use
  rfmt | format used if Im(x) == 0

Definition at line 56 of file format.hpp.

## ◆ str() [3/3]

template<typename T >

std::string plask::str | ( | T | x | ) |
| inline

Convert something to pretty string.

Parameters

  x | value to convert

Definition at line 37 of file format.hpp.

## ◆ to_longTran() [1/2]

Box2D plask::to_longTran | ( | const Box3D & | box | ) |
| inline

Definition at line 31 of file extruded_triangular3d.cpp.

## ◆ to_longTran() [2/2]

Vec< 2, double > plask::to_longTran | ( | const Vec< 3, double > & | longTranVert | ) |
| inline

Definition at line 27 of file extruded_triangular3d.cpp.

## ◆ toDouble()

double plask::toDouble | ( | const std::string & | s,
|  | const char * | fullname
| ) |  |

Definition at line 310 of file material.cpp.

## ◆ toMesh()

template<int DIM>

shared_ptr< OnePointMesh< DIM > > plask::toMesh | ( | const plask::Vec< DIM, double > & | point | ) |
| inline

Create one-point mesh that includes given `point`.

Parameters

  point | point to include

Returns
  mesh with one point

Definition at line 54 of file basic.hpp.

## ◆ translate()

template<int DIM>

shared_ptr< TranslatedMesh< DIM > > plask::translate | ( | const shared_ptr< const MeshD< DIM > > & | sourceMesh,
|  | const Vec< DIM, double > & | translation
| ) |  |
| inline

Definition at line 90 of file basic.hpp.

## ◆ TriangularMesh2D::boundaryNodes< TriangularMesh2D::BoundaryDir::ALL >()

template PLASK_API std::set< std::size_t > plask::TriangularMesh2D::boundaryNodes< TriangularMesh2D::BoundaryDir::ALL > | ( | const TriangularMesh2D::SegmentsCounts & | segmentsCount | ) | const

## ◆ TriangularMesh2D::boundaryNodes< TriangularMesh2D::BoundaryDir::BOTTOM >()

template PLASK_API std::set< std::size_t > plask::TriangularMesh2D::boundaryNodes< TriangularMesh2D::BoundaryDir::BOTTOM > | ( | const TriangularMesh2D::SegmentsCounts & | segmentsCount | ) | const

## ◆ TriangularMesh2D::boundaryNodes< TriangularMesh2D::BoundaryDir::LEFT >()

template PLASK_API std::set< std::size_t > plask::TriangularMesh2D::boundaryNodes< TriangularMesh2D::BoundaryDir::LEFT > | ( | const TriangularMesh2D::SegmentsCounts & | segmentsCount | ) | const

## ◆ TriangularMesh2D::boundaryNodes< TriangularMesh2D::BoundaryDir::RIGHT >()

template PLASK_API std::set< std::size_t > plask::TriangularMesh2D::boundaryNodes< TriangularMesh2D::BoundaryDir::RIGHT > | ( | const TriangularMesh2D::SegmentsCounts & | segmentsCount | ) | const

## ◆ TriangularMesh2D::boundaryNodes< TriangularMesh2D::BoundaryDir::TOP >()

template PLASK_API std::set< std::size_t > plask::TriangularMesh2D::boundaryNodes< TriangularMesh2D::BoundaryDir::TOP > | ( | const TriangularMesh2D::SegmentsCounts & | segmentsCount | ) | const

## ◆ tuple_size()

template<typename Tuple >

constexpr std::size_t plask::tuple_size | ( |  | ) |
| constexpr

Definition at line 175 of file stl.hpp.

## ◆ type_name()

template<typename T >

std::string plask::type_name | ( |  | ) |

Get simplified type name of given type.

Definition at line 172 of file string.hpp.

## ◆ vec() [1/2]

template<typename T >

constexpr Vec< 3, T > plask::vec | ( | const T | c0__lon,
|  | const T | c1__tran,
|  | const T | c2__up
| ) |  |
| inline constexpr

Helper to create 3D vector.

Parameters

  c0__lon,c1__tran,c2__up | vector coordinates

Returns
  constructed vector

Definition at line 468 of file 3d.hpp.

## ◆ vec() [2/2]

template<typename T >

constexpr Vec< 2, T > plask::vec | ( | const T | c0__tran,
|  | const T | c1__up
| ) |  |
| inline constexpr

Helper to create 2D vector.

Parameters

  c0__tran,c1__up | vector coordinates

Returns
  constructed vector

Definition at line 433 of file 2d.hpp.

## ◆ writelog() [1/2]

void plask::writelog | ( | LogLevel | level,
|  | const std::string & | msg
| ) |  |
| inline

Log a message.

Parameters

  level | log level to log
  msg | log message

Definition at line 123 of file log.hpp.

## ◆ writelog() [2/2]

template<typename... Args>

void plask::writelog | ( | LogLevel | level,
|  | const std::string & | msg,
|  | Args &&... | params
| ) |  |
| inline

Log a message.

Parameters

  level | log level to log
  msg | log message
  params | parameters passed to format

Definition at line 137 of file log.hpp.

## ◆ Zero()

template<typename T >

constexpr std::remove_cv< typenamestd::remove_reference< T >::type >::type plask::Zero | ( |  | ) |
| inline constexpr

Construct NaN or its counterpart with given type `T`.

Returns
  NaN or its counterpart

Definition at line 152 of file math.hpp.

## Variable Documentation

## ◆ _1_PI

constexpr double plask::_1_PI = M_1_PI
| constexpr

Definition at line 89 of file math.hpp.

## ◆ _2_PI

constexpr double plask::_2_PI = M_2_PI
| constexpr

Definition at line 95 of file math.hpp.

## ◆ _2_SQRTPI

constexpr double plask::_2_SQRTPI = M_2_SQRTPI
| constexpr

Definition at line 101 of file math.hpp.

## ◆ ArrangeContainer< 2 >

template struct PLASK_API plask::ArrangeContainer< 2 >

Definition at line 273 of file lattice.cpp.

## ◆ ArrangeContainer< 3 >

template struct PLASK_API plask::ArrangeContainer< 3 >

Definition at line 274 of file lattice.cpp.

## ◆ BarycentricExtrudedTriangularMesh3DLazyDataImpl< dcomplex, dcomplex >

template struct PLASK_API plask::BarycentricExtrudedTriangularMesh3DLazyDataImpl< dcomplex, dcomplex >

Definition at line 503 of file extruded_triangular3d.cpp.

## ◆ BarycentricExtrudedTriangularMesh3DLazyDataImpl< double, double >

template struct PLASK_API plask::BarycentricExtrudedTriangularMesh3DLazyDataImpl< double, double >

Definition at line 502 of file extruded_triangular3d.cpp.

## ◆ BarycentricExtrudedTriangularMesh3DLazyDataImpl< Tensor2< dcomplex >, Tensor2< dcomplex > >

template struct PLASK_API plask::BarycentricExtrudedTriangularMesh3DLazyDataImpl< Tensor2< dcomplex >, Tensor2< dcomplex > >

Definition at line 509 of file extruded_triangular3d.cpp.

## ◆ BarycentricExtrudedTriangularMesh3DLazyDataImpl< Tensor2< double >, Tensor2< double > >

template struct PLASK_API plask::BarycentricExtrudedTriangularMesh3DLazyDataImpl< Tensor2< double >, Tensor2< double > >

Definition at line 508 of file extruded_triangular3d.cpp.

## ◆ BarycentricExtrudedTriangularMesh3DLazyDataImpl< Tensor3< dcomplex >, Tensor3< dcomplex > >

template struct PLASK_API plask::BarycentricExtrudedTriangularMesh3DLazyDataImpl< Tensor3< dcomplex >, Tensor3< dcomplex > >

Definition at line 511 of file extruded_triangular3d.cpp.

## ◆ BarycentricExtrudedTriangularMesh3DLazyDataImpl< Tensor3< double >, Tensor3< double > >

template struct PLASK_API plask::BarycentricExtrudedTriangularMesh3DLazyDataImpl< Tensor3< double >, Tensor3< double > >

Definition at line 510 of file extruded_triangular3d.cpp.

## ◆ BarycentricExtrudedTriangularMesh3DLazyDataImpl< Vec< 2, dcomplex >, Vec< 2, dcomplex > >

template struct PLASK_API plask::BarycentricExtrudedTriangularMesh3DLazyDataImpl< Vec< 2, dcomplex >, Vec< 2, dcomplex > >

Definition at line 505 of file extruded_triangular3d.cpp.

## ◆ BarycentricExtrudedTriangularMesh3DLazyDataImpl< Vec< 2, double >, Vec< 2, double > >

template struct PLASK_API plask::BarycentricExtrudedTriangularMesh3DLazyDataImpl< Vec< 2, double >, Vec< 2, double > >

Definition at line 504 of file extruded_triangular3d.cpp.

## ◆ BarycentricExtrudedTriangularMesh3DLazyDataImpl< Vec< 3, dcomplex >, Vec< 3, dcomplex > >

template struct PLASK_API plask::BarycentricExtrudedTriangularMesh3DLazyDataImpl< Vec< 3, dcomplex >, Vec< 3, dcomplex > >

Definition at line 507 of file extruded_triangular3d.cpp.

## ◆ BarycentricExtrudedTriangularMesh3DLazyDataImpl< Vec< 3, double >, Vec< 3, double > >

template struct PLASK_API plask::BarycentricExtrudedTriangularMesh3DLazyDataImpl< Vec< 3, double >, Vec< 3, double > >

Definition at line 506 of file extruded_triangular3d.cpp.

## ◆ BarycentricTriangularMesh2DLazyDataImpl< dcomplex, dcomplex >

template struct PLASK_API plask::BarycentricTriangularMesh2DLazyDataImpl< dcomplex, dcomplex >

Definition at line 603 of file triangular2d.cpp.

## ◆ BarycentricTriangularMesh2DLazyDataImpl< double, double >

template struct PLASK_API plask::BarycentricTriangularMesh2DLazyDataImpl< double, double >

Definition at line 602 of file triangular2d.cpp.

## ◆ BarycentricTriangularMesh2DLazyDataImpl< Tensor2< dcomplex >, Tensor2< dcomplex > >

template struct PLASK_API plask::BarycentricTriangularMesh2DLazyDataImpl< Tensor2< dcomplex >, Tensor2< dcomplex > >

Definition at line 609 of file triangular2d.cpp.

## ◆ BarycentricTriangularMesh2DLazyDataImpl< Tensor2< double >, Tensor2< double > >

template struct PLASK_API plask::BarycentricTriangularMesh2DLazyDataImpl< Tensor2< double >, Tensor2< double > >

Definition at line 608 of file triangular2d.cpp.

## ◆ BarycentricTriangularMesh2DLazyDataImpl< Tensor3< dcomplex >, Tensor3< dcomplex > >

template struct PLASK_API plask::BarycentricTriangularMesh2DLazyDataImpl< Tensor3< dcomplex >, Tensor3< dcomplex > >

Definition at line 611 of file triangular2d.cpp.

## ◆ BarycentricTriangularMesh2DLazyDataImpl< Tensor3< double >, Tensor3< double > >

template struct PLASK_API plask::BarycentricTriangularMesh2DLazyDataImpl< Tensor3< double >, Tensor3< double > >

Definition at line 610 of file triangular2d.cpp.

## ◆ BarycentricTriangularMesh2DLazyDataImpl< Vec< 2, dcomplex >, Vec< 2, dcomplex > >

template struct PLASK_API plask::BarycentricTriangularMesh2DLazyDataImpl< Vec< 2, dcomplex >, Vec< 2, dcomplex > >

Definition at line 605 of file triangular2d.cpp.

## ◆ BarycentricTriangularMesh2DLazyDataImpl< Vec< 2, double >, Vec< 2, double > >

template struct PLASK_API plask::BarycentricTriangularMesh2DLazyDataImpl< Vec< 2, double >, Vec< 2, double > >

Definition at line 604 of file triangular2d.cpp.

## ◆ BarycentricTriangularMesh2DLazyDataImpl< Vec< 3, dcomplex >, Vec< 3, dcomplex > >

template struct PLASK_API plask::BarycentricTriangularMesh2DLazyDataImpl< Vec< 3, dcomplex >, Vec< 3, dcomplex > >

Definition at line 607 of file triangular2d.cpp.

## ◆ BarycentricTriangularMesh2DLazyDataImpl< Vec< 3, double >, Vec< 3, double > >

template struct PLASK_API plask::BarycentricTriangularMesh2DLazyDataImpl< Vec< 3, double >, Vec< 3, double > >

Definition at line 606 of file triangular2d.cpp.

## ◆ Block< 2 >

template struct PLASK_API plask::Block< 2 >

Definition at line 270 of file leaf.cpp.

## ◆ Block< 3 >

template struct PLASK_API plask::Block< 3 >

Definition at line 271 of file leaf.cpp.

## ◆ BoundingBoxCache< 2 >

template struct PLASK_API plask::BoundingBoxCache< 2 >

Definition at line 56 of file utils.cpp.

## ◆ BoundingBoxCache< 3 >

template struct PLASK_API plask::BoundingBoxCache< 3 >

Definition at line 57 of file utils.cpp.

## ◆ Circle< 2 >

template struct PLASK_API plask::Circle< 2 >

Definition at line 170 of file circle.cpp.

## ◆ Circle< 3 >

template struct PLASK_API plask::Circle< 3 >

Definition at line 171 of file circle.cpp.

## ◆ Clip< 2 >

template struct PLASK_API plask::Clip< 2 >

Definition at line 205 of file clip.cpp.

## ◆ Clip< 3 >

template struct PLASK_API plask::Clip< 3 >

Definition at line 206 of file clip.cpp.

## ◆ default_logger

PLASK_API shared_ptr< Logger > plask::default_logger

Pointer to the logger.

Definition at line 200 of file log.cpp.

## ◆ DIRECTION_NAMES

PLASK_API const char *const plask::DIRECTION_NAMES = { "longitudinal", "transverse", "vertical" }

Definition at line 169 of file primitives.cpp.

## ◆ E

constexpr double plask::E = M_E
| constexpr

Definition at line 47 of file math.hpp.

## ◆ FILE_PATH_SEPARATOR

constexpr char plask::FILE_PATH_SEPARATOR = '/'
| constexpr

Definition at line 29 of file system.hpp.

## ◆ Flip< 2 >

template struct PLASK_API plask::Flip< 2 >

Definition at line 266 of file mirror.cpp.

## ◆ Flip< 3 >

template struct PLASK_API plask::Flip< 3 >

Definition at line 267 of file mirror.cpp.

## ◆ forcedLoglevel

PLASK_API bool plask::forcedLoglevel = false

Definition at line 36 of file log.cpp.

## ◆ GeometryD< 2 >

template class PLASK_API plask::GeometryD< 2 >

Definition at line 166 of file space.cpp.

## ◆ GeometryD< 3 >

template class PLASK_API plask::GeometryD< 3 >

Definition at line 167 of file space.cpp.

## ◆ GeometryObjectContainer< 2 >

template struct PLASK_API plask::GeometryObjectContainer< 2 >

Definition at line 292 of file container.cpp.

## ◆ GeometryObjectContainer< 3 >

template struct PLASK_API plask::GeometryObjectContainer< 3 >

Definition at line 293 of file container.cpp.

## ◆ GeometryObjectD< 2 >

template struct PLASK_API plask::GeometryObjectD< 2 >

Definition at line 252 of file object.cpp.

## ◆ GeometryObjectD< 3 >

template struct PLASK_API plask::GeometryObjectD< 3 >

Definition at line 253 of file object.cpp.

## ◆ GeometryObjectLeaf< 2 >

template struct PLASK_API plask::GeometryObjectLeaf< 2 >

Definition at line 133 of file leaf.cpp.

## ◆ GeometryObjectLeaf< 3 >

template struct PLASK_API plask::GeometryObjectLeaf< 3 >

Definition at line 134 of file leaf.cpp.

## ◆ GeometryObjectSeparator< 2 >

template struct PLASK_API plask::GeometryObjectSeparator< 2 >

Definition at line 102 of file separator.cpp.

## ◆ GeometryObjectSeparator< 3 >

template struct PLASK_API plask::GeometryObjectSeparator< 3 >

Definition at line 103 of file separator.cpp.

## ◆ HymanSplineMaskedRect2DLazyDataImpl< dcomplex, dcomplex >

template struct PLASK_API plask::HymanSplineMaskedRect2DLazyDataImpl< dcomplex, dcomplex >

Definition at line 597 of file rectangular_masked_spline.cpp.

## ◆ HymanSplineMaskedRect2DLazyDataImpl< dcomplex, dcomplex, SplineMaskedRectElement2DLazyDataImpl< dcomplex, dcomplex > >

template struct PLASK_API plask::HymanSplineMaskedRect2DLazyDataImpl< dcomplex, dcomplex, SplineMaskedRectElement2DLazyDataImpl< dcomplex, dcomplex > >

Definition at line 628 of file rectangular_masked_spline.cpp.

## ◆ HymanSplineMaskedRect2DLazyDataImpl< double, double >

template struct PLASK_API plask::HymanSplineMaskedRect2DLazyDataImpl< double, double >

Definition at line 596 of file rectangular_masked_spline.cpp.

## ◆ HymanSplineMaskedRect2DLazyDataImpl< double, double, SplineMaskedRectElement2DLazyDataImpl< double, double > >

template struct PLASK_API plask::HymanSplineMaskedRect2DLazyDataImpl< double, double, SplineMaskedRectElement2DLazyDataImpl< double, double > >

Definition at line 627 of file rectangular_masked_spline.cpp.

## ◆ HymanSplineMaskedRect2DLazyDataImpl< Tensor2< dcomplex >, Tensor2< dcomplex > >

template struct PLASK_API plask::HymanSplineMaskedRect2DLazyDataImpl< Tensor2< dcomplex >, Tensor2< dcomplex > >

Definition at line 606 of file rectangular_masked_spline.cpp.

## ◆ HymanSplineMaskedRect2DLazyDataImpl< Tensor2< dcomplex >, Tensor2< dcomplex >, SplineMaskedRectElement2DLazyDataImpl< Tensor2< dcomplex >, Tensor2< dcomplex > > >

template struct PLASK_API plask::HymanSplineMaskedRect2DLazyDataImpl< Tensor2< dcomplex >, Tensor2< dcomplex >, SplineMaskedRectElement2DLazyDataImpl< Tensor2< dcomplex >, Tensor2< dcomplex > > >

Definition at line 637 of file rectangular_masked_spline.cpp.

## ◆ HymanSplineMaskedRect2DLazyDataImpl< Tensor2< double >, Tensor2< double > >

template struct PLASK_API plask::HymanSplineMaskedRect2DLazyDataImpl< Tensor2< double >, Tensor2< double > >

Definition at line 605 of file rectangular_masked_spline.cpp.

## ◆ HymanSplineMaskedRect2DLazyDataImpl< Tensor2< double >, Tensor2< double >, SplineMaskedRectElement2DLazyDataImpl< Tensor2< double >, Tensor2< double > > >

template struct PLASK_API plask::HymanSplineMaskedRect2DLazyDataImpl< Tensor2< double >, Tensor2< double >, SplineMaskedRectElement2DLazyDataImpl< Tensor2< double >, Tensor2< double > > >

Definition at line 636 of file rectangular_masked_spline.cpp.

## ◆ HymanSplineMaskedRect2DLazyDataImpl< Tensor3< dcomplex >, Tensor3< dcomplex > >

template struct PLASK_API plask::HymanSplineMaskedRect2DLazyDataImpl< Tensor3< dcomplex >, Tensor3< dcomplex > >

Definition at line 609 of file rectangular_masked_spline.cpp.

## ◆ HymanSplineMaskedRect2DLazyDataImpl< Tensor3< dcomplex >, Tensor3< dcomplex >, SplineMaskedRectElement2DLazyDataImpl< Tensor3< dcomplex >, Tensor3< dcomplex > > >

template struct PLASK_API plask::HymanSplineMaskedRect2DLazyDataImpl< Tensor3< dcomplex >, Tensor3< dcomplex >, SplineMaskedRectElement2DLazyDataImpl< Tensor3< dcomplex >, Tensor3< dcomplex > > >

Definition at line 640 of file rectangular_masked_spline.cpp.

## ◆ HymanSplineMaskedRect2DLazyDataImpl< Tensor3< double >, Tensor3< double > >

template struct PLASK_API plask::HymanSplineMaskedRect2DLazyDataImpl< Tensor3< double >, Tensor3< double > >

Definition at line 608 of file rectangular_masked_spline.cpp.

## ◆ HymanSplineMaskedRect2DLazyDataImpl< Tensor3< double >, Tensor3< double >, SplineMaskedRectElement2DLazyDataImpl< Tensor3< double >, Tensor3< double > > >

template struct PLASK_API plask::HymanSplineMaskedRect2DLazyDataImpl< Tensor3< double >, Tensor3< double >, SplineMaskedRectElement2DLazyDataImpl< Tensor3< double >, Tensor3< double > > >

Definition at line 639 of file rectangular_masked_spline.cpp.

## ◆ HymanSplineMaskedRect2DLazyDataImpl< Vec< 2, dcomplex >, Vec< 2, dcomplex > >

template struct PLASK_API plask::HymanSplineMaskedRect2DLazyDataImpl< Vec< 2, dcomplex >, Vec< 2, dcomplex > >

Definition at line 600 of file rectangular_masked_spline.cpp.

## ◆ HymanSplineMaskedRect2DLazyDataImpl< Vec< 2, dcomplex >, Vec< 2, dcomplex >, SplineMaskedRectElement2DLazyDataImpl< Vec< 2, dcomplex >, Vec< 2, dcomplex > > >

template struct PLASK_API plask::HymanSplineMaskedRect2DLazyDataImpl< Vec< 2, dcomplex >, Vec< 2, dcomplex >, SplineMaskedRectElement2DLazyDataImpl< Vec< 2, dcomplex >, Vec< 2, dcomplex > > >

Definition at line 631 of file rectangular_masked_spline.cpp.

## ◆ HymanSplineMaskedRect2DLazyDataImpl< Vec< 2, double >, Vec< 2, double > >

template struct PLASK_API plask::HymanSplineMaskedRect2DLazyDataImpl< Vec< 2, double >, Vec< 2, double > >

Definition at line 599 of file rectangular_masked_spline.cpp.

## ◆ HymanSplineMaskedRect2DLazyDataImpl< Vec< 2, double >, Vec< 2, double >, SplineMaskedRectElement2DLazyDataImpl< Vec< 2, double >, Vec< 2, double > > >

template struct PLASK_API plask::HymanSplineMaskedRect2DLazyDataImpl< Vec< 2, double >, Vec< 2, double >, SplineMaskedRectElement2DLazyDataImpl< Vec< 2, double >, Vec< 2, double > > >

Definition at line 630 of file rectangular_masked_spline.cpp.

## ◆ HymanSplineMaskedRect2DLazyDataImpl< Vec< 3, dcomplex >, Vec< 3, dcomplex > >

template struct PLASK_API plask::HymanSplineMaskedRect2DLazyDataImpl< Vec< 3, dcomplex >, Vec< 3, dcomplex > >

Definition at line 603 of file rectangular_masked_spline.cpp.

## ◆ HymanSplineMaskedRect2DLazyDataImpl< Vec< 3, dcomplex >, Vec< 3, dcomplex >, SplineMaskedRectElement2DLazyDataImpl< Vec< 3, dcomplex >, Vec< 3, dcomplex > > >

template struct PLASK_API plask::HymanSplineMaskedRect2DLazyDataImpl< Vec< 3, dcomplex >, Vec< 3, dcomplex >, SplineMaskedRectElement2DLazyDataImpl< Vec< 3, dcomplex >, Vec< 3, dcomplex > > >

Definition at line 634 of file rectangular_masked_spline.cpp.

## ◆ HymanSplineMaskedRect2DLazyDataImpl< Vec< 3, double >, Vec< 3, double > >

template struct PLASK_API plask::HymanSplineMaskedRect2DLazyDataImpl< Vec< 3, double >, Vec< 3, double > >

Definition at line 602 of file rectangular_masked_spline.cpp.

## ◆ HymanSplineMaskedRect2DLazyDataImpl< Vec< 3, double >, Vec< 3, double >, SplineMaskedRectElement2DLazyDataImpl< Vec< 3, double >, Vec< 3, double > > >

template struct PLASK_API plask::HymanSplineMaskedRect2DLazyDataImpl< Vec< 3, double >, Vec< 3, double >, SplineMaskedRectElement2DLazyDataImpl< Vec< 3, double >, Vec< 3, double > > >

Definition at line 633 of file rectangular_masked_spline.cpp.

## ◆ HymanSplineMaskedRect3DLazyDataImpl< dcomplex, dcomplex >

template struct PLASK_API plask::HymanSplineMaskedRect3DLazyDataImpl< dcomplex, dcomplex >

Definition at line 612 of file rectangular_masked_spline.cpp.

## ◆ HymanSplineMaskedRect3DLazyDataImpl< dcomplex, dcomplex, SplineMaskedRectElement3DLazyDataImpl< dcomplex, dcomplex > >

template struct PLASK_API plask::HymanSplineMaskedRect3DLazyDataImpl< dcomplex, dcomplex, SplineMaskedRectElement3DLazyDataImpl< dcomplex, dcomplex > >

Definition at line 643 of file rectangular_masked_spline.cpp.

## ◆ HymanSplineMaskedRect3DLazyDataImpl< double, double >

template struct PLASK_API plask::HymanSplineMaskedRect3DLazyDataImpl< double, double >

Definition at line 611 of file rectangular_masked_spline.cpp.

## ◆ HymanSplineMaskedRect3DLazyDataImpl< double, double, SplineMaskedRectElement3DLazyDataImpl< double, double > >

template struct PLASK_API plask::HymanSplineMaskedRect3DLazyDataImpl< double, double, SplineMaskedRectElement3DLazyDataImpl< double, double > >

Definition at line 642 of file rectangular_masked_spline.cpp.

## ◆ HymanSplineMaskedRect3DLazyDataImpl< Tensor2< dcomplex >, Tensor2< dcomplex > >

template struct PLASK_API plask::HymanSplineMaskedRect3DLazyDataImpl< Tensor2< dcomplex >, Tensor2< dcomplex > >

Definition at line 621 of file rectangular_masked_spline.cpp.

## ◆ HymanSplineMaskedRect3DLazyDataImpl< Tensor2< dcomplex >, Tensor2< dcomplex >, SplineMaskedRectElement3DLazyDataImpl< Tensor2< dcomplex >, Tensor2< dcomplex > > >

template struct PLASK_API plask::HymanSplineMaskedRect3DLazyDataImpl< Tensor2< dcomplex >, Tensor2< dcomplex >, SplineMaskedRectElement3DLazyDataImpl< Tensor2< dcomplex >, Tensor2< dcomplex > > >

Definition at line 652 of file rectangular_masked_spline.cpp.

## ◆ HymanSplineMaskedRect3DLazyDataImpl< Tensor2< double >, Tensor2< double > >

template struct PLASK_API plask::HymanSplineMaskedRect3DLazyDataImpl< Tensor2< double >, Tensor2< double > >

Definition at line 620 of file rectangular_masked_spline.cpp.

## ◆ HymanSplineMaskedRect3DLazyDataImpl< Tensor2< double >, Tensor2< double >, SplineMaskedRectElement3DLazyDataImpl< Tensor2< double >, Tensor2< double > > >

template struct PLASK_API plask::HymanSplineMaskedRect3DLazyDataImpl< Tensor2< double >, Tensor2< double >, SplineMaskedRectElement3DLazyDataImpl< Tensor2< double >, Tensor2< double > > >

Definition at line 651 of file rectangular_masked_spline.cpp.

## ◆ HymanSplineMaskedRect3DLazyDataImpl< Tensor3< dcomplex >, Tensor3< dcomplex > >

template struct PLASK_API plask::HymanSplineMaskedRect3DLazyDataImpl< Tensor3< dcomplex >, Tensor3< dcomplex > >

Definition at line 624 of file rectangular_masked_spline.cpp.

## ◆ HymanSplineMaskedRect3DLazyDataImpl< Tensor3< dcomplex >, Tensor3< dcomplex >, SplineMaskedRectElement3DLazyDataImpl< Tensor3< dcomplex >, Tensor3< dcomplex > > >

template struct PLASK_API plask::HymanSplineMaskedRect3DLazyDataImpl< Tensor3< dcomplex >, Tensor3< dcomplex >, SplineMaskedRectElement3DLazyDataImpl< Tensor3< dcomplex >, Tensor3< dcomplex > > >

Definition at line 655 of file rectangular_masked_spline.cpp.

## ◆ HymanSplineMaskedRect3DLazyDataImpl< Tensor3< double >, Tensor3< double > >

template struct PLASK_API plask::HymanSplineMaskedRect3DLazyDataImpl< Tensor3< double >, Tensor3< double > >

Definition at line 623 of file rectangular_masked_spline.cpp.

## ◆ HymanSplineMaskedRect3DLazyDataImpl< Tensor3< double >, Tensor3< double >, SplineMaskedRectElement3DLazyDataImpl< Tensor3< double >, Tensor3< double > > >

template struct PLASK_API plask::HymanSplineMaskedRect3DLazyDataImpl< Tensor3< double >, Tensor3< double >, SplineMaskedRectElement3DLazyDataImpl< Tensor3< double >, Tensor3< double > > >

Definition at line 654 of file rectangular_masked_spline.cpp.

## ◆ HymanSplineMaskedRect3DLazyDataImpl< Vec< 2, dcomplex >, Vec< 2, dcomplex > >

template struct PLASK_API plask::HymanSplineMaskedRect3DLazyDataImpl< Vec< 2, dcomplex >, Vec< 2, dcomplex > >

Definition at line 615 of file rectangular_masked_spline.cpp.

## ◆ HymanSplineMaskedRect3DLazyDataImpl< Vec< 2, dcomplex >, Vec< 2, dcomplex >, SplineMaskedRectElement3DLazyDataImpl< Vec< 2, dcomplex >, Vec< 2, dcomplex > > >

template struct PLASK_API plask::HymanSplineMaskedRect3DLazyDataImpl< Vec< 2, dcomplex >, Vec< 2, dcomplex >, SplineMaskedRectElement3DLazyDataImpl< Vec< 2, dcomplex >, Vec< 2, dcomplex > > >

Definition at line 646 of file rectangular_masked_spline.cpp.

## ◆ HymanSplineMaskedRect3DLazyDataImpl< Vec< 2, double >, Vec< 2, double > >

template struct PLASK_API plask::HymanSplineMaskedRect3DLazyDataImpl< Vec< 2, double >, Vec< 2, double > >

Definition at line 614 of file rectangular_masked_spline.cpp.

## ◆ HymanSplineMaskedRect3DLazyDataImpl< Vec< 2, double >, Vec< 2, double >, SplineMaskedRectElement3DLazyDataImpl< Vec< 2, double >, Vec< 2, double > > >

template struct PLASK_API plask::HymanSplineMaskedRect3DLazyDataImpl< Vec< 2, double >, Vec< 2, double >, SplineMaskedRectElement3DLazyDataImpl< Vec< 2, double >, Vec< 2, double > > >

Definition at line 645 of file rectangular_masked_spline.cpp.

## ◆ HymanSplineMaskedRect3DLazyDataImpl< Vec< 3, dcomplex >, Vec< 3, dcomplex > >

template struct PLASK_API plask::HymanSplineMaskedRect3DLazyDataImpl< Vec< 3, dcomplex >, Vec< 3, dcomplex > >

Definition at line 618 of file rectangular_masked_spline.cpp.

## ◆ HymanSplineMaskedRect3DLazyDataImpl< Vec< 3, dcomplex >, Vec< 3, dcomplex >, SplineMaskedRectElement3DLazyDataImpl< Vec< 3, dcomplex >, Vec< 3, dcomplex > > >

template struct PLASK_API plask::HymanSplineMaskedRect3DLazyDataImpl< Vec< 3, dcomplex >, Vec< 3, dcomplex >, SplineMaskedRectElement3DLazyDataImpl< Vec< 3, dcomplex >, Vec< 3, dcomplex > > >

Definition at line 649 of file rectangular_masked_spline.cpp.

## ◆ HymanSplineMaskedRect3DLazyDataImpl< Vec< 3, double >, Vec< 3, double > >

template struct PLASK_API plask::HymanSplineMaskedRect3DLazyDataImpl< Vec< 3, double >, Vec< 3, double > >

Definition at line 617 of file rectangular_masked_spline.cpp.

## ◆ HymanSplineMaskedRect3DLazyDataImpl< Vec< 3, double >, Vec< 3, double >, SplineMaskedRectElement3DLazyDataImpl< Vec< 3, double >, Vec< 3, double > > >

template struct PLASK_API plask::HymanSplineMaskedRect3DLazyDataImpl< Vec< 3, double >, Vec< 3, double >, SplineMaskedRectElement3DLazyDataImpl< Vec< 3, double >, Vec< 3, double > > >

Definition at line 648 of file rectangular_masked_spline.cpp.

## ◆ HymanSplineRect2DLazyDataImpl< dcomplex, dcomplex >

template struct PLASK_API plask::HymanSplineRect2DLazyDataImpl< dcomplex, dcomplex >

Definition at line 409 of file rectangular_spline.cpp.

## ◆ HymanSplineRect2DLazyDataImpl< double, double >

template struct PLASK_API plask::HymanSplineRect2DLazyDataImpl< double, double >

Definition at line 408 of file rectangular_spline.cpp.

## ◆ HymanSplineRect2DLazyDataImpl< Tensor2< dcomplex >, Tensor2< dcomplex > >

template struct PLASK_API plask::HymanSplineRect2DLazyDataImpl< Tensor2< dcomplex >, Tensor2< dcomplex > >

Definition at line 418 of file rectangular_spline.cpp.

## ◆ HymanSplineRect2DLazyDataImpl< Tensor2< double >, Tensor2< double > >

template struct PLASK_API plask::HymanSplineRect2DLazyDataImpl< Tensor2< double >, Tensor2< double > >

Definition at line 417 of file rectangular_spline.cpp.

## ◆ HymanSplineRect2DLazyDataImpl< Tensor3< dcomplex >, Tensor3< dcomplex > >

template struct PLASK_API plask::HymanSplineRect2DLazyDataImpl< Tensor3< dcomplex >, Tensor3< dcomplex > >

Definition at line 421 of file rectangular_spline.cpp.

## ◆ HymanSplineRect2DLazyDataImpl< Tensor3< double >, Tensor3< double > >

template struct PLASK_API plask::HymanSplineRect2DLazyDataImpl< Tensor3< double >, Tensor3< double > >

Definition at line 420 of file rectangular_spline.cpp.

## ◆ HymanSplineRect2DLazyDataImpl< Vec< 2, dcomplex >, Vec< 2, dcomplex > >

template struct PLASK_API plask::HymanSplineRect2DLazyDataImpl< Vec< 2, dcomplex >, Vec< 2, dcomplex > >

Definition at line 412 of file rectangular_spline.cpp.

## ◆ HymanSplineRect2DLazyDataImpl< Vec< 2, double >, Vec< 2, double > >

template struct PLASK_API plask::HymanSplineRect2DLazyDataImpl< Vec< 2, double >, Vec< 2, double > >

Definition at line 411 of file rectangular_spline.cpp.

## ◆ HymanSplineRect2DLazyDataImpl< Vec< 3, dcomplex >, Vec< 3, dcomplex > >

template struct PLASK_API plask::HymanSplineRect2DLazyDataImpl< Vec< 3, dcomplex >, Vec< 3, dcomplex > >

Definition at line 415 of file rectangular_spline.cpp.

## ◆ HymanSplineRect2DLazyDataImpl< Vec< 3, double >, Vec< 3, double > >

template struct PLASK_API plask::HymanSplineRect2DLazyDataImpl< Vec< 3, double >, Vec< 3, double > >

Definition at line 414 of file rectangular_spline.cpp.

## ◆ HymanSplineRect3DLazyDataImpl< dcomplex, dcomplex >

template struct PLASK_API plask::HymanSplineRect3DLazyDataImpl< dcomplex, dcomplex >

Definition at line 424 of file rectangular_spline.cpp.

## ◆ HymanSplineRect3DLazyDataImpl< double, double >

template struct PLASK_API plask::HymanSplineRect3DLazyDataImpl< double, double >

Definition at line 423 of file rectangular_spline.cpp.

## ◆ HymanSplineRect3DLazyDataImpl< Tensor2< dcomplex >, Tensor2< dcomplex > >

template struct PLASK_API plask::HymanSplineRect3DLazyDataImpl< Tensor2< dcomplex >, Tensor2< dcomplex > >

Definition at line 433 of file rectangular_spline.cpp.

## ◆ HymanSplineRect3DLazyDataImpl< Tensor2< double >, Tensor2< double > >

template struct PLASK_API plask::HymanSplineRect3DLazyDataImpl< Tensor2< double >, Tensor2< double > >

Definition at line 432 of file rectangular_spline.cpp.

## ◆ HymanSplineRect3DLazyDataImpl< Tensor3< dcomplex >, Tensor3< dcomplex > >

template struct PLASK_API plask::HymanSplineRect3DLazyDataImpl< Tensor3< dcomplex >, Tensor3< dcomplex > >

Definition at line 436 of file rectangular_spline.cpp.

## ◆ HymanSplineRect3DLazyDataImpl< Tensor3< double >, Tensor3< double > >

template struct PLASK_API plask::HymanSplineRect3DLazyDataImpl< Tensor3< double >, Tensor3< double > >

Definition at line 435 of file rectangular_spline.cpp.

## ◆ HymanSplineRect3DLazyDataImpl< Vec< 2, dcomplex >, Vec< 2, dcomplex > >

template struct PLASK_API plask::HymanSplineRect3DLazyDataImpl< Vec< 2, dcomplex >, Vec< 2, dcomplex > >

Definition at line 427 of file rectangular_spline.cpp.

## ◆ HymanSplineRect3DLazyDataImpl< Vec< 2, double >, Vec< 2, double > >

template struct PLASK_API plask::HymanSplineRect3DLazyDataImpl< Vec< 2, double >, Vec< 2, double > >

Definition at line 426 of file rectangular_spline.cpp.

## ◆ HymanSplineRect3DLazyDataImpl< Vec< 3, dcomplex >, Vec< 3, dcomplex > >

template struct PLASK_API plask::HymanSplineRect3DLazyDataImpl< Vec< 3, dcomplex >, Vec< 3, dcomplex > >

Definition at line 430 of file rectangular_spline.cpp.

## ◆ HymanSplineRect3DLazyDataImpl< Vec< 3, double >, Vec< 3, double > >

template struct PLASK_API plask::HymanSplineRect3DLazyDataImpl< Vec< 3, double >, Vec< 3, double > >

Definition at line 429 of file rectangular_spline.cpp.

## ◆ id

std::atomic<std::uint64_t> plask::id

Definition at line 21 of file id.cpp.

## ◆ interpolationMethodNames

PLASK_API const char * plask::interpolationMethodNames

Initial value:
= {
"DEFAULT",
"NEAREST",
"LINEAR",
"SPLINE",
"SMOOTH_SPLINE",
"PERIODIC_SPLINE",
"FOURIER",
"ILLEGAL"
}

Definition at line 18 of file interpolation.cpp.

## ◆ Intersection< 2 >

template struct PLASK_API plask::Intersection< 2 >

Definition at line 159 of file intersection.cpp.

## ◆ Intersection< 3 >

template struct PLASK_API plask::Intersection< 3 >

Definition at line 160 of file intersection.cpp.

## ◆ LateralVec< double >

template struct PLASK_API plask::LateralVec< double >

Definition at line 18 of file lateral.cpp.

## ◆ LateralVec< int >

template struct PLASK_API plask::LateralVec< int >

Definition at line 19 of file lateral.cpp.

## ◆ LN10

constexpr double plask::LN10 = M_LN10
| constexpr

Definition at line 71 of file math.hpp.

## ◆ LN2

constexpr double plask::LN2 = M_LN2
| constexpr

Definition at line 65 of file math.hpp.

## ◆ LOG10E

constexpr double plask::LOG10E = M_LOG10E
| constexpr

Definition at line 59 of file math.hpp.

## ◆ LOG2E

constexpr double plask::LOG2E = M_LOG2E
| constexpr

Definition at line 53 of file math.hpp.

## ◆ material_omp_lock

PLASK_API OmpNestedLock plask::material_omp_lock
| extern

Global Python lock.

## ◆ maxLoglevel

PLASK_API LogLevel plask::maxLoglevel = LOG_DEBUG

Maximum log level.

Definition at line 33 of file log.cpp.

## ◆ MeshD< 1 >

template struct PLASK_API plask::MeshD< 1 >

Definition at line 78 of file mesh.cpp.

## ◆ MeshD< 2 >

template struct PLASK_API plask::MeshD< 2 >

Definition at line 79 of file mesh.cpp.

## ◆ MeshD< 3 >

template struct PLASK_API plask::MeshD< 3 >

Definition at line 80 of file mesh.cpp.

## ◆ MeshGeneratorD< 1 >

template class PLASK_API plask::MeshGeneratorD< 1 >

Definition at line 82 of file mesh.cpp.

## ◆ MeshGeneratorD< 2 >

template class PLASK_API plask::MeshGeneratorD< 2 >

Definition at line 83 of file mesh.cpp.

## ◆ MeshGeneratorD< 3 >

template class PLASK_API plask::MeshGeneratorD< 3 >

Definition at line 84 of file mesh.cpp.

## ◆ Mirror< 2 >

template struct PLASK_API plask::Mirror< 2 >

Definition at line 269 of file mirror.cpp.

## ◆ Mirror< 3 >

template struct PLASK_API plask::Mirror< 3 >

Definition at line 270 of file mirror.cpp.

## ◆ MultiStackContainer< ShelfContainer2D >

template class PLASK_API plask::MultiStackContainer< ShelfContainer2D >

Definition at line 781 of file stack.cpp.

## ◆ MultiStackContainer< StackContainer< 2 > >

template class PLASK_API plask::MultiStackContainer< StackContainer< 2 > >

Definition at line 779 of file stack.cpp.

## ◆ MultiStackContainer< StackContainer< 3 > >

template class PLASK_API plask::MultiStackContainer< StackContainer< 3 > >

Definition at line 780 of file stack.cpp.

## ◆ NearestNeighborElementExtrudedTriangularMesh3DLazyDataImpl< dcomplex, dcomplex >

template struct PLASK_API plask::NearestNeighborElementExtrudedTriangularMesh3DLazyDataImpl< dcomplex, dcomplex >

Definition at line 551 of file extruded_triangular3d.cpp.

## ◆ NearestNeighborElementExtrudedTriangularMesh3DLazyDataImpl< double, double >

template struct PLASK_API plask::NearestNeighborElementExtrudedTriangularMesh3DLazyDataImpl< double, double >

Definition at line 550 of file extruded_triangular3d.cpp.

## ◆ NearestNeighborElementExtrudedTriangularMesh3DLazyDataImpl< Tensor2< dcomplex >, Tensor2< dcomplex > >

template struct PLASK_API plask::NearestNeighborElementExtrudedTriangularMesh3DLazyDataImpl< Tensor2< dcomplex >, Tensor2< dcomplex > >

Definition at line 557 of file extruded_triangular3d.cpp.

## ◆ NearestNeighborElementExtrudedTriangularMesh3DLazyDataImpl< Tensor2< double >, Tensor2< double > >

template struct PLASK_API plask::NearestNeighborElementExtrudedTriangularMesh3DLazyDataImpl< Tensor2< double >, Tensor2< double > >

Definition at line 556 of file extruded_triangular3d.cpp.

## ◆ NearestNeighborElementExtrudedTriangularMesh3DLazyDataImpl< Tensor3< dcomplex >, Tensor3< dcomplex > >

template struct PLASK_API plask::NearestNeighborElementExtrudedTriangularMesh3DLazyDataImpl< Tensor3< dcomplex >, Tensor3< dcomplex > >

Definition at line 559 of file extruded_triangular3d.cpp.

## ◆ NearestNeighborElementExtrudedTriangularMesh3DLazyDataImpl< Tensor3< double >, Tensor3< double > >

template struct PLASK_API plask::NearestNeighborElementExtrudedTriangularMesh3DLazyDataImpl< Tensor3< double >, Tensor3< double > >

Definition at line 558 of file extruded_triangular3d.cpp.

## ◆ NearestNeighborElementExtrudedTriangularMesh3DLazyDataImpl< Vec< 2, dcomplex >, Vec< 2, dcomplex > >

template struct PLASK_API plask::NearestNeighborElementExtrudedTriangularMesh3DLazyDataImpl< Vec< 2, dcomplex >, Vec< 2, dcomplex > >

Definition at line 553 of file extruded_triangular3d.cpp.

## ◆ NearestNeighborElementExtrudedTriangularMesh3DLazyDataImpl< Vec< 2, double >, Vec< 2, double > >

template struct PLASK_API plask::NearestNeighborElementExtrudedTriangularMesh3DLazyDataImpl< Vec< 2, double >, Vec< 2, double > >

Definition at line 552 of file extruded_triangular3d.cpp.

## ◆ NearestNeighborElementExtrudedTriangularMesh3DLazyDataImpl< Vec< 3, dcomplex >, Vec< 3, dcomplex > >

template struct PLASK_API plask::NearestNeighborElementExtrudedTriangularMesh3DLazyDataImpl< Vec< 3, dcomplex >, Vec< 3, dcomplex > >

Definition at line 555 of file extruded_triangular3d.cpp.

## ◆ NearestNeighborElementExtrudedTriangularMesh3DLazyDataImpl< Vec< 3, double >, Vec< 3, double > >

template struct PLASK_API plask::NearestNeighborElementExtrudedTriangularMesh3DLazyDataImpl< Vec< 3, double >, Vec< 3, double > >

Definition at line 554 of file extruded_triangular3d.cpp.

## ◆ NearestNeighborElementTriangularMesh2DLazyDataImpl< dcomplex, dcomplex >

template struct PLASK_API plask::NearestNeighborElementTriangularMesh2DLazyDataImpl< dcomplex, dcomplex >

Definition at line 638 of file triangular2d.cpp.

## ◆ NearestNeighborElementTriangularMesh2DLazyDataImpl< double, double >

template struct PLASK_API plask::NearestNeighborElementTriangularMesh2DLazyDataImpl< double, double >

Definition at line 637 of file triangular2d.cpp.

## ◆ NearestNeighborElementTriangularMesh2DLazyDataImpl< Tensor2< dcomplex >, Tensor2< dcomplex > >

template struct PLASK_API plask::NearestNeighborElementTriangularMesh2DLazyDataImpl< Tensor2< dcomplex >, Tensor2< dcomplex > >

Definition at line 644 of file triangular2d.cpp.

## ◆ NearestNeighborElementTriangularMesh2DLazyDataImpl< Tensor2< double >, Tensor2< double > >

template struct PLASK_API plask::NearestNeighborElementTriangularMesh2DLazyDataImpl< Tensor2< double >, Tensor2< double > >

Definition at line 643 of file triangular2d.cpp.

## ◆ NearestNeighborElementTriangularMesh2DLazyDataImpl< Tensor3< dcomplex >, Tensor3< dcomplex > >

template struct PLASK_API plask::NearestNeighborElementTriangularMesh2DLazyDataImpl< Tensor3< dcomplex >, Tensor3< dcomplex > >

Definition at line 646 of file triangular2d.cpp.

## ◆ NearestNeighborElementTriangularMesh2DLazyDataImpl< Tensor3< double >, Tensor3< double > >

template struct PLASK_API plask::NearestNeighborElementTriangularMesh2DLazyDataImpl< Tensor3< double >, Tensor3< double > >

Definition at line 645 of file triangular2d.cpp.

## ◆ NearestNeighborElementTriangularMesh2DLazyDataImpl< Vec< 2, dcomplex >, Vec< 2, dcomplex > >

template struct PLASK_API plask::NearestNeighborElementTriangularMesh2DLazyDataImpl< Vec< 2, dcomplex >, Vec< 2, dcomplex > >

Definition at line 640 of file triangular2d.cpp.

## ◆ NearestNeighborElementTriangularMesh2DLazyDataImpl< Vec< 2, double >, Vec< 2, double > >

template struct PLASK_API plask::NearestNeighborElementTriangularMesh2DLazyDataImpl< Vec< 2, double >, Vec< 2, double > >

Definition at line 639 of file triangular2d.cpp.

## ◆ NearestNeighborElementTriangularMesh2DLazyDataImpl< Vec< 3, dcomplex >, Vec< 3, dcomplex > >

template struct PLASK_API plask::NearestNeighborElementTriangularMesh2DLazyDataImpl< Vec< 3, dcomplex >, Vec< 3, dcomplex > >

Definition at line 642 of file triangular2d.cpp.

## ◆ NearestNeighborElementTriangularMesh2DLazyDataImpl< Vec< 3, double >, Vec< 3, double > >

template struct PLASK_API plask::NearestNeighborElementTriangularMesh2DLazyDataImpl< Vec< 3, double >, Vec< 3, double > >

Definition at line 641 of file triangular2d.cpp.

## ◆ NearestNeighborExtrudedTriangularMesh3DLazyDataImpl< dcomplex, dcomplex >

template struct PLASK_API plask::NearestNeighborExtrudedTriangularMesh3DLazyDataImpl< dcomplex, dcomplex >

Definition at line 436 of file extruded_triangular3d.cpp.

## ◆ NearestNeighborExtrudedTriangularMesh3DLazyDataImpl< double, double >

template struct PLASK_API plask::NearestNeighborExtrudedTriangularMesh3DLazyDataImpl< double, double >

Definition at line 435 of file extruded_triangular3d.cpp.

## ◆ NearestNeighborExtrudedTriangularMesh3DLazyDataImpl< Tensor2< dcomplex >, Tensor2< dcomplex > >

template struct PLASK_API plask::NearestNeighborExtrudedTriangularMesh3DLazyDataImpl< Tensor2< dcomplex >, Tensor2< dcomplex > >

Definition at line 442 of file extruded_triangular3d.cpp.

## ◆ NearestNeighborExtrudedTriangularMesh3DLazyDataImpl< Tensor2< double >, Tensor2< double > >

template struct PLASK_API plask::NearestNeighborExtrudedTriangularMesh3DLazyDataImpl< Tensor2< double >, Tensor2< double > >

Definition at line 441 of file extruded_triangular3d.cpp.

## ◆ NearestNeighborExtrudedTriangularMesh3DLazyDataImpl< Tensor3< dcomplex >, Tensor3< dcomplex > >

template struct PLASK_API plask::NearestNeighborExtrudedTriangularMesh3DLazyDataImpl< Tensor3< dcomplex >, Tensor3< dcomplex > >

Definition at line 444 of file extruded_triangular3d.cpp.

## ◆ NearestNeighborExtrudedTriangularMesh3DLazyDataImpl< Tensor3< double >, Tensor3< double > >

template struct PLASK_API plask::NearestNeighborExtrudedTriangularMesh3DLazyDataImpl< Tensor3< double >, Tensor3< double > >

Definition at line 443 of file extruded_triangular3d.cpp.

## ◆ NearestNeighborExtrudedTriangularMesh3DLazyDataImpl< Vec< 2, dcomplex >, Vec< 2, dcomplex > >

template struct PLASK_API plask::NearestNeighborExtrudedTriangularMesh3DLazyDataImpl< Vec< 2, dcomplex >, Vec< 2, dcomplex > >

Definition at line 438 of file extruded_triangular3d.cpp.

## ◆ NearestNeighborExtrudedTriangularMesh3DLazyDataImpl< Vec< 2, double >, Vec< 2, double > >

template struct PLASK_API plask::NearestNeighborExtrudedTriangularMesh3DLazyDataImpl< Vec< 2, double >, Vec< 2, double > >

Definition at line 437 of file extruded_triangular3d.cpp.

## ◆ NearestNeighborExtrudedTriangularMesh3DLazyDataImpl< Vec< 3, dcomplex >, Vec< 3, dcomplex > >

template struct PLASK_API plask::NearestNeighborExtrudedTriangularMesh3DLazyDataImpl< Vec< 3, dcomplex >, Vec< 3, dcomplex > >

Definition at line 440 of file extruded_triangular3d.cpp.

## ◆ NearestNeighborExtrudedTriangularMesh3DLazyDataImpl< Vec< 3, double >, Vec< 3, double > >

template struct PLASK_API plask::NearestNeighborExtrudedTriangularMesh3DLazyDataImpl< Vec< 3, double >, Vec< 3, double > >

Definition at line 439 of file extruded_triangular3d.cpp.

## ◆ NearestNeighborTriangularMesh2DLazyDataImpl< dcomplex, dcomplex >

template struct PLASK_API plask::NearestNeighborTriangularMesh2DLazyDataImpl< dcomplex, dcomplex >

Definition at line 565 of file triangular2d.cpp.

## ◆ NearestNeighborTriangularMesh2DLazyDataImpl< double, double >

template struct PLASK_API plask::NearestNeighborTriangularMesh2DLazyDataImpl< double, double >

Definition at line 564 of file triangular2d.cpp.

## ◆ NearestNeighborTriangularMesh2DLazyDataImpl< Tensor2< dcomplex >, Tensor2< dcomplex > >

template struct PLASK_API plask::NearestNeighborTriangularMesh2DLazyDataImpl< Tensor2< dcomplex >, Tensor2< dcomplex > >

Definition at line 571 of file triangular2d.cpp.

## ◆ NearestNeighborTriangularMesh2DLazyDataImpl< Tensor2< double >, Tensor2< double > >

template struct PLASK_API plask::NearestNeighborTriangularMesh2DLazyDataImpl< Tensor2< double >, Tensor2< double > >

Definition at line 570 of file triangular2d.cpp.

## ◆ NearestNeighborTriangularMesh2DLazyDataImpl< Tensor3< dcomplex >, Tensor3< dcomplex > >

template struct PLASK_API plask::NearestNeighborTriangularMesh2DLazyDataImpl< Tensor3< dcomplex >, Tensor3< dcomplex > >

Definition at line 573 of file triangular2d.cpp.

## ◆ NearestNeighborTriangularMesh2DLazyDataImpl< Tensor3< double >, Tensor3< double > >

template struct PLASK_API plask::NearestNeighborTriangularMesh2DLazyDataImpl< Tensor3< double >, Tensor3< double > >

Definition at line 572 of file triangular2d.cpp.

## ◆ NearestNeighborTriangularMesh2DLazyDataImpl< Vec< 2, dcomplex >, Vec< 2, dcomplex > >

template struct PLASK_API plask::NearestNeighborTriangularMesh2DLazyDataImpl< Vec< 2, dcomplex >, Vec< 2, dcomplex > >

Definition at line 567 of file triangular2d.cpp.

## ◆ NearestNeighborTriangularMesh2DLazyDataImpl< Vec< 2, double >, Vec< 2, double > >

template struct PLASK_API plask::NearestNeighborTriangularMesh2DLazyDataImpl< Vec< 2, double >, Vec< 2, double > >

Definition at line 566 of file triangular2d.cpp.

## ◆ NearestNeighborTriangularMesh2DLazyDataImpl< Vec< 3, dcomplex >, Vec< 3, dcomplex > >

template struct PLASK_API plask::NearestNeighborTriangularMesh2DLazyDataImpl< Vec< 3, dcomplex >, Vec< 3, dcomplex > >

Definition at line 569 of file triangular2d.cpp.

## ◆ NearestNeighborTriangularMesh2DLazyDataImpl< Vec< 3, double >, Vec< 3, double > >

template struct PLASK_API plask::NearestNeighborTriangularMesh2DLazyDataImpl< Vec< 3, double >, Vec< 3, double > >

Definition at line 568 of file triangular2d.cpp.

## ◆ OnePointMesh< 2 >

template struct PLASK_API plask::OnePointMesh< 2 >

Definition at line 28 of file basic.cpp.

## ◆ OnePointMesh< 3 >

template struct PLASK_API plask::OnePointMesh< 3 >

Definition at line 29 of file basic.cpp.

## ◆ PI

constexpr double plask::PI = M_PI
| constexpr

Definition at line 41 of file math.hpp.

## ◆ PI_2

constexpr double plask::PI_2 = M_PI_2
| constexpr

Definition at line 77 of file math.hpp.

## ◆ PI_4

constexpr double plask::PI_4 = M_PI_4
| constexpr

Definition at line 83 of file math.hpp.

## ◆ PI_DOUBLED

constexpr double plask::PI_DOUBLED = 6.28318530717958647692
| constexpr

Definition at line 117 of file math.hpp.

## ◆ POINT_TOLLERANCE

constexpr double plask::POINT_TOLLERANCE = 1e-12
| constexpr

Definition at line 26 of file primitives.hpp.

## ◆ RectangularMeshDivideGenerator< 1 >

template struct PLASK_API plask::RectangularMeshDivideGenerator< 1 >

Definition at line 605 of file generator_rectangular.cpp.

## ◆ RectangularMeshDivideGenerator< 2 >

template struct PLASK_API plask::RectangularMeshDivideGenerator< 2 >

Definition at line 606 of file generator_rectangular.cpp.

## ◆ RectangularMeshDivideGenerator< 3 >

template struct PLASK_API plask::RectangularMeshDivideGenerator< 3 >

Definition at line 607 of file generator_rectangular.cpp.

## ◆ RectangularMeshRefinedGenerator< 1 >

template struct PLASK_API plask::RectangularMeshRefinedGenerator< 1 >

Definition at line 464 of file generator_rectangular.cpp.

## ◆ RectangularMeshRefinedGenerator< 2 >

template struct PLASK_API plask::RectangularMeshRefinedGenerator< 2 >

Definition at line 465 of file generator_rectangular.cpp.

## ◆ RectangularMeshRefinedGenerator< 3 >

template struct PLASK_API plask::RectangularMeshRefinedGenerator< 3 >

Definition at line 466 of file generator_rectangular.cpp.

## ◆ RectangularMeshSmoothGenerator< 1 >

template struct PLASK_API plask::RectangularMeshSmoothGenerator< 1 >

Definition at line 666 of file generator_rectangular.cpp.

## ◆ RectangularMeshSmoothGenerator< 2 >

template struct PLASK_API plask::RectangularMeshSmoothGenerator< 2 >

Definition at line 667 of file generator_rectangular.cpp.

## ◆ RectangularMeshSmoothGenerator< 3 >

template struct PLASK_API plask::RectangularMeshSmoothGenerator< 3 >

Definition at line 668 of file generator_rectangular.cpp.

## ◆ rectilinearmesh1d_reader

RegisterMeshReader plask::rectilinearmesh1d_reader("rectilinear1d", readOrderedMesh1D_obsolete) | ( | "rectilinear1d" | ,
|  | readOrderedMesh1D_obsolete |
| ) |  |

## ◆ registerBandEdgesFilters

FiltersFactory::RegisterStandard<BandEdges> plask::registerBandEdgesFilters

Definition at line 20 of file filters-electrical-bandedges.cpp.

## ◆ registerCarriersConcentrationFilters

FiltersFactory::RegisterStandard<CarriersConcentration> plask::registerCarriersConcentrationFilters

Definition at line 20 of file filters-electrical-carriersconcentration.cpp.

## ◆ registerConductivityFilters

FiltersFactory::RegisterStandard<Conductivity> plask::registerConductivityFilters

Definition at line 21 of file filters-electrical.cpp.

## ◆ registerCurrentDensityFilters

FiltersFactory::RegisterStandard<CurrentDensity> plask::registerCurrentDensityFilters

Definition at line 20 of file filters-electrical-currentdensity.cpp.

## ◆ registerEnergyFilters

FiltersFactory::RegisterStandard<Voltage> plask::registerEnergyFilters

Definition at line 20 of file filters-electrical-voltage.cpp.

## ◆ registerEpsilonFilters

FiltersFactory::RegisterStandard<Epsilon> plask::registerEpsilonFilters

Definition at line 24 of file filters-optical.cpp.

## ◆ registerFermiLevels

FiltersFactory::RegisterStandard<FermiLevels> plask::registerFermiLevels

Definition at line 20 of file filters-electrical-quasifermilevels.cpp.

## ◆ registerGainFilters

FiltersFactory::RegisterStandard<Gain> plask::registerGainFilters

Definition at line 20 of file filters-gain.cpp.

## ◆ registerHeatFilters

FiltersFactory::RegisterStandard<Heat> plask::registerHeatFilters

Definition at line 23 of file filters-thermal.cpp.

## ◆ registerPotentialFilters

FiltersFactory::RegisterStandard<Potential> plask::registerPotentialFilters

Definition at line 20 of file filters-electrical-potential.cpp.

## ◆ registerRefractiveIndexFilters

FiltersFactory::RegisterStandard<RefractiveIndex> plask::registerRefractiveIndexFilters

Definition at line 23 of file filters-optical.cpp.

## ◆ registerTemperatureFilters

FiltersFactory::RegisterStandard<Temperature> plask::registerTemperatureFilters

Definition at line 20 of file filters-thermal.cpp.

## ◆ registerThermalConductivityFilters

FiltersFactory::RegisterStandard<ThermalConductivity> plask::registerThermalConductivityFilters

Definition at line 24 of file filters-thermal.cpp.

## ◆ regularmesh1d_reader

RegisterMeshReader plask::regularmesh1d_reader("regular1d", readRegularMesh1D_obsolete) | ( | "regular1d" | ,
|  | readRegularMesh1D_obsolete |
| ) |  |

## ◆ regularmesh_reader

RegisterMeshReader plask::regularmesh_reader("regular", readRegularMesh1D) | ( | "regular" | ,
|  | readRegularMesh1D |
| ) |  |

## ◆ SMALL

constexpr double plask::SMALL = std::numeric_limits<double>::epsilon()
| constexpr

The numeric precision limit.

Definition at line 182 of file math.hpp.

## ◆ SMALL2

constexpr double plask::SMALL2 = SMALL*SMALL
| constexpr

Squared numeric precision limit.

Definition at line 183 of file math.hpp.

## ◆ SmoothSplineRect2DLazyDataImpl< dcomplex, dcomplex >

template struct PLASK_API plask::SmoothSplineRect2DLazyDataImpl< dcomplex, dcomplex >

Definition at line 660 of file rectangular_spline.cpp.

## ◆ SmoothSplineRect2DLazyDataImpl< double, double >

template struct PLASK_API plask::SmoothSplineRect2DLazyDataImpl< double, double >

Definition at line 659 of file rectangular_spline.cpp.

## ◆ SmoothSplineRect2DLazyDataImpl< Tensor2< dcomplex >, Tensor2< dcomplex > >

template struct PLASK_API plask::SmoothSplineRect2DLazyDataImpl< Tensor2< dcomplex >, Tensor2< dcomplex > >

Definition at line 669 of file rectangular_spline.cpp.

## ◆ SmoothSplineRect2DLazyDataImpl< Tensor2< double >, Tensor2< double > >

template struct PLASK_API plask::SmoothSplineRect2DLazyDataImpl< Tensor2< double >, Tensor2< double > >

Definition at line 668 of file rectangular_spline.cpp.

## ◆ SmoothSplineRect2DLazyDataImpl< Tensor3< dcomplex >, Tensor3< dcomplex > >

template struct PLASK_API plask::SmoothSplineRect2DLazyDataImpl< Tensor3< dcomplex >, Tensor3< dcomplex > >

Definition at line 672 of file rectangular_spline.cpp.

## ◆ SmoothSplineRect2DLazyDataImpl< Tensor3< double >, Tensor3< double > >

template struct PLASK_API plask::SmoothSplineRect2DLazyDataImpl< Tensor3< double >, Tensor3< double > >

Definition at line 671 of file rectangular_spline.cpp.

## ◆ SmoothSplineRect2DLazyDataImpl< Vec< 2, dcomplex >, Vec< 2, dcomplex > >

template struct PLASK_API plask::SmoothSplineRect2DLazyDataImpl< Vec< 2, dcomplex >, Vec< 2, dcomplex > >

Definition at line 663 of file rectangular_spline.cpp.

## ◆ SmoothSplineRect2DLazyDataImpl< Vec< 2, double >, Vec< 2, double > >

template struct PLASK_API plask::SmoothSplineRect2DLazyDataImpl< Vec< 2, double >, Vec< 2, double > >

Definition at line 662 of file rectangular_spline.cpp.

## ◆ SmoothSplineRect2DLazyDataImpl< Vec< 3, dcomplex >, Vec< 3, dcomplex > >

template struct PLASK_API plask::SmoothSplineRect2DLazyDataImpl< Vec< 3, dcomplex >, Vec< 3, dcomplex > >

Definition at line 666 of file rectangular_spline.cpp.

## ◆ SmoothSplineRect2DLazyDataImpl< Vec< 3, double >, Vec< 3, double > >

template struct PLASK_API plask::SmoothSplineRect2DLazyDataImpl< Vec< 3, double >, Vec< 3, double > >

Definition at line 665 of file rectangular_spline.cpp.

## ◆ SmoothSplineRect3DLazyDataImpl< dcomplex, dcomplex >

template struct PLASK_API plask::SmoothSplineRect3DLazyDataImpl< dcomplex, dcomplex >

Definition at line 676 of file rectangular_spline.cpp.

## ◆ SmoothSplineRect3DLazyDataImpl< double, double >

template struct PLASK_API plask::SmoothSplineRect3DLazyDataImpl< double, double >

Definition at line 675 of file rectangular_spline.cpp.

## ◆ SmoothSplineRect3DLazyDataImpl< Tensor2< dcomplex >, Tensor2< dcomplex > >

template struct PLASK_API plask::SmoothSplineRect3DLazyDataImpl< Tensor2< dcomplex >, Tensor2< dcomplex > >

Definition at line 685 of file rectangular_spline.cpp.

## ◆ SmoothSplineRect3DLazyDataImpl< Tensor2< double >, Tensor2< double > >

template struct PLASK_API plask::SmoothSplineRect3DLazyDataImpl< Tensor2< double >, Tensor2< double > >

Definition at line 684 of file rectangular_spline.cpp.

## ◆ SmoothSplineRect3DLazyDataImpl< Tensor3< dcomplex >, Tensor3< dcomplex > >

template struct PLASK_API plask::SmoothSplineRect3DLazyDataImpl< Tensor3< dcomplex >, Tensor3< dcomplex > >

Definition at line 688 of file rectangular_spline.cpp.

## ◆ SmoothSplineRect3DLazyDataImpl< Tensor3< double >, Tensor3< double > >

template struct PLASK_API plask::SmoothSplineRect3DLazyDataImpl< Tensor3< double >, Tensor3< double > >

Definition at line 687 of file rectangular_spline.cpp.

## ◆ SmoothSplineRect3DLazyDataImpl< Vec< 2, dcomplex >, Vec< 2, dcomplex > >

template struct PLASK_API plask::SmoothSplineRect3DLazyDataImpl< Vec< 2, dcomplex >, Vec< 2, dcomplex > >

Definition at line 679 of file rectangular_spline.cpp.

## ◆ SmoothSplineRect3DLazyDataImpl< Vec< 2, double >, Vec< 2, double > >

template struct PLASK_API plask::SmoothSplineRect3DLazyDataImpl< Vec< 2, double >, Vec< 2, double > >

Definition at line 678 of file rectangular_spline.cpp.

## ◆ SmoothSplineRect3DLazyDataImpl< Vec< 3, dcomplex >, Vec< 3, dcomplex > >

template struct PLASK_API plask::SmoothSplineRect3DLazyDataImpl< Vec< 3, dcomplex >, Vec< 3, dcomplex > >

Definition at line 682 of file rectangular_spline.cpp.

## ◆ SmoothSplineRect3DLazyDataImpl< Vec< 3, double >, Vec< 3, double > >

template struct PLASK_API plask::SmoothSplineRect3DLazyDataImpl< Vec< 3, double >, Vec< 3, double > >

Definition at line 681 of file rectangular_spline.cpp.

## ◆ SpatialIndexNode< 2 >

template struct PLASK_API plask::SpatialIndexNode< 2 >

Definition at line 274 of file spatial_index.cpp.

## ◆ SpatialIndexNode< 3 >

template struct PLASK_API plask::SpatialIndexNode< 3 >

Definition at line 275 of file spatial_index.cpp.

## ◆ SQRT1_2

constexpr double plask::SQRT1_2 = M_SQRT1_2
| constexpr

Definition at line 113 of file math.hpp.

## ◆ SQRT2

constexpr double plask::SQRT2 = M_SQRT2
| constexpr

Definition at line 107 of file math.hpp.

## ◆ StackContainer< 2 >

template struct PLASK_API plask::StackContainer< 2 >

Definition at line 389 of file stack.cpp.

## ◆ StackContainer< 3 >

template struct PLASK_API plask::StackContainer< 3 >

Definition at line 390 of file stack.cpp.

## ◆ TranslatedMesh< 2 >

template struct PLASK_API plask::TranslatedMesh< 2 >

Definition at line 81 of file basic.cpp.

## ◆ TranslatedMesh< 3 >

template struct PLASK_API plask::TranslatedMesh< 3 >

Definition at line 82 of file basic.cpp.

## ◆ Translation< 2 >

template struct PLASK_API plask::Translation< 2 >

Definition at line 172 of file transform.cpp.

## ◆ Translation< 3 >

template struct PLASK_API plask::Translation< 3 >

Definition at line 173 of file transform.cpp.

## ◆ TranslationContainer< 2 >

template struct PLASK_API plask::TranslationContainer< 2 >

Definition at line 168 of file translation_container.cpp.

## ◆ TranslationContainer< 3 >

template struct PLASK_API plask::TranslationContainer< 3 >

Definition at line 169 of file translation_container.cpp.

## ◆ Vec< 2, double >

template struct PLASK_API plask::Vec< 2, double >

Definition at line 18 of file 2d.cpp.

## ◆ Vec< 2, int >

template struct PLASK_API plask::Vec< 2, int >

Definition at line 20 of file 2d.cpp.

## ◆ Vec< 3, double >

template struct PLASK_API plask::Vec< 3, double >

Definition at line 18 of file 3d.cpp.