public final class LogConverter extends UnitConverter
This class represents a logarithmic converter. Such converter
is typically used to create logarithmic unit. For example:[code]
Unit
Instances of this class are immutable.
IDENTITY
Constructor and Description |
---|
LogConverter(double base)
Creates a logarithmic converter having the specified base.
|
Modifier and Type | Method and Description |
---|---|
double |
convert(double amount)
Converts a double value.
|
double |
getBase()
Returns the logarithmic base of this converter.
|
UnitConverter |
inverse()
Returns the inverse of this converter.
|
boolean |
isLinear()
Indicates if this converter is linear.
|
concatenate, equals, hashCode
public LogConverter(double base)
base
- the logarithmic base (e.g. Math.E
for
the Natural Logarithm).public double getBase()
Math.E
for
the Natural Logarithm).public UnitConverter inverse()
UnitConverter
x
is a valid
value, then x == inverse().convert(convert(x))
to within
the accuracy of computer arithmetic.inverse
in class UnitConverter
public double convert(double amount)
UnitConverter
convert
in class UnitConverter
amount
- the numeric value to convert.public boolean isLinear()
UnitConverter
convert(u + v) == convert(u) + convert(v)
and
convert(r * u) == r * convert(u)
.
For linear converters the following property always hold:[code]
y1 = c1.convert(x1);
y2 = c2.convert(x2);
then y1*y2 = c1.concatenate(c2).convert(x1*x2)[/code]isLinear
in class UnitConverter
true
if this converter is linear;
false
otherwise.