11 std::vector<Real> initialGuesses,
12 std::vector<Real> lowerBounds)
13 : quotes_(
std::move(quotes)), initialGuesses_(
std::move(initialGuesses)),
14 lowerBounds_(
std::move(lowerBounds)) {
21 for (
Size i = 0, size = guesses.
size(); i < size; ++i) {
35 for (
Size i = 0, size = x.
size(); i < size; ++i) {
42 return lb ==
Null<Real>() ? x : std::exp(x) + lb;
47 return lb ==
Null<Real>() ? x : std::log(x - lb);
1-D array used in linear algebra.
Size size() const
dimension of the array
template class providing a null value for a given type.
SimpleQuoteVariables(std::vector< ext::shared_ptr< SimpleQuote > > quotes, std::vector< Real > initialGuesses={}, std::vector< Real > lowerBounds={})
Array initialize(bool validData) override
std::vector< ext::shared_ptr< SimpleQuote > > quotes_
std::vector< Real > lowerBounds_
std::vector< Real > initialGuesses_
Real transformDirect(Real x, Size i) const
Real transformInverse(Real x, Size i) const
void update(const Array &x) override
#define QL_REQUIRE(condition, message)
throw an error if the given pre-condition is not verified
std::size_t Size
size of a container
T get(const std::vector< T > &v, Size i, U defaultValue)
Utilities for vector manipulation.