KADATH
val_domain_ope.cpp
1 /*
2  Copyright 2017 Philippe Grandclement
3 
4  This file is part of Kadath.
5 
6  Kadath is free software: you can redistribute it and/or modify
7  it under the terms of the GNU General Public License as published by
8  the Free Software Foundation, either version 3 of the License, or
9  (at your option) any later version.
10 
11  Kadath is distributed in the hope that it will be useful,
12  but WITHOUT ANY WARRANTY; without even the implied warranty of
13  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14  GNU General Public License for more details.
15 
16  You should have received a copy of the GNU General Public License
17  along with Kadath. If not, see <http://www.gnu.org/licenses/>.
18 */
19 
20 #include "val_domain.hpp"
21 namespace Kadath {
23  if (is_zero)
24  return *this ;
25  else
26  return (zone->mult_cos_phi (*this)) ;
27 }
28 
30  if (is_zero)
31  return *this ;
32  else
33  return (zone->mult_sin_phi (*this)) ;
34 }
35 
37  if (is_zero)
38  return *this ;
39  else
40  return (zone->mult_cos_theta (*this)) ;
41 }
42 
44  if (is_zero)
45  return *this ;
46  else
47  return (zone->mult_sin_theta (*this)) ;
48 }
49 
51  if (is_zero)
52  return *this ;
53  else
54  return (zone->div_sin_theta (*this)) ;
55 }
56 
58  if (is_zero)
59  return *this ;
60  else
61  return (zone->div_cos_theta (*this)) ;
62 }
63 
65  if (is_zero)
66  return *this ;
67  else
68  return (zone->div_x (*this)) ;
69 }
70 
72  if (is_zero)
73  return *this ;
74  else
75  return (zone->div_chi (*this)) ;
76 }
77 
79  if (is_zero)
80  return *this ;
81  else
82  return (zone->div_xm1 (*this)) ;
83 }
84 
86  if (is_zero)
87  return *this ;
88  else
89  return (zone->div_1mx2 (*this)) ;
90 }
91 
93  if (is_zero)
94  return *this ;
95  else
96  return (zone->div_1mrsL (*this)) ;
97 }
98 
100  if (is_zero)
101  return *this ;
102  else
103  return (zone->div_xp1 (*this)) ;
104 }
105 
107  if (is_zero)
108  return *this ;
109  else
110  return (zone->mult_xm1 (*this)) ;
111 }
112 
114  if (is_zero)
115  return *this ;
116  else
117  return (zone->div_sin_chi (*this)) ;
118 }
119 
121  if (is_zero)
122  return *this ;
123  else
124  return (zone->mult_cos_time (*this)) ;
125 }
126 
128  if (is_zero)
129  return *this ;
130  else
131  return (zone->mult_sin_time (*this)) ;
132 }
133 }
134 
virtual Val_domain div_cos_theta(const Val_domain &) const
Division by .
Definition: domain.cpp:1254
virtual Val_domain mult_sin_theta(const Val_domain &) const
Multiplication by .
Definition: domain.cpp:1236
virtual Val_domain mult_cos_phi(const Val_domain &) const
Multiplication by .
Definition: domain.cpp:1230
virtual Val_domain div_xm1(const Val_domain &) const
Division by .
Definition: domain.cpp:1272
virtual Val_domain div_sin_chi(const Val_domain &) const
Division by .
Definition: domain.cpp:1345
virtual Val_domain div_1mrsL(const Val_domain &so) const
Division by .
Definition: domain.cpp:1284
virtual Val_domain mult_cos_time(const Val_domain &) const
Multiplication by .
Definition: domain.cpp:1315
virtual Val_domain div_xp1(const Val_domain &) const
Division by .
Definition: domain.cpp:1278
virtual Val_domain mult_xm1(const Val_domain &) const
Multiplication by .
Definition: domain.cpp:1297
virtual Val_domain div_sin_theta(const Val_domain &) const
Division by .
Definition: domain.cpp:1248
virtual Val_domain mult_sin_time(const Val_domain &) const
Multiplication by .
Definition: domain.cpp:1321
virtual Val_domain div_1mx2(const Val_domain &) const
Division by .
Definition: domain.cpp:1327
virtual Val_domain mult_sin_phi(const Val_domain &) const
Multiplication by .
Definition: domain.cpp:1242
virtual Val_domain div_chi(const Val_domain &) const
Division by .
Definition: domain.cpp:1351
virtual Val_domain div_x(const Val_domain &) const
Division by .
Definition: domain.cpp:1260
virtual Val_domain mult_cos_theta(const Val_domain &) const
Multiplication by .
Definition: domain.cpp:1224
Class for storing the basis of decompositions of a field and its values on both the configuration and...
Definition: val_domain.hpp:69
Val_domain mult_sin_phi() const
Multiplication by .
Val_domain div_cos_theta() const
Division by .
Val_domain div_xm1() const
Division by .
Val_domain mult_sin_theta() const
Multiplication by .
Val_domain div_chi() const
Division by .
Val_domain div_xp1() const
Division by .
Val_domain mult_cos_phi() const
Multiplication by .
Val_domain div_x() const
Division by .
bool is_zero
Indicator used for null fields (for speed issues).
Definition: val_domain.hpp:74
Val_domain div_1mrsL() const
Division by .
Val_domain div_sin_theta() const
Division by .
Val_domain mult_cos_theta() const
Multiplication by .
Val_domain mult_xm1() const
Multiplication by .
Val_domain mult_sin_time() const
Val_domain div_1mx2() const
Division by .
Val_domain mult_cos_time() const
Val_domain div_sin_chi() const
Division by .
const Domain * zone
Pointer to the associated Domain.
Definition: val_domain.hpp:71