alpaqa develop
Nonconvex constrained optimization
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Public Attributes | Static Public Attributes | List of all members
L1NormComplex< Conf, Weight > Struct Template Reference

#include <alpaqa/functions/l1-norm.hpp>

Detailed Description

template<Config Conf, class Weight = typename Conf::real_t>
requires (std::is_same_v<Weight, typename Conf::real_t> || std::is_same_v<Weight, typename Conf::vec> || std::is_same_v<Weight, typename Conf::rvec> || std::is_same_v<Weight, typename Conf::crvec> || std::is_same_v<Weight, typename Conf::mat> || std::is_same_v<Weight, typename Conf::rmat> || std::is_same_v<Weight, typename Conf::crmat>)
struct alpaqa::functions::L1NormComplex< Conf, Weight >

ℓ₁-norm of complex numbers.

Template Parameters
WeightType of weighting factors. Either scalar or vector.

Definition at line 95 of file l1-norm.hpp.

+ Collaboration diagram for L1NormComplex< Conf, Weight >:

Public Types

using weight_t = Weight
 

Public Member Functions

 L1NormComplex (weight_t λ)
 
 L1NormComplex ()
 
 L1NormComplex ()=default
 
real_t prox (crcmat in, rcmat out, real_t γ=1)
 
real_t prox (crmat in, rmat out, real_t γ=1)
 Note: a complex vector in ℂⁿ is represented by a real vector in ℝ²ⁿ.
 

Public Attributes

weight_t λ
 

Static Public Attributes

static constexpr bool scalar_weight = std::is_same_v<weight_t, real_t>
 

Member Typedef Documentation

◆ weight_t

template<Config Conf, class Weight = typename Conf::real_t>
using weight_t = Weight

Definition at line 97 of file l1-norm.hpp.

Constructor & Destructor Documentation

◆ L1NormComplex() [1/3]

template<Config Conf, class Weight = typename Conf::real_t>
L1NormComplex ( weight_t  λ)
inline

Definition at line 100 of file l1-norm.hpp.

◆ L1NormComplex() [2/3]

template<Config Conf, class Weight = typename Conf::real_t>
L1NormComplex ( )
inline

Definition at line 111 of file l1-norm.hpp.

◆ L1NormComplex() [3/3]

template<Config Conf, class Weight = typename Conf::real_t>
L1NormComplex ( )
default

Member Function Documentation

◆ prox() [1/2]

template<Config Conf, class Weight = typename Conf::real_t>
real_t prox ( crcmat  in,
rcmat  out,
real_t  γ = 1 
)
inline

Definition at line 120 of file l1-norm.hpp.

+ Here is the call graph for this function:

◆ prox() [2/2]

template<Config Conf, class Weight = typename Conf::real_t>
real_t prox ( crmat  in,
rmat  out,
real_t  γ = 1 
)
inline

Note: a complex vector in ℂⁿ is represented by a real vector in ℝ²ⁿ.

Definition at line 156 of file l1-norm.hpp.

Member Data Documentation

◆ scalar_weight

template<Config Conf, class Weight = typename Conf::real_t>
constexpr bool scalar_weight = std::is_same_v<weight_t, real_t>
staticconstexpr

Definition at line 98 of file l1-norm.hpp.

◆ λ

template<Config Conf, class Weight = typename Conf::real_t>
weight_t λ

Definition at line 118 of file l1-norm.hpp.


The documentation for this struct was generated from the following file: