Contains forward declarations and definition of small classes that must be defined at an early stage. More...
#include <stdexcept>
#include <ostream>
#include <cstddef>
#include <string>
#include <map>
#include "viennashe/version.hpp"
#include "viennagrid/forwards.hpp"
Go to the source code of this file.
Classes | |
struct | viennashe::detail::is_1d_mesh< MeshT, CellTag > |
Metafunction for the determination of whether a mesh is 1d. More... | |
struct | viennashe::detail::is_1d_mesh< MeshT, viennagrid::simplex_tag< 1 > > |
Metafunction for the determination of whether a mesh is 1d. Specialization for 1d. More... | |
struct | viennashe::detail::is_1d_mesh< MeshT, viennagrid::hypercube_tag< 1 > > |
Metafunction for the determination of whether a mesh is 1d. Specialization for 1d. More... | |
struct | viennashe::error_indicator< T > |
A helper class to raise compile time errors. More... | |
struct | viennashe::box_volume_key |
Internal key for storing the box volume associated with an edge or a vertex. More... | |
struct | viennashe::edge_interface_area_key |
Internal key for storing the interface area of a box associated with an edge. More... | |
class | viennashe::solvers::dense_linear_solver_tag |
Internal tag used for the specification of a dense linear solver (Gauss, single-threaded) More... | |
class | viennashe::solvers::serial_linear_solver_tag |
Internal tag used for the specification of a single-threaded linear solver. More... | |
class | viennashe::solvers::parallel_linear_solver_tag |
Internal tag used for the specification of a CPU-based multi-threaded linear solver. More... | |
class | viennashe::solvers::petsc_linear_solver_tag |
Internal tag used for the specification of a CPU-based PETSC solver. More... | |
class | viennashe::solvers::petsc_amgx_solver_tag |
class | viennashe::solvers::gpu_parallel_linear_solver_tag |
Internal tag used for the specification of a GPU-accelerated linear solver. More... | |
Namespaces | |
namespace | viennashe |
The main ViennaSHE namespace. All functionality resides inside this namespace. | |
namespace | viennashe::detail |
Namespace for implementation details. Typically not of interest for the library user. | |
namespace | viennashe::math |
Namespace for all math specific code | |
namespace | viennashe::solvers |
Namespace containing a variety of different linear solvers. | |
Typedefs | |
typedef std::map< std::string, std::pair< std::size_t, std::size_t > > | viennashe::map_info_type |
Information on the number of unknowns per quantity. More... | |
typedef std::vector< double > | viennashe::energy_vector_type |
Type for storing the discrete energies. More... | |
typedef std::vector< long > | viennashe::she_index_vector_type |
Type for storing the unknown indices at each point in the (x, H)-space. More... | |
Contains forward declarations and definition of small classes that must be defined at an early stage.
Definition in file forwards.h.