flexiblesusy is hosted by Hepforge, IPPP Durham
FlexibleSUSY
observable_problems.cpp
Go to the documentation of this file.
1// ====================================================================
2// This file is part of FlexibleSUSY.
3//
4// FlexibleSUSY is free software: you can redistribute it and/or modify
5// it under the terms of the GNU General Public License as published
6// by the Free Software Foundation, either version 3 of the License,
7// or (at your option) any later version.
8//
9// FlexibleSUSY is distributed in the hope that it will be useful, but
10// WITHOUT ANY WARRANTY; without even the implied warranty of
11// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12// General Public License for more details.
13//
14// You should have received a copy of the GNU General Public License
15// along with FlexibleSUSY. If not, see
16// <http://www.gnu.org/licenses/>.
17// ====================================================================
18
20
21namespace flexiblesusy {
22
23namespace observable_problems {
24
25// general /////////////////////////////////////////////////////////////
26
28{
29 *this = Problem_general();
30}
31
33{
34 return number_of_problems() > 0;
35}
36
38{
39 unsigned count = 0;
40 if (have_non_perturbative_running()) count++;
41 if (have_thrown()) count++;
42 return count;
43}
44
46{
49}
50
52{
54}
55
57{
59}
60
61void Problem_general::flag_thrown(const char* msg)
62{
63 thrown = true;
64 thrown_msg = msg;
65}
66
68{
69 return thrown;
70}
71
73{
74 return thrown_msg;
75}
76
77// a_muon //////////////////////////////////////////////////////////////
78
80{
81 *this = Problem_a_muon();
82}
83
85{
86 return number_of_problems() > 0;
87}
88
90{
91 unsigned count = 0;
92 if (have_non_perturbative_running()) count++;
93 return count;
94}
95
97{
100}
101
103{
105}
106
108{
110}
111
112} // namespace observable_problems
113
114// wrapper class ///////////////////////////////////////////////////////
115
117{
118 general.clear();
119 a_muon.clear();
120}
121
123{
124 return number_of_problems() > 0;
125}
126
128{
129 unsigned count = 0;
130 count += general.number_of_problems();
131 count += a_muon.number_of_problems();
132 return count;
133}
134
135} // namespace flexiblesusy
unsigned number_of_problems() const
returns number of problems
observable_problems::Problem_general general
general problems
observable_problems::Problem_a_muon a_muon
problems for a_muon
bool have_problem() const
returns true if there is a problem, false otherwise
bool have_problem() const
returns true if there is a problem, false otherwise
unsigned number_of_problems() const
returns number of problems
unsigned number_of_problems() const
returns number of problems
bool have_problem() const
returns true if there is a problem, false otherwise