![]() |
SOPT
Sparse OPTimisation
|
Namespaces | |
algorithm | |
cppflowutils | |
credible_region | |
details | |
gradient_operator | |
logging | |
mpi | |
objective_functions | |
proximal | |
Holds some standard proximals. | |
tools | |
utilities | |
wavelets | |
Classes | |
class | ConjugateGradient |
Solves $Ax = b$ for $x$, given $A$ and $b$. More... | |
class | Exception |
Root exception for sopt. More... | |
class | IterationState |
class | L2DifferentiableFunc |
class | LinearTransform |
Joins together direct and indirect operators. More... | |
class | ONNXDifferentiableFunc |
class | ORTsession |
Sopt interface class to hold a ONNXrt session. More... | |
struct | is_complex |
True if underlying type is complex. More... | |
struct | is_complex< std::complex< T >, void > |
True if underlying type is complex. More... | |
class | RelativeVariation |
class | ScalarRelativeVariation |
class | Sampling |
An operator that samples a set of measurements. More... | |
struct | CData |
Typedefs | |
template<typename T > | |
using | real_type = details::underlying_value_type< T > |
Gets to the underlying real type. More... | |
using | t_int = int |
Root of the type hierarchy for signed integers. More... | |
using | t_uint = size_t |
Root of the type hierarchy for unsigned integers. More... | |
using | t_real = double |
Root of the type hierarchy for real numbers. More... | |
using | t_complex = std::complex< t_real > |
Root of the type hierarchy for (real) complex numbers. More... | |
template<typename T = t_real> | |
using | Vector = Eigen::Matrix< T, Eigen::Dynamic, 1 > |
A vector of a given type. More... | |
template<typename T = t_real> | |
using | Matrix = Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > |
A matrix of a given type. More... | |
template<typename T = t_real> | |
using | Array = Eigen::Array< T, Eigen::Dynamic, 1 > |
A 1-dimensional list of elements of given type. More... | |
template<typename T = t_real> | |
using | Image = Eigen::Array< T, Eigen::Dynamic, Eigen::Dynamic > |
A 2-dimensional list of elements of given type. More... | |
template<typename VECTOR = Vector<>> | |
using | OperatorFunction = std::function< void(VECTOR &, VECTOR const &)> |
Typical function out = A*x. More... | |
template<typename SCALAR = t_real> | |
using | ProximalFunction = std::function< void(Vector< SCALAR > &output, typename real_type< SCALAR >::type const weight, Vector< SCALAR > const &input)> |
Typical function signature for calls to proximal. More... | |
template<typename SCALAR = t_real> | |
using | ConvergenceFunction = std::function< bool(Vector< SCALAR > const &)> |
Typical function signature for convergence. More... | |
Functions | |
template<typename K > | |
std::enable_if< std::is_same< t_real, K >::value, K >::type | bisection_method (const K &function_value, const std::function< K(K)> &func, const K &a, const K &b, const t_real &rel_convergence=1e-4) |
Find root to a function within an interval. More... | |
template<typename T0 , typename... T> | |
OperatorFunction< T0 > | chained_operators (OperatorFunction< T0 > const &arg0, T const &... args) |
std::string | version () |
Returns library version. More... | |
std::tuple< uint8_t, uint8_t, uint8_t > | version_tuple () |
Returns library version. More... | |
std::string | gitref () |
Returns library git reference, if known. More... | |
std::string | default_logging_level () |
Default logging level. More... | |
std::string | default_logger_name () |
Default logger name. More... | |
constexpr std::size_t | number_of_threads_in_tests () |
Number of threads used during testing. More... | |
template<typename VECTOR > | |
LinearTransform< VECTOR > | linear_transform (OperatorFunction< VECTOR > const &direct, OperatorFunction< VECTOR > const &indirect, std::array< t_int, 3 > const &sizes={{1, 1, 0}}) |
template<typename VECTOR > | |
LinearTransform< VECTOR > | linear_transform (OperatorFunction< VECTOR > const &direct, std::array< t_int, 3 > const &dsizes, OperatorFunction< VECTOR > const &indirect, std::array< t_int, 3 > const &isizes) |
template<typename VECTOR > | |
LinearTransform< VECTOR > & | linear_transform (LinearTransform< VECTOR > &passthrough) |
Convenience no-op function. More... | |
template<typename VECTOR > | |
LinearTransform< VECTOR > | linear_transform (details::WrapFunction< VECTOR > const &direct, details::WrapFunction< VECTOR > const &adjoint) |
Creates a linear transform from a pair of wrappers. More... | |
template<typename DERIVED > | |
LinearTransform< Vector< typename DERIVED::Scalar > > | linear_transform (Eigen::MatrixBase< DERIVED > const &A) |
Helper function to creates a function operator. More... | |
template<typename SCALAR > | |
LinearTransform< Vector< SCALAR > > | linear_transform_identity () |
Helper function to create a linear transform that's just the identity. More... | |
template<typename T > | |
real_type< typename T::Scalar >::type | standard_deviation (Eigen::ArrayBase< T > const &x) |
Computes the standard deviation of a vector. More... | |
template<typename T > | |
real_type< typename T::Scalar >::type | standard_deviation (Eigen::MatrixBase< T > const &x) |
Computes the standard deviation of a vector. More... | |
template<typename SCALAR > | |
std::enable_if< std::is_arithmetic< SCALAR >::value or is_complex< SCALAR >::value, SCALAR >::type | soft_threshhold (SCALAR const &x, typename real_type< SCALAR >::type const &threshhold) |
abs(x) < threshhold ? 0: x - sgn(x) * threshhold More... | |
template<typename T > | |
Eigen::CwiseUnaryOp< const details::ProjectPositiveQuadrant< typename T::Scalar >, const T > | positive_quadrant (Eigen::DenseBase< T > const &input) |
Expression to create projection onto positive quadrant. More... | |
template<typename T > | |
Eigen::CwiseUnaryOp< const details::SoftThreshhold< typename T::Scalar >, const T > | soft_threshhold (Eigen::DenseBase< T > const &input, typename real_type< typename T::Scalar >::type const &threshhold) |
Expression to create soft-threshhold. More... | |
template<typename T0 , typename T1 > | |
std::enable_if< std::is_arithmetic< typename T0::Scalar >::value and std::is_arithmetic< typename T1::Scalar >::value, Eigen::CwiseBinaryOp< typename T0::Scalar(*)(typename T0::Scalar const &, typename T1::Scalar const &), const T0, const T1 > >::type | soft_threshhold (Eigen::DenseBase< T0 > const &input, Eigen::DenseBase< T1 > const &threshhold) |
Expression to create soft-threshhold with multiple parameters. More... | |
template<typename T0 , typename T1 > | |
std::enable_if< is_complex< typename T0::Scalar >::value and std::is_arithmetic< typename T1::Scalar >::value, Eigen::CwiseBinaryOp< typename T0::Scalar(*)(typename T0::Scalar const &, typename T0::Scalar const &), const T0, decltype(std::declval< const T1 >).template cast< typename T0::Scalar >))> >::type | soft_threshhold (Eigen::DenseBase< T0 > const &input, Eigen::DenseBase< T1 > const &threshhold) |
Expression to create soft-threshhold with multiple parameters. More... | |
template<typename T0 , typename T1 > | |
real_type< typename T0::Scalar >::type | l1_norm (Eigen::ArrayBase< T0 > const &input, Eigen::ArrayBase< T1 > const &weights) |
Computes weighted L1 norm. More... | |
template<typename T0 , typename T1 > | |
real_type< typename T0::Scalar >::type | l1_norm (Eigen::MatrixBase< T0 > const &input, Eigen::MatrixBase< T1 > const &weight) |
Computes weighted L1 norm. More... | |
template<typename T0 > | |
real_type< typename T0::Scalar >::type | l1_norm (Eigen::ArrayBase< T0 > const &input) |
Computes L1 norm. More... | |
template<typename T0 > | |
real_type< typename T0::Scalar >::type | l1_norm (Eigen::MatrixBase< T0 > const &input) |
Computes L1 norm. More... | |
template<typename T0 , typename T1 > | |
real_type< typename T0::Scalar >::type | l2_norm (Eigen::ArrayBase< T0 > const &input, Eigen::ArrayBase< T1 > const &weights) |
Computes weighted L2 norm. More... | |
template<typename T0 , typename T1 > | |
real_type< typename T0::Scalar >::type | l2_norm (Eigen::MatrixBase< T0 > const &input, Eigen::MatrixBase< T1 > const &weights) |
Computes weighted L2 norm. More... | |
template<typename T0 > | |
real_type< typename T0::Scalar >::type | l2_norm (Eigen::ArrayBase< T0 > const &input) |
Computes weighted L2 norm. More... | |
template<typename T0 > | |
real_type< typename T0::Scalar >::type | l2_norm (Eigen::MatrixBase< T0 > const &input) |
Computes weighted L2 norm. More... | |
template<typename T0 , typename T1 > | |
real_type< typename T0::Scalar >::type | tv_norm (Eigen::ArrayBase< T0 > const &input, Eigen::ArrayBase< T1 > const &weights) |
Computes weighted TV norm. More... | |
template<typename T0 , typename T1 > | |
real_type< typename T0::Scalar >::type | tv_norm (Eigen::MatrixBase< T0 > const &input, Eigen::MatrixBase< T1 > const &weights) |
Computes weighted TV norm. More... | |
template<typename T0 > | |
real_type< typename T0::Scalar >::type | tv_norm (Eigen::ArrayBase< T0 > const &input) |
Computes weighted tv norm. More... | |
template<typename T0 > | |
real_type< typename T0::Scalar >::type | tv_norm (Eigen::MatrixBase< T0 > const &input) |
Computes weighted TV norm. More... | |
template<typename T > | |
LinearTransform< Vector< T > > | linear_transform (Sampling const &sampling) |
Returns linear transform version of this object. More... | |
template<typename T > | |
LinearTransform< Vector< T > > | linear_transform (wavelets::Wavelet const &wavelet) |
Thin linear-transform wrapper around 1d wavelets. More... | |
template<typename T > | |
LinearTransform< Vector< T > > | linear_transform (wavelets::SARA const &sara) |
Thin linear-transform wrapper around 1d sara operator. More... | |
template<typename T > | |
LinearTransform< Vector< T > > | linear_transform (wavelets::Wavelet const &wavelet, t_uint rows, t_uint cols=1) |
Thin linear-transform wrapper around 2d wavelets. More... | |
template<typename T > | |
LinearTransform< Vector< T > > | linear_transform (wavelets::SARA const &sara, t_uint rows, t_uint cols=1) |
Thin linear-transform wrapper around 2d wavelets. More... | |
template<typename T > | |
void | direct_transform (void *out, void *in, void **data) |
template<typename T > | |
void | adjoint_transform (void *out, void *in, void **data) |
template<typename T > | |
Vector< T > | target (sopt::LinearTransform< Vector< T >> const &sampling, sopt::Image< T > const &image) |
template<typename T > | |
real_type< T >::type | sigma (sopt::LinearTransform< Vector< T >> const &sampling, sopt::Image< T > const &image) |
template<typename T , typename RANDOM > | |
Vector< T > | dirty (sopt::LinearTransform< Vector< T >> const &sampling, sopt::Image< T > const &image, RANDOM &mersenne) |
template<typename T > | |
real_type< T >::type | epsilon (sopt::LinearTransform< Vector< T >> const &sampling, sopt::Image< T > const &image) |
using sopt::Array = typedef Eigen::Array<T, Eigen::Dynamic, 1> |
using sopt::ConvergenceFunction = typedef std::function<bool(Vector<SCALAR> const &)> |
using sopt::Image = typedef Eigen::Array<T, Eigen::Dynamic, Eigen::Dynamic> |
using sopt::Matrix = typedef Eigen::Matrix<T, Eigen::Dynamic, Eigen::Dynamic> |
using sopt::OperatorFunction = typedef std::function<void(VECTOR &, VECTOR const &)> |
using sopt::ProximalFunction = typedef std::function<void(Vector<SCALAR> &output, typename real_type<SCALAR>::type const weight, Vector<SCALAR> const &input)> |
using sopt::real_type = typedef details::underlying_value_type<T> |
Gets to the underlying real type.
Definition at line 56 of file real_type.h.
using sopt::t_complex = typedef std::complex<t_real> |
using sopt::t_int = typedef int |
using sopt::t_real = typedef double |
using sopt::t_uint = typedef size_t |
using sopt::Vector = typedef Eigen::Matrix<T, Eigen::Dynamic, 1> |
void sopt::adjoint_transform | ( | void * | out, |
void * | in, | ||
void ** | data | ||
) |
Definition at line 27 of file cdata.h.
References sopt::LinearTransform< VECTOR >::adjoint(), sopt::CData< T >::nin, sopt::CData< T >::nout, and sopt::CData< T >::transform.
std::enable_if< std::is_same< t_real, K >::value, K >::type sopt::bisection_method | ( | const K & | function_value, |
const std::function< K(K)> & | func, | ||
const K & | a, | ||
const K & | b, | ||
const t_real & | rel_convergence = 1e-4 |
||
) |
Find root to a function within an interval.
Definition at line 18 of file bisection_method.h.
References a, b, SOPT_LOW_LOG, and SOPT_THROW.
Referenced by sopt::credible_region::find_credible_interval(), and TEST_CASE().
OperatorFunction<T0> sopt::chained_operators | ( | OperatorFunction< T0 > const & | arg0, |
T const &... | args | ||
) |
|
inline |
|
inline |
Default logging level.
Definition at line 44 of file config.in.h.
void sopt::direct_transform | ( | void * | out, |
void * | in, | ||
void ** | data | ||
) |
Definition at line 19 of file cdata.h.
References sopt::CData< T >::nin, sopt::CData< T >::nout, and sopt::CData< T >::transform.
Vector<T> sopt::dirty | ( | sopt::LinearTransform< Vector< T >> const & | sampling, |
sopt::Image< T > const & | image, | ||
RANDOM & | mersenne | ||
) |
Definition at line 25 of file inpainting.h.
References mersenne(), sigma(), and target().
Referenced by main().
real_type<T>::type sopt::epsilon | ( | sopt::LinearTransform< Vector< T >> const & | sampling, |
sopt::Image< T > const & | image | ||
) |
Definition at line 38 of file inpainting.h.
References sigma(), and target().
Referenced by function_cg(), main(), matrix_cg(), and TEST_CASE().
|
inline |
Returns library git reference, if known.
Definition at line 41 of file config.in.h.
real_type<typename T0::Scalar>::type sopt::l1_norm | ( | Eigen::ArrayBase< T0 > const & | input | ) |
real_type<typename T0::Scalar>::type sopt::l1_norm | ( | Eigen::ArrayBase< T0 > const & | input, |
Eigen::ArrayBase< T1 > const & | weights | ||
) |
Computes weighted L1 norm.
Definition at line 116 of file maths.h.
Referenced by sopt::algorithm::L1GProximal< SCALAR >::function(), sopt::algorithm::TFGProximal< SCALAR >::function(), l1_norm(), main(), sopt::proximal::L1TightFrame< SCALAR >::objective(), TEST_CASE(), and sopt::objective_functions::unconstrained_l1_regularisation().
real_type<typename T0::Scalar>::type sopt::l1_norm | ( | Eigen::MatrixBase< T0 > const & | input | ) |
Computes L1 norm.
Definition at line 134 of file maths.h.
References l1_norm().
real_type<typename T0::Scalar>::type sopt::l1_norm | ( | Eigen::MatrixBase< T0 > const & | input, |
Eigen::MatrixBase< T1 > const & | weight | ||
) |
real_type<typename T0::Scalar>::type sopt::l2_norm | ( | Eigen::ArrayBase< T0 > const & | input | ) |
Computes weighted L2 norm.
Definition at line 153 of file maths.h.
References l2_norm().
real_type<typename T0::Scalar>::type sopt::l2_norm | ( | Eigen::ArrayBase< T0 > const & | input, |
Eigen::ArrayBase< T1 > const & | weights | ||
) |
Computes weighted L2 norm.
Definition at line 140 of file maths.h.
Referenced by l2_norm(), main(), TEST_CASE(), and sopt::objective_functions::unconstrained_regularisation().
real_type<typename T0::Scalar>::type sopt::l2_norm | ( | Eigen::MatrixBase< T0 > const & | input | ) |
real_type<typename T0::Scalar>::type sopt::l2_norm | ( | Eigen::MatrixBase< T0 > const & | input, |
Eigen::MatrixBase< T1 > const & | weights | ||
) |
LinearTransform<VECTOR> sopt::linear_transform | ( | details::WrapFunction< VECTOR > const & | direct, |
details::WrapFunction< VECTOR > const & | adjoint | ||
) |
Creates a linear transform from a pair of wrappers.
Definition at line 153 of file linear_transform.h.
LinearTransform<Vector<typename DERIVED::Scalar> > sopt::linear_transform | ( | Eigen::MatrixBase< DERIVED > const & | A | ) |
Helper function to creates a function operator.
Definition at line 234 of file linear_transform.h.
References a, sopt::details::MatrixToLinearTransform< EIGEN >::adjoint(), b, and sopt::details::gcd().
LinearTransform<VECTOR>& sopt::linear_transform | ( | LinearTransform< VECTOR > & | passthrough | ) |
Convenience no-op function.
Definition at line 148 of file linear_transform.h.
LinearTransform<VECTOR> sopt::linear_transform | ( | OperatorFunction< VECTOR > const & | direct, |
OperatorFunction< VECTOR > const & | indirect, | ||
std::array< t_int, 3 > const & | sizes = {{1, 1, 0}} |
||
) |
Helper function to creates a function operator
[in] | direct | function with signature void(VECTOR&, VECTOR const&) which applies a linear operator to a vector. |
[in] | indirect | function with signature void(VECTOR&, VECTOR const&) which applies a the conjugate transpose linear operator to a vector. |
[in] | sizes | 3 integer elements (a, b, c) such that if the input to linear operator is of size N, then the output is of size (a * N) / b + c. A similar quantity is deduced for the indirect operator. |
Definition at line 124 of file linear_transform.h.
Referenced by sopt::algorithm::SDMM< SCALAR >::append(), main(), sopt::algorithm::ImagingForwardBackward< SCALAR >::Phi(), sopt::algorithm::ImagingProximalADMM< SCALAR >::Phi(), sopt::algorithm::ImagingPrimalDual< SCALAR >::Phi(), sopt::algorithm::L2ForwardBackward< SCALAR >::Phi(), sopt::algorithm::ProximalADMM< SCALAR >::Phi(), sopt::algorithm::PrimalDual< SCALAR >::Phi(), sopt::algorithm::TVPrimalDual< SCALAR >::Phi(), sopt::algorithm::ImagingPrimalDual< SCALAR >::Psi(), sopt::proximal::L1TightFrame< SCALAR >::Psi(), sopt::algorithm::PrimalDual< SCALAR >::Psi(), sopt::algorithm::TVPrimalDual< SCALAR >::Psi(), and TEST_CASE().
LinearTransform<VECTOR> sopt::linear_transform | ( | OperatorFunction< VECTOR > const & | direct, |
std::array< t_int, 3 > const & | dsizes, | ||
OperatorFunction< VECTOR > const & | indirect, | ||
std::array< t_int, 3 > const & | isizes | ||
) |
Helper function to creates a function operator
[in] | direct | function with signature void(VECTOR&, VECTOR const&) which applies a linear operator to a vector. |
[in] | dsizes | 3 integer elements (a, b, c) such that if the input to the linear operator is of size N, then the output is of size (a * N) / b + c. |
[in] | indirect | function with signature void(VECTOR&, VECTOR const&) which applies a the conjugate transpose linear operator to a vector. |
[in] | dsizes | 3 integer elements (a, b, c) such that if the input to the indirect linear operator is of size N, then the output is of size (a * N) / b + c. |
Definition at line 139 of file linear_transform.h.
LinearTransform<Vector<T> > sopt::linear_transform | ( | Sampling const & | sampling | ) |
Returns linear transform version of this object.
Definition at line 82 of file sampling.h.
References sopt::Sampling::adjoint(), sopt::Sampling::cols(), and sopt::Sampling::rows().
LinearTransform<Vector<T> > sopt::linear_transform | ( | wavelets::SARA const & | sara | ) |
Thin linear-transform wrapper around 1d sara operator.
Definition at line 183 of file wavelets.h.
LinearTransform<Vector<T> > sopt::linear_transform | ( | wavelets::SARA const & | sara, |
t_uint | rows, | ||
t_uint | cols = 1 |
||
) |
Thin linear-transform wrapper around 2d wavelets.
[in] | sara | SARA wavelet dictionary |
[in] | rows | Number of rows in the image |
[in] | cols | Number of columns in the image |
Definition at line 202 of file wavelets.h.
LinearTransform<Vector<T> > sopt::linear_transform | ( | wavelets::Wavelet const & | wavelet | ) |
Thin linear-transform wrapper around 1d wavelets.
Definition at line 175 of file wavelets.h.
LinearTransform<Vector<T> > sopt::linear_transform | ( | wavelets::Wavelet const & | wavelet, |
t_uint | rows, | ||
t_uint | cols = 1 |
||
) |
Thin linear-transform wrapper around 2d wavelets.
Definition at line 191 of file wavelets.h.
LinearTransform<Vector<SCALAR> > sopt::linear_transform_identity | ( | ) |
Helper function to create a linear transform that's just the identity.
Definition at line 249 of file linear_transform.h.
|
inlineconstexpr |
Number of threads used during testing.
Definition at line 51 of file config.in.h.
Eigen::CwiseUnaryOp<const details::ProjectPositiveQuadrant<typename T::Scalar>, const T> sopt::positive_quadrant | ( | Eigen::DenseBase< T > const & | input | ) |
Expression to create projection onto positive quadrant.
Definition at line 60 of file maths.h.
Referenced by main(), sopt::proximal::positive_quadrant(), and TEST_CASE().
real_type<T>::type sopt::sigma | ( | sopt::LinearTransform< Vector< T >> const & | sampling, |
sopt::Image< T > const & | image | ||
) |
Definition at line 17 of file inpainting.h.
References target().
Referenced by dirty(), epsilon(), sopt::ONNXDifferentiableFunc< SCALAR >::function(), sopt::ONNXDifferentiableFunc< SCALAR >::gradient(), sopt::L2DifferentiableFunc< SCALAR >::L2DifferentiableFunc(), main(), and TEST_CASE().
Eigen::CwiseUnaryOp<const details::SoftThreshhold<typename T::Scalar>, const T> sopt::soft_threshhold | ( | Eigen::DenseBase< T > const & | input, |
typename real_type< typename T::Scalar >::type const & | threshhold | ||
) |
std::enable_if<std::is_arithmetic<typename T0::Scalar>::value and std::is_arithmetic<typename T1::Scalar>::value, Eigen::CwiseBinaryOp<typename T0::Scalar (*)(typename T0::Scalar const &, typename T1::Scalar const &), const T0, const T1> >::type sopt::soft_threshhold | ( | Eigen::DenseBase< T0 > const & | input, |
Eigen::DenseBase< T1 > const & | threshhold | ||
) |
Expression to create soft-threshhold with multiple parameters.
Operates over a vector of threshholds: out(i) = soft_threshhold(x(i), h(i))
Threshhold and input vectors must have the same size and type. The latter condition is enforced by CwiseBinaryOp, unfortunately.
Definition at line 87 of file maths.h.
References SOPT_THROW.
std::enable_if< is_complex<typename T0::Scalar>::value and std::is_arithmetic<typename T1::Scalar>::value, Eigen::CwiseBinaryOp< typename T0::Scalar (*)(typename T0::Scalar const &, typename T0::Scalar const &), const T0, decltype(std::declval<const T1>).template cast<typename T0::Scalar>))> >::type sopt::soft_threshhold | ( | Eigen::DenseBase< T0 > const & | input, |
Eigen::DenseBase< T1 > const & | threshhold | ||
) |
Expression to create soft-threshhold with multiple parameters.
Operates over a vector of threshholds: out(i) = soft_threshhold(x(i), h(i))
Threshhold and input vectors must have the same size and type. The latter condition is enforced by CwiseBinaryOp, unfortunately. So we cast threshhold from real to complex and back.
Definition at line 103 of file maths.h.
References soft_threshhold(), and SOPT_THROW.
std::enable_if<std::is_arithmetic<SCALAR>::value or is_complex<SCALAR>::value, SCALAR>::type sopt::soft_threshhold | ( | SCALAR const & | x, |
typename real_type< SCALAR >::type const & | threshhold | ||
) |
abs(x) < threshhold ? 0: x - sgn(x) * threshhold
Definition at line 29 of file maths.h.
Referenced by sopt::proximal::l1_norm(), main(), sopt::proximal::L1TightFrame< SCALAR >::operator()(), soft_threshhold(), and TEST_CASE().
real_type<typename T::Scalar>::type sopt::standard_deviation | ( | Eigen::ArrayBase< T > const & | x | ) |
Computes the standard deviation of a vector.
Definition at line 16 of file maths.h.
Referenced by sopt::algorithm::Reweighted< ALGORITHM >::operator()(), standard_deviation(), and TEST_CASE().
real_type<typename T::Scalar>::type sopt::standard_deviation | ( | Eigen::MatrixBase< T > const & | x | ) |
Computes the standard deviation of a vector.
Definition at line 21 of file maths.h.
References standard_deviation().
Vector<T> sopt::target | ( | sopt::LinearTransform< Vector< T >> const & | sampling, |
sopt::Image< T > const & | image | ||
) |
Definition at line 12 of file inpainting.h.
Referenced by dirty(), epsilon(), sopt::algorithm::L2ForwardBackward< SCALAR >::operator()(), sigma(), sopt::algorithm::L2ForwardBackward< SCALAR >::target(), and TEST_CASE().
real_type<typename T0::Scalar>::type sopt::tv_norm | ( | Eigen::ArrayBase< T0 > const & | input | ) |
Computes weighted tv norm.
Definition at line 192 of file maths.h.
References tv_norm().
real_type<typename T0::Scalar>::type sopt::tv_norm | ( | Eigen::ArrayBase< T0 > const & | input, |
Eigen::ArrayBase< T1 > const & | weights | ||
) |
real_type<typename T0::Scalar>::type sopt::tv_norm | ( | Eigen::MatrixBase< T0 > const & | input | ) |
real_type<typename T0::Scalar>::type sopt::tv_norm | ( | Eigen::MatrixBase< T0 > const & | input, |
Eigen::MatrixBase< T1 > const & | weights | ||
) |
|
inline |
|
inline |
Returns library version.
Definition at line 35 of file config.in.h.