CoinUtils
2.10.13
src
CoinRational.hpp
Go to the documentation of this file.
1
// Authors: Matthew Saltzman and Ted Ralphs
2
// Copyright 2015, Matthew Saltzman and Ted Ralphs
3
// Licensed under the Eclipse Public License 1.0
4
5
#ifndef CoinRational_H
6
#define CoinRational_H
7
8
#include <cmath>
9
10
//Small class for rational numbers
11
class
CoinRational
12
{
13
14
public :
15
long
getDenominator
() {
return
denominator_; }
16
long
getNumerator
() {
return
numerator_; }
17
18
CoinRational
():
19
numerator_(0),
20
denominator_(1)
21
{};
22
23
CoinRational
(
long
n,
long
d):
24
numerator_(n),
25
denominator_(d)
26
{};
27
28
CoinRational
(
double
val,
double
maxdelta,
long
maxdnom)
29
{
30
if
(!nearestRational_(val, maxdelta, maxdnom)){
31
numerator_ = 0;
32
denominator_ = 1;
33
}
34
};
35
36
private :
37
38
long
numerator_;
39
long
denominator_;
40
41
bool
nearestRational_(
double
val,
double
maxdelta,
long
maxdnom);
42
};
43
44
#endif
CoinRational
Definition:
CoinRational.hpp:11
CoinRational::CoinRational
CoinRational()
Definition:
CoinRational.hpp:18
CoinRational::getDenominator
long getDenominator()
Definition:
CoinRational.hpp:15
CoinRational::getNumerator
long getNumerator()
Definition:
CoinRational.hpp:16
CoinRational::CoinRational
CoinRational(double val, double maxdelta, long maxdnom)
Definition:
CoinRational.hpp:28
CoinRational::CoinRational
CoinRational(long n, long d)
Definition:
CoinRational.hpp:23
Generated by
1.8.14