ViennaSHE 1.3.0
Free open-source semiconductor device simulator using spherical harmonics expansions techniques.
version.hpp
Go to the documentation of this file.
1#ifndef VIENNASHE_VERSION_HPP
2#define VIENNASHE_VERSION_HPP
3
4/* ============================================================================
5 Copyright (c) 2011-2022, Institute for Microelectronics,
6 Institute for Analysis and Scientific Computing,
7 TU Wien.
8
9 -----------------
10 ViennaSHE - The Vienna Spherical Harmonics Expansion Boltzmann Solver
11 -----------------
12
13 http://viennashe.sourceforge.net/
14
15 License: MIT (X11), see file LICENSE in the base directory
16=============================================================================== */
17
18#include <string>
19#include <sstream>
20
25namespace viennashe
26{
27
29 inline std::size_t major_version()
30 {
31 return 1;
32 }
33
35 inline std::size_t minor_version()
36 {
37 return 3;
38 }
39
41 inline std::size_t revision_number()
42 {
43 return 0;
44 }
45
50 inline bool calibrated() { return false; }
51
53 inline std::string version()
54 {
55 std::stringstream ss;
56 ss << viennashe::major_version() << "."
57 << viennashe::minor_version() << "."
58 << viennashe::revision_number() << " " << ( (viennashe::calibrated() == true) ? "(calibrated) " : "(uncalibrated)");
59 return ss.str();
60 }
61
63 inline std::string preamble()
64 {
65 std::stringstream ss;
66 ss << "*********************************************************" << std::endl;
67 ss << "* ViennaSHE " << viennashe::version() << " *" << std::endl;
68 ss << "* A free open-source deterministic Boltzmann solver *" << std::endl;
69 ss << "* provided by *" << std::endl;
70 ss << "* Institute for Microelectronics *" << std::endl;
71 ss << "* Institute for Analysis and Scientific Computing *" << std::endl;
72 ss << "* Vienna University of Technology *" << std::endl;
73 ss << "* http://viennashe.sourceforge.net/ *" << std::endl;
74 ss << "*********************************************************" << std::endl;
75 return ss.str();
76 }
77}
78
79
80#endif
81
The main ViennaSHE namespace. All functionality resides inside this namespace.
Definition: accessors.hpp:40
std::size_t major_version()
Returns the current ViennaSHE major version as std::size_t
Definition: version.hpp:29
bool calibrated()
Specifies whether the simulator is calibrated for some particular purpose.
Definition: version.hpp:50
std::size_t minor_version()
Returns the current ViennaSHE minor version as std::size_t
Definition: version.hpp:35
std::string preamble()
Prints the ViennaSHE preamble (header). Used in all the examples as well as the standalone-applicatio...
Definition: version.hpp:63
std::size_t revision_number()
Returns the current ViennaSHE revision number as std::size_t
Definition: version.hpp:41
std::string version()
Returns the current ViennaSHE version string
Definition: version.hpp:53